npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@deliverart/sdk-js-sales-mode

v2.16.3

Published

Deliverart JavaScript SDK for Sales Modes Management

Readme

@deliverart/sdk-js-sales-mode

Sales mode management package for the DeliverArt JavaScript SDK.

Installation

npm install @deliverart/sdk-js-sales-mode @deliverart/sdk-js-core

Exported Types

Core Types

  • SalesMode - Sales mode configuration
  • SalesModeDetails - Extended sales mode with settings

Sales Mode Types

Sales modes represent different ways customers can order:

  • Delivery
  • Takeaway
  • Dine-in
  • Reservation

IRI Types

  • SalesModeIri - Sales mode IRI (/sales_modes/:id)

Available Requests

CreateSalesMode

import { CreateSalesMode } from '@deliverart/sdk-js-sales-mode';

const salesMode = await sdk.call(new CreateSalesMode({
  name: 'Delivery',
  pointOfSale: '/point_of_sales/123',
  type: 'DELIVERY',
  enabled: true,
  settings: {
    minOrderAmount: 1000, // 10 EUR in cents
    deliveryRadius: 5000, // 5km in meters
    estimatedDeliveryTime: 30 // minutes
  }
}));

Input Parameters:

  • name: string (required) - Sales mode name
  • pointOfSale: string (required) - Point of sale IRI
  • type: string (required) - Sales mode type
  • enabled: boolean (required) - Enable/disable sales mode
  • settings?: object (optional) - Mode-specific settings

GetSalesModes

import { GetSalesModes } from '@deliverart/sdk-js-sales-mode';

const salesModes = await sdk.call(new GetSalesModes({
  query: {
    pointOfSale: '/point_of_sales/123',
    enabled: true
  }
}));

Query Parameters:

  • pointOfSale?: string - Filter by point of sale
  • type?: string - Filter by type
  • enabled?: boolean - Filter by enabled status
  • page?: number - Page number

GetSalesModeDetails

import { GetSalesModeDetails } from '@deliverart/sdk-js-sales-mode';

const salesMode = await sdk.call(new GetSalesModeDetails('mode-123'));

UpdateSalesMode

import { UpdateSalesMode } from '@deliverart/sdk-js-sales-mode';

const updated = await sdk.call(new UpdateSalesMode('mode-123', {
  enabled: false,
  settings: {
    minOrderAmount: 1500
  }
}));

DeleteSalesMode

import { DeleteSalesMode } from '@deliverart/sdk-js-sales-mode';

await sdk.call(new DeleteSalesMode('mode-123'));

Complete Usage Example

import { sdk } from './lib/sdk';
import {
  CreateSalesMode,
  GetSalesModes,
  UpdateSalesMode
} from '@deliverart/sdk-js-sales-mode';

async function salesModeSetup() {
  const posId = '/point_of_sales/123';

  // Create delivery mode
  const delivery = await sdk.call(new CreateSalesMode({
    name: 'Delivery',
    pointOfSale: posId,
    type: 'DELIVERY',
    enabled: true,
    settings: {
      minOrderAmount: 1000,
      deliveryRadius: 5000,
      estimatedDeliveryTime: 30,
      deliveryFee: 300
    }
  }));

  // Create takeaway mode
  const takeaway = await sdk.call(new CreateSalesMode({
    name: 'Takeaway',
    pointOfSale: posId,
    type: 'TAKEAWAY',
    enabled: true,
    settings: {
      minOrderAmount: 500,
      estimatedPreparationTime: 15
    }
  }));

  // Get all active modes
  const activeModes = await sdk.call(new GetSalesModes({
    query: {
      pointOfSale: posId,
      enabled: true
    }
  }));

  console.log(`Active sales modes: ${activeModes.data.length}`);

  // Temporarily disable delivery
  await sdk.call(new UpdateSalesMode(delivery.id, {
    enabled: false
  }));
}

License

MIT

@deliverart/sdk-js-point-of-sale

Point of sale management package for the DeliverArt JavaScript SDK.

Installation

npm install @deliverart/sdk-js-point-of-sale @deliverart/sdk-js-core

Exported Types

Core Types

  • PointOfSale - Point of sale information
  • PointOfSaleDetails - Extended POS with opening hours and settings
  • PointOfSaleUser - User assigned to point of sale
  • OpeningTime - Opening hours configuration
  • PointOfSaleTimeOverride - Special hours (holidays, events)

IRI Types

  • PointOfSaleIri - Point of sale IRI (/point_of_sales/:id)
  • PointOfSaleUserIri - POS user IRI (/point_of_sale_users/:id)
  • PointOfSaleTimeOverrideIri - Time override IRI (/point_of_sale_time_overrides/:id)

Available Requests

Point of Sale Management

CreatePointOfSale

import { CreatePointOfSale } from '@deliverart/sdk-js-point-of-sale';

const pos = await sdk.call(new CreatePointOfSale({
  name: 'Main Restaurant',
  company: '/companies/123',
  address: {
    street: 'Via Restaurant 1',
    city: 'Milano',
    postalCode: '20100',
    country: 'IT',
    location: {
      latitude: 45.464664,
      longitude: 9.188540
    }
  },
  phoneNumber: '+39021234567',
  email: '[email protected]',
  openingTimes: [
    {
      dayOfWeek: 1, // Monday
      openTime: '11:00',
      closeTime: '23:00'
    },
    {
      dayOfWeek: 2, // Tuesday
      openTime: '11:00',
      closeTime: '23:00'
    }
  ],
  enabled: true
}));

