Skip to content

Commit bd720cd

Browse files
committed
fix: Adjust the lint issues
Signed-off-by: Pascal Zimmermann <pascal.zimmermann@theiotstudio.com>
1 parent f62ef9b commit bd720cd

14 files changed

Lines changed: 357 additions & 22 deletions

File tree

sql/go.mod

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
module github.com/perses/plugins/sql
2+
3+
go 1.26.2
4+
5+
require (
6+
github.com/perses/perses v0.54.0-beta.2
7+
github.com/perses/spec v0.2.0-beta.6
8+
)
9+
10+
require (
11+
github.com/beorn7/perks v1.0.1 // indirect
12+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
13+
github.com/go-jose/go-jose/v4 v4.1.4 // indirect
14+
github.com/golang-jwt/jwt/v5 v5.3.1 // indirect
15+
github.com/google/uuid v1.6.0 // indirect
16+
github.com/jpillora/backoff v1.0.0 // indirect
17+
github.com/kr/text v0.2.0 // indirect
18+
github.com/muhlemmer/gu v0.3.1 // indirect
19+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
20+
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f // indirect
21+
github.com/perses/common v0.31.1 // indirect
22+
github.com/prometheus/client_golang v1.23.2 // indirect
23+
github.com/prometheus/client_model v0.6.2 // indirect
24+
github.com/prometheus/common v0.68.1 // indirect
25+
github.com/prometheus/procfs v0.19.2 // indirect
26+
github.com/zitadel/oidc/v3 v3.47.5 // indirect
27+
github.com/zitadel/schema v1.3.2 // indirect
28+
go.yaml.in/yaml/v2 v2.4.4 // indirect
29+
golang.org/x/net v0.55.0 // indirect
30+
golang.org/x/oauth2 v0.36.0 // indirect
31+
golang.org/x/sys v0.46.0 // indirect
32+
golang.org/x/text v0.38.0 // indirect
33+
google.golang.org/protobuf v1.36.12-0.20260120151049-f2248ac996af // indirect
34+
gopkg.in/yaml.v3 v3.0.1 // indirect
35+
)

