use strict;
use warnings;
use FindBin::libs;
use DeWeave::Storage;
use DeWeave::Crypto;
use DeWeave::Collection;
use Getopt::Long;
my ($server,$username,$password,$sync_key);
{
my $p = Getopt::Long::Parser->new(
config => [qw(
no_auto_abbrev
no_getopt_compat
no_gnu_compat
require_order
no_ignore_case
)],
);
die unless $p->getoptions(
'h|host=s' => \$server,
'u|user=s' => \$username,
'p|pass|password=s' => \$password,
'k|key|sync-key=s' => \$sync_key,
);
}
my $storage = DeWeave::Storage->new({
($server ? (server_uri => $server) : () ),
username => $username,
password => $password,
});
my $crypto = DeWeave::Crypto->new({
storage => $storage,
sync_key => $sync_key,
});
use Data::Dump 'pp';
my $data = $storage->get_item('storage/tabs');
my $foo = DeWeave::Collection->from_json(
$data,
$crypto,
);
print pp $foo;