/** * Copyright 2023-present DreamNum Co., Ltd. * * 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 type { ICommand } from '@univerjs/core'; import type { IDocPopup } from '../../services/doc-quick-insert-popup.service'; import { CommandType } from '@univerjs/core'; import { DocQuickInsertPopupService } from '../../services/doc-quick-insert-popup.service'; export interface IShowQuickInsertPopupOperationParams { unitId: string; index: number; popup: IDocPopup; } export const ShowQuickInsertPopupOperation: ICommand = { type: CommandType.OPERATION, id: 'doc.operation.show-quick-insert-popup', handler(accessor, params) { const docQuickInsertPopupService = accessor.get(DocQuickInsertPopupService); if (!params) { return false; } docQuickInsertPopupService.showPopup(params); return true; }, }; export const CloseQuickInsertPopupOperation: ICommand = { type: CommandType.OPERATION, id: 'doc.operation.close-quick-insert-popup', handler(accessor) { const docQuickInsertPopupService = accessor.get(DocQuickInsertPopupService); docQuickInsertPopupService.closePopup(); return true; }, };