sql/go.sum

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
2+
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
3+
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
4+
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
5+
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
6+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
7+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
8+
github.com/go-jose/go-jose/v4 v4.1.4 h1:moDMcTHmvE6Groj34emNPLs/qtYXRVcd6S7NHbHz3kA=
9+
github.com/go-jose/go-jose/v4 v4.1.4/go.mod h1:x4oUasVrzR7071A4TnHLGSPpNOm2a21K9Kf04k1rs08=
10+
github.com/golang-jwt/jwt/v5 v5.3.1 h1:kYf81DTWFe7t+1VvL7eS+jKFVWaUnK9cB1qbwn63YCY=
11+
github.com/golang-jwt/jwt/v5 v5.3.1/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE=
12+
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
13+
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
14+
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
15+
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
16+
github.com/jpillora/backoff v1.0.0 h1:uvFg412JmmHBHw7iwprIxkPMI+sGQ4kzOWsMeHnm2EA=
17+
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
18+
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
19+
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
20+
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
21+
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
22+
github.com/muhlemmer/gu v0.3.1 h1:7EAqmFrW7n3hETvuAdmFmn4hS8W+z3LgKtrnow+YzNM=
23+
github.com/muhlemmer/gu v0.3.1/go.mod h1:YHtHR+gxM+bKEIIs7Hmi9sPT3ZDUvTN/i88wQpZkrdM=
24+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
25+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
26+
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU=
27+
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
28+
github.com/nexucis/lamenv v0.5.2 h1:tK/u3XGhCq9qIoVNcXsK9LZb8fKopm0A5weqSRvHd7M=
29+
github.com/nexucis/lamenv v0.5.2/go.mod h1:HusJm6ltmmT7FMG8A750mOLuME6SHCsr2iFYxp5fFi0=
30+
github.com/perses/common v0.31.1 h1:Rr4XfHexru+4fbovvB6uDd3nycP76JMegVTTFRkp/lM=
31+
github.com/perses/common v0.31.1/go.mod h1:utnPOuEk6q0JkaD9I8auzlsDLEkuLnVsNZZHsKIl9T8=
32+
github.com/perses/perses v0.54.0-beta.2 h1:0okxiICGuBdSD7IlCL3zgTE6fIzx/MbEBlL/DwES/94=
33+
github.com/perses/perses v0.54.0-beta.2/go.mod h1:TxPV2XVxR4hs6Q6RSc+Bqqy//nUyVEN94vWtt2hjpN4=
34+
github.com/perses/spec v0.2.0-beta.6 h1:QppHTJudgwChcsp+miJRPKCe6QsIst3UwxBFuBBlWm0=
35+
github.com/perses/spec v0.2.0-beta.6/go.mod h1:hV2Hojz3oYF/3Trvsy4E7BE5bP1V6e1/T2ExtHwRfkw=
36+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
37+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
38+
github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o=
39+
github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg=
40+
github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
41+
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
42+
github.com/prometheus/common v0.68.1 h1:omjRRl4QP4komogpXuhfeOiisQg7xdy8VM1UY+pStaY=
43+
github.com/prometheus/common v0.68.1/go.mod h1:ZzL3f6u94qUxh9p+tJTrF+FvBS1XXbbRAZCQkytAL0Y=
44+
github.com/prometheus/procfs v0.19.2 h1:zUMhqEW66Ex7OXIiDkll3tl9a1ZdilUOd/F6ZXw4Vws=
45+
github.com/prometheus/procfs v0.19.2/go.mod h1:M0aotyiemPhBCM0z5w87kL22CxfcH05ZpYlu+b4J7mw=
46+
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
47+
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
48+
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
49+
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
50+
github.com/zitadel/oidc/v3 v3.47.5 h1:cR2z0oqa5XZkwpXQiPCUGqKtndrjHgEXb81y3oXocK4=
51+
github.com/zitadel/oidc/v3 v3.47.5/go.mod h1:XxFh0666HRXycyrKmono+3gY0RACpYJLgy4r/+kliKY=
52+
github.com/zitadel/schema v1.3.2 h1:gfJvt7dOMfTmxzhscZ9KkapKo3Nei3B6cAxjav+lyjI=
53+
github.com/zitadel/schema v1.3.2/go.mod h1:IZmdfF9Wu62Zu6tJJTH3UsArevs3Y4smfJIj3L8fzxw=
54+
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
55+
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
56+
go.yaml.in/yaml/v2 v2.4.4 h1:tuyd0P+2Ont/d6e2rl3be67goVK4R6deVxCUX5vyPaQ=
57+
go.yaml.in/yaml/v2 v2.4.4/go.mod h1:gMZqIpDtDqOfM0uNfy0SkpRhvUryYH0Z6wdMYcacYXQ=
58+
golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8=
59+
golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww=
60+
golang.org/x/oauth2 v0.36.0 h1:peZ/1z27fi9hUOFCAZaHyrpWG5lwe0RJEEEeH0ThlIs=
61+
golang.org/x/oauth2 v0.36.0/go.mod h1:YDBUJMTkDnJS+A4BP4eZBjCqtokkg1hODuPjwiGPO7Q=
62+
golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw=
63+
golang.org/x/sys v0.46.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
64+
golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE=
65+
golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4=
66+
google.golang.org/protobuf v1.36.12-0.20260120151049-f2248ac996af h1:+5/Sw3GsDNlEmu7TfklWKPdQ0Ykja5VEmq2i817+jbI=
67+
google.golang.org/protobuf v1.36.12-0.20260120151049-f2248ac996af/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
68+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
69+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
70+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
71+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
72+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

sql/schemas/datasource/sql.cue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,4 @@ spec: {
2525
commonProxy.#baseSQLDatasourceSpec
2626
}
2727

28-
#selector: common.#datasourceSelector & { _kind: #kind }
28+
#selector: common.#datasourceSelector & {_kind: #kind}

sql/schemas/sql-time-series-query/sql-time-series-query.cue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ import (
2222
kind: #kind
2323
spec: close({
2424
ds.#selector
25-
query: string
26-
minStep?: int
27-
timeColumn?: string
25+
query: string
26+
minStep?: int
27+
timeColumn?: string
2828
labelColumns?: [...string]
2929
valueColumns?: [...string]
30-
timeFormat?: string
30+
timeFormat?: string
3131
})
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
// Copyright The Perses Authors
2+
// Licensed under the Apache License, Version 2.0 (the "License");
3+
// you may not use this file except in compliance with the License.
4+
// You may obtain a copy of the License at
5+
//
6+
// http://www.apache.org/licenses/LICENSE-2.0
7+
//
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
14+
package datasource
15+
16+
import (
17+
"github.com/perses/perses/go-sdk/datasource"
18+
datasourceSpec "github.com/perses/spec/go/datasource"
19+
)
20+
21+
const (
22+
PluginKind = "SQLDatasource"
23+
)
24+
25+
type Option func(plugin *Builder) error
26+
27+
func create(options ...Option) (Builder, error) {
28+
builder := &Builder{
29+
SQLDatasourceSpec: datasourceSpec.SQLDatasourceSpec{},
30+
}
31+
32+
var defaults []Option
33+
34+
for _, opt := range append(defaults, options...) {
35+
if err := opt(builder); err != nil {
36+
return *builder, err
37+
}
38+
}
39+
40+
return *builder, nil
41+
}
42+
43+
type Builder struct {
44+
datasourceSpec.SQLDatasourceSpec `json:",inline" yaml:",inline"`
45+
}
46+
47+
func SQL(options ...Option) datasource.Option {
48+
return func(builder *datasource.Builder) error {
49+
plugin, err := create(options...)
50+
if err != nil {
51+
return err
52+
}
53+
54+
builder.Spec.Plugin.Kind = PluginKind
55+
builder.Spec.Plugin.Spec = plugin.SQLDatasourceSpec
56+
return nil
57+
}
58+
}
59+
60+
func Selector(datasourceName string) *datasource.Selector {
61+
return &datasource.Selector{
62+
Kind: PluginKind,
63+
Name: datasourceName,
64+
}
65+
}

sql/sdk/go/datasource/options.go

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Copyright The Perses Authors
2+
// Licensed under the Apache License, Version 2.0 (the "License");
3+
// you may not use this file except in compliance with the License.
4+
// You may obtain a copy of the License at
5+
//
6+
// http://www.apache.org/licenses/LICENSE-2.0
7+
//
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
14+
package datasource
15+
16+
import (
17+
sqlSpec "github.com/perses/spec/go/datasource/proxy/sql"
18+
)
19+
20+
func WithProxy(config sqlSpec.Config) Option {
21+
return func(builder *Builder) error {
22+
builder.Proxy = &sqlSpec.Proxy{
23+
Kind: sqlSpec.ProxyKindName,
24+
Spec: config,
25+
}
26+
return nil
27+
}
28+
}
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// Copyright The Perses Authors
2+
// Licensed under the Apache License, Version 2.0 (the "License");
3+
// you may not use this file except in compliance with the License.
4+
// You may obtain a copy of the License at
5+
//
6+
// http://www.apache.org/licenses/LICENSE-2.0
7+
//
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
14+
package timeseries
15+
16+
import (
17+
sqlDatasource "github.com/perses/plugins/sql/sdk/go/datasource"
18+
)
19+
20+
func Query(sqlQuery string) Option {
21+
return func(builder *Builder) error {
22+
builder.Query = sqlQuery
23+
return nil
24+
}
25+
}
26+
27+
func Datasource(datasourceName string) Option {
28+
return func(builder *Builder) error {
29+
builder.Datasource = sqlDatasource.Selector(datasourceName)
30+
return nil
31+
}
32+
}
33+
34+
func TimeColumn(column string) Option {
35+
return func(builder *Builder) error {
36+
builder.TimeColumn = column
37+
return nil
38+
}
39+
}
40+
41+
func ValueColumns(columns ...string) Option {
42+
return func(builder *Builder) error {
43+
builder.ValueColumns = columns
44+
return nil
45+
}
46+
}
47+
48+
func LabelColumns(columns ...string) Option {
49+
return func(builder *Builder) error {
50+
builder.LabelColumns = columns
51+
return nil
52+
}
53+
}
54+
55+
func MinStep(step int) Option {
56+
return func(builder *Builder) error {
57+
builder.MinStep = step
58+
return nil
59+
}
60+
}
61+
62+
func TimeFormat(format string) Option {
63+
return func(builder *Builder) error {
64+
builder.TimeFormat = format
65+
return nil
66+
}
67+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
// Copyright The Perses Authors
2+
// Licensed under the Apache License, Version 2.0 (the "License");
3+
// you may not use this file except in compliance with the License.
4+
// You may obtain a copy of the License at
5+
//
6+
// http://www.apache.org/licenses/LICENSE-2.0
7+
//
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
14+
package timeseries
15+
16+
import (
17+
"github.com/perses/perses/go-sdk/datasource"
18+
"github.com/perses/perses/go-sdk/query"
19+
"github.com/perses/spec/go/plugin"
20+
)
21+
22+
const PluginKind = "SQLTimeSeriesQuery"
23+
24+
type PluginSpec struct {
25+
Datasource *datasource.Selector `json:"datasource,omitempty" yaml:"datasource,omitempty"`
26+
Query string `json:"query" yaml:"query"`
27+
TimeColumn string `json:"timeColumn,omitempty" yaml:"timeColumn,omitempty"`
28+
ValueColumns []string `json:"valueColumns,omitempty" yaml:"valueColumns,omitempty"`
29+
LabelColumns []string `json:"labelColumns,omitempty" yaml:"labelColumns,omitempty"`
30+
MinStep int `json:"minStep,omitempty" yaml:"minStep,omitempty"`
31+
TimeFormat string `json:"timeFormat,omitempty" yaml:"timeFormat,omitempty"`
32+
}
33+
34+
type Option func(plugin *Builder) error
35+
36+
func create(sqlQuery string, options ...Option) (Builder, error) {
37+
builder := &Builder{
38+
PluginSpec: PluginSpec{},
39+
}
40+
41+
defaults := []Option{
42+
Query(sqlQuery),
43+
}
44+
45+
for _, opt := range append(defaults, options...) {
46+
if err := opt(builder); err != nil {
47+
return *builder, err
48+
}
49+
}
50+
51+
return *builder, nil
52+
}
53+
54+
type Builder struct {
55+
PluginSpec `json:",inline" yaml:",inline"`
56+
}
57+
58+
func SQLTimeSeriesQuery(sqlQuery string, options ...Option) query.Option {
59+
plg, err := create(sqlQuery, options...)
60+
return query.Option{
61+
Kind: plugin.KindTimeSeriesQuery,
62+
Plugin: plugin.Plugin{
63+
Kind: PluginKind,
64+
Spec: plg,
65+
},
66+
Error: err,
67+
}
68+
}

sql/src/bootstrap.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,4 @@ if (container) {
3939
}
4040

4141
// Make plugin module available
42-
(window as any).getPluginModule = getPluginModule;
42+
(window as Window & { getPluginModule?: typeof getPluginModule }).getPluginModule = getPluginModule;

sql/src/datasources/sql-datasource/SQLDatasource.test.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,12 @@ describe('SQLDatasource', () => {
5050
},
5151
};
5252

53-
const options = {
53+
const options: { proxyUrl?: string } = {
5454
proxyUrl: undefined,
5555
};
5656

5757
expect(() => {
58-
SQLDatasource.createClient(spec, options as any);
58+
SQLDatasource.createClient(spec, options);
5959
}).toThrow('No proxy URL available for SQL datasource');
6060
});
6161
});

0 commit comments

Comments
 (0)