@influxdata/influxdb3-client 0.3.0 → 0.3.1
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/README.md +183 -0
- package/dist/index.browser.js +13 -0
- package/dist/index.browser.js.gz +0 -0
- package/dist/index.browser.js.map +1 -0
- package/dist/index.browser.mjs +7 -0
- package/dist/index.browser.mjs.gz +0 -0
- package/dist/index.browser.mjs.map +1 -0
- package/dist/index.d.mts +947 -0
- package/dist/index.d.ts +947 -0
- package/dist/index.js +7 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +7 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/index.mjs.map +1 -0
- package/dist/influxdb.js +18 -0
- package/dist/influxdb.js.gz +0 -0
- package/dist/influxdb.js.map +1 -0
- package/package.json +2 -2
package/README.md
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://raw.githubusercontent.com/InfluxCommunity/influxdb3-js/HEAD/js_logo.png" alt="JavaScript Logo" width="150px">
|
|
3
|
+
</p>
|
|
4
|
+
<p align="center">
|
|
5
|
+
<a href="https://www.npmjs.com/package/@influxdata/influxdb3-client">
|
|
6
|
+
<img src="https://img.shields.io/npm/v/@influxdata/influxdb3-client" alt="NuGet Badge">
|
|
7
|
+
</a>
|
|
8
|
+
<a href="https://github.com/InfluxCommunity/influxdb3-js/actions/workflows/codeql-analysis.yml">
|
|
9
|
+
<img src="https://github.com/InfluxCommunity/influxdb3-js/actions/workflows/codeql-analysis.yml/badge.svg?branch=main" alt="CodeQL analysis">
|
|
10
|
+
</a>
|
|
11
|
+
<a href="https://github.com/InfluxCommunity/influxdb3-js/actions/workflows/linter.yml">
|
|
12
|
+
<img src="https://github.com/InfluxCommunity/influxdb3-js/actions/workflows/linter.yml/badge.svg" alt="Lint Code Base">
|
|
13
|
+
</a>
|
|
14
|
+
<a href="https://dl.circleci.com/status-badge/redirect/gh/InfluxCommunity/influxdb3-js/tree/main">
|
|
15
|
+
<img src="https://dl.circleci.com/status-badge/img/gh/InfluxCommunity/influxdb3-js/tree/main.svg?style=svg" alt="CircleCI">
|
|
16
|
+
</a>
|
|
17
|
+
<a href="https://codecov.io/gh/InfluxCommunity/influxdb3-js">
|
|
18
|
+
<img src="https://codecov.io/gh/InfluxCommunity/influxdb3-js/branch/main/graph/badge.svg" alt="Code Cov"/>
|
|
19
|
+
</a>
|
|
20
|
+
<a href="https://app.slack.com/huddle/TH8RGQX5Z/C02UDUPLQKA">
|
|
21
|
+
<img src="https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social" alt="Community Slack">
|
|
22
|
+
</a>
|
|
23
|
+
</p>
|
|
24
|
+
|
|
25
|
+
# InfluxDB 3 JavaScript Client
|
|
26
|
+
|
|
27
|
+
The JavaScript Client that provides a simple and convenient way to interact with InfluxDB 3.
|
|
28
|
+
This package supports both writing data to InfluxDB and querying data using the FlightSQL client,
|
|
29
|
+
which allows you to execute SQL queries against InfluxDB IOx.
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
To write or query InfluxDB 3, add `@influxdata/influxdb3-client` as a dependency to your project using your favorite package manager.
|
|
34
|
+
|
|
35
|
+
```sh
|
|
36
|
+
npm install --save @influxdata/influxdb3-client
|
|
37
|
+
yarn add @influxdata/influxdb3-client
|
|
38
|
+
pnpm add @influxdata/influxdb3-client
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
If you target Node.js, use [@influxdata/influxdb3-client](./packages/client/README.md).
|
|
42
|
+
It provides main (CJS), module (ESM), and browser (UMD) exports.
|
|
43
|
+
|
|
44
|
+
## Usage
|
|
45
|
+
|
|
46
|
+
set environment variables:
|
|
47
|
+
|
|
48
|
+
- `INFLUXDB_URL` region of your influxdb cloud e.g. *`https://us-east-1-1.aws.cloud2.influxdata.com/`*
|
|
49
|
+
- `INFLUXDB_TOKEN` read/write token generated in cloud
|
|
50
|
+
- `INFLUXDB_DATABASE` name of database e.g .*`my-database`*
|
|
51
|
+
|
|
52
|
+
<details>
|
|
53
|
+
<summary>linux/macos</summary>
|
|
54
|
+
|
|
55
|
+
```sh
|
|
56
|
+
export INFLUXDB_URL="<url>"
|
|
57
|
+
export INFLUXDB_DATABASE="<database>"
|
|
58
|
+
export INFLUXDB_TOKEN="<token>"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
</details>
|
|
62
|
+
|
|
63
|
+
<details>
|
|
64
|
+
<summary>windows</summary>
|
|
65
|
+
|
|
66
|
+
### powershell
|
|
67
|
+
|
|
68
|
+
```powershell
|
|
69
|
+
$env:INFLUXDB_URL = "<url>"
|
|
70
|
+
$env:INFLUXDB_DATABASE = "<database>"
|
|
71
|
+
$env:INFLUXDB_TOKEN = "<token>"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### cmd
|
|
75
|
+
|
|
76
|
+
```console
|
|
77
|
+
set INFLUXDB_URL=<url>
|
|
78
|
+
set INFLUXDB_DATABASE=<database>
|
|
79
|
+
set INFLUXDB_TOKEN=<token>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
</details>
|
|
83
|
+
|
|
84
|
+
### Create a client
|
|
85
|
+
|
|
86
|
+
To get started with influxdb client import `@influxdata/influxdb3-client` package.
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
import {InfluxDBClient, Point} from '@influxdata/influxdb3-client'
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Assign constants for environment variables, and then instantiate `InfluxDBClient` inside of an asynchronous function. Make sure to `close` the client when it's no longer needed for writing or querying.
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
const host = process.env.INFLUXDB_URL
|
|
96
|
+
const token = process.env.INFLUXDB_TOKEN
|
|
97
|
+
const database = process.env.INFLUXDB_DATABASE
|
|
98
|
+
|
|
99
|
+
async function main() {
|
|
100
|
+
const client = new InfluxDBClient({host, token})
|
|
101
|
+
|
|
102
|
+
// following code goes here
|
|
103
|
+
|
|
104
|
+
client.close()
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
main()
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Write data
|
|
111
|
+
|
|
112
|
+
To write data to InfluxDB, call `client.write` with data in [line-protocol](https://docs.influxdata.com/influxdb/cloud-serverless/reference/syntax/line-protocol/) format and the database (or bucket) name.
|
|
113
|
+
|
|
114
|
+
```ts
|
|
115
|
+
const line = `stat,unit=temperature avg=20.5,max=45.0`
|
|
116
|
+
await client.write(line, database)
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### Query data
|
|
120
|
+
|
|
121
|
+
To query data stored in InfluxDB, call `client.query` with an SQL query and the database (or bucket) name.
|
|
122
|
+
|
|
123
|
+
```ts
|
|
124
|
+
// Execute query
|
|
125
|
+
const query = `
|
|
126
|
+
SELECT *
|
|
127
|
+
FROM "stat"
|
|
128
|
+
WHERE
|
|
129
|
+
time >= now() - interval '5 minute'
|
|
130
|
+
AND
|
|
131
|
+
"unit" IN ('temperature')
|
|
132
|
+
`
|
|
133
|
+
const queryResult = await client.query(query, database)
|
|
134
|
+
|
|
135
|
+
for await (const row of queryResult) {
|
|
136
|
+
console.log(`avg is ${row.avg}`)
|
|
137
|
+
console.log(`max is ${row.max}`)
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
or use typesafe `PointValues` structure with `client.queryPoints`
|
|
142
|
+
|
|
143
|
+
```ts
|
|
144
|
+
const queryPointsResult = client.queryPoints(
|
|
145
|
+
query,
|
|
146
|
+
database,
|
|
147
|
+
queryType,
|
|
148
|
+
'stat'
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
for await (const row of queryPointsResult) {
|
|
152
|
+
console.log(`avg is ${row.getField('avg', 'float')}`)
|
|
153
|
+
console.log(`max is ${row.getField('max', 'float')}`)
|
|
154
|
+
console.log(`lp: ${row.toLineProtocol()}`)
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Examples
|
|
159
|
+
|
|
160
|
+
For more advanced usage, see [examples](https://github.com/InfluxCommunity/influxdb3-js/blob/HEAD/examples/README.md).
|
|
161
|
+
|
|
162
|
+
## Feedback
|
|
163
|
+
|
|
164
|
+
If you need help, please use our [Community Slack](https://app.slack.com/huddle/TH8RGQX5Z/C02UDUPLQKA)
|
|
165
|
+
or [Community Page](https://community.influxdata.com/).
|
|
166
|
+
|
|
167
|
+
New features and bugs can be reported on GitHub: <https://github.com/InfluxCommunity/influxdb3-js>
|
|
168
|
+
|
|
169
|
+
## Contribution
|
|
170
|
+
|
|
171
|
+
To contribute to this project, fork the GitHub repository and send a pull request based on the `main` branch.
|
|
172
|
+
|
|
173
|
+
## Development
|
|
174
|
+
|
|
175
|
+
### Update the Flight Client
|
|
176
|
+
|
|
177
|
+
For now, we're responsible for generating the Flight client. However, its Protobuf interfaces may undergo changes over time.
|
|
178
|
+
|
|
179
|
+
To regenerate the Flight client, use the `yarn flight` command to execute the provided script. The script will clone the Flight Protobuf repository and generate new TypeScript files in `./src/generated/flight`.
|
|
180
|
+
|
|
181
|
+
## License
|
|
182
|
+
|
|
183
|
+
The InfluxDB 3 JavaScript Client is released under the [MIT License](https://opensource.org/licenses/MIT).
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
(function (global, factory) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@influxdata/influxdb-client"] = {}));
|
|
5
|
+
})(this, (function (exports) {
|
|
6
|
+
"use strict";var influxdb=(()=>{var ye=Object.defineProperty;var Gt=Object.getOwnPropertyDescriptor;var Kt=Object.getOwnPropertyNames;var Ht=Object.prototype.hasOwnProperty;var K=(n=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(n,{get:(e,t)=>(typeof require!="undefined"?require:e)[t]}):n)(function(n){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+n+'" is not supported')});var Xt=(n,e)=>{for(var t in e)ye(n,t,{get:e[t],enumerable:!0})},Zt=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Kt(e))!Ht.call(n,i)&&i!==t&&ye(n,i,{get:()=>e[i],enumerable:!(r=Gt(e,i))||r.enumerable});return n};var Qt=n=>Zt(ye({},"__esModule",{value:!0}),n);var Tr={};Xt(Tr,{AbortError:()=>V,DEFAULT_ConnectionOptions:()=>Yt,DEFAULT_WriteOptions:()=>xe,GetFieldTypeMissmatchError:()=>Z,HttpError:()=>N,IllegalArgumentError:()=>U,InfluxDBClient:()=>G,Log:()=>A,Point:()=>v,PointValues:()=>R,RequestTimedOutError:()=>we,collectAll:()=>dt,consoleLogger:()=>nt,convertTime:()=>Ne,convertTimeToNanos:()=>ke,createTextDecoderCombiner:()=>Te,currentTime:()=>ft,dateToProtocolTimestamp:()=>ct,escape:()=>D,setLogger:()=>zt,useProcessHrtime:()=>ut,writableDataToLineProtocol:()=>Ee});var U=class n extends Error{constructor(e){super(e),this.name="IllegalArgumentError",Object.setPrototypeOf(this,n.prototype)}},N=class n extends Error{constructor(t,r,i,s,o){super();this.statusCode=t;this.statusMessage=r;this.body=i;this.contentType=s;if(Object.setPrototypeOf(this,n.prototype),o)this.message=o;else if(i){if(s!=null&&s.startsWith("application/json"))try{this.json=JSON.parse(i),this.message=this.json.message,this.code=this.json.code}catch(a){}this.message||(this.message=`${t} ${r} : ${i}`)}else this.message=`${t} ${r}`;this.name="HttpError"}},we=class n extends Error{constructor(){super(),Object.setPrototypeOf(this,n.prototype),this.name="RequestTimedOutError",this.message="Request timed out"}},V=class n extends Error{constructor(){super(),this.name="AbortError",Object.setPrototypeOf(this,n.prototype),this.message="Response aborted"}};function Te(){let n=new TextDecoder("utf-8");return{concat(e,t){let r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},copy(e,t,r){let i=new Uint8Array(r-t);return i.set(e.subarray(t,r)),i},toUtf8String(e,t,r){return n.decode(e.subarray(t,r))}}}var Yt={timeout:1e4},xe={precision:"ns",gzipThreshold:1e3};var nt={error(n,e){console.error(`ERROR: ${n}`,e||"")},warn(n,e){console.warn(`WARN: ${n}`,e||"")}},H=nt,A={error(n,e){H.error(n,e)},warn(n,e){H.warn(n,e)}};function zt(n){let e=H;return H=n,e}function Fe(n,e){return function(t){let r="",i=0,s=0;for(;s<t.length;){let o=n.indexOf(t[s]);o>=0&&(r+=t.substring(i,s),r+=e[o],i=s+1),s++}return i==0?t:(i<t.length&&(r+=t.substring(i,t.length)),r)}}function er(n,e){let t=Fe(n,e);return r=>`"${t(r)}"`}var D={measurement:Fe(`,
|
|
7
|
+
\r `,["\\,","\\ ","\\n","\\r","\\t"]),quoted:er('"\\',['\\"',"\\\\"]),tag:Fe(`, =
|
|
8
|
+
\r `,["\\,","\\ ","\\=","\\n","\\r","\\t"])};var lt="000000000";function ut(n){return!1}ut(!0);var it=Date.now(),Ie=0;function Oe(){{let n=Date.now();n!==it?(it=n,Ie=0):Ie++;let e=String(Ie);return String(n)+lt.substr(0,6-e.length)+e}}function st(){return String(Date.now())+lt.substr(0,3)}function ot(){return String(Date.now())}function at(){return String(Math.floor(Date.now()/1e3))}var ft={s:at,ms:ot,us:st,ns:Oe,seconds:at,millis:ot,micros:st,nanos:Oe},ct={s:n=>`${Math.floor(n.getTime()/1e3)}`,ms:n=>`${n.getTime()}`,us:n=>`${n.getTime()}000`,ns:n=>`${n.getTime()}000000`};function ke(n){return n===void 0?Oe():typeof n=="string"?n.length>0?n:void 0:n instanceof Date?`${n.getTime()}000000`:String(typeof n=="number"?Math.floor(n):n)}var Ne=(n,e="ns")=>n===void 0?ft[e]():typeof n=="string"?n.length>0?n:void 0:n instanceof Date?ct[e](n):String(typeof n=="number"?Math.floor(n):n);var X=n=>{throw n},pt=n=>n!==void 0,mt=n=>n instanceof Array||n instanceof Object&&typeof n.length=="number"&&(n.length===0||Object.getOwnPropertyNames(n).some(e=>e==="0")),ht=n=>{let e=new Uint8Array(4);return e[0]=n>>0,e[1]=n>>8,e[2]=n>>16,e[3]=n>>24,e},dt=async n=>{let e=[];for await(let t of n)e.push(t);return e};var Ee=n=>{let e=mt(n)&&typeof n!="string"?Array.from(n):[n];return e.length===0?[]:typeof e[0]=="string"?e:e.map(r=>r.toLineProtocol()).filter(pt)};var tr=n=>typeof n=="number"?"float":typeof n=="string"?"string":typeof n=="boolean"?"boolean":void 0,Z=class n extends Error{constructor(e,t,r){super(`field ${e} of type ${r} doesn't match expected type ${t}!`),this.name="GetFieldTypeMissmatchError",Object.setPrototypeOf(this,n.prototype)}},R=class n{constructor(){this._tags={};this._fields={}}getMeasurement(){return this._name}setMeasurement(e){return this._name=e,this}getTimestamp(){return this._time}setTimestamp(e){return this._time=e,this}getTag(e){return this._tags[e]}setTag(e,t){return this._tags[e]=t,this}removeTag(e){return delete this._tags[e],this}getTagNames(){return Object.keys(this._tags)}getFloatField(e){return this.getField(e,"float")}setFloatField(e,t){let r;if(typeof t=="number"?r=t:r=parseFloat(t),!isFinite(r))throw new Error(`invalid float value for field '${e}': '${t}'!`);return this._fields[e]=["float",r],this}getIntegerField(e){return this.getField(e,"integer")}setIntegerField(e,t){let r;if(typeof t=="number"?r=t:r=parseInt(String(t)),isNaN(r)||r<=-9223372036854776e3||r>=9223372036854776e3)throw new Error(`invalid integer value for field '${e}': '${t}'!`);return this._fields[e]=["integer",Math.floor(r)],this}getUintegerField(e){return this.getField(e,"uinteger")}setUintegerField(e,t){if(typeof t=="number"){if(isNaN(t)||t<0||t>Number.MAX_SAFE_INTEGER)throw new Error(`uint value for field '${e}' out of range: ${t}`);this._fields[e]=["uinteger",Math.floor(t)]}else{let r=String(t);for(let i=0;i<r.length;i++){let s=r.charCodeAt(i);if(s<48||s>57)throw new Error(`uint value has an unsupported character at pos ${i}: ${t}`)}if(r.length>20||r.length===20&&r.localeCompare("18446744073709551615")>0)throw new Error(`uint value for field '${e}' out of range: ${r}`);this._fields[e]=["uinteger",+r]}return this}getStringField(e){return this.getField(e,"string")}setStringField(e,t){return t!=null&&(typeof t!="string"&&(t=String(t)),this._fields[e]=["string",t]),this}getBooleanField(e){return this.getField(e,"boolean")}setBooleanField(e,t){return this._fields[e]=["boolean",!!t],this}getField(e,t){let r=this._fields[e];if(!r)return;let[i,s]=r;if(t!==void 0&&t!==i)throw new Z(e,t,i);return s}getFieldType(e){let t=this._fields[e];if(t)return t[0]}setField(e,t,r){switch(r!=null?r:tr(t)){case"string":return this.setStringField(e,t);case"boolean":return this.setBooleanField(e,t);case"float":return this.setFloatField(e,t);case"integer":return this.setIntegerField(e,t);case"uinteger":return this.setUintegerField(e,t);case void 0:return this;default:throw new Error(`invalid field type for field '${e}': type -> ${r}, value -> ${t}!`)}}setFields(e){for(let[t,r]of Object.entries(e))this.setField(t,r);return this}removeField(e){return delete this._fields[e],this}getFieldNames(){return Object.keys(this._fields)}hasFields(){return this.getFieldNames().length>0}copy(){let e=new n;return e._name=this._name,e._time=this._time,e._tags=Object.fromEntries(Object.entries(this._tags)),e._fields=Object.fromEntries(Object.entries(this._fields).map(t=>[...t])),e}asPoint(e){return v.fromValues(e?this.setMeasurement(e):this)}};var rr=(n,e)=>{switch(n){case"string":return D.quoted(e);case"boolean":return e?"T":"F";case"float":return`${e}`;case"integer":return`${e}i`;case"uinteger":return`${e}u`}},v=class n{constructor(e){e instanceof R?this._values=e:this._values=new R,typeof e=="string"&&this._values.setMeasurement(e)}static measurement(e){return new n(e)}static fromValues(e){if(!e.getMeasurement()||e.getMeasurement()==="")throw new Error("Cannot convert values to point without measurement set!");return new n(e)}getMeasurement(){return this._values.getMeasurement()}setMeasurement(e){return e!==""&&this._values.setMeasurement(e),this}getTimestamp(){return this._values.getTimestamp()}setTimestamp(e){return this._values.setTimestamp(e),this}getTag(e){return this._values.getTag(e)}setTag(e,t){return this._values.setTag(e,t),this}removeTag(e){return this._values.removeTag(e),this}getTagNames(){return this._values.getTagNames()}getFloatField(e){return this._values.getFloatField(e)}setFloatField(e,t){return this._values.setFloatField(e,t),this}getIntegerField(e){return this._values.getIntegerField(e)}setIntegerField(e,t){return this._values.setIntegerField(e,t),this}getUintegerField(e){return this._values.getUintegerField(e)}setUintegerField(e,t){return this._values.setUintegerField(e,t),this}getStringField(e){return this._values.getStringField(e)}setStringField(e,t){return this._values.setStringField(e,t),this}getBooleanField(e){return this._values.getBooleanField(e)}setBooleanField(e,t){return this._values.setBooleanField(e,t),this}getField(e,t){return this._values.getField(e,t)}getFieldType(e){return this._values.getFieldType(e)}setField(e,t,r){return this._values.setField(e,t,r),this}setFields(e){return this._values.setFields(e),this}removeField(e){return this._values.removeField(e),this}getFieldNames(){return this._values.getFieldNames()}hasFields(){return this._values.hasFields()}copy(){return new n(this._values.copy())}toLineProtocol(e){if(!this._values.getMeasurement())return;let t="";if(this._values.getFieldNames().sort().forEach(o=>{if(o){let a=this._values.getFieldType(o),l=this._values.getField(o);if(a===void 0||l===void 0)return;let f=rr(a,l);t.length>0&&(t+=","),t+=`${D.tag(o)}=${f}`}}),t.length===0)return;let r="";this._values.getTagNames().sort().forEach(o=>{if(o){let a=this._values.getTag(o);a&&(r+=",",r+=`${D.tag(o)}=${D.tag(a)}`)}});let s=this._values.getTimestamp();return e?typeof e=="string"?s=Ne(s,e):s=e(s):s=ke(s),`${D.measurement(this.getMeasurement())}${r} ${t}${s!==void 0?` ${s}`:""}`}toString(){let e=this.toLineProtocol(void 0);return e||`invalid point: ${JSON.stringify(this,void 0)}`}};function Re(n={}){let e=0,t={next:r=>{if(e===0&&n.next&&r!==null&&r!==void 0)return n.next(r)},error:r=>{e===0&&(e=1,n.error&&n.error(r))},complete:()=>{e===0&&(e=2,n.complete&&n.complete())},responseStarted:(r,i)=>{n.responseStarted&&n.responseStarted(r,i)}};return n.useCancellable&&(t.useCancellable=n.useCancellable.bind(n)),n.useResume&&(t.useResume=n.useResume.bind(n)),t}function gt(n){let e={};return n.headers.forEach((t,r)=>{let i=e[r];i===void 0?e[r]=t:Array.isArray(i)?i.push(t):e[r]=[i,t]}),e}var M=class{constructor(e){this._connectionOptions=e;this.chunkCombiner=Te();this.requestDecorator=function(){};this._defaultHeaders={"content-type":"application/json; charset=utf-8",...e.headers},this._connectionOptions.token&&(this._defaultHeaders.Authorization=`Token ${this._connectionOptions.token}`),this._url=String(this._connectionOptions.host),this._url.endsWith("/")&&(this._url=this._url.substring(0,this._url.length-1)),this._url.endsWith("/api/v2")&&(this._url=this._url.substring(0,this._url.length-7),A.warn(`Please remove '/api/v2' context path from InfluxDB base url, using ${this._url} !`))}send(e,t,r,i){let s=Re(i),o=!1,a=r.signal,l,f=()=>{},c=f;if(i&&i.useCancellable){let p=new AbortController;a||(a=p.signal,r={...r,signal:a}),a.addEventListener("abort",()=>{c()}),i.useCancellable({cancel(){o=!0,p.abort()},isCancelled(){return o||a.aborted}})}this._fetch(e,t,r).then(async p=>{if(i!=null&&i.responseStarted&&s.responseStarted(gt(p),p.status),await this._throwOnErrorResponse(p),p.body){let m=p.body.getReader(),h;do{if(l&&await l,o)break;if(h=await m.read(),s.next(h.value)===!1){let T=s.useResume;if(!T){let O="Unable to pause, useResume is not configured!";return await m.cancel(O),Promise.reject(new Error(O))}l=new Promise(O=>{c=()=>{O(),l=void 0,c=f},T(c)})}}while(!h.done)}else if(p.arrayBuffer){let m=await p.arrayBuffer();s.next(new Uint8Array(m))}else{let m=await p.text();s.next(new TextEncoder().encode(m))}}).catch(p=>{o||s.error(p)}).finally(()=>s.complete())}async _throwOnErrorResponse(e){if(e.status>=300){let t="";try{if(t=await e.text(),!t){let r=e.headers.get("x-influxdb-error");r&&(t=r)}}catch(r){throw A.warn("Unable to receive error body",r),new N(e.status,e.statusText,void 0,e.headers.get("content-type"))}throw new N(e.status,e.statusText,t,e.headers.get("content-type"))}}async*iterate(e,t,r){var s;let i=await this._fetch(e,t,r);if(await this._throwOnErrorResponse(i),i.body){let o=i.body.getReader();for(;;){let{value:a,done:l}=await o.read();if(l)break;if((s=r.signal)!=null&&s.aborted)throw await i.body.cancel(),new V;yield a}}else if(i.arrayBuffer){let o=await i.arrayBuffer();yield new Uint8Array(o)}else{let o=await i.text();yield new TextEncoder().encode(o)}}async request(e,t,r,i){var f,c;let s=await this._fetch(e,t,r),{headers:o}=s,a=o.get("content-type")||"";i&&i(gt(s),s.status),await this._throwOnErrorResponse(s);let l=(c=(f=r.headers)==null?void 0:f.accept)!=null?c:a;if(l.includes("json"))return await s.json();if(l.includes("text")||l.startsWith("application/csv"))return await s.text()}_fetch(e,t,r){let{method:i,headers:s,...o}=r,a=`${this._url}${e}`,l={method:i,body:i==="GET"||i==="HEAD"?void 0:typeof t=="string"?t:JSON.stringify(t),headers:{...this._defaultHeaders,...s},credentials:"omit",...this._connectionOptions.transportOptions,...o};return this.requestDecorator(l,r,a),fetch(a,l)}};var bt=K("@protobuf-ts/grpcweb-transport"),yt=({host:n})=>new bt.GrpcWebFetchTransport({baseUrl:n});var nr={writeTransport:n=>new M(n),queryTransport:yt},W=nr;var q=class{constructor(e){this._options=e;this._closed=!1;var t;this._transport=(t=this._options.transport)!=null?t:W.writeTransport(this._options),this.doWrite=this.doWrite.bind(this)}_createWritePath(e,t,r){let i=[`bucket=${encodeURIComponent(e)}`,`precision=${t.precision}`];r&&i.push(`org=${encodeURIComponent(r)}`);let s=t==null?void 0:t.consistency;return s&&i.push(`consistency=${encodeURIComponent(s)}`),`/api/v2/write?${i.join("&")}`}doWrite(e,t,r,i){if(this._closed)return Promise.reject(new Error("writeApi: already closed!"));if(e.length<=0||e.length===1&&e[0]==="")return Promise.resolve();let o,a,l=new Promise((h,T)=>{o=h,a=T}),f,c={responseStarted(h,T){f=T},error(h){if(h instanceof N&&h.json&&typeof h.json.error=="string"&&h.json.error.includes("hinted handoff queue not empty")){A.warn(`Write to InfluxDB returns: ${h.json.error}`),f=204,c.complete();return}A.error("Write to InfluxDB failed.",h),a(h)},complete(){if(f==204||f==null)o();else{let h=`204 HTTP response status code expected, but ${f} returned`,T=new N(f,h,void 0,"0");T.message=h,c.error(T)}}},p={...xe,...i},m={method:"POST",headers:{"content-type":"text/plain; charset=utf-8",...i==null?void 0:i.headers},gzipThreshold:p.gzipThreshold};return this._transport.send(this._createWritePath(t,p,r),e.join(`
|
|
9
|
+
`),m,c),l}async close(){this._closed=!0}};var ge=K("apache-arrow");var qt=K("@protobuf-ts/runtime-rpc");function C(n){let e=typeof n;if(e=="object"){if(Array.isArray(n))return"array";if(n===null)return"null"}return e}function Se(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)}var E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),Q=[];for(let n=0;n<E.length;n++)Q[E[n].charCodeAt(0)]=n;Q["-".charCodeAt(0)]=E.indexOf("+");Q["_".charCodeAt(0)]=E.indexOf("/");function wt(n){let e=n.length*3/4;n[n.length-2]=="="?e-=2:n[n.length-1]=="="&&(e-=1);let t=new Uint8Array(e),r=0,i=0,s,o=0;for(let a=0;a<n.length;a++){if(s=Q[n.charCodeAt(a)],s===void 0)switch(n[a]){case"=":i=0;case`
|
|
10
|
+
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(i){case 0:o=s,i=1;break;case 1:t[r++]=o<<2|(s&48)>>4,o=s,i=2;break;case 2:t[r++]=(o&15)<<4|(s&60)>>2,o=s,i=3;break;case 3:t[r++]=(o&3)<<6|s,i=0;break}}if(i==1)throw Error("invalid base64 string.");return t.subarray(0,r)}function Tt(n){let e="",t=0,r,i=0;for(let s=0;s<n.length;s++)switch(r=n[s],t){case 0:e+=E[r>>2],i=(r&3)<<4,t=1;break;case 1:e+=E[i|r>>4],i=(r&15)<<2,t=2;break;case 2:e+=E[i|r>>6],e+=E[r&63],t=0;break}return t&&(e+=E[i],e+="=",t==1&&(e+="=")),e}var B;(function(n){n.symbol=Symbol.for("protobuf-ts/unknown"),n.onRead=(t,r,i,s,o)=>{(e(r)?r[n.symbol]:r[n.symbol]=[]).push({no:i,wireType:s,data:o})},n.onWrite=(t,r,i)=>{for(let{no:s,wireType:o,data:a}of n.list(r))i.tag(s,o).raw(a)},n.list=(t,r)=>{if(e(t)){let i=t[n.symbol];return r?i.filter(s=>s.no==r):i}return[]},n.last=(t,r)=>n.list(t,r).slice(-1)[0];let e=t=>t&&Array.isArray(t[n.symbol])})(B||(B={}));var w;(function(n){n[n.Varint=0]="Varint",n[n.Bit64=1]="Bit64",n[n.LengthDelimited=2]="LengthDelimited",n[n.StartGroup=3]="StartGroup",n[n.EndGroup=4]="EndGroup",n[n.Bit32=5]="Bit32"})(w||(w={}));function xt(){let n=0,e=0;for(let r=0;r<28;r+=7){let i=this.buf[this.pos++];if(n|=(i&127)<<r,!(i&128))return this.assertBounds(),[n,e]}let t=this.buf[this.pos++];if(n|=(t&15)<<28,e=(t&112)>>4,!(t&128))return this.assertBounds(),[n,e];for(let r=3;r<=31;r+=7){let i=this.buf[this.pos++];if(e|=(i&127)<<r,!(i&128))return this.assertBounds(),[n,e]}throw new Error("invalid varint")}function z(n,e,t){for(let s=0;s<28;s=s+7){let o=n>>>s,a=!(!(o>>>7)&&e==0),l=(a?o|128:o)&255;if(t.push(l),!a)return}let r=n>>>28&15|(e&7)<<4,i=!!(e>>3);if(t.push((i?r|128:r)&255),!!i){for(let s=3;s<31;s=s+7){let o=e>>>s,a=!!(o>>>7),l=(a?o|128:o)&255;if(t.push(l),!a)return}t.push(e>>>31&1)}}var Y=65536*65536;function _e(n){let e=n[0]=="-";e&&(n=n.slice(1));let t=1e6,r=0,i=0;function s(o,a){let l=Number(n.slice(o,a));i*=t,r=r*t+l,r>=Y&&(i=i+(r/Y|0),r=r%Y)}return s(-24,-18),s(-18,-12),s(-12,-6),s(-6),[e,r,i]}function ee(n,e){if(e>>>0<=2097151)return""+(Y*e+(n>>>0));let t=n&16777215,r=(n>>>24|e<<8)>>>0&16777215,i=e>>16&65535,s=t+r*6777216+i*6710656,o=r+i*8147497,a=i*2,l=1e7;s>=l&&(o+=Math.floor(s/l),s%=l),o>=l&&(a+=Math.floor(o/l),o%=l);function f(c,p){let m=c?String(c):"";return p?"0000000".slice(m.length)+m:m}return f(a,0)+f(o,a)+f(s,1)}function Ae(n,e){if(n>=0){for(;n>127;)e.push(n&127|128),n=n>>>7;e.push(n)}else{for(let t=0;t<9;t++)e.push(n&127|128),n=n>>7;e.push(1)}}function Ft(){let n=this.buf[this.pos++],e=n&127;if(!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<7,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<14,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<21,!(n&128))return this.assertBounds(),e;n=this.buf[this.pos++],e|=(n&15)<<28;for(let t=5;n&128&&t<10;t++)n=this.buf[this.pos++];if(n&128)throw new Error("invalid varint");return this.assertBounds(),e>>>0}var b;function ir(){let n=new DataView(new ArrayBuffer(8));b=globalThis.BigInt!==void 0&&typeof n.getBigInt64=="function"&&typeof n.getBigUint64=="function"&&typeof n.setBigInt64=="function"&&typeof n.setBigUint64=="function"?{MIN:BigInt("-9223372036854775808"),MAX:BigInt("9223372036854775807"),UMIN:BigInt("0"),UMAX:BigInt("18446744073709551615"),C:BigInt,V:n}:void 0}ir();function It(n){if(!n)throw new Error("BigInt unavailable, see https://github.com/timostamm/protobuf-ts/blob/v1.0.8/MANUAL.md#bigint-support")}var Ot=/^-?[0-9]+$/,re=4294967296,te=2147483648,ne=class{constructor(e,t){this.lo=e|0,this.hi=t|0}isZero(){return this.lo==0&&this.hi==0}toNumber(){let e=this.hi*re+(this.lo>>>0);if(!Number.isSafeInteger(e))throw new Error("cannot convert to safe number");return e}},x=class n extends ne{static from(e){if(b)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=b.C(e);case"number":if(e===0)return this.ZERO;e=b.C(e);case"bigint":if(!e)return this.ZERO;if(e<b.UMIN)throw new Error("signed value for ulong");if(e>b.UMAX)throw new Error("ulong too large");return b.V.setBigUint64(0,e,!0),new n(b.V.getInt32(0,!0),b.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!Ot.test(e))throw new Error("string is no integer");let[t,r,i]=_e(e);if(t)throw new Error("signed value for ulong");return new n(r,i);case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");if(e<0)throw new Error("signed value for ulong");return new n(e,e/re)}throw new Error("unknown value "+typeof e)}toString(){return b?this.toBigInt().toString():ee(this.lo,this.hi)}toBigInt(){return It(b),b.V.setInt32(0,this.lo,!0),b.V.setInt32(4,this.hi,!0),b.V.getBigUint64(0,!0)}};x.ZERO=new x(0,0);var g=class n extends ne{static from(e){if(b)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=b.C(e);case"number":if(e===0)return this.ZERO;e=b.C(e);case"bigint":if(!e)return this.ZERO;if(e<b.MIN)throw new Error("signed long too small");if(e>b.MAX)throw new Error("signed long too large");return b.V.setBigInt64(0,e,!0),new n(b.V.getInt32(0,!0),b.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!Ot.test(e))throw new Error("string is no integer");let[t,r,i]=_e(e);if(t){if(i>te||i==te&&r!=0)throw new Error("signed long too small")}else if(i>=te)throw new Error("signed long too large");let s=new n(r,i);return t?s.negate():s;case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");return e>0?new n(e,e/re):new n(-e,-e/re).negate()}throw new Error("unknown value "+typeof e)}isNegative(){return(this.hi&te)!==0}negate(){let e=~this.hi,t=this.lo;return t?t=~t+1:e+=1,new n(t,e)}toString(){if(b)return this.toBigInt().toString();if(this.isNegative()){let e=this.negate();return"-"+ee(e.lo,e.hi)}return ee(this.lo,this.hi)}toBigInt(){return It(b),b.V.setInt32(0,this.lo,!0),b.V.setInt32(4,this.hi,!0),b.V.getBigInt64(0,!0)}};g.ZERO=new g(0,0);var kt={readUnknownField:!0,readerFactory:n=>new De(n)};function Nt(n){return n?Object.assign(Object.assign({},kt),n):kt}var De=class{constructor(e,t){this.varint64=xt,this.uint32=Ft,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t!=null?t:new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0})}tag(){let e=this.uint32(),t=e>>>3,r=e&7;if(t<=0||r<0||r>5)throw new Error("illegal tag: field no "+t+" wire type "+r);return[t,r]}skip(e){let t=this.pos;switch(e){case w.Varint:for(;this.buf[this.pos++]&128;);break;case w.Bit64:this.pos+=4;case w.Bit32:this.pos+=4;break;case w.LengthDelimited:let r=this.uint32();this.pos+=r;break;case w.StartGroup:let i;for(;(i=this.tag()[1])!==w.EndGroup;)this.skip(i);break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(t,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return new g(...this.varint64())}uint64(){return new x(...this.varint64())}sint64(){let[e,t]=this.varint64(),r=-(e&1);return e=(e>>>1|(t&1)<<31)^r,t=t>>>1^r,new g(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return new x(this.sfixed32(),this.sfixed32())}sfixed64(){return new g(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}};function d(n,e){if(!n)throw new Error(e)}var sr=34028234663852886e22,or=-34028234663852886e22,ar=4294967295,lr=2147483647,ur=-2147483648;function S(n){if(typeof n!="number")throw new Error("invalid int 32: "+typeof n);if(!Number.isInteger(n)||n>lr||n<ur)throw new Error("invalid int 32: "+n)}function P(n){if(typeof n!="number")throw new Error("invalid uint 32: "+typeof n);if(!Number.isInteger(n)||n>ar||n<0)throw new Error("invalid uint 32: "+n)}function L(n){if(typeof n!="number")throw new Error("invalid float 32: "+typeof n);if(Number.isFinite(n)&&(n>sr||n<or))throw new Error("invalid float 32: "+n)}var Et={writeUnknownFields:!0,writerFactory:()=>new Ce};function Rt(n){return n?Object.assign(Object.assign({},Et),n):Et}var Ce=class{constructor(e){this.stack=[],this.textEncoder=e!=null?e:new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let i=0;i<this.chunks.length;i++)e+=this.chunks[i].length;let t=new Uint8Array(e),r=0;for(let i=0;i<this.chunks.length;i++)t.set(this.chunks[i],r),r+=this.chunks[i].length;return this.chunks=[],t}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),t=this.stack.pop();if(!t)throw new Error("invalid state, fork stack empty");return this.chunks=t.chunks,this.buf=t.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,t){return this.uint32((e<<3|t)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(P(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return S(e),Ae(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){L(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){P(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){S(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return S(e),e=(e<<1^e>>31)>>>0,Ae(e,this.buf),this}sfixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),i=g.from(e);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),i=x.from(e);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(t)}int64(e){let t=g.from(e);return z(t.lo,t.hi,this.buf),this}sint64(e){let t=g.from(e),r=t.hi>>31,i=t.lo<<1^r,s=(t.hi<<1|t.lo>>>31)^r;return z(i,s,this.buf),this}uint64(e){let t=x.from(e);return z(t.lo,t.hi,this.buf),this}};var St={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0},_t={ignoreUnknownFields:!1};function At(n){return n?Object.assign(Object.assign({},_t),n):_t}function Dt(n){return n?Object.assign(Object.assign({},St),n):St}var Ct=Symbol.for("protobuf-ts/message-type");function Pe(n){let e=!1,t=[];for(let r=0;r<n.length;r++){let i=n.charAt(r);i=="_"?e=!0:/\d/.test(i)?(t.push(i),e=!0):e?(t.push(i.toUpperCase()),e=!1):r==0?t.push(i.toLowerCase()):t.push(i)}return t.join("")}var u;(function(n){n[n.DOUBLE=1]="DOUBLE",n[n.FLOAT=2]="FLOAT",n[n.INT64=3]="INT64",n[n.UINT64=4]="UINT64",n[n.INT32=5]="INT32",n[n.FIXED64=6]="FIXED64",n[n.FIXED32=7]="FIXED32",n[n.BOOL=8]="BOOL",n[n.STRING=9]="STRING",n[n.BYTES=12]="BYTES",n[n.UINT32=13]="UINT32",n[n.SFIXED32=15]="SFIXED32",n[n.SFIXED64=16]="SFIXED64",n[n.SINT32=17]="SINT32",n[n.SINT64=18]="SINT64"})(u||(u={}));var F;(function(n){n[n.BIGINT=0]="BIGINT",n[n.STRING=1]="STRING",n[n.NUMBER=2]="NUMBER"})(F||(F={}));var $;(function(n){n[n.NO=0]="NO",n[n.PACKED=1]="PACKED",n[n.UNPACKED=2]="UNPACKED"})($||($={}));function Pt(n){var e,t,r,i;return n.localName=(e=n.localName)!==null&&e!==void 0?e:Pe(n.name),n.jsonName=(t=n.jsonName)!==null&&t!==void 0?t:Pe(n.name),n.repeat=(r=n.repeat)!==null&&r!==void 0?r:$.NO,n.opt=(i=n.opt)!==null&&i!==void 0?i:n.repeat||n.oneof?!1:n.kind=="message",n}function Ut(n){if(typeof n!="object"||n===null||!n.hasOwnProperty("oneofKind"))return!1;switch(typeof n.oneofKind){case"string":return n[n.oneofKind]===void 0?!1:Object.keys(n).length==2;case"undefined":return Object.keys(n).length==1;default:return!1}}var ie=class{constructor(e){var t;this.fields=(t=e.fields)!==null&&t!==void 0?t:[]}prepare(){if(this.data)return;let e=[],t=[],r=[];for(let i of this.fields)if(i.oneof)r.includes(i.oneof)||(r.push(i.oneof),e.push(i.oneof),t.push(i.oneof));else switch(t.push(i.localName),i.kind){case"scalar":case"enum":(!i.opt||i.repeat)&&e.push(i.localName);break;case"message":i.repeat&&e.push(i.localName);break;case"map":e.push(i.localName);break}this.data={req:e,known:t,oneofs:Object.values(r)}}is(e,t,r=!1){if(t<0)return!0;if(e==null||typeof e!="object")return!1;this.prepare();let i=Object.keys(e),s=this.data;if(i.length<s.req.length||s.req.some(o=>!i.includes(o))||!r&&i.some(o=>!s.known.includes(o)))return!1;if(t<1)return!0;for(let o of s.oneofs){let a=e[o];if(!Ut(a))return!1;if(a.oneofKind===void 0)continue;let l=this.fields.find(f=>f.localName===a.oneofKind);if(!l||!this.field(a[a.oneofKind],l,r,t))return!1}for(let o of this.fields)if(o.oneof===void 0&&!this.field(e[o.localName],o,r,t))return!1;return!0}field(e,t,r,i){let s=t.repeat;switch(t.kind){case"scalar":return e===void 0?t.opt:s?this.scalars(e,t.T,i,t.L):this.scalar(e,t.T,t.L);case"enum":return e===void 0?t.opt:s?this.scalars(e,u.INT32,i):this.scalar(e,u.INT32);case"message":return e===void 0?!0:s?this.messages(e,t.T(),r,i):this.message(e,t.T(),r,i);case"map":if(typeof e!="object"||e===null)return!1;if(i<2)return!0;if(!this.mapKeys(e,t.K,i))return!1;switch(t.V.kind){case"scalar":return this.scalars(Object.values(e),t.V.T,i,t.V.L);case"enum":return this.scalars(Object.values(e),u.INT32,i);case"message":return this.messages(Object.values(e),t.V.T(),r,i)}break}return!0}message(e,t,r,i){return r?t.isAssignable(e,i):t.is(e,i)}messages(e,t,r,i){if(!Array.isArray(e))return!1;if(i<2)return!0;if(r){for(let s=0;s<e.length&&s<i;s++)if(!t.isAssignable(e[s],i-1))return!1}else for(let s=0;s<e.length&&s<i;s++)if(!t.is(e[s],i-1))return!1;return!0}scalar(e,t,r){let i=typeof e;switch(t){case u.UINT64:case u.FIXED64:case u.INT64:case u.SFIXED64:case u.SINT64:switch(r){case F.BIGINT:return i=="bigint";case F.NUMBER:return i=="number"&&!isNaN(e);default:return i=="string"}case u.BOOL:return i=="boolean";case u.STRING:return i=="string";case u.BYTES:return e instanceof Uint8Array;case u.DOUBLE:case u.FLOAT:return i=="number"&&!isNaN(e);default:return i=="number"&&Number.isInteger(e)}}scalars(e,t,r,i){if(!Array.isArray(e))return!1;if(r<2)return!0;if(Array.isArray(e)){for(let s=0;s<e.length&&s<r;s++)if(!this.scalar(e[s],t,i))return!1}return!0}mapKeys(e,t,r){let i=Object.keys(e);switch(t){case u.INT32:case u.FIXED32:case u.SFIXED32:case u.SINT32:case u.UINT32:return this.scalars(i.slice(0,r).map(s=>parseInt(s)),t,r);case u.BOOL:return this.scalars(i.slice(0,r).map(s=>s=="true"?!0:s=="false"?!1:s),t,r);default:return this.scalars(i,t,r,F.STRING)}}};function I(n,e){switch(e){case F.BIGINT:return n.toBigInt();case F.NUMBER:return n.toNumber();default:return n.toString()}}var se=class{constructor(e){this.info=e}prepare(){var e;if(this.fMap===void 0){this.fMap={};let t=(e=this.info.fields)!==null&&e!==void 0?e:[];for(let r of t)this.fMap[r.name]=r,this.fMap[r.jsonName]=r,this.fMap[r.localName]=r}}assert(e,t,r){if(!e){let i=C(r);throw(i=="number"||i=="boolean")&&(i=r.toString()),new Error(`Cannot parse JSON ${i} for ${this.info.typeName}#${t}`)}}read(e,t,r){this.prepare();let i=[];for(let[s,o]of Object.entries(e)){let a=this.fMap[s];if(!a){if(!r.ignoreUnknownFields)throw new Error(`Found unknown field while reading ${this.info.typeName} from JSON format. JSON key: ${s}`);continue}let l=a.localName,f;if(a.oneof){if(o===null&&(a.kind!=="enum"||a.T()[0]!=="google.protobuf.NullValue"))continue;if(i.includes(a.oneof))throw new Error(`Multiple members of the oneof group "${a.oneof}" of ${this.info.typeName} are present in JSON.`);i.push(a.oneof),f=t[a.oneof]={oneofKind:l}}else f=t;if(a.kind=="map"){if(o===null)continue;this.assert(Se(o),a.name,o);let c=f[l];for(let[p,m]of Object.entries(o)){this.assert(m!==null,a.name+" map value",null);let h;switch(a.V.kind){case"message":h=a.V.T().internalJsonRead(m,r);break;case"enum":if(h=this.enum(a.V.T(),m,a.name,r.ignoreUnknownFields),h===!1)continue;break;case"scalar":h=this.scalar(m,a.V.T,a.V.L,a.name);break}this.assert(h!==void 0,a.name+" map value",m);let T=p;a.K==u.BOOL&&(T=T=="true"?!0:T=="false"?!1:T),T=this.scalar(T,a.K,F.STRING,a.name).toString(),c[T]=h}}else if(a.repeat){if(o===null)continue;this.assert(Array.isArray(o),a.name,o);let c=f[l];for(let p of o){this.assert(p!==null,a.name,null);let m;switch(a.kind){case"message":m=a.T().internalJsonRead(p,r);break;case"enum":if(m=this.enum(a.T(),p,a.name,r.ignoreUnknownFields),m===!1)continue;break;case"scalar":m=this.scalar(p,a.T,a.L,a.name);break}this.assert(m!==void 0,a.name,o),c.push(m)}}else switch(a.kind){case"message":if(o===null&&a.T().typeName!="google.protobuf.Value"){this.assert(a.oneof===void 0,a.name+" (oneof member)",null);continue}f[l]=a.T().internalJsonRead(o,r,f[l]);break;case"enum":let c=this.enum(a.T(),o,a.name,r.ignoreUnknownFields);if(c===!1)continue;f[l]=c;break;case"scalar":f[l]=this.scalar(o,a.T,a.L,a.name);break}}}enum(e,t,r,i){if(e[0]=="google.protobuf.NullValue"&&d(t===null||t==="NULL_VALUE",`Unable to parse field ${this.info.typeName}#${r}, enum ${e[0]} only accepts null.`),t===null)return 0;switch(typeof t){case"number":return d(Number.isInteger(t),`Unable to parse field ${this.info.typeName}#${r}, enum can only be integral number, got ${t}.`),t;case"string":let s=t;e[2]&&t.substring(0,e[2].length)===e[2]&&(s=t.substring(e[2].length));let o=e[1][s];return typeof o=="undefined"&&i?!1:(d(typeof o=="number",`Unable to parse field ${this.info.typeName}#${r}, enum ${e[0]} has no value for "${t}".`),o)}d(!1,`Unable to parse field ${this.info.typeName}#${r}, cannot parse enum value from ${typeof t}".`)}scalar(e,t,r,i){let s;try{switch(t){case u.DOUBLE:case u.FLOAT:if(e===null)return 0;if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""){s="empty string";break}if(typeof e=="string"&&e.trim().length!==e.length){s="extra whitespace";break}if(typeof e!="string"&&typeof e!="number")break;let o=Number(e);if(Number.isNaN(o)){s="not a number";break}if(!Number.isFinite(o)){s="too large or small";break}return t==u.FLOAT&&L(o),o;case u.INT32:case u.FIXED32:case u.SFIXED32:case u.SINT32:case u.UINT32:if(e===null)return 0;let a;if(typeof e=="number"?a=e:e===""?s="empty string":typeof e=="string"&&(e.trim().length!==e.length?s="extra whitespace":a=Number(e)),a===void 0)break;return t==u.UINT32?P(a):S(a),a;case u.INT64:case u.SFIXED64:case u.SINT64:if(e===null)return I(g.ZERO,r);if(typeof e!="number"&&typeof e!="string")break;return I(g.from(e),r);case u.FIXED64:case u.UINT64:if(e===null)return I(x.ZERO,r);if(typeof e!="number"&&typeof e!="string")break;return I(x.from(e),r);case u.BOOL:if(e===null)return!1;if(typeof e!="boolean")break;return e;case u.STRING:if(e===null)return"";if(typeof e!="string"){s="extra whitespace";break}try{encodeURIComponent(e)}catch(l){l="invalid UTF8";break}return e;case u.BYTES:if(e===null||e==="")return new Uint8Array(0);if(typeof e!="string")break;return wt(e)}}catch(o){s=o.message}this.assert(!1,i+(s?" - "+s:""),e)}};var oe=class{constructor(e){var t;this.fields=(t=e.fields)!==null&&t!==void 0?t:[]}write(e,t){let r={},i=e;for(let s of this.fields){if(!s.oneof){let f=this.field(s,i[s.localName],t);f!==void 0&&(r[t.useProtoFieldName?s.name:s.jsonName]=f);continue}let o=i[s.oneof];if(o.oneofKind!==s.localName)continue;let a=s.kind=="scalar"||s.kind=="enum"?Object.assign(Object.assign({},t),{emitDefaultValues:!0}):t,l=this.field(s,o[s.localName],a);d(l!==void 0),r[t.useProtoFieldName?s.name:s.jsonName]=l}return r}field(e,t,r){let i;if(e.kind=="map"){d(typeof t=="object"&&t!==null);let s={};switch(e.V.kind){case"scalar":for(let[l,f]of Object.entries(t)){let c=this.scalar(e.V.T,f,e.name,!1,!0);d(c!==void 0),s[l.toString()]=c}break;case"message":let o=e.V.T();for(let[l,f]of Object.entries(t)){let c=this.message(o,f,e.name,r);d(c!==void 0),s[l.toString()]=c}break;case"enum":let a=e.V.T();for(let[l,f]of Object.entries(t)){d(f===void 0||typeof f=="number");let c=this.enum(a,f,e.name,!1,!0,r.enumAsInteger);d(c!==void 0),s[l.toString()]=c}break}(r.emitDefaultValues||Object.keys(s).length>0)&&(i=s)}else if(e.repeat){d(Array.isArray(t));let s=[];switch(e.kind){case"scalar":for(let l=0;l<t.length;l++){let f=this.scalar(e.T,t[l],e.name,e.opt,!0);d(f!==void 0),s.push(f)}break;case"enum":let o=e.T();for(let l=0;l<t.length;l++){d(t[l]===void 0||typeof t[l]=="number");let f=this.enum(o,t[l],e.name,e.opt,!0,r.enumAsInteger);d(f!==void 0),s.push(f)}break;case"message":let a=e.T();for(let l=0;l<t.length;l++){let f=this.message(a,t[l],e.name,r);d(f!==void 0),s.push(f)}break}(r.emitDefaultValues||s.length>0||r.emitDefaultValues)&&(i=s)}else switch(e.kind){case"scalar":i=this.scalar(e.T,t,e.name,e.opt,r.emitDefaultValues);break;case"enum":i=this.enum(e.T(),t,e.name,e.opt,r.emitDefaultValues,r.enumAsInteger);break;case"message":i=this.message(e.T(),t,e.name,r);break}return i}enum(e,t,r,i,s,o){if(e[0]=="google.protobuf.NullValue")return!s&&!i?void 0:null;if(t===void 0){d(i);return}if(!(t===0&&!s&&!i))return d(typeof t=="number"),d(Number.isInteger(t)),o||!e[1].hasOwnProperty(t)?t:e[2]?e[2]+e[1][t]:e[1][t]}message(e,t,r,i){return t===void 0?i.emitDefaultValues?null:void 0:e.internalJsonWrite(t,i)}scalar(e,t,r,i,s){if(t===void 0){d(i);return}let o=s||i;switch(e){case u.INT32:case u.SFIXED32:case u.SINT32:return t===0?o?0:void 0:(S(t),t);case u.FIXED32:case u.UINT32:return t===0?o?0:void 0:(P(t),t);case u.FLOAT:L(t);case u.DOUBLE:return t===0?o?0:void 0:(d(typeof t=="number"),Number.isNaN(t)?"NaN":t===Number.POSITIVE_INFINITY?"Infinity":t===Number.NEGATIVE_INFINITY?"-Infinity":t);case u.STRING:return t===""?o?"":void 0:(d(typeof t=="string"),t);case u.BOOL:return t===!1?o?!1:void 0:(d(typeof t=="boolean"),t);case u.UINT64:case u.FIXED64:d(typeof t=="number"||typeof t=="string"||typeof t=="bigint");let a=x.from(t);return a.isZero()&&!o?void 0:a.toString();case u.INT64:case u.SFIXED64:case u.SINT64:d(typeof t=="number"||typeof t=="string"||typeof t=="bigint");let l=g.from(t);return l.isZero()&&!o?void 0:l.toString();case u.BYTES:return d(t instanceof Uint8Array),t.byteLength?Tt(t):o?"":void 0}}};function J(n,e=F.STRING){switch(n){case u.BOOL:return!1;case u.UINT64:case u.FIXED64:return I(x.ZERO,e);case u.INT64:case u.SFIXED64:case u.SINT64:return I(g.ZERO,e);case u.DOUBLE:case u.FLOAT:return 0;case u.BYTES:return new Uint8Array(0);case u.STRING:return"";default:return 0}}var ae=class{constructor(e){this.info=e}prepare(){var e;if(!this.fieldNoToField){let t=(e=this.info.fields)!==null&&e!==void 0?e:[];this.fieldNoToField=new Map(t.map(r=>[r.no,r]))}}read(e,t,r,i){this.prepare();let s=i===void 0?e.len:e.pos+i;for(;e.pos<s;){let[o,a]=e.tag(),l=this.fieldNoToField.get(o);if(!l){let m=r.readUnknownField;if(m=="throw")throw new Error(`Unknown field ${o} (wire type ${a}) for ${this.info.typeName}`);let h=e.skip(a);m!==!1&&(m===!0?B.onRead:m)(this.info.typeName,t,o,a,h);continue}let f=t,c=l.repeat,p=l.localName;switch(l.oneof&&(f=f[l.oneof],f.oneofKind!==p&&(f=t[l.oneof]={oneofKind:p})),l.kind){case"scalar":case"enum":let m=l.kind=="enum"?u.INT32:l.T,h=l.kind=="scalar"?l.L:void 0;if(c){let _=f[p];if(a==w.LengthDelimited&&m!=u.STRING&&m!=u.BYTES){let be=e.uint32()+e.pos;for(;e.pos<be;)_.push(this.scalar(e,m,h))}else _.push(this.scalar(e,m,h))}else f[p]=this.scalar(e,m,h);break;case"message":if(c){let _=f[p],be=l.T().internalBinaryRead(e,e.uint32(),r);_.push(be)}else f[p]=l.T().internalBinaryRead(e,e.uint32(),r,f[p]);break;case"map":let[T,O]=this.mapEntry(l,e,r);f[p][T]=O;break}}}mapEntry(e,t,r){let i=t.uint32(),s=t.pos+i,o,a;for(;t.pos<s;){let[l,f]=t.tag();switch(l){case 1:e.K==u.BOOL?o=t.bool().toString():o=this.scalar(t,e.K,F.STRING);break;case 2:switch(e.V.kind){case"scalar":a=this.scalar(t,e.V.T,e.V.L);break;case"enum":a=t.int32();break;case"message":a=e.V.T().internalBinaryRead(t,t.uint32(),r);break}break;default:throw new Error(`Unknown field ${l} (wire type ${f}) in map entry for ${this.info.typeName}#${e.name}`)}}if(o===void 0){let l=J(e.K);o=e.K==u.BOOL?l.toString():l}if(a===void 0)switch(e.V.kind){case"scalar":a=J(e.V.T,e.V.L);break;case"enum":a=0;break;case"message":a=e.V.T().create();break}return[o,a]}scalar(e,t,r){switch(t){case u.INT32:return e.int32();case u.STRING:return e.string();case u.BOOL:return e.bool();case u.DOUBLE:return e.double();case u.FLOAT:return e.float();case u.INT64:return I(e.int64(),r);case u.UINT64:return I(e.uint64(),r);case u.FIXED64:return I(e.fixed64(),r);case u.FIXED32:return e.fixed32();case u.BYTES:return e.bytes();case u.UINT32:return e.uint32();case u.SFIXED32:return e.sfixed32();case u.SFIXED64:return I(e.sfixed64(),r);case u.SINT32:return e.sint32();case u.SINT64:return I(e.sint64(),r)}}};var le=class{constructor(e){this.info=e}prepare(){if(!this.fields){let e=this.info.fields?this.info.fields.concat():[];this.fields=e.sort((t,r)=>t.no-r.no)}}write(e,t,r){this.prepare();for(let s of this.fields){let o,a,l=s.repeat,f=s.localName;if(s.oneof){let c=e[s.oneof];if(c.oneofKind!==f)continue;o=c[f],a=!0}else o=e[f],a=!1;switch(s.kind){case"scalar":case"enum":let c=s.kind=="enum"?u.INT32:s.T;if(l)if(d(Array.isArray(o)),l==$.PACKED)this.packed(t,c,s.no,o);else for(let p of o)this.scalar(t,c,s.no,p,!0);else o===void 0?d(s.opt):this.scalar(t,c,s.no,o,a||s.opt);break;case"message":if(l){d(Array.isArray(o));for(let p of o)this.message(t,r,s.T(),s.no,p)}else this.message(t,r,s.T(),s.no,o);break;case"map":d(typeof o=="object"&&o!==null);for(let[p,m]of Object.entries(o))this.mapEntry(t,r,s,p,m);break}}let i=r.writeUnknownFields;i!==!1&&(i===!0?B.onWrite:i)(this.info.typeName,e,t)}mapEntry(e,t,r,i,s){e.tag(r.no,w.LengthDelimited),e.fork();let o=i;switch(r.K){case u.INT32:case u.FIXED32:case u.UINT32:case u.SFIXED32:case u.SINT32:o=Number.parseInt(i);break;case u.BOOL:d(i=="true"||i=="false"),o=i=="true";break}switch(this.scalar(e,r.K,1,o,!0),r.V.kind){case"scalar":this.scalar(e,r.V.T,2,s,!0);break;case"enum":this.scalar(e,u.INT32,2,s,!0);break;case"message":this.message(e,t,r.V.T(),2,s);break}e.join()}message(e,t,r,i,s){s!==void 0&&(r.internalBinaryWrite(s,e.tag(i,w.LengthDelimited).fork(),t),e.join())}scalar(e,t,r,i,s){let[o,a,l]=this.scalarInfo(t,i);(!l||s)&&(e.tag(r,o),e[a](i))}packed(e,t,r,i){if(!i.length)return;d(t!==u.BYTES&&t!==u.STRING),e.tag(r,w.LengthDelimited),e.fork();let[,s]=this.scalarInfo(t);for(let o=0;o<i.length;o++)e[s](i[o]);e.join()}scalarInfo(e,t){let r=w.Varint,i,s=t===void 0,o=t===0;switch(e){case u.INT32:i="int32";break;case u.STRING:o=s||!t.length,r=w.LengthDelimited,i="string";break;case u.BOOL:o=t===!1,i="bool";break;case u.UINT32:i="uint32";break;case u.DOUBLE:r=w.Bit64,i="double";break;case u.FLOAT:r=w.Bit32,i="float";break;case u.INT64:o=s||g.from(t).isZero(),i="int64";break;case u.UINT64:o=s||x.from(t).isZero(),i="uint64";break;case u.FIXED64:o=s||x.from(t).isZero(),r=w.Bit64,i="fixed64";break;case u.BYTES:o=s||!t.byteLength,r=w.LengthDelimited,i="bytes";break;case u.FIXED32:r=w.Bit32,i="fixed32";break;case u.SFIXED32:r=w.Bit32,i="sfixed32";break;case u.SFIXED64:o=s||g.from(t).isZero(),r=w.Bit64,i="sfixed64";break;case u.SINT32:i="sint32";break;case u.SINT64:o=s||g.from(t).isZero(),i="sint64";break}return[r,i,s||o]}};function Bt(n){let e={};Object.defineProperty(e,Ct,{enumerable:!1,value:n});for(let t of n.fields){let r=t.localName;if(!t.opt)if(t.oneof)e[t.oneof]={oneofKind:void 0};else if(t.repeat)e[r]=[];else switch(t.kind){case"scalar":e[r]=J(t.T,t.L);break;case"enum":e[r]=0;break;case"map":e[r]={};break}}return e}function ue(n,e,t){let r,i=t,s;for(let o of n.fields){let a=o.localName;if(o.oneof){let l=i[o.oneof];if((l==null?void 0:l.oneofKind)==null)continue;if(r=l[a],s=e[o.oneof],s.oneofKind=l.oneofKind,r==null){delete s[a];continue}}else if(r=i[a],s=e,r==null)continue;switch(o.repeat&&(s[a].length=r.length),o.kind){case"scalar":case"enum":if(o.repeat)for(let f=0;f<r.length;f++)s[a][f]=r[f];else s[a]=r;break;case"message":let l=o.T();if(o.repeat)for(let f=0;f<r.length;f++)s[a][f]=l.create(r[f]);else s[a]===void 0?s[a]=l.create(r):l.mergePartial(s[a],r);break;case"map":switch(o.V.kind){case"scalar":case"enum":Object.assign(s[a],r);break;case"message":let f=o.V.T();for(let c of Object.keys(r))s[a][c]=f.create(r[c]);break}break}}}function vt(n,e,t){if(e===t)return!0;if(!e||!t)return!1;for(let r of n.fields){let i=r.localName,s=r.oneof?e[r.oneof][i]:e[i],o=r.oneof?t[r.oneof][i]:t[i];switch(r.kind){case"enum":case"scalar":let a=r.kind=="enum"?u.INT32:r.T;if(!(r.repeat?Lt(a,s,o):Mt(a,s,o)))return!1;break;case"map":if(!(r.V.kind=="message"?Vt(r.V.T(),fe(s),fe(o)):Lt(r.V.kind=="enum"?u.INT32:r.V.T,fe(s),fe(o))))return!1;break;case"message":let l=r.T();if(!(r.repeat?Vt(l,s,o):l.equals(s,o)))return!1;break}}return!0}var fe=Object.values;function Mt(n,e,t){if(e===t)return!0;if(n!==u.BYTES)return!1;let r=e,i=t;if(r.length!==i.length)return!1;for(let s=0;s<r.length;s++)if(r[s]!=i[s])return!1;return!0}function Lt(n,e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!Mt(n,e[r],t[r]))return!1;return!0}function Vt(n,e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!n.equals(e[r],t[r]))return!1;return!0}var y=class{constructor(e,t,r){this.defaultCheckDepth=16,this.typeName=e,this.fields=t.map(Pt),this.options=r!=null?r:{},this.refTypeCheck=new ie(this),this.refJsonReader=new se(this),this.refJsonWriter=new oe(this),this.refBinReader=new ae(this),this.refBinWriter=new le(this)}create(e){let t=Bt(this);return e!==void 0&&ue(this,t,e),t}clone(e){let t=this.create();return ue(this,t,e),t}equals(e,t){return vt(this,e,t)}is(e,t=this.defaultCheckDepth){return this.refTypeCheck.is(e,t,!1)}isAssignable(e,t=this.defaultCheckDepth){return this.refTypeCheck.is(e,t,!0)}mergePartial(e,t){ue(this,e,t)}fromBinary(e,t){let r=Nt(t);return this.internalBinaryRead(r.readerFactory(e),e.byteLength,r)}fromJson(e,t){return this.internalJsonRead(e,At(t))}fromJsonString(e,t){let r=JSON.parse(e);return this.fromJson(r,t)}toJson(e,t){return this.internalJsonWrite(e,Dt(t))}toJsonString(e,t){var r;let i=this.toJson(e,t);return JSON.stringify(i,null,(r=t==null?void 0:t.prettySpaces)!==null&&r!==void 0?r:0)}toBinary(e,t){let r=Rt(t);return this.internalBinaryWrite(e,r.writerFactory(),r).finish()}internalJsonRead(e,t,r){if(e!==null&&typeof e=="object"&&!Array.isArray(e)){let i=r!=null?r:this.create();return this.refJsonReader.read(e,i,t),i}throw new Error(`Unable to parse message ${this.typeName} from JSON ${C(e)}.`)}internalJsonWrite(e,t){return this.refJsonWriter.write(e,t)}internalBinaryWrite(e,t,r){return this.refBinWriter.write(e,t,r),t}internalBinaryRead(e,t,r,i){let s=i!=null?i:this.create();return this.refBinReader.read(e,s,r,t),s}};var Ue=class extends y{constructor(){super("google.protobuf.Timestamp",[{no:1,name:"seconds",kind:"scalar",T:3,L:0},{no:2,name:"nanos",kind:"scalar",T:5}])}now(){let e=this.create(),t=Date.now();return e.seconds=g.from(Math.floor(t/1e3)).toBigInt(),e.nanos=t%1e3*1e6,e}toDate(e){return new Date(g.from(e.seconds).toNumber()*1e3+Math.ceil(e.nanos/1e6))}fromDate(e){let t=this.create(),r=e.getTime();return t.seconds=g.from(Math.floor(r/1e3)).toBigInt(),t.nanos=r%1e3*1e6,t}internalJsonWrite(e,t){let r=g.from(e.seconds).toNumber()*1e3;if(r<Date.parse("0001-01-01T00:00:00Z")||r>Date.parse("9999-12-31T23:59:59Z"))throw new Error("Unable to encode Timestamp to JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");if(e.nanos<0)throw new Error("Unable to encode invalid Timestamp to JSON. Nanos must not be negative.");let i="Z";if(e.nanos>0){let s=(e.nanos+1e9).toString().substring(1);s.substring(3)==="000000"?i="."+s.substring(0,3)+"Z":s.substring(6)==="000"?i="."+s.substring(0,6)+"Z":i="."+s+"Z"}return new Date(r).toISOString().replace(".000Z",i)}internalJsonRead(e,t,r){if(typeof e!="string")throw new Error("Unable to parse Timestamp from JSON "+C(e)+".");let i=e.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!i)throw new Error("Unable to parse Timestamp from JSON. Invalid format.");let s=Date.parse(i[1]+"-"+i[2]+"-"+i[3]+"T"+i[4]+":"+i[5]+":"+i[6]+(i[8]?i[8]:"Z"));if(Number.isNaN(s))throw new Error("Unable to parse Timestamp from JSON. Invalid value.");if(s<Date.parse("0001-01-01T00:00:00Z")||s>Date.parse("9999-12-31T23:59:59Z"))throw new globalThis.Error("Unable to parse Timestamp from JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.");return r||(r=this.create()),r.seconds=g.from(s/1e3).toBigInt(),r.nanos=0,i[7]&&(r.nanos=parseInt("1"+i[7]+"0".repeat(9-i[7].length))-1e9),r}},Wt=new Ue;var $t=(r=>(r[r.UNKNOWN=0]="UNKNOWN",r[r.PATH=1]="PATH",r[r.CMD=2]="CMD",r))($t||{}),Jt=(i=>(i[i.UNSPECIFIED=0]="UNSPECIFIED",i[i.CANCELLED=1]="CANCELLED",i[i.CANCELLING=2]="CANCELLING",i[i.NOT_CANCELLABLE=3]="NOT_CANCELLABLE",i))(Jt||{}),Be=class extends y{constructor(){super("arrow.flight.protocol.HandshakeRequest",[{no:1,name:"protocol_version",kind:"scalar",T:4,L:0},{no:2,name:"payload",kind:"scalar",T:12}])}},fr=new Be,Le=class extends y{constructor(){super("arrow.flight.protocol.HandshakeResponse",[{no:1,name:"protocol_version",kind:"scalar",T:4,L:0},{no:2,name:"payload",kind:"scalar",T:12}])}},cr=new Le,Ve=class extends y{constructor(){super("arrow.flight.protocol.BasicAuth",[{no:2,name:"username",kind:"scalar",T:9},{no:3,name:"password",kind:"scalar",T:9}])}},Mi=new Ve,ve=class extends y{constructor(){super("arrow.flight.protocol.Empty",[])}},pr=new ve,Me=class extends y{constructor(){super("arrow.flight.protocol.ActionType",[{no:1,name:"type",kind:"scalar",T:9},{no:2,name:"description",kind:"scalar",T:9}])}},mr=new Me,We=class extends y{constructor(){super("arrow.flight.protocol.Criteria",[{no:1,name:"expression",kind:"scalar",T:12}])}},hr=new We,qe=class extends y{constructor(){super("arrow.flight.protocol.Action",[{no:1,name:"type",kind:"scalar",T:9},{no:2,name:"body",kind:"scalar",T:12}])}},dr=new qe,$e=class extends y{constructor(){super("arrow.flight.protocol.CancelFlightInfoRequest",[{no:1,name:"info",kind:"message",T:()=>Ze}])}},Wi=new $e,Je=class extends y{constructor(){super("arrow.flight.protocol.RenewFlightEndpointRequest",[{no:1,name:"endpoint",kind:"message",T:()=>jt}])}},qi=new Je,je=class extends y{constructor(){super("arrow.flight.protocol.Result",[{no:1,name:"body",kind:"scalar",T:12}])}},gr=new je,Ge=class extends y{constructor(){super("arrow.flight.protocol.CancelFlightInfoResult",[{no:1,name:"status",kind:"enum",T:()=>["arrow.flight.protocol.CancelStatus",Jt,"CANCEL_STATUS_"]}])}},$i=new Ge,Ke=class extends y{constructor(){super("arrow.flight.protocol.SchemaResult",[{no:1,name:"schema",kind:"scalar",T:12}])}},br=new Ke,He=class extends y{constructor(){super("arrow.flight.protocol.FlightDescriptor",[{no:1,name:"type",kind:"enum",T:()=>["arrow.flight.protocol.FlightDescriptor.DescriptorType",$t]},{no:2,name:"cmd",kind:"scalar",T:12},{no:3,name:"path",kind:"scalar",repeat:2,T:9}])}},pe=new He,Xe=class extends y{constructor(){super("arrow.flight.protocol.FlightInfo",[{no:1,name:"schema",kind:"scalar",T:12},{no:2,name:"flight_descriptor",kind:"message",T:()=>pe},{no:3,name:"endpoint",kind:"message",repeat:1,T:()=>jt},{no:4,name:"total_records",kind:"scalar",T:3,L:0},{no:5,name:"total_bytes",kind:"scalar",T:3,L:0},{no:6,name:"ordered",kind:"scalar",T:8}])}},Ze=new Xe,Qe=class extends y{constructor(){super("arrow.flight.protocol.FlightEndpoint",[{no:1,name:"ticket",kind:"message",T:()=>me},{no:2,name:"location",kind:"message",repeat:1,T:()=>yr},{no:3,name:"expiration_time",kind:"message",T:()=>Wt}])}},jt=new Qe,Ye=class extends y{constructor(){super("arrow.flight.protocol.Location",[{no:1,name:"uri",kind:"scalar",T:9}])}},yr=new Ye,ze=class extends y{constructor(){super("arrow.flight.protocol.Ticket",[{no:1,name:"ticket",kind:"scalar",T:12}])}},me=new ze,et=class extends y{constructor(){super("arrow.flight.protocol.FlightData",[{no:1,name:"flight_descriptor",kind:"message",T:()=>pe},{no:2,name:"data_header",kind:"scalar",T:12},{no:3,name:"app_metadata",kind:"scalar",T:12},{no:1e3,name:"data_body",kind:"scalar",T:12}])}},ce=new et,tt=class extends y{constructor(){super("arrow.flight.protocol.PutResult",[{no:1,name:"app_metadata",kind:"scalar",T:12}])}},wr=new tt,he=new qt.ServiceType("arrow.flight.protocol.FlightService",[{name:"Handshake",serverStreaming:!0,clientStreaming:!0,options:{},I:fr,O:cr},{name:"ListFlights",serverStreaming:!0,options:{},I:hr,O:Ze},{name:"GetFlightInfo",options:{},I:pe,O:Ze},{name:"GetSchema",options:{},I:pe,O:br},{name:"DoGet",serverStreaming:!0,options:{},I:me,O:ce},{name:"DoPut",serverStreaming:!0,clientStreaming:!0,options:{},I:ce,O:wr},{name:"DoExchange",serverStreaming:!0,clientStreaming:!0,options:{},I:ce,O:ce},{name:"DoAction",serverStreaming:!0,options:{},I:dr,O:gr},{name:"ListActions",serverStreaming:!0,options:{},I:pr,O:mr}]);var k=K("@protobuf-ts/runtime-rpc"),de=class{constructor(e){this._transport=e;this.typeName=he.typeName;this.methods=he.methods;this.options=he.options}handshake(e){let t=this.methods[0],r=this._transport.mergeOptions(e);return(0,k.stackIntercept)("duplex",this._transport,t,r)}listFlights(e,t){let r=this.methods[1],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("serverStreaming",this._transport,r,i,e)}getFlightInfo(e,t){let r=this.methods[2],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("unary",this._transport,r,i,e)}getSchema(e,t){let r=this.methods[3],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("unary",this._transport,r,i,e)}doGet(e,t){let r=this.methods[4],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("serverStreaming",this._transport,r,i,e)}doPut(e){let t=this.methods[5],r=this._transport.mergeOptions(e);return(0,k.stackIntercept)("duplex",this._transport,t,r)}doExchange(e){let t=this.methods[6],r=this._transport.mergeOptions(e);return(0,k.stackIntercept)("duplex",this._transport,t,r)}doAction(e,t){let r=this.methods[7],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("serverStreaming",this._transport,r,i,e)}listActions(e,t){let r=this.methods[8],i=this._transport.mergeOptions(t);return(0,k.stackIntercept)("serverStreaming",this._transport,r,i,e)}};var j=class{constructor(e){this._options=e;this._closed=!1;this._transport=W.queryTransport(this._options),this._flightClient=new de(this._transport)}async*_queryRawBatches(e,t,r){if(this._closed)throw new Error("queryApi: already closed!");let i=this._flightClient,s={database:t,sql_query:e,query_type:r},o=me.create({ticket:new TextEncoder().encode(JSON.stringify(s))}),a={},l=this._options.token;l&&(a.authorization=`Bearer ${l}`);let f={meta:a},c=i.doGet(o,f),p=async function*(){for await(let h of c.responses)yield ht(h.dataHeader.length),yield h.dataHeader,yield h.dataBody}();yield*await ge.RecordBatchReader.from(p)}async*query(e,t,r){var s;let i=this._queryRawBatches(e,t,r);for await(let o of i)for(let a=0;a<o.numRows;a++){let l={};for(let f=0;f<o.numCols;f++){let c=o.schema.fields[f].name,p=(s=o.getChildAt(f))==null?void 0:s.get(a);l[c]=p}yield l}}async*queryPoints(e,t,r){var s;let i=this._queryRawBatches(e,t,r);for await(let o of i)for(let a=0;a<o.numRows;a++){let l=new R;for(let f=0;f<o.numCols;f++){let c=o.schema.fields[f],p=c.name,m=(s=o.getChildAt(f))==null?void 0:s.get(a),h=c.typeId,T=c.metadata.get("iox::column::type");if(m==null)continue;if((p==="measurement"||p=="iox::measurement")&&typeof m=="string"){l.setMeasurement(m);continue}if(!T){p==="time"&&h===ge.Type.Timestamp?l.setTimestamp(m):l.setField(p,m);continue}let[,,O,_]=T.split("::");O==="field"?_&&m!==void 0&&m!==null&&l.setField(p,m,_):O==="tag"?l.setTag(p,m):O==="timestamp"&&l.setTimestamp(m)}yield l}}async close(){var e,t;this._closed=!0,(t=(e=this._transport).close)==null||t.call(e)}};var rt=`Please specify the 'database' as a method parameter or use default configuration at 'ClientOptions.database'
|
|
11
|
+
`,G=class{constructor(e){this._mergeWriteOptions=e=>({...this._options.writeOptions,...e});if(e==null)throw new U("No configuration specified!");this._options=e;let t=this._options.host;if(typeof t!="string")throw new U("No host specified!");t.endsWith("/")&&(this._options.host=t.substring(0,t.length-1)),this._queryApi=new j(this._options),this._writeApi=new q(this._options)}async write(e,t,r,i){var s;await this._writeApi.doWrite(Ee(e),(s=t!=null?t:this._options.database)!=null?s:X(new Error(rt)),r,this._mergeWriteOptions(i))}query(e,t,r="sql"){var i;return this._queryApi.query(e,(i=t!=null?t:this._options.database)!=null?i:X(new Error(rt)),r)}queryPoints(e,t,r="sql"){var i;return this._queryApi.queryPoints(e,(i=t!=null?t:this._options.database)!=null?i:X(new Error(rt)),r)}async close(){await this._writeApi.close(),await this._queryApi.close()}};return Qt(Tr);})();
|
|
12
|
+
Object.defineProperty(exports, '__esModule', { value: true });Object.assign(exports, influxdb);}));
|
|
13
|
+
//# sourceMappingURL=index.browser.js.map
|
|
Binary file
|