@awes-io/nuxt-localization
Awes.io Module for Editing Translations
This module is an interface, that helps you to edit translations in your database.
Basic usage
- Make shure, you are using
@awes-io/uiand@nuxtjs/axios - Install the module
yarn add @awes-io/nuxt-localization - The frontend part is ready!
Backend endpoint
By default, the module will make next requests to you backend
Fetch translations to edit
// GET /api/translations/edit?page={page}&limit={limit}&search={search}
// Expected response
{
"data": [
// array of translations: id, name and value
{
"id": 1,
"name": "ui.hello",
"value": {
"en": "Hello",
"de": "Hallo"
}
},
{
"id": 1,
"name": "another.translation.key",
"value": {
"en": "Another translation key"
// locales may be missing
}
}
// ...
],
"meta": {
"current_page": 1, // required
"per_page": 15, // required
"total": 42 // required
// ...
}
}
Add new translation
// POST /api/translations/edit
// Request body
{
"name": "ui.hello",
"value": {
"en": "Hello",
"de": "Hallo"
// ... other languages in current project
}
}
// Expected response - status 200
// Error response - status !== 200
{
"errors": {
"name": "Key already exists",
"value.en": "Default translation is required"
}
}
Save edited translation
// PATCH /api/translations/edit/{id}
// Request body
{
"id": 1,
"name": "ui.hello",
"value": {
"en": "Hello",
"de": "Hallo",
"ru": "Привет"
}
}
// Expected response - status 200
Delete translation
// DELETE /api/translations/edit/{id}
// Expected response - status 200
Configuration
// nuxt.config.js
{
awesIo: {
nuxtLocalization: {
// the localization base route, attached to project
route: '/localization',
// backend endpoint
endpoint: '/api/translations/edit',
// link to download translations (hidden by default)
export: '',
// if string is longer, then this limit it will be rendered as textarea
textLimit: 128,
// name of data field in response
data: {
default: {},
response: 'data'
},
// name of errors field in response
errors: {
default: {},
response: 'errors'
},
// pagination request params and response field names
pagination: {
page: {
default: 1,
request: 'page',
response: 'meta.current_page'
},
limit: {
default: 15,
request: 'limit',
response: 'meta.per_page'
},
total: {
response: 'meta.total'
}
},
// search request params
search: { request: 'search' }
}
}
}
Ensure to write proper commit message according to Git Commit convention
Related Packages
@i18n-micro/hmr
Translation HMR utilities for Nuxt I18n Micro (granular subpath imports).
51,795
251
Version History
| Version | Released | License |
|---|---|---|
| 0.13.85 | MIT | |
| 0.13.82 | MIT | |
| 0.13.81 | MIT | |
| 0.13.80 | MIT | |
| 0.13.79 | MIT | |
| 0.13.78 | MIT | |
| 0.13.77 | MIT | |
| 0.13.76 | MIT | |
| 0.13.75 | MIT | |
| 0.13.74 | MIT | |
| 0.13.73 | MIT | |
| 0.13.72 | MIT | |
| 0.13.71 | MIT | |
| 0.13.70 | MIT | |
| 0.13.69 | MIT | |
| 0.13.68 | MIT | |
| 0.13.67 | MIT | |
| 0.13.66 | MIT | |
| 0.13.65 | MIT | |
| 0.13.64 | MIT | |
| 0.13.63 | MIT | |
| 0.13.62 | MIT | |
| 0.13.61 | MIT | |
| 0.13.60 | MIT | |
| 0.13.59 | MIT | |
| 0.13.58 | MIT | |
| 0.13.57 | MIT | |
| 0.13.56 | MIT | |
| 0.13.55 | MIT | |
| 0.13.54 | MIT |
Showing the latest 30 of 329. See every release on npm