UNPKG

@kui-shell/plugin-client-common

Version:

Kui plugin that offers stylesheets

43 lines 1.62 kB
/* * Copyright 2021 The Kubernetes Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { eventChannelUnsafe } from '@kui-shell/core/mdist/api/Events'; function strip(link) { return link.replace(/^kui-link-/, ''); } export function linkUpdateChannel(id) { return `/link/status/update/${strip(id)}`; } export function linkGetChannel(id) { return `/link/status/get/${strip(id)}`; } export function subscribeToLinkUpdates(link, statusUpdateHandler) { eventChannelUnsafe.on(linkUpdateChannel(link), statusUpdateHandler); // request the first update eventChannelUnsafe.emit(linkGetChannel(link)); } export function unsubscribeToLinkUpdates(link, statusUpdateHandler) { eventChannelUnsafe.off(linkUpdateChannel(link), statusUpdateHandler); } export function emitLinkUpdate(link, status) { eventChannelUnsafe.emit(linkUpdateChannel(link), status === 'success' ? [1, 0, 0] : status === 'error' ? [0, 1, 0] : status === 'in-progress' ? [0, 0, 1] : [0, 0, 0], link); } //# sourceMappingURL=LinkStatus.js.map