UNPKG

localstorageclient

Version:
105 lines (73 loc) 2.84 kB
# LocalStorageTable ## How to install ```bash npm i localstorageclient ``` ## Overview `LocalStorageTable` is a TypeScript class for managing local storage tables with CRUD operations and synchronization with remote APIs. This document provides examples of how to use each method and option. ## 1. Basic Operations ### Initial Setup Create an instance of `LocalStorageTable`: ```typescript const tableName = 'myTable'; const storageTable = new LocalStorageTable<MyDataType>(tableName); ``` Replace `MyDataType` with your specific data type. ### Insert Data ```typescript const newItem = { name: 'John Doe', age: 30 }; const insertedItem = storageTable.insert(newItem); console.log('Inserted Item:', insertedItem); ``` ### Select Data ```typescript const query = { name: 'John Doe' }; const selectedItems = storageTable.select(query); console.log('Selected Items:', selectedItems); ``` ### Update Data ```typescript const query = { name: 'John Doe' }; const updates = { age: 31 }; const updatedItems = storageTable.update(query, updates); console.log('Updated Items:', updatedItems); ``` ### Delete Data ```typescript const query = { name: 'John Doe' }; const deletedCount = storageTable.delete(query); console.log('Number of Deleted Items:', deletedCount); ``` ### Clear Data ```typescript storageTable.clear(); console.log('Table Cleared'); ``` ## 2. Synchronization with API ### Fetch Data from API Fetch data from an API and store it in a local storage table periodically: ```typescript const apiUrl = 'https://api.example.com/data'; const timeInterval = 3600000; // 1 hour const dataTableName = 'fetchedData'; const headers = { 'Authorization': 'Bearer token' }; storageTable.fetchData(apiUrl, timeInterval, dataTableName, headers) .then(() => console.log('Data fetch and sync started')) .catch(error => console.error('Error fetching data:', error)); ``` ### Synchronize Data with API using POST Synchronize local storage table data with a remote API using POST requests periodically: ```typescript const postApiUrl = 'https://api.example.com/data'; const postTableName = 'localTable'; const postInterval = 3600000; // 1 hour const postHeaders = { 'Authorization': 'Bearer token' }; storageTable.syncPost(postApiUrl, postTableName, postInterval, postHeaders) .then(() => console.log('POST synchronization started')) .catch(error => console.error('Error synchronizing data with POST:', error)); ``` ## Notes - Ensure the API URLs and headers match your specific requirements. - Adjust the time intervals as needed for your use case. - Handle errors appropriately based on your application's needs. Feel free to modify and adapt these examples to fit your specific implementation and use cases.