Разработка сайтов на локальном диске
Совместимость с тысячами Gulp плагинов
Файлы шаблона автоматически сортируются по типам

О модуле

InSales <> Uploader является модулем для node.js.

Модуль даёт возможность разработки сайтов на платформе InSales на локальном диске.

Общение с платформой идет через API, поэтому нужно получить ключи доступа в бэк-офисе.



Установка

npm i -g insales-uploader
InSales Если установить модуль глобально, методы можно запускать через команду uploader
При локальной установке подключение как обычно через require или import const uploader = require('insales-uploader');

Настройка

Получить ключи доступа



Локальное подкючение

// Настройки
const options = {
  account: {
    id: '0123456798',
    token: '0123456798',
    url: 'shop-41324.myinsales.ru',
    http: true
  },
  theme:{
    id: '854716', // id темы
    root: './', // Рабочая директория
    backup: true,
    assetsSync: true
  },
  util: {
    openBrowser: true
  }
};

// Инициализация
const uploader = require('insales-uploader');
const IU = new uploader(options);

IU.download()
  .then(()=>{
    return IU.stream()
  })


Консольный клиент

Чтобы воспользоваться InSales-Uploader через консоль, установите пакет глобально: npm install -g insales-uploader

Настройки для запуска методов из консоли беруться из файла insales-config.js.

// Содержимое insales-config.js
module.exports = {
  account: {
    id: '0123456798',
    token: '0123456798',
    url: 'shop-41324.myinsales.ru',
    http: true
  },
  theme:{
    id: '854716',
    root: './',
    backup: true,
    assets: true,
    assetsSync: true,
    excludeFiles: []
  },
  util: {
    openBrowser: true
  }
};

Запуск методов:

uploader <название метода> <название метода>

Примеры:

uploader init - создаст файл настроек insales-config.js

uploader - запустит метод start

uploader download - запустит метод download

uploader download stream - запустит методы download stream

Параметры

Параметр Тип Значение поумолчанию Описание
account
id string null Необходимо сгенерировать в бэк-офисе: Приложения -> Разработчикам -> Создать новый ключ доступа
token string null Необходимо сгенерировать в бэк-офисе: Приложения -> Разработчикам -> Создать новый ключ доступа
url string null Url магазина из бэк-офиса, ссылка не должна содержать 'http://' и '/'
http boolean true Отсутствие ssl. Если у сайта есть ssl и возникают проблемы с api, нужно передать false
theme
id string/number null Id темы
root string '.' Корнеевая папка для сохранения темы
backup boolean true Создавать резервные копии темы
assetsSync boolean true Отслеживать директорию assets
excludeFiles array [] Массив путей, которые будут игнорироваться при отслеживании изменений.
assetsDomain string 'https://assets.insales.ru' Адрес cdn с медиа файлами. Переключить на https://assets3.insales.ru в случае недоступности https://assets.insales.ru
onUpdate function function(){} Колбек который срабатывает после каждого обновления в теме
util
openBrowser boolean true Открывать сайт в браузере после запуска метода stream?
plugins
exclude array [] Массив путей, которые будут игнорироваться плагинами.
style function null Колбек для подключения плагинов по работе со стилями (Пример).
script function null Колбек для подключения плагинов по работе со скриптами (Пример).
img function null Колбек для подключения плагинов по работе с изображениями (Пример).
media function null Колбек для подключения плагинов по работе с медиафайлами.
font function null Колбек для подключения плагинов по работе с шрифтами.

Методы

download — загрузка темы на компьютер

pull — загрузка темы на компьютер. Перед началом загрузки, все локальные файлы удаляются

upload — загрузка темы на сервер с полным обновлением файлов.

stream — отслеживание изменений в файлах

backup — создание архива с резервной копией

downloadFiles — скачать файлы из раздела файлы в бэк-офисе

uploadFiles — загрузка файлов в раздел файлы (Загружаются файлы из директории files)