当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript RefreshPicker.isLive函数代码示例

本文整理汇总了TypeScript中@grafana/ui/src/components/RefreshPicker/RefreshPicker.isLive函数的典型用法代码示例。如果您正苦于以下问题:TypeScript isLive函数的具体用法?TypeScript isLive怎么用?TypeScript isLive使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了isLive函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: isLive

    mapper: (state, action): ExploreItemState => {
      const { queryIntervals, refreshInterval } = state;
      const { data } = action.payload;
      const live = isLive(refreshInterval);

      if (!live) {
        return state;
      }

      const newResults = seriesDataToLogsModel([data], queryIntervals.intervalMs);
      const rowsInState = sortLogsResult(state.logsResult, state.refreshInterval).rows;

      const processedRows = [];
      for (const row of rowsInState) {
        processedRows.push({ ...row, fresh: false });
      }
      for (const row of newResults.rows) {
        processedRows.push({ ...row, fresh: true });
      }

      const rows = processedRows.slice(processedRows.length - 1000, 1000);

      const logsResult: LogsModel = state.logsResult ? { ...state.logsResult, rows } : { hasUniqueLabels: false, rows };

      return {
        ...state,
        logsResult,
      };
    },
开发者ID:grafana,项目名称:grafana,代码行数:29,代码来源:reducers.ts

示例2: calculateResultsFromQueryTransactions

    mapper: (state, action): ExploreItemState => {
      const { queryIntervals, refreshInterval } = state;
      const { result, resultType, latency } = action.payload;
      const results = calculateResultsFromQueryTransactions(result, resultType, queryIntervals.intervalMs);
      const live = isLive(refreshInterval);

      if (live) {
        return state;
      }

      return {
        ...state,
        graphResult: resultType === 'Graph' ? results.graphResult : state.graphResult,
        tableResult: resultType === 'Table' ? results.tableResult : state.tableResult,
        logsResult:
          resultType === 'Logs'
            ? sortLogsResult(results.logsResult, refreshInterval)
            : sortLogsResult(state.logsResult, refreshInterval),
        latency,
        graphIsLoading: live ? true : false,
        logIsLoading: live ? true : false,
        tableIsLoading: live ? true : false,
        showingStartPage: false,
        update: makeInitialUpdateState(),
      };
    },
开发者ID:grafana,项目名称:grafana,代码行数:26,代码来源:reducers.ts

示例3: isLive

export const sortLogsResult = (logsResult: LogsModel, refreshInterval: string) => {
  const rows = logsResult ? logsResult.rows : [];
  const live = isLive(refreshInterval);
  live ? rows.sort(sortInAscendingOrder) : rows.sort(sortInDescendingOrder);
  const result: LogsModel = logsResult ? { ...logsResult, rows } : { hasUniqueLabels: false, rows };

  return result;
};
开发者ID:grafana,项目名称:grafana,代码行数:8,代码来源:explore.ts

示例4: filter

              filter(action => {
                if (action.type === resetExploreAction.type) {
                  return true; // stops all subscriptions if user navigates away
                }

                if (action.type === updateDatasourceInstanceAction.type && action.payload.exploreId === exploreId) {
                  return true; // stops subscriptions if user changes data source
                }

                if (action.type === changeRefreshIntervalAction.type && action.payload.exploreId === exploreId) {
                  return !isLive(action.payload.refreshInterval); // stops subscriptions if user changes refresh interval away from 'Live'
                }

                if (action.type === clearQueriesAction.type && action.payload.exploreId === exploreId) {
                  return true; // stops subscriptions if user clears all queries
                }

                return action.payload.exploreId === exploreId && action.payload.refId === refId;
              }),
开发者ID:grafana,项目名称:grafana,代码行数:19,代码来源:epics.ts

示例5: mergeMap

    mergeMap((action: ActionOf<StartSubscriptionsPayload>) => {
      const { exploreId, dataReceivedActionCreator } = action.payload;
      const { datasourceInstance, queries, refreshInterval } = state$.value.explore[exploreId];

      if (!datasourceInstance || !datasourceInstance.convertToStreamTargets) {
        return NEVER; //do nothing if datasource does not support streaming
      }

      if (!refreshInterval || !isLive(refreshInterval)) {
        return NEVER; //do nothing if refresh interval is not 'LIVE'
      }

      const request: any = { targets: queries };
      return datasourceInstance.convertToStreamTargets(request).map(target =>
        startSubscriptionAction({
          url: convertToWebSocketUrl(target.url),
          refId: target.refId,
          exploreId,
          dataReceivedActionCreator,
        })
      );
    })
开发者ID:grafana,项目名称:grafana,代码行数:22,代码来源:epics.ts


注:本文中的@grafana/ui/src/components/RefreshPicker/RefreshPicker.isLive函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。