https://github.com/damartripamungkas/mapping-data
๐ Mapping data with map or object in the same interface and support types Key and value in typescript
https://github.com/damartripamungkas/mapping-data
data-mapping fast-store-data js map mapping mapping-data nodejs object state store store-data typescript
Last synced: 2 months ago
JSON representation
๐ Mapping data with map or object in the same interface and support types Key and value in typescript
- Host: GitHub
- URL: https://github.com/damartripamungkas/mapping-data
- Owner: damartripamungkas
- License: mit
- Created: 2024-04-16T10:11:14.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-16T12:44:33.000Z (about 1 year ago)
- Last Synced: 2025-02-20T04:04:10.844Z (3 months ago)
- Topics: data-mapping, fast-store-data, js, map, mapping, mapping-data, nodejs, object, state, store, store-data, typescript
- Language: TypeScript
- Homepage: https://npmjs.com/package/mapping-data
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
MAPPING-DATA### ๐ Description :
This package is made for those of you who want the key and value to have the same type of type, because using `new Map()` and defining the type to the map then only the key works while the value does not, I give an example below:
#### Using Map
```typescript
type TypeStateAs = {
name: string
age: number
human: boolean
}
const state = new Map()
state.set(`name`, true) // is not an error, even though the value type is not boolean. expect this to be an error
```#### Using Package
```typescript
import { MappingMap } from "mapping-data"type TypeStateAs = {
name: string
age: number
human: boolean
}
const state = new MappingMap()
state.set(`name`, true) // this is will throw error in editor code, because value type `name` is string
```### ๐ฎ Cheatsheet
If you only need types for the `.set()` and `.get()` functions without having to use classes from the package you can import and define them as below :
```typescript
import type { MappingMap } from "mapping-data"type TypeStateAs = {
name: string
age: number
human: boolean
}
const state: MappingMap = new Map() as any
state.set(`name`, true) // this is will throw error in editor code, because value type `name` is string
```### ๐ป Step to install :
```
npm install mapping-data
```### โ๏ธ Example :
see full [here](./test/test.js)
```typescript
import { MappingMap, MappingObj } from "mapping-data"type TypeStateAs = {
name: string
age: number
human: boolean
}
const state = new MappingMap()
state.set(`name`, `damar`)
state.get(`name`) // damar
state.jsonObject() // {name:"damar"}
state.jsonString() // "{"name":"damar"}"
```### ๐งพ Pre-Requisistes :
```
node.js
```### ๐ License :
Licensed under the [MIT License](./LICENSE).