grain-sand-data
TypeScript icon, indicating that this package has built-in type declarations

0.1.9 • Public • Published

grain-sand-data

English | 中文

A foundational library for reading and writing network or file data on the browser side
For local file read/write operations, grain-sand-web-fs, built on top of this library, offers enhanced ease of use
For network data reading and downloading, grain-sand-fetch, also based on this library, provides a more convenient solution

The main features include automatic type detection by file content and file extension analysis.

Automatically reads common browser-side data types based on content

e.g., text, images, HTML, XML, etc.

Also includes a SimpleData type wrapper, optimized for network transmission and smaller than JSON

Installation

npx yarn add grain-sand-data

Usage

Auto-detecting Data Types and Reading Data

import {parseMime,getExtensionMime,readBlob} from 'https://cdn.jsdmirror.cn/npm/grain-sand-data/lib/index.web.js'

const blob = await fetch('https://emoji.bj.bcebos.com/yige-aigc/index_aigc/final/toolspics/15.png').then(r => r.blob());

const mime = await parseMime(blob); // Analyze data type from blob, supports images, text, videos, segments, etc.

console.log(mime); // Outputs: image/png

const type = await getExtensionMime(mime!);
console.log(type); // Outputs: {ext: 'png', mime: 'image/png'}

const pkg = await readBlob(blob);
document.body.appendChild(pkg.result); // Displays the image on the page

console.log(pkg); // Outputs: {ext: 'png', mime: 'image/png', blob: Blob, type: 2, result: img}

Package Sidebar

Install

npm i grain-sand-data

Weekly Downloads

18

Version

0.1.9

License

none

Unpacked Size

61.3 kB

Total Files

6

Last publish

Collaborators

  • grain-sand