Input Parameters:

  • name: string (required) - Point of sale name
  • company: string (required) - Company IRI
  • address: Address (required) - Location address
  • phoneNumber: string (required) - Contact phone
  • email: string (required) - Contact email
  • openingTimes: OpeningTime[] (optional) - Weekly opening hours
  • enabled: boolean (optional) - Enable/disable POS
  • settings?: object (optional) - Additional settings

GetPointOfSales

import { GetPointOfSales } from '@deliverart/sdk-js-point-of-sale';

const pointOfSales = await sdk.call(new GetPointOfSales({
  query: {
    company: '/companies/123',
    enabled: true,
    'address.city': 'Milano',
    page: 1
  }
}));

Query Parameters:

  • company?: string - Filter by company
  • enabled?: boolean - Filter by enabled status
  • address.city?: string - Filter by city
  • address.postalCode?: string - Filter by postal code
  • page?: number - Page number

GetPointOfSaleDetails

import { GetPointOfSaleDetails } from '@deliverart/sdk-js-point-of-sale';

const pos = await sdk.call(new GetPointOfSaleDetails('pos-123'));

UpdatePointOfSale

import { UpdatePointOfSale } from '@deliverart/sdk-js-point-of-sale';

const updated = await sdk.call(new UpdatePointOfSale('pos-123', {
  name: 'Updated Restaurant Name',
  enabled: false
}));

DeletePointOfSale

import { DeletePointOfSale } from '@deliverart/sdk-js-point-of-sale';

await sdk.call(new DeletePointOfSale('pos-123'));

Point of Sale Users

CreatePointOfSaleUser

import { CreatePointOfSaleUser } from '@deliverart/sdk-js-point-of-sale';

const posUser = await sdk.call(new CreatePointOfSaleUser({
  pointOfSale: '/point_of_sales/123',
  user: '/users/456',
  role: 'MANAGER'
}));

Input Parameters:

  • pointOfSale: string (required) - Point of sale IRI
  • user: string (required) - User IRI
  • role: string (required) - Role (e.g., 'MANAGER', 'STAFF', 'DRIVER')

GetPointOfSaleUsers

import { GetPointOfSaleUsers } from '@deliverart/sdk-js-point-of-sale';

const users = await sdk.call(new GetPointOfSaleUsers({
  query: {
    pointOfSale: '/point_of_sales/123',
    role: 'MANAGER'
  }
}));

Time Overrides (Special Hours)

CreatePointOfSaleTimeOverride

import { CreatePointOfSaleTimeOverride } from '@deliverart/sdk-js-point-of-sale';

const override = await sdk.call(new CreatePointOfSaleTimeOverride({
  pointOfSale: '/point_of_sales/123',
  date: '2024-12-25', // Christmas
  openTime: null, // Closed
  closeTime: null,
  reason: 'Christmas Day - Closed'
}));

Input Parameters:

  • pointOfSale: string (required) - Point of sale IRI
  • date: string (required) - Date (YYYY-MM-DD)
  • openTime: string | null (required) - Opening time or null if closed
  • closeTime: string | null (required) - Closing time or null if closed
  • reason?: string (optional) - Override reason

GetPointOfSaleTimeOverrides

import { GetPointOfSaleTimeOverrides } from '@deliverart/sdk-js-point-of-sale';

const overrides = await sdk.call(new GetPointOfSaleTimeOverrides({
  query: {
    pointOfSale: '/point_of_sales/123',
    'date[after]': '2024-12-01',
    'date[before]': '2024-12-31'
  }
}));

Complete Usage Example

import { sdk } from './lib/sdk';
import {
  CreatePointOfSale,
  CreatePointOfSaleUser,
  CreatePointOfSaleTimeOverride,
  UpdatePointOfSale
} from '@deliverart/sdk-js-point-of-sale';

async function setupPointOfSale() {
  // Create point of sale
  const pos = await sdk.call(new CreatePointOfSale({
    name: 'Pizzeria da Mario',
    company: '/companies/123',
    address: {
      street: 'Via Napoli 10',
      city: 'Milano',
      postalCode: '20100',
      country: 'IT',
      location: {
        latitude: 45.464664,
        longitude: 9.188540
      }
    },
    phoneNumber: '+39021234567',
    email: '[email protected]',
    openingTimes: [
      { dayOfWeek: 1, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 2, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 3, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 4, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 5, openTime: '11:00', closeTime: '23:30' },
      { dayOfWeek: 6, openTime: '11:00', closeTime: '23:30' },
      { dayOfWeek: 0, openTime: '12:00', closeTime: '22:00' }
    ],
    enabled: true
  }));

  // Assign manager
  await sdk.call(new CreatePointOfSaleUser({
    pointOfSale: `/point_of_sales/${pos.id}`,
    user: '/users/456',
    role: 'MANAGER'
  }));

  // Add holiday closure
  await sdk.call(new CreatePointOfSaleTimeOverride({
    pointOfSale: `/point_of_sales/${pos.id}`,
    date: '2024-12-25',
    openTime: null,
    closeTime: null,
    reason: 'Christmas Day'
  }));

  // Temporarily disable
  await sdk.call(new UpdatePointOfSale(pos.id, {
    enabled: false
  }));
}

License

MIT