Google-RestApi

 view release on metacpan or  search on metacpan

lib/Google/RestApi/SheetsApi4/Request/Spreadsheet/Worksheet/Range.pm  view on Meta::CPAN

  $self->batch_requests(
    deleteDimension => {
      range => $self->range_to_dimension($p->{dimension}),
    },
  );

  return $self;
}

sub delete_r { shift->delete_range(dimension => shift); }
sub delete_range {
  my $self = shift;

  state $check = signature(bless => !!0, named => [dimension => Str]);
  my $p = $check->(@_);

  $self->batch_requests(
    deleteRange => {
      range => $self->range_to_dimension($p->{dimension}),
    },
    shiftDimension => $p->{dimension},
  );

  return $self;
}

sub named_a { shift->add_named(name => shift); }
sub add_named {
  my $self = shift;

  state $check = signature(bless => !!0, named => [name => Str]);
  my $p = $check->(@_);

  $self->batch_requests(
    addNamedRange => {
      namedRange => {
        name  => $p->{name},
        range => $self->range_to_index(),
      },
    }
  );

  return $self;
}

sub named_d { shift->delete_named(); }
sub delete_named {
  my $self = shift;

  my $named = $self->named() or LOGDIE "Not a named range";
  $self->batch_requests(
    deleteNamedRange => {
      namedRangeId => $named,
    },
  );

  return $self;
}

sub named_u { shift->update_named(@_); }
sub update_named {
  my $self = shift;

  state $check = signature(
    bless => !!0,
    named => [
      name   => Optional[Str],
      range  => Optional[HashRef],
      fields => Str, { optional => 1 },
    ],
  );
  my $p = $check->(@_);

  my $named = $self->named() or LOGDIE "Not a named range";
  my %named_range = (namedRangeId => $named);
  $named_range{name} = $p->{name} if defined $p->{name};
  $named_range{range} = $p->{range} if $p->{range};

  my @field_list;
  push @field_list, 'name' if defined $p->{name};
  push @field_list, 'range' if $p->{range};
  my $fields = $p->{fields} || join(',', @field_list);

  $self->batch_requests(
    updateNamedRange => {
      namedRange => \%named_range,
      fields     => $fields,
    },
  );

  return $self;
}

sub auto_fill {
  my $self = shift;

  state $check = signature(
    bless => !!0,
    named => [
      source       => HasMethods['range_to_index'],
      use_template => Bool, { default => 1 },
    ],
  );
  my $p = $check->(@_);

  $self->batch_requests(
    autoFill => {
      range                => $self->range_to_index(),
      sourceAndDestination => {
        source    => $p->{source}->range_to_index(),
        dimension => 'ROWS',
        fillLength => 1,
      },
      useAlternateSeries   => bool(!$p->{use_template}),
    },
  );

  return $self;
}

sub append_cells {



( run in 0.671 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )