2.23.1 • Published 5 months ago

@infomaximum/package-cli v2.23.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
5 months ago

@infomaximum/package-cli

@infomaximum/package-cli - предоставляет разработчикам набор команд и функций для сборки пакетов, запуска пакетов в режиме разработки и создания шаблонного кода для виджетов, приложений и интеграций.


Разработка виджета

Инициализация проекта

Для создания нового пакета с виджетом необходимо выполнить следующую команду:

npx @infomaximum/package-cli widget init my_widget

После выполнения данной команды будет создан шаблонный проект my_widget и инициализирован git репозиторий.

Разработка виджета

Для разработки виджета нужно выполнить команду:

yarn im-package-cli widget build --dev

Данная команда выполняет сборку пакета для разработки. Далее, пакет (собранный архив из папки build) необходимо загрузить в систему. Для этого добавляем пакет в маркетплейс либо в пространство, а так же добавляем разрабатываемый виджет на холст (дашбординг).

Затем необходимо запустить сервер разработки следующей командой:

yarn im-package-cli widget start

В результате будет запущен сервер отслеживающий изменения проекта и выполняющий горячую перезагрузку разрабатываемого компонента.

Сборка пакета

Для того чтобы пользователи имели возможность использовать разработанный вами виджет, необходимо выполнить сборку пакета, для этого выполняем команду:

yarn im-package-cli widget build

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

Файл конфигурации виджета

widgetrc.json

{
  "$schema": "node_modules/@infomaximum/package-cli/schemas/widgetConfigSchema.json",
  "entry": "src/index.tsx",
  "widgetManifest": "manifest.json",
  "packageManifest": "package/manifest.json",
  "packageDir": "package",
  "assetsDir": "_resources",
  "buildDir": "build",
  "port": 5555,
  "host": "localhost"
}
  • entry: Путь к точке входа вашего приложения
  • widgetManifest: Путь к файлу манифеста виджета

  • packageManifest: Путь к файлу манифеста пакета

  • packageDir: Путь к каталогу пакета

  • assetsDir: Путь к каталогу ресурсов

  • buildDir: Путь к каталогу сборки

  • port: Порт, на котором будет запущен сервер разработки

  • host: Хост, на котором будет запущен сервер разработки

Этот файл должен называться widgetrc.json, но также может иметь расширение .js, .yaml. Кроме того, конфигурацию можно добавить в package.json в поле widget.

package.json

{
  "name": "my_widget",
  "version": "1.0.0",
  "dependencies": {
    ...
  },
  "widget": {
    "entry": "src/index.tsx",
    "widgetManifest": "manifest.json",
    "packageManifest": "package/manifest.json",
    "packageDir": "package",
    "assetsDir": "_resources",
    "buildDir": "build",
    "port": 5555,
    "host": "localhost"
  }
}

Эта конфигурация определяет, как будет собираться и запускаться ваш пакет с использованием @infomaximum/package-cli.

Версионирование (2.10.0)

@infomaximum/package-cli реализует возможность автоматизированного семантического версионирования для управления версиями пакетов. Версия пакета автоматически вычисляется на основе сообщений коммитов в репозиторий:

fix: увеличивает патч-версию (например, с 1.0.0 до 1.0.1)
feat: увеличивает минорную версию (например, с 1.0.0 до 1.1.0)
BREAKING CHANGE: увеличивает мажорную версию (например, с 1.0.0 до 2.0.0)

После вычисления новой версии автоматически генерируется CHANGELOG.md, который включает список изменений, а также создается соответствующий тег в системе контроля версий.

Создать релиз можно используя команду yarn im-package-cli widget release


Разработка интеграции

Инициализация проекта

Для создания нового пакета с интеграцией необходимо выполнить следующую команду:

npx @infomaximum/package-cli integration init my_integration

После выполнения данной команды будет создан шаблонный проект my_integration и инициализирован git репозиторий.

Сборка проекта

Для сборки пакета интеграции необходимо выполнить команду yarn im-package-cli integration build

Для сборки скрипта интеграции необходимо выполнить команду yarn im-package-cli integration build --type=script

Для отслеживания изменений в файлах и пересборки скрипта интеграции необходимо выполнить команду yarn im-package-cli integration build --watch

Вывод всех доступных команд

Вы можете использовать флаг -h, чтобы просмотреть список всех доступных команд и их описаний:

yarn im-package-cli -h
2.23.1

5 months ago

2.22.0-1

7 months ago

2.22.0-2

7 months ago

2.22.0-0

7 months ago

2.19.0

8 months ago

2.19.1

8 months ago

2.15.0

8 months ago

2.15.1

8 months ago

2.22.1

7 months ago

2.22.0

7 months ago

2.22.6

7 months ago

2.22.3

7 months ago

2.22.2

7 months ago

2.22.5

7 months ago

2.22.4

7 months ago

2.18.0

8 months ago

2.14.0

8 months ago

2.21.0

7 months ago

2.17.2

8 months ago

2.17.0

8 months ago

2.17.1

8 months ago

2.13.0

8 months ago

2.13.1

8 months ago

2.20.0

8 months ago

2.20.1

8 months ago

2.12.0

8 months ago

2.16.1

8 months ago

2.16.0

8 months ago

2.23.0

7 months ago

2.12.0-rc.1

8 months ago

2.11.0

1 year ago

2.10.1

1 year ago

2.10.2

1 year ago

2.10.0

1 year ago

2.10.3

1 year ago

2.10.4

1 year ago

2.9.0

1 year ago

2.6.1

1 year ago

2.6.0

1 year ago

2.8.0

1 year ago

2.7.0

1 year ago

2.7.1

1 year ago

2.4.0

1 year ago

2.5.0

1 year ago

2.3.0

2 years ago

2.2.1

2 years ago

2.2.0

2 years ago

2.1.1

2 years ago

2.0.1

2 years ago

2.1.0

2 years ago

2.0.0

2 years ago

1.21.0

2 years ago

1.21.1

2 years ago

1.20.0

2 years ago

1.19.0

2 years ago

1.18.0

2 years ago

1.19.1

2 years ago

1.18.0-rc1

2 years ago

1.18.0-rc2

2 years ago

1.17.0

2 years ago

1.16.1

2 years ago

1.16.0

2 years ago

1.15.0

2 years ago

1.14.0

2 years ago

1.13.0

2 years ago

1.12.0

2 years ago

1.11.0

2 years ago

1.10.1

2 years ago

1.9.2

2 years ago

1.10.0

2 years ago

1.9.1

2 years ago

1.9.0

2 years ago

1.8.0

2 years ago

1.7.0

2 years ago

1.6.1

2 years ago

1.6.0

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.4.0-rc8

2 years ago

1.4.0-rc7

2 years ago

1.4.0-rc6

2 years ago

1.4.0-rc5

2 years ago

1.4.0-rc4

2 years ago

1.4.0-rc3

2 years ago

1.4.0-rc2

2 years ago

1.4.0-rc

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago