@grafana/data APIs
- SelectableValue
- DataQuery
- DataSourceJsonData
- PanelProps
- PanelPlugin
- DataFrame
- DataSourcePluginOptionsEditorProps
- DataSourceInstanceSettings
- FieldType
- DataSourcePlugin
- DataSourceApi
- MetricFindValue
- PanelEditorProps
- GrafanaTheme
- getDisplayProcessor
- DataQueryError
- DataQueryRequest
- DataQueryResponse
- MutableDataFrame
- ArrayVector
- LoadingState
- KeyValue
- AppPluginMeta
- PluginMeta
- AppPlugin
- NavModelItem
- ThresholdsMode
- DisplayValue
- formattedValueToString
- FieldConfig
- FieldColorMode
- GraphSeriesValue
- FieldDisplayOptions
- GraphSeriesXY
- TimeZone
- MS_DATE_TIME_FORMAT
- DEFAULT_DATE_TIME_FORMAT
- ReducerID
- AppEvents
- DataSourceSelectItem
- NullValueMode
- getFlotPairs
- getValueFormat
- AbsoluteTimeRange
- AnnotationEvent
- PanelData
- getTimeField
- reduceField
- getSeriesTimeStep
- hasMsResolution
- FieldColor
- MutableField
- AppRootProps
- GrafanaThemeType
- PanelPluginMeta
- ScopedVars
- PluginBuildInfo
- PluginState
- VizOrientation
- Field
- TimeSeriesValue
- FormattedValue
- DisplayValueAlignmentFactors
- getColorFromHexRgbOrName
- getColorDefinitionByName
- getNamedColorPalette
- getColorName
- getColorForTheme
- deprecationWarning
- DataLink
- VariableSuggestion
- VariableOrigin
- LinkModelSupplier
- DataSourceSettings
- applyFieldOverrides
- FieldConfigSource
- InterpolateFunction
- FieldMatcherID
- toDataFrame
- standardFieldConfigEditorRegistry
- FieldOverrideContext
- FieldConfigEditorProps
- FieldOverrideEditorProps
- ValueMapping
- toIntegerOrUndefined
- toFloatOrUndefined
- FieldPropertyEditorItem
- ThresholdsConfig
- getActiveThreshold
- Threshold
- dateTime
- TimeRange
- DefaultTimeZone
- createDimension
- DateTimeInput
- FlotDataPoint
- getValueFromDimension
- getColumnFromDimension
- FieldCache
- LogRowModel
- LogLevel
- calculateFieldStats
- calculateLogsLabelStats
- calculateStats
- getParser
- LinkModel
- Labels
- findHighlightChunksInText
- LogsDedupStrategy
- fieldMatchers
- Registry
- stringToMs
- DEFAULT_FIELD_DISPLAY_VALUES_LIMIT
- toNumberString
- VAR_SERIES_NAME
- VAR_FIELD_NAME
- VAR_CALC
- VAR_CELL_PREFIX
- fieldReducers
- sortThresholds
- MappingType
- PanelModel
- ConfigOverrideRule
- validateFieldConfig
- readCSV
- DateTime
- dateTimeAsMoment
- TimeFragment
- isDateTime
- rangeUtil
- TIME_FORMAT
- TimeOption
- dateMath
- dateTimeForTimeZone
- getTimeZoneGroups
- RawTimeRange
- FilterFieldsByNameTransformerOptions
- DataTransformerID
- transformersRegistry
- FilterFramesByRefIdTransformerOptions
- ReduceTransformerOptions
- DataTransformerConfig
- transformDataFrame
- getValueFormats
- GrafanaThemeCommons
- setLocale
- setMarkdownOptions
- escapeStringForRegex
- unEscapeStringFromRegex
- UserOrgDTO
- NavModel
- NavModelBreadcrumb
- renderMarkdown
- LogsMetaKind
- findCommonLabels
- findUniqueLabels
- getLogLevel
- getLogLevelFromKey
- LogsModel
- LogsMetaItem
- toUtc
- FieldWithIndex
- NavIndex
- PanelEvents
- OrgRole
- eventFactory
- TableData
- Column
- ValueFormatter
- stringToJsRegex
- DecimalCount
- AppEvent
- ExploreMode
- CoreApp
- HistoryItem
- IntervalValues
- toCSV
- DynamicConfigValue
- FieldConfigEditorRegistry
- VariableSuggestionsScope
- DefaultTimeRange
- toDataFrameDTO
- PanelMenuItem
- PluginType
- toLegacyResponseData
- DataQueryResponseData
- guessFieldTypes
- DataSourcePluginMeta
- DataSourceConstructor
- PluginInclude
- PluginMetaInfo
- toDuration
- LogsDedupDescription
- QueryFixAction
- TimeSeries
- LegacyResponseData
- AngularPanelMenuItem
- FieldDisplay
- DataFrameView
- GrafanaPlugin
- PluginDependencies
- PluginIncludeType
- onUpdateDatasourceJsonDataOptionSelect
- onUpdateDatasourceOption
- onUpdateDatasourceResetOption
- onUpdateDatasourceJsonDataOption
- onUpdateDatasourceSecureJsonDataOption
- updateDatasourcePluginOption
- updateDatasourcePluginResetOption
- updateDatasourcePluginJsonDataOption
- updateDatasourcePluginSecureJsonDataOption
- ExploreStartPageProps
- DataFrameDTO
- AnnotationQueryRequest
- LanguageProvider
- formatLabels
- parseLabels
- CircularDataFrame
- QueryHint
- isDataFrame
- QueryFix
- CSVReader
- DurationUnit
- getFieldDisplayValues
- getDisplayValueAlignmentFactors
- getFlotPairsConstant
- CreatePlotOverlay
- isTableData
- stringStartsAsRegEx
- base64StringToArrowTable
- arrowTableToDataFrame
- FieldConfigProperty
Other Related APIs
@grafana/data#arrowTableToDataFrame TypeScript Examples
The following examples show how to use
@grafana/data#arrowTableToDataFrame.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: FileBrowser.tsx From grafana-s3-plugin with Apache License 2.0 | 4 votes |
listFiles = (prefix: string, edit?: boolean) => {
getBackendSrv()
.datasourceRequest({
url: '/api/ds/query',
method: 'POST',
data: {
queries: [
{
refId: 'A',
path: prefix,
query: 'LIST FORMATTED',
orgId: this.props.orgId,
datasourceId: this.props.dsId,
},
],
},
})
.then(response => {
const b64 = response.data.results.A.dataframes[0];
const table = base64StringToArrowTable(b64);
const frame = arrowTableToDataFrame(table);
frame.fields[0].display = (value: string) => {
let icon = this.icons['error'];
const parts = /^(.*),type=(.*),key=(.*)$/.exec(value);
if (parts !== null && parts.length === 4) {
value = parts![1];
icon = this.icons[parts![2]] || icon;
}
return {
prefix: icon,
numeric: Number.NaN,
text: value,
};
};
// @ts-ignore
frame.fields[0].getLinks = (options: any) => {
const i = options.valueRowIndex;
let value = table.getColumnAt(0)!.get(i);
let href = undefined;
const parts = /^(.*),type=(.*),key=(.*)$/.exec(value);
if (parts !== null && parts.length === 4 && parts![2] === 'folder') {
value = parts![1];
href = this.setsearchparams({ explore: true, prefix: parts![3] });
}
if (href) {
return [{ href: href, title: value }];
} else {
return [undefined];
}
};
frame.fields[1].display = getDisplayProcessor({ field: frame.fields[1] });
frame.fields[2].display = getDisplayProcessor({ field: frame.fields[2] });
frame.fields[3].display = (value: string) => {
return {
numeric: Number.NaN,
text: this.icons['delete'],
};
};
// @ts-ignore
frame.fields[3].getLinks = (options: any) => {
const i = options.valueRowIndex;
const value = table.getColumnAt(0)!.get(i);
let onClick = undefined;
const parts = /^(.*),type=(.*),key=(.*)$/.exec(value);
if (parts !== null && parts.length === 4) {
onClick = () => {
console.log('Delete', parts![2], parts![3]);
return getBackendSrv()
.datasourceRequest({
url: '/api/ds/query',
method: 'POST',
data: {
queries: [
{
refId: 'A',
path: parts![3],
query: 'DELETE ' + parts![2],
orgId: this.props.orgId,
datasourceId: this.props.dsId,
},
],
},
})
.then(response => {
this.listFiles(this.state.prefix);
});
};
}
return [{ onClick: onClick, title: 'Delete' }];
if (onClick) {
return [{ onClick: onClick, title: 'Delete' }];
} else {
return [undefined];
}
};
if (edit) {
this.setState({
hints: frame!.meta!.custom!.folders.map((folder: any) => ({ label: folder, value: folder })),
});
} else if (prefix === this.state.prefix) {
this.setState({
dirty: false,
files: frame,
hints: frame!.meta!.custom!.folders.map((folder: any) => ({ label: folder, value: folder })),
});
}
});
};