- Plugin basics
- Introduction
- Platform overview
- Plugin guides
- First UI package
- Package registration
- First Backend package
- Portal package creation
- REST API
- REST API using
-
Request Formats
- HTTP GET: Getting a list of elements of type Entity
- HTTP GET: Getting a specific Element of the Entity Type
- HTTP PUT: Editing an Entity Type Element
- HTTP POST: Creating a new Element of Entity Types
- HTTP POST: Doing an Action for Element of Entity Types
- HTTP POST: Creating an new element Sub-Entity of Types
- HTTP DELETE: Deleting the element of Entity Types
- HTTP PATCH: Partially editing the element of Entity Types
- Handling Errors When Calling HTTP Methods
Registration and uploading of packages
Дана інструкція призначена для реєстрації та завантаження UI плагіну на платформу MEF.DEV. Для цього, необхідно бути зареєстрованим користувачем платформи. Якщо Ви не зареєстровані, то під час першого входу на mef.dev technical preview Вам буде надано можливість пройти реєстрацію на основі вашого облікового запису LinkedIn.
Згідно послідовності нижче, будемо реєструвати плагін-приклад із мінімальним функціоналом типу Canvas
, для інших типів плагінів процес аналогічний.
Package registration into platform
Для початку перейдемо на сторінку створення плагіну , вона знаходиться в меню ліворуч у пункті Плагіни, платформи mef.dev та стає доступною після логіну користувача на mef.dev technical preview.
Примітка. Даний функціонал доступний лише користувачам із ролями
Developer
таDeveloper Admin
Після натискання кнопки +Додати ми потрапляємо на сторінку створення плагіну. При цьому, нам необхідно вказати деталі нового плагіну, наведені нижче:
- Аліас - назва предметної області плагіну, яка використовується задля об’єднання плагінів за функціональним призначенням (логічна група). Важливо розуміти, що назви плагінів не можуть пересікатись у межах одного аліасу.
- Ім'я - назва плагіну. Теж повинне бути унікальним і не співпадати із іншими уже існуючими на платформі плагінами.
Після введення цих даних переходимо до вибору типу плагіну. У поточної версії платформи існує 4 основних типів плагінів. Про призначення кожного типу та відмінності між ними написано в блоці допомоги зеленого кольору.
Зараз нас цікавить тип Canvas
- плагін, що містить лише UI складову, тому ми вибираємо його.
Після вибору у нас активувався Frontend
блок. Він містить лише одне поле FrontendPluginName
. Це є селектор основного модуля в плагіні. Детальніше про нього розказувалось в інструкції створення плагіну з нуля. Вводимо назву з прикладу, яка становить значення plugin-example
та натискаємо кнопку Зберегти.
В випадку, якщо всі поля введені правильно, відбудеться перехід на сторінку конфігурації плагіна.
Примітка. В подальшому на неї можна потрапити через кнопку Налаштувати в рядку плагіна що розташований в меню Плагіни
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
повинна виглядати приблизно ось так
Увага! Контент повинен розміщуватися в корені архіву!
Завантажити вже завантажену версію плагіну неможливо,тому важливо керувати номерами версій та змінювати версію аплікації в package.json
.
В комбо вибору версії відображається актуальна версія, яка буде надана користувачеві за замовчуванням при зверненні до плагіну.
У деяких сценаріях використання, доцільн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
.