| Crates.io | cw-paginate-storage |
| lib.rs | cw-paginate-storage |
| version | 2.6.0 |
| created_at | 2023-07-03 10:53:50.061276+00 |
| updated_at | 2024-11-07 23:38:37.612519+00 |
| description | A package for paginating cosmwasm maps. |
| homepage | |
| repository | https://github.com/DA0-DA0/dao-contracts |
| max_upload_size | |
| id | 906887 |
| size | 20,007 |
This package provides generic convienence methods for paginating keys
and values in a CosmWasm Map or SnapshotMap. If you use these
methods to paginate the maps in your contract you may make larry0x
happy.
Given a map like:
use cw_storage_plus::Map;
pub const ITEMS: Map<String, String> = Map::new("items");
You can use this package to write a query to list it's contents like:
use cosmwasm_std::{Deps, Binary, to_json_binary, StdResult};
use cw_storage_plus::Map;
use cw_paginate_storage::paginate_map;
pub const ITEMS: Map<String, String> = Map::new("items");
pub fn query_list_items(
deps: Deps,
start_after: Option<String>,
limit: Option<u32>,
) -> StdResult<Binary> {
to_json_binary(&paginate_map(
deps,
&ITEMS,
start_after,
limit,
cosmwasm_std::Order::Descending,
)?)
}