Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

goods-exporter

Package Overview
Dependencies
Maintainers
2
Versions
54
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

goods-exporter

A versatile JavaScript library for exporting goods data to various formats such as YML, CSV, and Excel. Simplify data export tasks with ease.

  • 0.3.0
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

goods-exporter

npm version License

A versatile JavaScript library for exporting goods data to various formats such as YML, CSV, and Excel. Simplify data export tasks with ease.

Telegram

Features

  • Export goods data to YML, CSV, and Excel formats.
  • Easily integrate into your JavaScript projects.
  • Compatible with Node.js version 16 and above.
  • Comprehensive TypeScript type definitions included.

Supported formats

  • YML (Yandex Market Language)
  • CSV
  • Excel
  • TgShop
  • Insales
  • Tilda

Installation

To use goods-exporter in your project, simply add it to your dependencies using npm or yarn:

npm install goods-exporter --save
# or
yarn add goods-exporter

Quick start

import { GoodsExporter, Product, Category, YMLFormatter } from '../src'

// Create an instance of the GoodsExporter class.
const exporter = new GoodsExporter()

const products: Product[] = [] // Put your products;
const categories: Category[] = [{ id: 1, name: 'Обувь' }]

// Call the data export method.
exporter.export(products, categories)

Example

import fs from "fs"; // Import the 'fs' module for file writing.

// Create an instance of the GoodsExporter class.
const exporter = new GoodsExporter()

// Define an object 'transformers' that contains data transformation functions.
const transformers: Transformer[] = [
    (product) => ({
        ...product,
        price: product.price + 10000
    }),
    (product) => ({
        ...product,
        images: product.images?.map(image => image.replace("image", "pic"))
    })
]

// Set the formatter for exporting data to YML.
exporter.setFormatter(new YMLFormatter()) // or your own Formatter;

// Set transformers based on the specified keys.
exporter.setTransformers(transformers);

// Set an exporter that saves the data to the "output.yml" file.
exporter.setExporter((data: Buffer) => {
    fs.writeFileSync("output.yml", data); // Write data to the "output.yml" file.
    return data; // Return the data (you can return any type).
});

// Call the data export method specifying the data type (Buffer) and expect the result as a promise.
exporter.export<Buffer>(products, categories)
    .then(data => {
        // Here, you can add additional handling for the export result if needed.
    });

Supported by PoizonAPI

PoizonAPI

Keywords

FAQs

Package last updated on 11 Nov 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc