SpreadJS with typescript error test

Posted by: pedro.moraes on 18 August 2023, 1:24 pm EST

    • Post Options:
    • Link

    Posted 18 August 2023, 1:24 pm EST - Updated 18 August 2023, 1:29 pm EST

    Hi,

    I use angular 8 and when I try to run the tests the error appears

    import { Injectable } from '@angular/core';
    import { Spread } from '@grapecity/spread-sheets-designer';
    import { TranslateService } from '@ngx-translate/core';
    @Injectable()
    export class CommandMapService {
      constructor(public translateService: TranslateService) {}
    
      public buscarComandoDoMenuContextual(): Spread.Sheets.Designer.CommandMap {
        const comandoInserirLinha = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.InsertRows);
        const comandoInserirColuna = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.InsertColumns);
        const comandoDeletarLinha = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.DeleteRows);
        const comandoDeletarColuna = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.DeleteColumns);
        const comandoLimparConteudo = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.ClearContents);
        const comandoHideLinha = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.HideRows);
        const comandoHideColuna = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.HideColumns);
        const comandoUnhideLinha = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.UnhideRows);
        const comandoUnhideColuna = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.UnhideColumns);
        const comandoOrdenar = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.Sort);
        const comandoOrdenarAZ = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.SortAZ);
        const comandoOrdenarZA = Spread.Sheets.Designer.getCommand(Spread.Sheets.Designer.CommandNames.SortZA);
    
        return {
          'gc.spread.contextMenu.insertRows': {
            text: this.translateService.instant('MEMORIA_CALCULO.INSERT'),
            commandName: 'gc.spread.contextMenu.insertRows',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoInserirLinha.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoInserirLinha.visibleContext,
          },
          inserirLinhaParaForecast: {
            text: this.translateService.instant('MEMORIA_CALCULO.INSERT'),
            commandName: 'inserirLinhaParaForecast',
            enableContext: 'podeEditar && podeEditarPorStatus',
            visibleContext: 'ClickRowHeader && paginaForecast',
            subCommands: ['inserirAcimaForecast', 'inserirAbaixoForecast'],
          },
          'gc.spread.contextMenu.insertColumns': {
            text: this.translateService.instant('MEMORIA_CALCULO.INSERT'),
            commandName: 'gc.spread.contextMenu.insertColumns',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoInserirColuna.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoInserirColuna.visibleContext,
          },
          'gc.spread.contextMenu.deleteRows': {
            text: this.translateService.instant('MEMORIA_CALCULO.DELETE_2'),
            commandName: 'gc.spread.contextMenu.deleteRows',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoDeletarLinha.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoDeletarLinha.visibleContext,
          },
          'gc.spread.contextMenu.deleteColumns': {
            text: this.translateService.instant('MEMORIA_CALCULO.DELETE_2'),
            commandName: 'gc.spread.contextMenu.deleteColumns',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoDeletarColuna.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoDeletarColuna.visibleContext,
          },
          inserirCelulaNaPagina: {
            text: this.translateService.instant('MEMORIA_CALCULO.INSERT'),
            commandName: 'inserirCelulaNaPagina',
            enableContext: '!IsProtected',
            visibleContext: 'ClickViewport && !TableClicked && !AllowInsertCopiedCutCells && !paginaModelagem && !paginaForecast',
            subCommands: ['inserirDeslocandoParaDireita', 'inserirDeslocandoParaBaixo', 'inserirLinhaPorCelula', 'inserirColunaPorCelula'],
          },
          inserirDeslocandoParaDireita: {
            text: 'Deslocar para a direita',
            commandName: 'Designer.insertRightCells',
          },
          inserirDeslocandoParaBaixo: {
            text: 'Deslocar para baixo',
            commandName: 'Designer.insertDownCells',
          },
          inserirLinhaPorCelula: {
            text: 'Linha inteira',
            commandName: 'gc.spread.contextMenu.insertRows',
          },
          inserirColunaPorCelula: {
            text: 'Coluna inteira',
            commandName: 'gc.spread.contextMenu.insertColumns',
          },
          deletarCelulaNaPagina: {
            text: this.translateService.instant('MEMORIA_CALCULO.DELETE'),
            commandName: 'deletarCelulaNaPagina',
            enableContext: '!IsProtected',
            subCommands: ['Designer.deleteLeftCells', 'Designer.deleteUpCells', 'deletarLinhaPorCelula', 'deletarColunaPorCelula'],
            visibleContext: 'ClickViewport && !TableClicked && !paginaModelagem && !paginaForecast',
          },
          'Designer.deleteLeftCells': {
            text: 'Deslocar para a esquerda',
            commandName: 'Designer.deleteLeftCells',
          },
          'Designer.deleteUpCells': {
            text: 'Deslocar para cima',
            commandName: 'Designer.deleteUpCells',
          },
          deletarLinhaPorCelula: {
            text: 'Linha inteira',
            commandName: 'gc.spread.contextMenu.deleteRows',
          },
          deletarColunaPorCelula: {
            text: 'Coluna inteira',
            commandName: 'gc.spread.contextMenu.deleteColumns',
          },
          'gc.spread.contextMenu.clearContents': {
            text: this.translateService.instant('MEMORIA_CALCULO.CLEAR_CONTENT'),
            commandName: 'gc.spread.contextMenu.clearContents',
            enableContext: 'podeEditar &&  podeEditarPorStatus && ' + comandoLimparConteudo.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && !PivotTableSelected && ClickViewport',
          },
          'gc.spread.contextMenu.hideRows': {
            text: this.translateService.instant('MEMORIA_CALCULO.HIDE'),
            commandName: 'gc.spread.contextMenu.hideRows',
            enableContext: 'podeEditar &&  podeEditarPorStatus && ' + comandoHideLinha.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoHideLinha.visibleContext,
          },
          'gc.spread.contextMenu.hideColumns': {
            text: this.translateService.instant('MEMORIA_CALCULO.HIDE'),
            commandName: 'gc.spread.contextMenu.hideColumns',
            enableContext: 'podeEditar &&  podeEditarPorStatus && ' + comandoHideColuna.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoHideColuna.visibleContext,
          },
          'gc.spread.contextMenu.unhideRows': {
            text: this.translateService.instant('MEMORIA_CALCULO.SHOW'),
            commandName: 'gc.spread.contextMenu.unhideRows',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoUnhideLinha.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoUnhideLinha.visibleContext,
          },
          'gc.spread.contextMenu.unhideColumns': {
            text: this.translateService.instant('MEMORIA_CALCULO.SHOW'),
            commandName: 'gc.spread.contextMenu.unhideColumns',
            enableContext: 'podeEditar && podeEditarPorStatus && ' + comandoUnhideColuna.enableContext,
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoUnhideColuna.visibleContext,
          },
          sort: {
            text: 'Ordernar',
            commandName: 'sort',
            subCommands: ['ordenarCrescente', 'ordenarDecrescente'],
            enableContext: 'podeEditar && podeEditarPorStatus',
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoOrdenar.visibleContext,
          },
          ordenarCrescente: {
            text: 'Ordenar de A a Z',
            commandName: 'gc.spread.contextMenu.sortAscend',
            enableContext: 'podeEditar && podeEditarPorStatus',
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoOrdenarAZ.visibleContext,
          },
          ordenarDecrescente: {
            text: 'Ordenar de Z a A',
            commandName: 'gc.spread.contextMenu.sortDescend',
            enableContext: 'podeEditar && podeEditarPorStatus',
            visibleContext: '!paginaModelagem && !paginaForecast && ' + comandoOrdenarZA.visibleContext,
          },
        };
      }
    }

    It’s relating to this class which is an extension of my commandMap

    this.spreadDesignerConfig = {
          ribbon: this.pegarRibbon(),
          fileMenu: 'fileMenuButton',
          commandMap: {
            ....this.commandMapService.buscarComandoDoMenuContextual(),
            },
          },
        };
  • Posted 21 August 2023, 1:40 pm EST

    Hi,

    Looking at the error image, the error seems to because of the missing package which is required by the SpreadJS Designer. However, we are not sure about this as we would need a sample that replicates the issue to find the root cause of the issue.

    Could you please provide us with a sample which replicates the issue? You may modify the attached sample to replicate the issue and share with us.

    sample: spreadjs_designer.zip

    Regards

Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels