Registration and uploading of packages


Дана інструкція призначена для реєстрації та завантаження UI плагіну на платформу MEF.DEV. Для цього, необхідно бути зареєстрованим користувачем платформи. Якщо Ви не зареєстровані, то під час першого входу на mef.dev technical preview Вам буде надано можливість пройти реєстрацію на основі вашого облікового запису LinkedIn.

Згідно послідовності нижче, будемо реєструвати плагін-приклад із мінімальним функціоналом типу Canvas, для інших типів плагінів процес аналогічний.

Package registration into platform


Для початку перейдемо на сторінку створення плагіну , вона знаходиться в меню ліворуч у пункті Плагіни, платформи mef.dev та стає доступною після логіну користувача на mef.dev technical preview.

Cторінкa створення

Примітка. Даний функціонал доступний лише користувачам із ролями Developer та Developer Admin

Після натискання кнопки +Додати ми потрапляємо на сторінку створення плагіну. При цьому, нам необхідно вказати деталі нового плагіну, наведені нижче:

  • Аліас - назва предметної області плагіну, яка використовується задля об’єднання плагінів за функціональним призначенням (логічна група). Важливо розуміти, що назви плагінів не можуть пересікатись у межах одного аліасу.
  • Ім'я - назва плагіну. Теж повинне бути унікальним і не співпадати із іншими уже існуючими на платформі плагінами.

Після введення цих даних переходимо до вибору типу плагіну. У поточної версії платформи існує 4 основних типів плагінів. Про призначення кожного типу та відмінності між ними написано в блоці допомоги зеленого кольору. Зараз нас цікавить тип Canvas - плагін, що містить лише UI складову, тому ми вибираємо його.

Після вибору у нас активувався Frontend блок. Він містить лише одне поле FrontendPluginName. Це є селектор основного модуля в плагіні. Детальніше про нього розказувалось в інструкції створення плагіну з нуля. Вводимо назву з прикладу, яка становить значення plugin-example та натискаємо кнопку Зберегти.

В випадку, якщо всі поля введені правильно, відбудеться перехід на сторінку конфігурації плагіна.

Примітка. В подальшому на неї можна потрапити через кнопку Налаштувати в рядку плагіна що розташований в меню Плагіни

Cторінкa створення

Configuration of package

Для того щоб плагін працював, перед завантаженням потрібно провести базові налаштування.

General settings

Це лише інформаційні параметри - вони не впливають на роботу плагіна та використовуються лише для відображення плагіна в межах платформи.

Dependencies settings

Використовуються у випадку, якщо плагін використовує функціонал інших вже завантажених backend плагінів платформи, наприклад API або Service.

Примітка. При додаванні Dependencies базова інформація про них передаватиметься в UI плагін за допомогою @natec/mef-dev-platform-connector

Router Links settings

Застосовується тільки для плагінів типу Canvas та Portal. Необхідний для прописування сторінок в межах плагіну. Платформа резервує набір сторінок в межах плагіну. Для роботи потрібно прописати сторінки які будуть використовуватись плагіном.

Uploading version of package

Завантаження першої або нової версію плагіна відбувається в блоці Frontend.

При натисканні кнопки для завантаження потрібно вибрати архів зібраного контенту плагіна – цей архів являє собою упакований контент папки dist. По завершенню гайду по створенню першого плагіну ваша папка distповинна виглядати приблизно ось так

Вигляд папки dist

Увага! Контент повинен розміщуватися в корені архіву!

Завантажити вже завантажену версію плагіну неможливо,тому важливо керувати номерами версій та змінювати версію аплікації в package.json.

Версія package

В комбо вибору версії відображається актуальна версія, яка буде надана користувачеві за замовчуванням при зверненні до плагіну.

У деяких сценаріях використання, доцільнe звернення до різних версій одночасно, тому платформа надає таку можливість протягом життєвого циклу плагіну на платформі.


Possible platform upload erros

Тут описані помилки, які у вас можуть виникнути у процесі завантаження плагіну на платформу.

HTTP code Message Причина
400 File required Виникає, коли переданий файл архіву є нульовим або порожнім.
403 Access service denied Виникає, коли запит був відхилений через відсутність прав доступу.
400 Metadata is required Виникає, коли архів не містить обов'язковий файл metadata.json.
500 The required file was not found: {pluginName}.dll Виникає, коли архів не містить обов'язковий файл {pluginName}.dll.
409 Problem with upload. {ex.Message} Виникає, коли під час копіювання виникає неочікувана помилка.
409 : 200 Version already exists Виникає, коли вже існує плагін з такою ж версією - код 409 відображає зміну змісту плагіну (hash), інакше операція вважається успішною.
500 ServiceHost Unavailable Виникає, коли під час генерації документа виникає неочікувана помилка.
409 Does not match plugin name Виникає, коли ім'я плагіну (PluginMefName) у файлі не збігається з іменем плагіну в конфігурації.
404 Entities not found Виникає, коли під час аналізу змісту плагіну не знайдені Entities (export-частина бізнес логіки).

How to view your plugin on the platform

Якщо Ви хочете переглянути Ваш плагін у межах платформи mef.dev Перейшовши у секцію меню Embed Apps, Ви знайдете свій плагін, а натиснувши на нього, зможете побачити його у роботі.

Також, ви можете опублікувати свій плагін у секцію Store, для цього Вам спочатку необхідно надіслати його на перевірку - це можна зробити у розділі Плагіни, знайшовши свій плагін натисніть на три крапки та виберіть пункт із назвою Send for inspection.

Надсилання плагіну на перевірку

Якщо перевірка Вашого плагіну розробниками платформи пройде успішно, Ваш плагін буде додано у секцію Store.