@perses-dev/pyroscope-plugin 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +23 -0
- package/__mf/css/async/1339.6763d50b.css +1 -0
- package/__mf/css/async/4758.6763d50b.css +1 -0
- package/__mf/css/async/9633.6763d50b.css +1 -0
- package/__mf/font/lato-all-300-normal.322bdf14.woff +0 -0
- package/__mf/font/lato-all-400-normal.63513b00.woff +0 -0
- package/__mf/font/lato-all-700-normal.bb27db94.woff +0 -0
- package/__mf/font/lato-all-900-normal.a27049a3.woff +0 -0
- package/__mf/font/lato-latin-300-normal.c5195215.woff2 +0 -0
- package/__mf/font/lato-latin-400-normal.b7ffde23.woff2 +0 -0
- package/__mf/font/lato-latin-700-normal.d5eb20bc.woff2 +0 -0
- package/__mf/font/lato-latin-900-normal.d884a71c.woff2 +0 -0
- package/__mf/font/lato-latin-ext-300-normal.abcc64a9.woff2 +0 -0
- package/__mf/font/lato-latin-ext-400-normal.6ebed106.woff2 +0 -0
- package/__mf/font/lato-latin-ext-700-normal.8697d1d5.woff2 +0 -0
- package/__mf/font/lato-latin-ext-900-normal.20a2b415.woff2 +0 -0
- package/__mf/js/Pyroscope.24cb38f3.js +5 -0
- package/__mf/js/async/1101.380fb9ae.js +73 -0
- package/__mf/js/async/1101.380fb9ae.js.LICENSE.txt +19 -0
- package/__mf/js/async/1339.e58b309f.js +1 -0
- package/__mf/js/async/1964.88ffca96.js +2 -0
- package/__mf/js/async/1964.88ffca96.js.LICENSE.txt +9 -0
- package/__mf/js/async/2002.8fc3eb19.js +1 -0
- package/__mf/js/async/2114.6befeb2d.js +1 -0
- package/__mf/js/async/2292.ed7843fc.js +2 -0
- package/__mf/js/async/2292.ed7843fc.js.LICENSE.txt +24 -0
- package/__mf/js/async/2911.ec166b7f.js +38 -0
- package/__mf/js/async/3224.755c2f09.js +1 -0
- package/__mf/js/async/3431.bc5c0624.js +1 -0
- package/__mf/js/async/3863.dbe40473.js +2 -0
- package/__mf/js/async/3863.dbe40473.js.LICENSE.txt +9 -0
- package/__mf/js/async/3960.a5d41140.js +2 -0
- package/__mf/js/async/3960.a5d41140.js.LICENSE.txt +8 -0
- package/__mf/js/async/3980.f1ef0ece.js +2 -0
- package/__mf/js/async/3980.f1ef0ece.js.LICENSE.txt +9 -0
- package/__mf/js/async/4075.cde93ec7.js +1 -0
- package/__mf/js/async/4238.f154b81c.js +1 -0
- package/__mf/js/async/424.edb69d58.js +1 -0
- package/__mf/js/async/4368.2d817d5d.js +2 -0
- package/__mf/js/async/4368.2d817d5d.js.LICENSE.txt +15 -0
- package/__mf/js/async/4421.d44d1d6f.js +1 -0
- package/__mf/js/async/4556.aabe5dff.js +2 -0
- package/__mf/js/async/4556.aabe5dff.js.LICENSE.txt +9 -0
- package/__mf/js/async/4758.a629b413.js +1 -0
- package/__mf/js/async/5214.8d3dd135.js +1 -0
- package/__mf/js/async/5215.6fd5cc14.js +1 -0
- package/__mf/js/async/5220.d1e40fff.js +10 -0
- package/__mf/js/async/5220.d1e40fff.js.LICENSE.txt +17 -0
- package/__mf/js/async/5358.40b9537e.js +7 -0
- package/__mf/js/async/5358.40b9537e.js.LICENSE.txt +21 -0
- package/__mf/js/async/5409.0df9c301.js +1 -0
- package/__mf/js/async/5790.677172d7.js +1 -0
- package/__mf/js/async/5876.38b119d5.js +2 -0
- package/__mf/js/async/5876.38b119d5.js.LICENSE.txt +21 -0
- package/__mf/js/async/5924.582b0cc4.js +2 -0
- package/__mf/js/async/5924.582b0cc4.js.LICENSE.txt +9 -0
- package/__mf/js/async/5981.9c662ef8.js +2 -0
- package/__mf/js/async/5981.9c662ef8.js.LICENSE.txt +8 -0
- package/__mf/js/async/6292.e30a4c42.js +1 -0
- package/__mf/js/async/6377.f6e824aa.js +2 -0
- package/__mf/js/async/6377.f6e824aa.js.LICENSE.txt +32 -0
- package/__mf/js/async/6770.2f87fe88.js +1 -0
- package/__mf/js/async/694.5e15c44d.js +1 -0
- package/__mf/js/async/7376.c4cd77b0.js +1 -0
- package/__mf/js/async/738.fa73528b.js +1 -0
- package/__mf/js/async/7740.474defbd.js +1 -0
- package/__mf/js/async/8216.be450b83.js +1 -0
- package/__mf/js/async/8488.00c7f348.js +1 -0
- package/__mf/js/async/8930.496019db.js +1 -0
- package/__mf/js/async/9092.cfd47472.js +101 -0
- package/__mf/js/async/9173.5959814f.js +2 -0
- package/__mf/js/async/9173.5959814f.js.LICENSE.txt +19 -0
- package/__mf/js/async/9478.c76fe552.js +2 -0
- package/__mf/js/async/9478.c76fe552.js.LICENSE.txt +9 -0
- package/__mf/js/async/9633.a7997138.js +2 -0
- package/__mf/js/async/9633.a7997138.js.LICENSE.txt +9 -0
- package/__mf/js/async/__federation_expose_PyroscopeDatasource.76f63abf.js +2 -0
- package/__mf/js/async/__federation_expose_PyroscopeDatasource.76f63abf.js.LICENSE.txt +9 -0
- package/__mf/js/async/__federation_expose_PyroscopeExplorer.88d5e4fb.js +2 -0
- package/__mf/js/async/__federation_expose_PyroscopeExplorer.88d5e4fb.js.LICENSE.txt +9 -0
- package/__mf/js/async/__federation_expose_PyroscopeProfileQuery.75c9c11b.js +2 -0
- package/__mf/js/async/__federation_expose_PyroscopeProfileQuery.75c9c11b.js.LICENSE.txt +9 -0
- package/__mf/js/main.4caf1064.js +5 -0
- package/lib/bootstrap.d.ts +2 -0
- package/lib/bootstrap.d.ts.map +1 -0
- package/lib/bootstrap.js +19 -0
- package/lib/bootstrap.js.map +1 -0
- package/lib/cjs/bootstrap.js +26 -0
- package/lib/cjs/components/AddFilterItem.js +38 -0
- package/lib/cjs/components/DeleteFilterItem.js +42 -0
- package/lib/cjs/components/FilterItem.js +83 -0
- package/lib/cjs/components/Filters.js +106 -0
- package/lib/cjs/components/LabelName.js +59 -0
- package/lib/cjs/components/LabelValue.js +59 -0
- package/lib/cjs/components/Operator.js +45 -0
- package/lib/cjs/components/ProfileTypeSelector.js +57 -0
- package/lib/cjs/components/Service.js +60 -0
- package/lib/cjs/components/index.js +32 -0
- package/lib/cjs/env.d.js +14 -0
- package/lib/cjs/explore/PyroscopeExplorer.js +90 -0
- package/lib/cjs/explore/index.js +30 -0
- package/lib/cjs/getPluginModule.js +39 -0
- package/lib/cjs/index-federation.js +55 -0
- package/lib/cjs/index.js +40 -0
- package/lib/cjs/model/api-types.js +19 -0
- package/lib/cjs/model/index.js +33 -0
- package/lib/cjs/model/profile-query-model.js +16 -0
- package/lib/cjs/model/pyroscope-client.js +94 -0
- package/lib/cjs/model/pyroscope-selectors.js +46 -0
- package/lib/cjs/plugins/PyroscopeDatasourceEditor.js +70 -0
- package/lib/cjs/plugins/index.js +33 -0
- package/lib/cjs/plugins/pyroscope-datasource-types.js +16 -0
- package/lib/cjs/plugins/pyroscope-datasource.js +68 -0
- package/lib/cjs/plugins/pyroscope-profile-query/PyroscopeProfileQuery.js +41 -0
- package/lib/cjs/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.js +114 -0
- package/lib/cjs/plugins/pyroscope-profile-query/get-profile-data.js +201 -0
- package/lib/cjs/plugins/pyroscope-profile-query/index.js +33 -0
- package/lib/cjs/plugins/pyroscope-profile-query/query-editor-model.js +120 -0
- package/lib/cjs/setup-tests.js +19 -0
- package/lib/cjs/test/index.js +30 -0
- package/lib/cjs/test/mock-data.js +151 -0
- package/lib/cjs/test/setup-tests.js +17 -0
- package/lib/cjs/utils/types.js +25 -0
- package/lib/cjs/utils/use-query.js +112 -0
- package/lib/components/AddFilterItem.d.ts +6 -0
- package/lib/components/AddFilterItem.d.ts.map +1 -0
- package/lib/components/AddFilterItem.js +25 -0
- package/lib/components/AddFilterItem.js.map +1 -0
- package/lib/components/DeleteFilterItem.d.ts +6 -0
- package/lib/components/DeleteFilterItem.d.ts.map +1 -0
- package/lib/components/DeleteFilterItem.js +29 -0
- package/lib/components/DeleteFilterItem.js.map +1 -0
- package/lib/components/FilterItem.d.ts +11 -0
- package/lib/components/FilterItem.d.ts.map +1 -0
- package/lib/components/FilterItem.js +75 -0
- package/lib/components/FilterItem.js.map +1 -0
- package/lib/components/Filters.d.ts +10 -0
- package/lib/components/Filters.d.ts.map +1 -0
- package/lib/components/Filters.js +98 -0
- package/lib/components/Filters.js.map +1 -0
- package/lib/components/LabelName.d.ts +9 -0
- package/lib/components/LabelName.d.ts.map +1 -0
- package/lib/components/LabelName.js +51 -0
- package/lib/components/LabelName.js.map +1 -0
- package/lib/components/LabelValue.d.ts +10 -0
- package/lib/components/LabelValue.d.ts.map +1 -0
- package/lib/components/LabelValue.js +51 -0
- package/lib/components/LabelValue.js.map +1 -0
- package/lib/components/Operator.d.ts +7 -0
- package/lib/components/Operator.d.ts.map +1 -0
- package/lib/components/Operator.js +37 -0
- package/lib/components/Operator.js.map +1 -0
- package/lib/components/ProfileTypeSelector.d.ts +9 -0
- package/lib/components/ProfileTypeSelector.d.ts.map +1 -0
- package/lib/components/ProfileTypeSelector.js +49 -0
- package/lib/components/ProfileTypeSelector.js.map +1 -0
- package/lib/components/Service.d.ts +9 -0
- package/lib/components/Service.d.ts.map +1 -0
- package/lib/components/Service.js +52 -0
- package/lib/components/Service.js.map +1 -0
- package/lib/components/index.d.ts +4 -0
- package/lib/components/index.d.ts.map +1 -0
- package/lib/components/index.js +17 -0
- package/lib/components/index.js.map +1 -0
- package/lib/env.d.js +15 -0
- package/lib/env.d.js.map +1 -0
- package/lib/explore/PyroscopeExplorer.d.ts +3 -0
- package/lib/explore/PyroscopeExplorer.d.ts.map +1 -0
- package/lib/explore/PyroscopeExplorer.js +82 -0
- package/lib/explore/PyroscopeExplorer.js.map +1 -0
- package/lib/explore/index.d.ts +2 -0
- package/lib/explore/index.d.ts.map +1 -0
- package/lib/explore/index.js +15 -0
- package/lib/explore/index.js.map +1 -0
- package/lib/getPluginModule.d.ts +6 -0
- package/lib/getPluginModule.d.ts.map +1 -0
- package/lib/getPluginModule.js +28 -0
- package/lib/getPluginModule.js.map +1 -0
- package/lib/index-federation.d.ts +1 -0
- package/lib/index-federation.d.ts.map +1 -0
- package/lib/index-federation.js +15 -0
- package/lib/index-federation.js.map +1 -0
- package/lib/index.d.ts +6 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +19 -0
- package/lib/index.js.map +1 -0
- package/lib/model/api-types.d.ts +82 -0
- package/lib/model/api-types.d.ts.map +1 -0
- package/lib/model/api-types.js +20 -0
- package/lib/model/api-types.js.map +1 -0
- package/lib/model/index.d.ts +5 -0
- package/lib/model/index.d.ts.map +1 -0
- package/lib/model/index.js +18 -0
- package/lib/model/index.js.map +1 -0
- package/lib/model/profile-query-model.d.ts +13 -0
- package/lib/model/profile-query-model.d.ts.map +1 -0
- package/lib/model/profile-query-model.js +17 -0
- package/lib/model/profile-query-model.js.map +1 -0
- package/lib/model/pyroscope-client.d.ts +43 -0
- package/lib/model/pyroscope-client.d.ts.map +1 -0
- package/lib/model/pyroscope-client.js +77 -0
- package/lib/model/pyroscope-client.js.map +1 -0
- package/lib/model/pyroscope-selectors.d.ts +21 -0
- package/lib/model/pyroscope-selectors.d.ts.map +1 -0
- package/lib/model/pyroscope-selectors.js +30 -0
- package/lib/model/pyroscope-selectors.js.map +1 -0
- package/lib/plugins/PyroscopeDatasourceEditor.d.ts +9 -0
- package/lib/plugins/PyroscopeDatasourceEditor.d.ts.map +1 -0
- package/lib/plugins/PyroscopeDatasourceEditor.js +57 -0
- package/lib/plugins/PyroscopeDatasourceEditor.js.map +1 -0
- package/lib/plugins/index.d.ts +5 -0
- package/lib/plugins/index.d.ts.map +1 -0
- package/lib/plugins/index.js +18 -0
- package/lib/plugins/index.js.map +1 -0
- package/lib/plugins/pyroscope-datasource-types.d.ts +6 -0
- package/lib/plugins/pyroscope-datasource-types.d.ts.map +1 -0
- package/lib/plugins/pyroscope-datasource-types.js +15 -0
- package/lib/plugins/pyroscope-datasource-types.js.map +1 -0
- package/lib/plugins/pyroscope-datasource.d.ts +5 -0
- package/lib/plugins/pyroscope-datasource.d.ts.map +1 -0
- package/lib/plugins/pyroscope-datasource.js +60 -0
- package/lib/plugins/pyroscope-datasource.js.map +1 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQuery.d.ts +14 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQuery.d.ts.map +1 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQuery.js +33 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQuery.js.map +1 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.d.ts +4 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.d.ts.map +1 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.js +106 -0
- package/lib/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.js.map +1 -0
- package/lib/plugins/pyroscope-profile-query/get-profile-data.d.ts +9 -0
- package/lib/plugins/pyroscope-profile-query/get-profile-data.d.ts.map +1 -0
- package/lib/plugins/pyroscope-profile-query/get-profile-data.js +185 -0
- package/lib/plugins/pyroscope-profile-query/get-profile-data.js.map +1 -0
- package/lib/plugins/pyroscope-profile-query/index.d.ts +5 -0
- package/lib/plugins/pyroscope-profile-query/index.d.ts.map +1 -0
- package/lib/plugins/pyroscope-profile-query/index.js +18 -0
- package/lib/plugins/pyroscope-profile-query/index.js.map +1 -0
- package/lib/plugins/pyroscope-profile-query/query-editor-model.d.ts +34 -0
- package/lib/plugins/pyroscope-profile-query/query-editor-model.d.ts.map +1 -0
- package/lib/plugins/pyroscope-profile-query/query-editor-model.js +106 -0
- package/lib/plugins/pyroscope-profile-query/query-editor-model.js.map +1 -0
- package/lib/setup-tests.d.ts +2 -0
- package/lib/setup-tests.d.ts.map +1 -0
- package/lib/setup-tests.js +17 -0
- package/lib/setup-tests.js.map +1 -0
- package/lib/test/index.d.ts +2 -0
- package/lib/test/index.d.ts.map +1 -0
- package/lib/test/index.js +15 -0
- package/lib/test/index.js.map +1 -0
- package/lib/test/mock-data.d.ts +5 -0
- package/lib/test/mock-data.d.ts.map +1 -0
- package/lib/test/mock-data.js +133 -0
- package/lib/test/mock-data.js.map +1 -0
- package/lib/test/setup-tests.d.ts +2 -0
- package/lib/test/setup-tests.d.ts.map +1 -0
- package/lib/test/setup-tests.js +15 -0
- package/lib/test/setup-tests.js.map +1 -0
- package/lib/utils/types.d.ts +8 -0
- package/lib/utils/types.d.ts.map +1 -0
- package/lib/utils/types.js +17 -0
- package/lib/utils/types.js.map +1 -0
- package/lib/utils/use-query.d.ts +9 -0
- package/lib/utils/use-query.d.ts.map +1 -0
- package/lib/utils/use-query.js +87 -0
- package/lib/utils/use-query.js.map +1 -0
- package/mf-manifest.json +455 -0
- package/mf-stats.json +539 -0
- package/package.json +88 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DatasourceSelector } from '@perses-dev/core';
|
|
2
|
+
export declare const PYROSCOPE_DATASOURCE_KIND: "PyroscopeDatasource";
|
|
3
|
+
/**
|
|
4
|
+
* DatasourceSelector for Pyroscope Datasources.
|
|
5
|
+
*/
|
|
6
|
+
export interface PyroscopeDatasourceSelector extends DatasourceSelector {
|
|
7
|
+
kind: typeof PYROSCOPE_DATASOURCE_KIND;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A default selector that asks for the default Pyroscope Datasource.
|
|
11
|
+
*/
|
|
12
|
+
export declare const DEFAULT_PYROSCOPE: PyroscopeDatasourceSelector;
|
|
13
|
+
/**
|
|
14
|
+
* Returns true if the provided PyroscopeDatasourceSelector is the default one.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isDefaultPyroscopeSelector(selector: PyroscopeDatasourceSelector): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Type guard to make sure a DatasourceSelector is a Pyroscope one.
|
|
19
|
+
*/
|
|
20
|
+
export declare function isPyroscopeDatasourceSelector(selector: DatasourceSelector): selector is PyroscopeDatasourceSelector;
|
|
21
|
+
//# sourceMappingURL=pyroscope-selectors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pyroscope-selectors.d.ts","sourceRoot":"","sources":["../../../src/model/pyroscope-selectors.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,eAAO,MAAM,yBAAyB,EAAG,qBAA8B,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,kBAAkB;IACrE,IAAI,EAAE,OAAO,yBAAyB,CAAC;CACxC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,2BAAiE,CAAC;AAElG;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAEzF;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,kBAAkB,GAAG,QAAQ,IAAI,2BAA2B,CAEnH"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
export const PYROSCOPE_DATASOURCE_KIND = 'PyroscopeDatasource';
|
|
14
|
+
/**
|
|
15
|
+
* A default selector that asks for the default Pyroscope Datasource.
|
|
16
|
+
*/ export const DEFAULT_PYROSCOPE = {
|
|
17
|
+
kind: PYROSCOPE_DATASOURCE_KIND
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Returns true if the provided PyroscopeDatasourceSelector is the default one.
|
|
21
|
+
*/ export function isDefaultPyroscopeSelector(selector) {
|
|
22
|
+
return selector.name === undefined;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Type guard to make sure a DatasourceSelector is a Pyroscope one.
|
|
26
|
+
*/ export function isPyroscopeDatasourceSelector(selector) {
|
|
27
|
+
return selector.kind === PYROSCOPE_DATASOURCE_KIND;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=pyroscope-selectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/model/pyroscope-selectors.ts"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { DatasourceSelector } from '@perses-dev/core';\n\nexport const PYROSCOPE_DATASOURCE_KIND = 'PyroscopeDatasource' as const;\n\n/**\n * DatasourceSelector for Pyroscope Datasources.\n */\nexport interface PyroscopeDatasourceSelector extends DatasourceSelector {\n kind: typeof PYROSCOPE_DATASOURCE_KIND;\n}\n\n/**\n * A default selector that asks for the default Pyroscope Datasource.\n */\nexport const DEFAULT_PYROSCOPE: PyroscopeDatasourceSelector = { kind: PYROSCOPE_DATASOURCE_KIND };\n\n/**\n * Returns true if the provided PyroscopeDatasourceSelector is the default one.\n */\nexport function isDefaultPyroscopeSelector(selector: PyroscopeDatasourceSelector): boolean {\n return selector.name === undefined;\n}\n\n/**\n * Type guard to make sure a DatasourceSelector is a Pyroscope one.\n */\nexport function isPyroscopeDatasourceSelector(selector: DatasourceSelector): selector is PyroscopeDatasourceSelector {\n return selector.kind === PYROSCOPE_DATASOURCE_KIND;\n}\n"],"names":["PYROSCOPE_DATASOURCE_KIND","DEFAULT_PYROSCOPE","kind","isDefaultPyroscopeSelector","selector","name","undefined","isPyroscopeDatasourceSelector"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAIjC,OAAO,MAAMA,4BAA4B,sBAA+B;AASxE;;CAEC,GACD,OAAO,MAAMC,oBAAiD;IAAEC,MAAMF;AAA0B,EAAE;AAElG;;CAEC,GACD,OAAO,SAASG,2BAA2BC,QAAqC;IAC9E,OAAOA,SAASC,IAAI,KAAKC;AAC3B;AAEA;;CAEC,GACD,OAAO,SAASC,8BAA8BH,QAA4B;IACxE,OAAOA,SAASF,IAAI,KAAKF;AAC3B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
import { PyroscopeDatasourceSpec } from './pyroscope-datasource-types';
|
|
3
|
+
export interface PyroscopeDatasourceEditorProps {
|
|
4
|
+
value: PyroscopeDatasourceSpec;
|
|
5
|
+
onChange: (next: PyroscopeDatasourceSpec) => void;
|
|
6
|
+
isReadonly?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function PyroscopeDatasourceEditor(props: PyroscopeDatasourceEditorProps): ReactElement;
|
|
9
|
+
//# sourceMappingURL=PyroscopeDatasourceEditor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PyroscopeDatasourceEditor.d.ts","sourceRoot":"","sources":["../../../src/plugins/PyroscopeDatasourceEditor.tsx"],"names":[],"mappings":"AAcA,OAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,uBAAuB,CAAC;IAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,8BAA8B,GAAG,YAAY,CA4C7F"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
import { HTTPSettingsEditor } from '@perses-dev/plugin-system';
|
|
15
|
+
import React from 'react';
|
|
16
|
+
export function PyroscopeDatasourceEditor(props) {
|
|
17
|
+
const { value, onChange, isReadonly } = props;
|
|
18
|
+
const initialSpecDirect = {
|
|
19
|
+
directUrl: ''
|
|
20
|
+
};
|
|
21
|
+
const initialSpecProxy = {
|
|
22
|
+
proxy: {
|
|
23
|
+
kind: 'HTTPProxy',
|
|
24
|
+
spec: {
|
|
25
|
+
allowedEndpoints: [
|
|
26
|
+
// list of standard endpoints suggested by default
|
|
27
|
+
{
|
|
28
|
+
endpointPattern: '/pyroscope/render',
|
|
29
|
+
method: 'GET'
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
endpointPattern: '/querier.v1.QuerierService/ProfileTypes',
|
|
33
|
+
method: 'POST'
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
endpointPattern: '/querier.v1.QuerierService/LabelNames',
|
|
37
|
+
method: 'POST'
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
endpointPattern: '/querier.v1.QuerierService/LabelValues',
|
|
41
|
+
method: 'POST'
|
|
42
|
+
}
|
|
43
|
+
],
|
|
44
|
+
url: ''
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
return /*#__PURE__*/ _jsx(HTTPSettingsEditor, {
|
|
49
|
+
value: value,
|
|
50
|
+
onChange: onChange,
|
|
51
|
+
isReadonly: isReadonly,
|
|
52
|
+
initialSpecDirect: initialSpecDirect,
|
|
53
|
+
initialSpecProxy: initialSpecProxy
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=PyroscopeDatasourceEditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/plugins/PyroscopeDatasourceEditor.tsx"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { HTTPSettingsEditor } from '@perses-dev/plugin-system';\nimport React, { ReactElement } from 'react';\nimport { PyroscopeDatasourceSpec } from './pyroscope-datasource-types';\n\nexport interface PyroscopeDatasourceEditorProps {\n value: PyroscopeDatasourceSpec;\n onChange: (next: PyroscopeDatasourceSpec) => void;\n isReadonly?: boolean;\n}\n\nexport function PyroscopeDatasourceEditor(props: PyroscopeDatasourceEditorProps): ReactElement {\n const { value, onChange, isReadonly } = props;\n\n const initialSpecDirect: PyroscopeDatasourceSpec = {\n directUrl: '',\n };\n\n const initialSpecProxy: PyroscopeDatasourceSpec = {\n proxy: {\n kind: 'HTTPProxy',\n spec: {\n allowedEndpoints: [\n // list of standard endpoints suggested by default\n {\n endpointPattern: '/pyroscope/render',\n method: 'GET',\n },\n {\n endpointPattern: '/querier.v1.QuerierService/ProfileTypes',\n method: 'POST',\n },\n {\n endpointPattern: '/querier.v1.QuerierService/LabelNames',\n method: 'POST',\n },\n {\n endpointPattern: '/querier.v1.QuerierService/LabelValues',\n method: 'POST',\n },\n ],\n url: '',\n },\n },\n };\n\n return (\n <HTTPSettingsEditor\n value={value}\n onChange={onChange}\n isReadonly={isReadonly}\n initialSpecDirect={initialSpecDirect}\n initialSpecProxy={initialSpecProxy}\n />\n );\n}\n"],"names":["HTTPSettingsEditor","React","PyroscopeDatasourceEditor","props","value","onChange","isReadonly","initialSpecDirect","directUrl","initialSpecProxy","proxy","kind","spec","allowedEndpoints","endpointPattern","method","url"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;AAEjC,SAASA,kBAAkB,QAAQ,4BAA4B;AAC/D,OAAOC,WAA6B,QAAQ;AAS5C,OAAO,SAASC,0BAA0BC,KAAqC;IAC7E,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,EAAE,GAAGH;IAExC,MAAMI,oBAA6C;QACjDC,WAAW;IACb;IAEA,MAAMC,mBAA4C;QAChDC,OAAO;YACLC,MAAM;YACNC,MAAM;gBACJC,kBAAkB;oBAChB,kDAAkD;oBAClD;wBACEC,iBAAiB;wBACjBC,QAAQ;oBACV;oBACA;wBACED,iBAAiB;wBACjBC,QAAQ;oBACV;oBACA;wBACED,iBAAiB;wBACjBC,QAAQ;oBACV;oBACA;wBACED,iBAAiB;wBACjBC,QAAQ;oBACV;iBACD;gBACDC,KAAK;YACP;QACF;IACF;IAEA,qBACE,KAAChB;QACCI,OAAOA;QACPC,UAAUA;QACVC,YAAYA;QACZC,mBAAmBA;QACnBE,kBAAkBA;;AAGxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/index.ts"],"names":[],"mappings":"AAaA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
export * from './pyroscope-profile-query';
|
|
14
|
+
export * from './pyroscope-datasource-types';
|
|
15
|
+
export * from './pyroscope-datasource';
|
|
16
|
+
export * from './PyroscopeDatasourceEditor';
|
|
17
|
+
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/plugins/index.ts"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nexport * from './pyroscope-profile-query';\nexport * from './pyroscope-datasource-types';\nexport * from './pyroscope-datasource';\nexport * from './PyroscopeDatasourceEditor';\n"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,4BAA4B;AAC1C,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,8BAA8B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pyroscope-datasource-types.d.ts","sourceRoot":"","sources":["../../../src/plugins/pyroscope-datasource-types.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
export { };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=pyroscope-datasource-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/plugins/pyroscope-datasource-types.tsx"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { HTTPProxy } from '@perses-dev/core';\n\nexport interface PyroscopeDatasourceSpec {\n directUrl?: string;\n proxy?: HTTPProxy;\n}\n"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAIjC,WAGC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DatasourcePlugin } from '@perses-dev/plugin-system';
|
|
2
|
+
import { PyroscopeClient } from '../model/pyroscope-client';
|
|
3
|
+
import { PyroscopeDatasourceSpec } from './pyroscope-datasource-types';
|
|
4
|
+
export declare const PyroscopeDatasource: DatasourcePlugin<PyroscopeDatasourceSpec, PyroscopeClient>;
|
|
5
|
+
//# sourceMappingURL=pyroscope-datasource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pyroscope-datasource.d.ts","sourceRoot":"","sources":["../../../src/plugins/pyroscope-datasource.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EACL,eAAe,EAMhB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAiCvE,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,CAAC,uBAAuB,EAAE,eAAe,CAI1F,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
import { searchProfiles, searchProfileTypes, searchLabelNames, searchLabelValues, searchServices } from '../model/pyroscope-client';
|
|
14
|
+
import { PyroscopeDatasourceEditor } from './PyroscopeDatasourceEditor';
|
|
15
|
+
/**
|
|
16
|
+
* Creates a PyroscopeClient for a specific datasource spec.
|
|
17
|
+
*/ const createClient = (spec, options)=>{
|
|
18
|
+
const { directUrl, proxy } = spec;
|
|
19
|
+
const { proxyUrl } = options;
|
|
20
|
+
// Use the direct URL if specified, but fallback to the proxyUrl by default if not specified
|
|
21
|
+
const datasourceUrl = directUrl ?? proxyUrl;
|
|
22
|
+
if (datasourceUrl === undefined) {
|
|
23
|
+
throw new Error('No URL specified for Pyroscope client. You can use directUrl in the spec to configure it.');
|
|
24
|
+
}
|
|
25
|
+
const specHeaders = proxy?.spec.headers;
|
|
26
|
+
return {
|
|
27
|
+
options: {
|
|
28
|
+
datasourceUrl
|
|
29
|
+
},
|
|
30
|
+
searchProfiles: (params, headers)=>searchProfiles(params, {
|
|
31
|
+
datasourceUrl,
|
|
32
|
+
headers: headers ?? specHeaders
|
|
33
|
+
}),
|
|
34
|
+
searchProfileTypes: (params, headers, body)=>searchProfileTypes(params, {
|
|
35
|
+
datasourceUrl,
|
|
36
|
+
headers: headers ?? specHeaders
|
|
37
|
+
}, body),
|
|
38
|
+
searchLabelNames: (params, headers, body)=>searchLabelNames(params, {
|
|
39
|
+
datasourceUrl,
|
|
40
|
+
headers: headers ?? specHeaders
|
|
41
|
+
}, body),
|
|
42
|
+
searchLabelValues: (params, headers, body)=>searchLabelValues(params, {
|
|
43
|
+
datasourceUrl,
|
|
44
|
+
headers: headers ?? specHeaders
|
|
45
|
+
}, body),
|
|
46
|
+
searchServices: (params, headers)=>searchServices(params, {
|
|
47
|
+
datasourceUrl,
|
|
48
|
+
headers: headers ?? specHeaders
|
|
49
|
+
})
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export const PyroscopeDatasource = {
|
|
53
|
+
createClient,
|
|
54
|
+
OptionsEditorComponent: PyroscopeDatasourceEditor,
|
|
55
|
+
createInitialOptions: ()=>({
|
|
56
|
+
directUrl: ''
|
|
57
|
+
})
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
//# sourceMappingURL=pyroscope-datasource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/plugins/pyroscope-datasource.tsx"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { DatasourcePlugin } from '@perses-dev/plugin-system';\nimport {\n PyroscopeClient,\n searchProfiles,\n searchProfileTypes,\n searchLabelNames,\n searchLabelValues,\n searchServices,\n} from '../model/pyroscope-client';\nimport { PyroscopeDatasourceSpec } from './pyroscope-datasource-types';\nimport { PyroscopeDatasourceEditor } from './PyroscopeDatasourceEditor';\n\n/**\n * Creates a PyroscopeClient for a specific datasource spec.\n */\nconst createClient: DatasourcePlugin<PyroscopeDatasourceSpec, PyroscopeClient>['createClient'] = (spec, options) => {\n const { directUrl, proxy } = spec;\n const { proxyUrl } = options;\n\n // Use the direct URL if specified, but fallback to the proxyUrl by default if not specified\n const datasourceUrl = directUrl ?? proxyUrl;\n if (datasourceUrl === undefined) {\n throw new Error('No URL specified for Pyroscope client. You can use directUrl in the spec to configure it.');\n }\n\n const specHeaders = proxy?.spec.headers;\n\n return {\n options: {\n datasourceUrl,\n },\n searchProfiles: (params, headers) => searchProfiles(params, { datasourceUrl, headers: headers ?? specHeaders }),\n searchProfileTypes: (params, headers, body) =>\n searchProfileTypes(params, { datasourceUrl, headers: headers ?? specHeaders }, body),\n searchLabelNames: (params, headers, body) =>\n searchLabelNames(params, { datasourceUrl, headers: headers ?? specHeaders }, body),\n searchLabelValues: (params, headers, body) =>\n searchLabelValues(params, { datasourceUrl, headers: headers ?? specHeaders }, body),\n searchServices: (params, headers) => searchServices(params, { datasourceUrl, headers: headers ?? specHeaders }),\n };\n};\n\nexport const PyroscopeDatasource: DatasourcePlugin<PyroscopeDatasourceSpec, PyroscopeClient> = {\n createClient,\n OptionsEditorComponent: PyroscopeDatasourceEditor,\n createInitialOptions: () => ({ directUrl: '' }),\n};\n"],"names":["searchProfiles","searchProfileTypes","searchLabelNames","searchLabelValues","searchServices","PyroscopeDatasourceEditor","createClient","spec","options","directUrl","proxy","proxyUrl","datasourceUrl","undefined","Error","specHeaders","headers","params","body","PyroscopeDatasource","OptionsEditorComponent","createInitialOptions"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAGjC,SAEEA,cAAc,EACdC,kBAAkB,EAClBC,gBAAgB,EAChBC,iBAAiB,EACjBC,cAAc,QACT,4BAA4B;AAEnC,SAASC,yBAAyB,QAAQ,8BAA8B;AAExE;;CAEC,GACD,MAAMC,eAA2F,CAACC,MAAMC;IACtG,MAAM,EAAEC,SAAS,EAAEC,KAAK,EAAE,GAAGH;IAC7B,MAAM,EAAEI,QAAQ,EAAE,GAAGH;IAErB,4FAA4F;IAC5F,MAAMI,gBAAgBH,aAAaE;IACnC,IAAIC,kBAAkBC,WAAW;QAC/B,MAAM,IAAIC,MAAM;IAClB;IAEA,MAAMC,cAAcL,OAAOH,KAAKS;IAEhC,OAAO;QACLR,SAAS;YACPI;QACF;QACAZ,gBAAgB,CAACiB,QAAQD,UAAYhB,eAAeiB,QAAQ;gBAAEL;gBAAeI,SAASA,WAAWD;YAAY;QAC7Gd,oBAAoB,CAACgB,QAAQD,SAASE,OACpCjB,mBAAmBgB,QAAQ;gBAAEL;gBAAeI,SAASA,WAAWD;YAAY,GAAGG;QACjFhB,kBAAkB,CAACe,QAAQD,SAASE,OAClChB,iBAAiBe,QAAQ;gBAAEL;gBAAeI,SAASA,WAAWD;YAAY,GAAGG;QAC/Ef,mBAAmB,CAACc,QAAQD,SAASE,OACnCf,kBAAkBc,QAAQ;gBAAEL;gBAAeI,SAASA,WAAWD;YAAY,GAAGG;QAChFd,gBAAgB,CAACa,QAAQD,UAAYZ,eAAea,QAAQ;gBAAEL;gBAAeI,SAASA,WAAWD;YAAY;IAC/G;AACF;AAEA,OAAO,MAAMI,sBAAkF;IAC7Fb;IACAc,wBAAwBf;IACxBgB,sBAAsB,IAAO,CAAA;YAAEZ,WAAW;QAAG,CAAA;AAC/C,EAAE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { LabelFilter } from '../../utils/types';
|
|
2
|
+
import { PyroscopeProfileQueryEditor } from './PyroscopeProfileQueryEditor';
|
|
3
|
+
export declare const PyroscopeProfileQuery: {
|
|
4
|
+
getProfileData: (spec: import("../..").PyroscopeProfileQuerySpec, ctx: import("@perses-dev/plugin-system").ProfileQueryContext) => Promise<import("@perses-dev/core").ProfileData>;
|
|
5
|
+
OptionsEditorComponent: typeof PyroscopeProfileQueryEditor;
|
|
6
|
+
createInitialOptions: () => {
|
|
7
|
+
maxNodes: number;
|
|
8
|
+
datasource?: string;
|
|
9
|
+
service: string;
|
|
10
|
+
profileType: string;
|
|
11
|
+
filters: LabelFilter[];
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=PyroscopeProfileQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PyroscopeProfileQuery.d.ts","sourceRoot":"","sources":["../../../../src/plugins/pyroscope-profile-query/PyroscopeProfileQuery.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,eAAO,MAAM,qBAAqB;;;gCAGN;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,WAAW,EAAE,CAAC;KACxB;CAOF,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
import { getProfileData } from './get-profile-data';
|
|
14
|
+
import { PyroscopeProfileQueryEditor } from './PyroscopeProfileQueryEditor';
|
|
15
|
+
export const PyroscopeProfileQuery = {
|
|
16
|
+
getProfileData,
|
|
17
|
+
OptionsEditorComponent: PyroscopeProfileQueryEditor,
|
|
18
|
+
createInitialOptions: ()=>({
|
|
19
|
+
maxNodes: 0,
|
|
20
|
+
datasource: undefined,
|
|
21
|
+
service: '',
|
|
22
|
+
profileType: '',
|
|
23
|
+
filters: [
|
|
24
|
+
{
|
|
25
|
+
labelName: '',
|
|
26
|
+
labelValue: '',
|
|
27
|
+
operator: '='
|
|
28
|
+
}
|
|
29
|
+
]
|
|
30
|
+
})
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=PyroscopeProfileQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/plugins/pyroscope-profile-query/PyroscopeProfileQuery.ts"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { LabelFilter } from '../../utils/types';\nimport { getProfileData } from './get-profile-data';\nimport { PyroscopeProfileQueryEditor } from './PyroscopeProfileQueryEditor';\n\nexport const PyroscopeProfileQuery = {\n getProfileData,\n OptionsEditorComponent: PyroscopeProfileQueryEditor,\n createInitialOptions: (): {\n maxNodes: number;\n datasource?: string;\n service: string;\n profileType: string;\n filters: LabelFilter[];\n } => ({\n maxNodes: 0,\n datasource: undefined,\n service: '',\n profileType: '',\n filters: [{ labelName: '', labelValue: '', operator: '=' }],\n }),\n};\n"],"names":["getProfileData","PyroscopeProfileQueryEditor","PyroscopeProfileQuery","OptionsEditorComponent","createInitialOptions","maxNodes","datasource","undefined","service","profileType","filters","labelName","labelValue","operator"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAGjC,SAASA,cAAc,QAAQ,qBAAqB;AACpD,SAASC,2BAA2B,QAAQ,gCAAgC;AAE5E,OAAO,MAAMC,wBAAwB;IACnCF;IACAG,wBAAwBF;IACxBG,sBAAsB,IAMhB,CAAA;YACJC,UAAU;YACVC,YAAYC;YACZC,SAAS;YACTC,aAAa;YACbC,SAAS;gBAAC;oBAAEC,WAAW;oBAAIC,YAAY;oBAAIC,UAAU;gBAAI;aAAE;QAC7D,CAAA;AACF,EAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PyroscopeProfileQueryEditor.d.ts","sourceRoot":"","sources":["../../../../src/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQrC,OAAO,EACL,uBAAuB,EAKxB,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,uBAAuB,GAAG,YAAY,CAmExF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
import { DatasourceSelect } from '@perses-dev/plugin-system';
|
|
15
|
+
import { useId } from '@perses-dev/components';
|
|
16
|
+
import { produce } from 'immer';
|
|
17
|
+
import { FormControl, InputLabel, Stack, TextField } from '@mui/material';
|
|
18
|
+
import { DEFAULT_PYROSCOPE, isDefaultPyroscopeSelector, isPyroscopeDatasourceSelector, PYROSCOPE_DATASOURCE_KIND } from '../../model/pyroscope-selectors';
|
|
19
|
+
import { ProfileTypeSelector, Service, Filters } from '../../components';
|
|
20
|
+
import { useMaxNodesState, useProfileTypeState, useServiceState, useFiltersState } from './query-editor-model';
|
|
21
|
+
export function PyroscopeProfileQueryEditor(props) {
|
|
22
|
+
const { onChange, value } = props;
|
|
23
|
+
const { datasource } = value;
|
|
24
|
+
const selectedDatasource = datasource ?? DEFAULT_PYROSCOPE;
|
|
25
|
+
const datasourceSelectLabelID = useId('pyroscope-datasource-label');
|
|
26
|
+
const { maxNodes, handleMaxNodesChange, maxNodesHasError } = useMaxNodesState(props);
|
|
27
|
+
const { profileType, handleProfileTypeChange } = useProfileTypeState(props);
|
|
28
|
+
const { service, handleServiceChange } = useServiceState(props);
|
|
29
|
+
const { filters, handleFiltersChange } = useFiltersState(props);
|
|
30
|
+
const handleDatasourceChange = (next)=>{
|
|
31
|
+
// Check if the next value is a DatasourceSelector
|
|
32
|
+
if (typeof next === 'object' && 'kind' in next && 'name' in next) {
|
|
33
|
+
if (isPyroscopeDatasourceSelector(next)) {
|
|
34
|
+
onChange(produce(value, (draft)=>{
|
|
35
|
+
// If they're using the default, just omit the datasource prop (i.e. set to undefined)
|
|
36
|
+
const nextDatasource = isDefaultPyroscopeSelector(next) ? undefined : next;
|
|
37
|
+
draft.datasource = nextDatasource;
|
|
38
|
+
}));
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
throw new Error('Got unexpected non-Pyroscope datasource selector');
|
|
43
|
+
};
|
|
44
|
+
return /*#__PURE__*/ _jsxs(Stack, {
|
|
45
|
+
spacing: 2,
|
|
46
|
+
children: [
|
|
47
|
+
/*#__PURE__*/ _jsxs(FormControl, {
|
|
48
|
+
margin: "dense",
|
|
49
|
+
fullWidth: false,
|
|
50
|
+
children: [
|
|
51
|
+
/*#__PURE__*/ _jsx(InputLabel, {
|
|
52
|
+
id: datasourceSelectLabelID,
|
|
53
|
+
shrink: true,
|
|
54
|
+
children: "Pyroscope Datasource"
|
|
55
|
+
}),
|
|
56
|
+
/*#__PURE__*/ _jsx(DatasourceSelect, {
|
|
57
|
+
datasourcePluginKind: PYROSCOPE_DATASOURCE_KIND,
|
|
58
|
+
value: selectedDatasource,
|
|
59
|
+
onChange: handleDatasourceChange,
|
|
60
|
+
labelId: datasourceSelectLabelID,
|
|
61
|
+
label: "Pyroscope Datasource",
|
|
62
|
+
notched: true
|
|
63
|
+
})
|
|
64
|
+
]
|
|
65
|
+
}),
|
|
66
|
+
/*#__PURE__*/ _jsxs(Stack, {
|
|
67
|
+
direction: "row",
|
|
68
|
+
spacing: 0,
|
|
69
|
+
sx: {
|
|
70
|
+
flexWrap: 'wrap',
|
|
71
|
+
rowGap: 1,
|
|
72
|
+
gap: 2
|
|
73
|
+
},
|
|
74
|
+
children: [
|
|
75
|
+
/*#__PURE__*/ _jsx(Service, {
|
|
76
|
+
datasource: selectedDatasource,
|
|
77
|
+
value: service,
|
|
78
|
+
onChange: handleServiceChange
|
|
79
|
+
}),
|
|
80
|
+
/*#__PURE__*/ _jsx(ProfileTypeSelector, {
|
|
81
|
+
datasource: selectedDatasource,
|
|
82
|
+
value: profileType,
|
|
83
|
+
onChange: handleProfileTypeChange
|
|
84
|
+
}),
|
|
85
|
+
/*#__PURE__*/ _jsx(TextField, {
|
|
86
|
+
size: "small",
|
|
87
|
+
label: "Max Nodes",
|
|
88
|
+
value: maxNodes,
|
|
89
|
+
error: maxNodesHasError,
|
|
90
|
+
onChange: (e)=>handleMaxNodesChange(e.target.value),
|
|
91
|
+
sx: {
|
|
92
|
+
width: '110px'
|
|
93
|
+
}
|
|
94
|
+
})
|
|
95
|
+
]
|
|
96
|
+
}),
|
|
97
|
+
/*#__PURE__*/ _jsx(Filters, {
|
|
98
|
+
datasource: selectedDatasource,
|
|
99
|
+
value: filters,
|
|
100
|
+
onChange: handleFiltersChange
|
|
101
|
+
})
|
|
102
|
+
]
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
//# sourceMappingURL=PyroscopeProfileQueryEditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/plugins/pyroscope-profile-query/PyroscopeProfileQueryEditor.tsx"],"sourcesContent":["// Copyright 2025 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { DatasourceSelect, DatasourceSelectProps } from '@perses-dev/plugin-system';\nimport { useId } from '@perses-dev/components';\nimport { produce } from 'immer';\nimport { FormControl, InputLabel, Stack, TextField } from '@mui/material';\nimport { ReactElement } from 'react';\nimport {\n DEFAULT_PYROSCOPE,\n isDefaultPyroscopeSelector,\n isPyroscopeDatasourceSelector,\n PYROSCOPE_DATASOURCE_KIND,\n} from '../../model/pyroscope-selectors';\nimport { ProfileTypeSelector, Service, Filters } from '../../components';\nimport {\n ProfileQueryEditorProps,\n useMaxNodesState,\n useProfileTypeState,\n useServiceState,\n useFiltersState,\n} from './query-editor-model';\n\nexport function PyroscopeProfileQueryEditor(props: ProfileQueryEditorProps): ReactElement {\n const { onChange, value } = props;\n const { datasource } = value;\n const selectedDatasource = datasource ?? DEFAULT_PYROSCOPE;\n const datasourceSelectLabelID = useId('pyroscope-datasource-label');\n\n const { maxNodes, handleMaxNodesChange, maxNodesHasError } = useMaxNodesState(props);\n const { profileType, handleProfileTypeChange } = useProfileTypeState(props);\n const { service, handleServiceChange } = useServiceState(props);\n const { filters, handleFiltersChange } = useFiltersState(props);\n\n const handleDatasourceChange: DatasourceSelectProps['onChange'] = (next) => {\n // Check if the next value is a DatasourceSelector\n if (typeof next === 'object' && 'kind' in next && 'name' in next) {\n if (isPyroscopeDatasourceSelector(next)) {\n onChange(\n produce(value, (draft) => {\n // If they're using the default, just omit the datasource prop (i.e. set to undefined)\n const nextDatasource = isDefaultPyroscopeSelector(next) ? undefined : next;\n draft.datasource = nextDatasource;\n })\n );\n return;\n }\n }\n\n throw new Error('Got unexpected non-Pyroscope datasource selector');\n };\n\n return (\n <Stack spacing={2}>\n <FormControl margin=\"dense\" fullWidth={false}>\n <InputLabel id={datasourceSelectLabelID} shrink>\n Pyroscope Datasource\n </InputLabel>\n <DatasourceSelect\n datasourcePluginKind={PYROSCOPE_DATASOURCE_KIND}\n value={selectedDatasource}\n onChange={handleDatasourceChange}\n labelId={datasourceSelectLabelID}\n label=\"Pyroscope Datasource\"\n notched\n />\n </FormControl>\n <Stack\n direction=\"row\"\n spacing={0}\n sx={{\n flexWrap: 'wrap',\n rowGap: 1,\n gap: 2,\n }}\n >\n <Service datasource={selectedDatasource} value={service} onChange={handleServiceChange} />\n <ProfileTypeSelector datasource={selectedDatasource} value={profileType} onChange={handleProfileTypeChange} />\n <TextField\n size=\"small\"\n label=\"Max Nodes\"\n value={maxNodes}\n error={maxNodesHasError}\n onChange={(e) => handleMaxNodesChange(e.target.value)}\n sx={{ width: '110px' }}\n />\n </Stack>\n <Filters datasource={selectedDatasource} value={filters} onChange={handleFiltersChange} />\n </Stack>\n );\n}\n"],"names":["DatasourceSelect","useId","produce","FormControl","InputLabel","Stack","TextField","DEFAULT_PYROSCOPE","isDefaultPyroscopeSelector","isPyroscopeDatasourceSelector","PYROSCOPE_DATASOURCE_KIND","ProfileTypeSelector","Service","Filters","useMaxNodesState","useProfileTypeState","useServiceState","useFiltersState","PyroscopeProfileQueryEditor","props","onChange","value","datasource","selectedDatasource","datasourceSelectLabelID","maxNodes","handleMaxNodesChange","maxNodesHasError","profileType","handleProfileTypeChange","service","handleServiceChange","filters","handleFiltersChange","handleDatasourceChange","next","draft","nextDatasource","undefined","Error","spacing","margin","fullWidth","id","shrink","datasourcePluginKind","labelId","label","notched","direction","sx","flexWrap","rowGap","gap","size","error","e","target","width"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;AAEjC,SAASA,gBAAgB,QAA+B,4BAA4B;AACpF,SAASC,KAAK,QAAQ,yBAAyB;AAC/C,SAASC,OAAO,QAAQ,QAAQ;AAChC,SAASC,WAAW,EAAEC,UAAU,EAAEC,KAAK,EAAEC,SAAS,QAAQ,gBAAgB;AAE1E,SACEC,iBAAiB,EACjBC,0BAA0B,EAC1BC,6BAA6B,EAC7BC,yBAAyB,QACpB,kCAAkC;AACzC,SAASC,mBAAmB,EAAEC,OAAO,EAAEC,OAAO,QAAQ,mBAAmB;AACzE,SAEEC,gBAAgB,EAChBC,mBAAmB,EACnBC,eAAe,EACfC,eAAe,QACV,uBAAuB;AAE9B,OAAO,SAASC,4BAA4BC,KAA8B;IACxE,MAAM,EAAEC,QAAQ,EAAEC,KAAK,EAAE,GAAGF;IAC5B,MAAM,EAAEG,UAAU,EAAE,GAAGD;IACvB,MAAME,qBAAqBD,cAAcf;IACzC,MAAMiB,0BAA0BvB,MAAM;IAEtC,MAAM,EAAEwB,QAAQ,EAAEC,oBAAoB,EAAEC,gBAAgB,EAAE,GAAGb,iBAAiBK;IAC9E,MAAM,EAAES,WAAW,EAAEC,uBAAuB,EAAE,GAAGd,oBAAoBI;IACrE,MAAM,EAAEW,OAAO,EAAEC,mBAAmB,EAAE,GAAGf,gBAAgBG;IACzD,MAAM,EAAEa,OAAO,EAAEC,mBAAmB,EAAE,GAAGhB,gBAAgBE;IAEzD,MAAMe,yBAA4D,CAACC;QACjE,kDAAkD;QAClD,IAAI,OAAOA,SAAS,YAAY,UAAUA,QAAQ,UAAUA,MAAM;YAChE,IAAI1B,8BAA8B0B,OAAO;gBACvCf,SACElB,QAAQmB,OAAO,CAACe;oBACd,sFAAsF;oBACtF,MAAMC,iBAAiB7B,2BAA2B2B,QAAQG,YAAYH;oBACtEC,MAAMd,UAAU,GAAGe;gBACrB;gBAEF;YACF;QACF;QAEA,MAAM,IAAIE,MAAM;IAClB;IAEA,qBACE,MAAClC;QAAMmC,SAAS;;0BACd,MAACrC;gBAAYsC,QAAO;gBAAQC,WAAW;;kCACrC,KAACtC;wBAAWuC,IAAInB;wBAAyBoB,MAAM;kCAAC;;kCAGhD,KAAC5C;wBACC6C,sBAAsBnC;wBACtBW,OAAOE;wBACPH,UAAUc;wBACVY,SAAStB;wBACTuB,OAAM;wBACNC,OAAO;;;;0BAGX,MAAC3C;gBACC4C,WAAU;gBACVT,SAAS;gBACTU,IAAI;oBACFC,UAAU;oBACVC,QAAQ;oBACRC,KAAK;gBACP;;kCAEA,KAACzC;wBAAQU,YAAYC;wBAAoBF,OAAOS;wBAASV,UAAUW;;kCACnE,KAACpB;wBAAoBW,YAAYC;wBAAoBF,OAAOO;wBAAaR,UAAUS;;kCACnF,KAACvB;wBACCgD,MAAK;wBACLP,OAAM;wBACN1B,OAAOI;wBACP8B,OAAO5B;wBACPP,UAAU,CAACoC,IAAM9B,qBAAqB8B,EAAEC,MAAM,CAACpC,KAAK;wBACpD6B,IAAI;4BAAEQ,OAAO;wBAAQ;;;;0BAGzB,KAAC7C;gBAAQS,YAAYC;gBAAoBF,OAAOW;gBAASZ,UAAUa;;;;AAGzE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProfileQueryPlugin } from '@perses-dev/plugin-system';
|
|
2
|
+
import { AbsoluteTimeRange } from '@perses-dev/core';
|
|
3
|
+
import { PyroscopeProfileQuerySpec } from '../../model';
|
|
4
|
+
export declare function getUnixTimeRange(timeRange: AbsoluteTimeRange): {
|
|
5
|
+
start: number;
|
|
6
|
+
end: number;
|
|
7
|
+
};
|
|
8
|
+
export declare const getProfileData: ProfileQueryPlugin<PyroscopeProfileQuerySpec>['getProfileData'];
|
|
9
|
+
//# sourceMappingURL=get-profile-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-profile-data.d.ts","sourceRoot":"","sources":["../../../../src/plugins/pyroscope-profile-query/get-profile-data.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAA2B,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EAAE,yBAAyB,EAA0D,MAAM,aAAa,CAAC;AAKhH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAM7F;AAED,eAAO,MAAM,cAAc,EAAE,kBAAkB,CAAC,yBAAyB,CAAC,CAAC,gBAAgB,CAwD1F,CAAC"}
|