Merge branch 'maintenance-mode-fix' into api-docs

This commit is contained in:
Oliver Walters 2024-02-13 19:10:50 +11:00
commit fa5f04bfda
72 changed files with 25267 additions and 24550 deletions

View File

@ -30,6 +30,7 @@ jobs:
server: ${{ steps.filter.outputs.server }} server: ${{ steps.filter.outputs.server }}
migrations: ${{ steps.filter.outputs.migrations }} migrations: ${{ steps.filter.outputs.migrations }}
frontend: ${{ steps.filter.outputs.frontend }} frontend: ${{ steps.filter.outputs.frontend }}
api: ${{ steps.filter.outputs.api }}
steps: steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # pin@v4.1.1 - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # pin@v4.1.1
@ -44,6 +45,8 @@ jobs:
migrations: migrations:
- '**/migrations/**' - '**/migrations/**'
- '.github/workflows**' - '.github/workflows**'
api:
- 'InvenTree/InvenTree/api_version.py'
frontend: frontend:
- 'src/frontend/**' - 'src/frontend/**'
@ -126,6 +129,8 @@ jobs:
INVENTREE_PYTHON_TEST_SERVER: http://localhost:12345 INVENTREE_PYTHON_TEST_SERVER: http://localhost:12345
INVENTREE_PYTHON_TEST_USERNAME: testuser INVENTREE_PYTHON_TEST_USERNAME: testuser
INVENTREE_PYTHON_TEST_PASSWORD: testpassword INVENTREE_PYTHON_TEST_PASSWORD: testpassword
outputs:
version: ${{ steps.version.outputs.version }}
steps: steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # pin@v4.1.1 - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # pin@v4.1.1
@ -136,8 +141,64 @@ jobs:
dev-install: true dev-install: true
update: true update: true
- name: Export API Documentation - name: Export API Documentation
run: invoke schema --ignore-warnings
- name: Upload schema
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # pin@v3.1.3
with:
name: schema.yml
path: InvenTree/schema.yml
- name: Download public schema
if: needs.paths-filter.outputs.api == 'false'
run: | run: |
invoke schema --ignore-warnings pip install requests >/dev/null 2>&1
version="$(python3 ci/version_check.py only_version 2>&1)"
echo "Version: $version"
url="https://raw.githubusercontent.com/inventree/schema/main/export/${version}/api.yaml"
echo "URL: $url"
curl -s -o api.yaml $url
echo "Downloaded api.yaml"
- name: Check for differences in schemas
if: needs.paths-filter.outputs.api == 'false'
run: |
diff --color -u InvenTree/schema.yml api.yaml
diff -u InvenTree/schema.yml api.yaml && echo "no difference in API schema " || echo "differences in API schema" && exit 2
- name: Check schema - including warnings
run: invoke schema
continue-on-error: true
- name: Extract version for publishing
id: version
if: github.ref == 'refs/heads/master' && needs.paths-filter.outputs.api == 'true'
run: |
pip install requests >/dev/null 2>&1
version="$(python3 ci/version_check.py only_version 2>&1)"
echo "Version: $version"
echo "version=$version" >> "$GITHUB_OUTPUT"
schema-push:
name: Push new schema
runs-on: ubuntu-20.04
needs: [paths-filter, schema]
if: needs.schema.result == 'success' && github.ref == 'refs/heads/master' && needs.paths-filter.outputs.api == 'true'
env:
version: ${{ needs.schema.outputs.version }}
steps:
- uses: actions/checkout@v4
with:
repository: inventree/schema
token: ${{ secrets.SCHEMA_PAT }}
- name: Download schema artifact
uses: actions/download-artifact@v3
with:
name: schema.yml
- name: Move schema to correct location
run: |
echo "Version: $version"
mkdir export/${version}
mv schema.yml export/${version}/api.yaml
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "Update API schema for ${version}"
python: python:
name: Tests - inventree-python name: Tests - inventree-python

View File

@ -1,11 +1,14 @@
"""InvenTree API version information.""" """InvenTree API version information."""
# InvenTree API version # InvenTree API version
INVENTREE_API_VERSION = 166 INVENTREE_API_VERSION = 167
"""Increment this API version number whenever there is a significant change to the API that any clients need to know about.""" """Increment this API version number whenever there is a significant change to the API that any clients need to know about."""
INVENTREE_API_TEXT = """ INVENTREE_API_TEXT = """
v167 -> 2024-02-07: https://github.com/inventree/InvenTree/pull/6440
- Fixes for OpenAPI schema generation
v166 -> 2024-02-04 : https://github.com/inventree/InvenTree/pull/6400 v166 -> 2024-02-04 : https://github.com/inventree/InvenTree/pull/6400
- Adds package_name to plugin API - Adds package_name to plugin API
- Adds mechanism for uninstalling plugins via the API - Adds mechanism for uninstalling plugins via the API

View File

@ -1,5 +1,6 @@
"""Custom backend implementations.""" """Custom backend implementations."""
import datetime
import logging import logging
import time import time
@ -8,7 +9,6 @@ from django.db.utils import IntegrityError, OperationalError, ProgrammingError
from maintenance_mode.backends import AbstractStateBackend from maintenance_mode.backends import AbstractStateBackend
import common.models import common.models
import InvenTree.ready
logger = logging.getLogger('inventree') logger = logging.getLogger('inventree')
@ -16,8 +16,7 @@ logger = logging.getLogger('inventree')
class InvenTreeMaintenanceModeBackend(AbstractStateBackend): class InvenTreeMaintenanceModeBackend(AbstractStateBackend):
"""Custom backend for managing state of maintenance mode. """Custom backend for managing state of maintenance mode.
Stores the current state of the maintenance mode in the database, Stores a timestamp in the database to determine when maintenance mode will elapse.
using an InvenTreeSetting object.
""" """
SETTING_KEY = '_MAINTENANCE_MODE' SETTING_KEY = '_MAINTENANCE_MODE'
@ -30,26 +29,45 @@ class InvenTreeMaintenanceModeBackend(AbstractStateBackend):
""" """
try: try:
setting = common.models.InvenTreeSetting.objects.get(key=self.SETTING_KEY) setting = common.models.InvenTreeSetting.objects.get(key=self.SETTING_KEY)
value = InvenTree.helpers.str2bool(setting.value) value = str(setting.value).strip()
except common.models.InvenTreeSetting.DoesNotExist: except common.models.InvenTreeSetting.DoesNotExist:
# Database is accessible, but setting is not available - assume False # Database is accessible, but setting is not available - assume False
value = False return False
except (IntegrityError, OperationalError, ProgrammingError): except (IntegrityError, OperationalError, ProgrammingError):
# Database is inaccessible - assume we are not in maintenance mode # Database is inaccessible - assume we are not in maintenance mode
logger.warning('Failed to read maintenance mode state - assuming True') logger.debug('Failed to read maintenance mode state - assuming True')
value = True return True
logger.debug('Maintenance mode state: %s', value) # Extract timestamp from string
try:
# If the timestamp is in the past, we are now *out* of maintenance mode
timestamp = datetime.datetime.fromisoformat(value)
return timestamp > datetime.datetime.now()
except ValueError:
# If the value is not a valid timestamp, assume maintenance mode is not active
return False
return value def set_value(self, value: bool, retries: int = 5, minutes: int = 5):
"""Set the state of the maintenance mode.
def set_value(self, value: bool, retries: int = 5): Instead of simply writing "true" or "false" to the setting,
"""Set the state of the maintenance mode.""" we write a timestamp to the setting, which is used to determine
when maintenance mode will elapse.
This ensures that we will always *exit* maintenance mode after a certain time period.
"""
logger.debug('Setting maintenance mode state: %s', value) logger.debug('Setting maintenance mode state: %s', value)
if value:
# Save as isoformat
timestamp = datetime.datetime.now() + datetime.timedelta(minutes=minutes)
timestamp = timestamp.isoformat()
else:
# Blank timestamp means maintenance mode is not active
timestamp = ''
while retries > 0: while retries > 0:
try: try:
common.models.InvenTreeSetting.set_setting(self.SETTING_KEY, value) common.models.InvenTreeSetting.set_setting(self.SETTING_KEY, timestamp)
# Read the value back to confirm # Read the value back to confirm
if self.get_value() == value: if self.get_value() == value:

View File

@ -19,6 +19,7 @@ import pint.errors
from djmoney.contrib.exchange.exceptions import MissingRate from djmoney.contrib.exchange.exceptions import MissingRate
from djmoney.contrib.exchange.models import Rate, convert_money from djmoney.contrib.exchange.models import Rate, convert_money
from djmoney.money import Money from djmoney.money import Money
from maintenance_mode.core import get_maintenance_mode, set_maintenance_mode
from sesame.utils import get_user from sesame.utils import get_user
import InvenTree.conversion import InvenTree.conversion
@ -1264,3 +1265,55 @@ class MagicLoginTest(InvenTreeTestCase):
self.assertEqual(resp.url, '/api/auth/login-redirect/') self.assertEqual(resp.url, '/api/auth/login-redirect/')
# And we should be logged in again # And we should be logged in again
self.assertEqual(resp.wsgi_request.user, self.user) self.assertEqual(resp.wsgi_request.user, self.user)
class MaintenanceModeTest(InvenTreeTestCase):
"""Unit tests for maintenance mode."""
def test_basic(self):
"""Test basic maintenance mode operation."""
for value in [False, True, False]:
set_maintenance_mode(value)
self.assertEqual(get_maintenance_mode(), value)
# API request is blocked in maintenance mode
set_maintenance_mode(True)
response = self.client.get('/api/')
self.assertEqual(response.status_code, 503)
set_maintenance_mode(False)
response = self.client.get('/api/')
self.assertEqual(response.status_code, 200)
def test_timestamp(self):
"""Test that the timestamp value is interpreted correctly."""
KEY = '_MAINTENANCE_MODE'
# Deleting the setting means maintenance mode is off
InvenTreeSetting.objects.filter(key=KEY).delete()
self.assertFalse(get_maintenance_mode())
def set_timestamp(value):
InvenTreeSetting.set_setting(KEY, value, None)
# Test blank value
set_timestamp('')
self.assertFalse(get_maintenance_mode())
# Test timestamp in the past
ts = datetime.now() - timedelta(minutes=10)
set_timestamp(ts.isoformat())
self.assertFalse(get_maintenance_mode())
# Test timestamp in the future
ts = datetime.now() + timedelta(minutes=10)
set_timestamp(ts.isoformat())
self.assertTrue(get_maintenance_mode())
# Set to false, check for empty string
set_maintenance_mode(False)
self.assertFalse(get_maintenance_mode())
self.assertEqual(InvenTreeSetting.get_setting(KEY, None), '')

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -224,9 +224,9 @@ class SupplierBarcodeMixin(BarcodeMixin):
return None return None
if supplier_pk := self.get_setting('SUPPLIER_ID'): if supplier_pk := self.get_setting('SUPPLIER_ID'):
if supplier := Company.objects.get(pk=supplier_pk): try:
return supplier return Company.objects.get(pk=supplier_pk)
else: except Company.DoesNotExist:
logger.error( logger.error(
'No company with pk %d (set "SUPPLIER_ID" setting to a valid value)', 'No company with pk %d (set "SUPPLIER_ID" setting to a valid value)',
supplier_pk, supplier_pk,

View File

@ -2,6 +2,7 @@
import json as json_pkg import json as json_pkg
import logging import logging
from collections.abc import Iterable
import requests import requests
@ -107,7 +108,9 @@ class APICallMixin:
"""Returns an encoded path for the provided dict.""" """Returns an encoded path for the provided dict."""
groups = [] groups = []
for key, val in arguments.items(): for key, val in arguments.items():
groups.append(f'{key}={",".join([str(a) for a in val])}') if isinstance(val, Iterable) and not isinstance(val, str):
val = ','.join([str(a) for a in val])
groups.append(f'{key}={val}')
return f'?{"&".join(groups)}' return f'?{"&".join(groups)}'
def api_call( def api_call(

View File

@ -263,14 +263,17 @@ class APICallMixinTest(BaseMixinDefinition, TestCase):
"""Test that building up args work.""" """Test that building up args work."""
# api_build_url_args # api_build_url_args
# 1 arg # 1 arg
result = self.mixin.api_build_url_args({'a': 'b'}) result = self.mixin.api_build_url_args({'a': 'abc123'})
self.assertEqual(result, '?a=b') self.assertEqual(result, '?a=abc123')
# non string arg
result = self.mixin.api_build_url_args({'a': 1})
self.assertEqual(result, '?a=1')
# more args # more args
result = self.mixin.api_build_url_args({'a': 'b', 'c': 'd'}) result = self.mixin.api_build_url_args({'a': 'b', 'c': 42})
self.assertEqual(result, '?a=b&c=d') self.assertEqual(result, '?a=b&c=42')
# list args # list args
result = self.mixin.api_build_url_args({'a': 'b', 'c': ['d', 'e', 'f']}) result = self.mixin.api_build_url_args({'a': 'b', 'c': ['d', 'efgh', 1337]})
self.assertEqual(result, '?a=b&c=d,e,f') self.assertEqual(result, '?a=b&c=d,efgh,1337')
def test_api_call(self): def test_api_call(self):
"""Test that api calls work.""" """Test that api calls work."""

View File

@ -337,6 +337,8 @@ class PluginsRegistry:
collect, collect,
) )
_maintenance_mode = get_maintenance_mode()
with maintenance_mode_on(): with maintenance_mode_on():
if collect: if collect:
logger.info('Collecting plugins') logger.info('Collecting plugins')
@ -347,6 +349,10 @@ class PluginsRegistry:
self.plugins_loaded = True self.plugins_loaded = True
self._load_plugins(full_reload=full_reload) self._load_plugins(full_reload=full_reload)
# Check if we wish to exit maintenance mode
if not _maintenance_mode:
set_maintenance_mode(False)
self.update_plugin_hash() self.update_plugin_hash()
self.loading_lock.release() self.loading_lock.release()

View File

@ -7,8 +7,13 @@
{% block content %} {% block content %}
<h3>{% trans "Sign Up" %}</h3> <h3>{% trans "Sign Up" %}</h3>
<p>{% blocktrans with provider_name=account.get_provider.name site_name=site.name %}You are about to use your {{provider_name}} account to login to <p>
{{site_name}}.<br>As a final step, please complete the following form:{% endblocktrans %}</p> {% blocktrans with provider_name=account.get_provider.name site_name=site.name %}
You are about to use your {{provider_name}} account to login to {{site_name}}.
{% endblocktrans %}
<br>
{% trans "As a final step, please complete the following form" %}:
</p>
<form class="signup" id="signup_form" method="post" action="{% url 'socialaccount_signup' %}"> <form class="signup" id="signup_form" method="post" action="{% url 'socialaccount_signup' %}">
{% csrf_token %} {% csrf_token %}

View File

@ -90,6 +90,13 @@ def check_version_number(version_string, allow_duplicate=False):
if __name__ == '__main__': if __name__ == '__main__':
if 'only_version' in sys.argv:
here = Path(__file__).parent.absolute()
version_file = here.joinpath('..', 'InvenTree', 'InvenTree', 'api_version.py')
text = version_file.read_text()
results = re.findall(r"""INVENTREE_API_VERSION = (.*)""", text)
print(results[0])
exit(0)
# GITHUB_REF_TYPE may be either 'branch' or 'tag' # GITHUB_REF_TYPE may be either 'branch' or 'tag'
GITHUB_REF_TYPE = os.environ['GITHUB_REF_TYPE'] GITHUB_REF_TYPE = os.environ['GITHUB_REF_TYPE']

View File

@ -68,7 +68,7 @@ a parameter shall be transferred . The result will look like that:
First we need to write the plugin code, similar as in the example above. First we need to write the plugin code, similar as in the example above.
```python ```python
from django.conf.urls import url from django.urls import re_path
from django.http import HttpResponse from django.http import HttpResponse
from order.views import PurchaseOrderDetail from order.views import PurchaseOrderDetail
@ -99,7 +99,7 @@ class MouserCartPanel(PanelMixin, InvenTreePlugin, UrlsMixin):
def setup_urls(self): def setup_urls(self):
return [ return [
url(r'transfercart/(?P<pk>\d+)/', self.TransferCart, name='get-cart') re_path(r'transfercart/(?P<pk>\d+)/', self.TransferCart, name='get-cart')
] ]
#---------------------------------------------------------------------------- #----------------------------------------------------------------------------
@ -294,14 +294,14 @@ does the rest of the work.
The python code in the plugin also needs minor changes: The python code in the plugin also needs minor changes:
```python ```python
from django.conf.urls import url from django.urls import re_path
import json import json
... ...
def setup_urls(self): def setup_urls(self):
return [ return [
url(r'example(?:\.(?P<format>json))?$', self.do_something, name='transfer'), re_path(r'example(?:\.(?P<format>json))?$', self.do_something, name='transfer'),
] ]
# Define the function that will be called. # Define the function that will be called.

View File

@ -14,7 +14,7 @@ class MyUrlsPlugin(UrlsMixin, InvenTreePlugin):
NAME = "UrlsMixin" NAME = "UrlsMixin"
URLS = [ URLS = [
url(r'increase/(?P<location>\d+)/(?P<pk>\d+)/', self.view_increase, name='increase-level'), re_path(r'increase/(?P<location>\d+)/(?P<pk>\d+)/', self.view_increase, name='increase-level'),
] ]
``` ```

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: bg\n" "Language: bg\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Bulgarian\n" "Language-Team: Bulgarian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: cs\n" "Language: cs\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Czech\n" "Language-Team: Czech\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: da\n" "Language: da\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Danish\n" "Language-Team: Danish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: de\n" "Language: de\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: German\n" "Language-Team: German\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: el\n" "Language: el\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Greek\n" "Language-Team: Greek\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -5,16 +5,16 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: @lingui/cli\n" "X-Generator: @lingui/cli\n"
"Language: es_MX\n" "Language: es\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Spanish, Mexico\n" "Language-Team: Spanish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Crowdin-Project: inventree\n" "X-Crowdin-Project: inventree\n"
"X-Crowdin-Project-ID: 452300\n" "X-Crowdin-Project-ID: 452300\n"
"X-Crowdin-Language: es-MX\n" "X-Crowdin-Language: es-ES\n"
"X-Crowdin-File: /[inventree.InvenTree] l10/src/frontend/src/locales/en/messages.po\n" "X-Crowdin-File: /[inventree.InvenTree] l10/src/frontend/src/locales/en/messages.po\n"
"X-Crowdin-File-ID: 205\n" "X-Crowdin-File-ID: 205\n"
@ -68,11 +68,11 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:50 #: src/components/forms/AuthenticationForm.tsx:50
msgid "Login successful" msgid "Login successful"
msgstr "Inicio de sesión exitoso" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:51 #: src/components/forms/AuthenticationForm.tsx:51
msgid "Welcome back!" msgid "Welcome back!"
msgstr "¡Bienvenido de vuelta!" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:53 #: src/components/forms/AuthenticationForm.tsx:53
#~ msgid "Login successfull" #~ msgid "Login successfull"
@ -80,7 +80,7 @@ msgstr "¡Bienvenido de vuelta!"
#: src/components/forms/AuthenticationForm.tsx:58 #: src/components/forms/AuthenticationForm.tsx:58
msgid "Login failed" msgid "Login failed"
msgstr "Error al iniciar sesión" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:59
#: src/components/forms/AuthenticationForm.tsx:79 #: src/components/forms/AuthenticationForm.tsx:79
@ -97,16 +97,16 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:70 #: src/components/forms/AuthenticationForm.tsx:70
#: src/functions/auth.tsx:103 #: src/functions/auth.tsx:103
msgid "Mail delivery successful" msgid "Mail delivery successful"
msgstr "Envío de correo exitoso" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:71 #: src/components/forms/AuthenticationForm.tsx:71
msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too."
msgstr "Revisa tu bandeja de entrada para el enlace de inicio de sesión. Si tienes una cuenta, recibirás un enlace de inicio de sesión. Revisa también el correo no deseado." msgstr ""
#: src/components/forms/AuthenticationForm.tsx:78 #: src/components/forms/AuthenticationForm.tsx:78
#: src/components/forms/AuthenticationForm.tsx:215 #: src/components/forms/AuthenticationForm.tsx:215
msgid "Input error" msgid "Input error"
msgstr "Error de entrada" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:98 #: src/components/forms/AuthenticationForm.tsx:98
msgid "Or continue with other methods" msgid "Or continue with other methods"
@ -115,7 +115,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:109 #: src/components/forms/AuthenticationForm.tsx:109
#: src/components/forms/AuthenticationForm.tsx:233 #: src/components/forms/AuthenticationForm.tsx:233
msgid "Username" msgid "Username"
msgstr "Nombre de usuario" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:110 #: src/components/forms/AuthenticationForm.tsx:110
#: src/components/forms/AuthenticationForm.tsx:234 #: src/components/forms/AuthenticationForm.tsx:234
@ -126,17 +126,17 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:246 #: src/components/forms/AuthenticationForm.tsx:246
#: src/pages/Auth/Set-Password.tsx:106 #: src/pages/Auth/Set-Password.tsx:106
msgid "Password" msgid "Password"
msgstr "Contraseña" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:116 #: src/components/forms/AuthenticationForm.tsx:116
#: src/components/forms/AuthenticationForm.tsx:247 #: src/components/forms/AuthenticationForm.tsx:247
msgid "Your password" msgid "Your password"
msgstr "Tu contraseña" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:128 #: src/components/forms/AuthenticationForm.tsx:128
#: src/pages/Auth/Reset.tsx:26 #: src/pages/Auth/Reset.tsx:26
msgid "Reset password" msgid "Reset password"
msgstr "Restablecer contraseña" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:131 #: src/components/forms/AuthenticationForm.tsx:131
#~ msgid "Log in" #~ msgid "Log in"
@ -151,17 +151,17 @@ msgstr "Restablecer contraseña"
#: src/pages/Auth/Reset.tsx:31 #: src/pages/Auth/Reset.tsx:31
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:49 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:49
msgid "Email" msgid "Email"
msgstr "Correo electrónico" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:138 #: src/components/forms/AuthenticationForm.tsx:138
#: src/pages/Auth/Reset.tsx:32 #: src/pages/Auth/Reset.tsx:32
#: src/pages/Auth/Set-Password.tsx:107 #: src/pages/Auth/Set-Password.tsx:107
msgid "We will send you a link to login - if you are registered" msgid "We will send you a link to login - if you are registered"
msgstr "Te enviaremos un enlace para iniciar sesión - si estás registrado" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:154 #: src/components/forms/AuthenticationForm.tsx:154
msgid "Send me an email" msgid "Send me an email"
msgstr "Envíame un correo electrónico" msgstr ""
#: src/components/forms/AuthenticationForm.tsx:156 #: src/components/forms/AuthenticationForm.tsx:156
msgid "Use username and password" msgid "Use username and password"
@ -225,11 +225,11 @@ msgstr ""
#: src/tables/settings/GroupTable.tsx:103 #: src/tables/settings/GroupTable.tsx:103
#: src/tables/settings/PendingTasksTable.tsx:26 #: src/tables/settings/PendingTasksTable.tsx:26
msgid "Name" msgid "Name"
msgstr "Nombre" msgstr ""
#: src/components/forms/HostOptionsForm.tsx:74 #: src/components/forms/HostOptionsForm.tsx:74
msgid "No one here..." msgid "No one here..."
msgstr "Nadie aquí..." msgstr ""
#: src/components/forms/HostOptionsForm.tsx:85 #: src/components/forms/HostOptionsForm.tsx:85
msgid "Add Host" msgid "Add Host"
@ -238,11 +238,11 @@ msgstr ""
#: src/components/forms/HostOptionsForm.tsx:89 #: src/components/forms/HostOptionsForm.tsx:89
#: src/components/widgets/MarkdownEditor.tsx:73 #: src/components/widgets/MarkdownEditor.tsx:73
msgid "Save" msgid "Save"
msgstr "Guardar" msgstr ""
#: src/components/forms/InstanceOptions.tsx:43 #: src/components/forms/InstanceOptions.tsx:43
msgid "Select destination instance" msgid "Select destination instance"
msgstr "Seleccionar instancia de destino" msgstr ""
#: src/components/forms/InstanceOptions.tsx:71 #: src/components/forms/InstanceOptions.tsx:71
msgid "Edit possible host options" msgid "Edit possible host options"
@ -250,15 +250,15 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:98 #: src/components/forms/InstanceOptions.tsx:98
msgid "Version: {0}" msgid "Version: {0}"
msgstr "Versión: {0}" msgstr ""
#: src/components/forms/InstanceOptions.tsx:100 #: src/components/forms/InstanceOptions.tsx:100
msgid "API:{0}" msgid "API:{0}"
msgstr "API:{0}" msgstr ""
#: src/components/forms/InstanceOptions.tsx:102 #: src/components/forms/InstanceOptions.tsx:102
msgid "Name: {0}" msgid "Name: {0}"
msgstr "Nombre: {0}" msgstr ""
#: src/components/forms/InstanceOptions.tsx:104 #: src/components/forms/InstanceOptions.tsx:104
msgid "State: <0>worker</0> ({0}), <1>plugins</1>{1}" msgid "State: <0>worker</0> ({0}), <1>plugins</1>{1}"
@ -944,7 +944,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:547 #: src/pages/part/PartDetail.tsx:547
#: src/pages/purchasing/PurchasingIndex.tsx:20 #: src/pages/purchasing/PurchasingIndex.tsx:20
msgid "Purchase Orders" msgid "Purchase Orders"
msgstr "Órdenes de compra" msgstr ""
#: src/components/render/ModelType.tsx:112 #: src/components/render/ModelType.tsx:112
msgid "Purchase Order Line" msgid "Purchase Order Line"
@ -985,7 +985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:122 #: src/pages/company/CompanyDetail.tsx:122
#: src/pages/sales/SalesIndex.tsx:27 #: src/pages/sales/SalesIndex.tsx:27
msgid "Return Orders" msgid "Return Orders"
msgstr "Ordenes de devolución" msgstr ""
#: src/components/render/ModelType.tsx:140 #: src/components/render/ModelType.tsx:140
#: src/tables/company/AddressTable.tsx:47 #: src/tables/company/AddressTable.tsx:47
@ -1801,7 +1801,7 @@ msgstr ""
#: src/defaults/links.tsx:11 #: src/defaults/links.tsx:11
msgid "Website" msgid "Website"
msgstr "Sitio web" msgstr ""
#: src/defaults/links.tsx:16 #: src/defaults/links.tsx:16
msgid "GitHub" msgid "GitHub"
@ -2203,7 +2203,7 @@ msgstr ""
#: src/pages/Auth/Login.tsx:75 #: src/pages/Auth/Login.tsx:75
msgid "Welcome, log in below" msgid "Welcome, log in below"
msgstr "Bienvenido, inicia sesión a continuación" msgstr ""
#: src/pages/Auth/Login.tsx:77 #: src/pages/Auth/Login.tsx:77
msgid "Register below" msgid "Register below"
@ -2579,7 +2579,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:144 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:144
msgid "Primary" msgid "Primary"
msgstr "Primario" msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:149 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:149
msgid "Verified" msgid "Verified"
@ -2757,17 +2757,17 @@ msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:66 #: src/pages/Index/Settings/SystemSettings.tsx:66
msgid "Login" msgid "Login"
msgstr "Ingresar" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:88 #: src/pages/Index/Settings/SystemSettings.tsx:88
msgid "Barcodes" msgid "Barcodes"
msgstr "Códigos de barras" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:107 #: src/pages/Index/Settings/SystemSettings.tsx:107
#: src/pages/company/SupplierPartDetail.tsx:55 #: src/pages/company/SupplierPartDetail.tsx:55
#: src/pages/part/PartDetail.tsx:516 #: src/pages/part/PartDetail.tsx:516
msgid "Pricing" msgid "Pricing"
msgstr "Precios" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:118 #: src/pages/Index/Settings/SystemSettings.tsx:118
#~ msgid "Physical Units" #~ msgid "Physical Units"
@ -2775,16 +2775,16 @@ msgstr "Precios"
#: src/pages/Index/Settings/SystemSettings.tsx:136 #: src/pages/Index/Settings/SystemSettings.tsx:136
msgid "Exchange Rates" msgid "Exchange Rates"
msgstr "Tasas de cambio" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:144 #: src/pages/Index/Settings/SystemSettings.tsx:144
msgid "Labels" msgid "Labels"
msgstr "Etiquetas" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:150 #: src/pages/Index/Settings/SystemSettings.tsx:150
#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Index/Settings/UserSettings.tsx:99
msgid "Reporting" msgid "Reporting"
msgstr "Informes" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:224 #: src/pages/Index/Settings/SystemSettings.tsx:224
#: src/pages/part/PartDetail.tsx:565 #: src/pages/part/PartDetail.tsx:565
@ -2797,23 +2797,23 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:502 #: src/pages/part/PartDetail.tsx:502
#: src/pages/sales/SalesOrderDetail.tsx:62 #: src/pages/sales/SalesOrderDetail.tsx:62
msgid "Build Orders" msgid "Build Orders"
msgstr "Ordenes de Producción" msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:286 #: src/pages/Index/Settings/SystemSettings.tsx:286
msgid "Switch to User Setting" msgid "Switch to User Setting"
msgstr "Cambiar a Configuración de Usuario" msgstr ""
#: src/pages/Index/Settings/UserSettings.tsx:29 #: src/pages/Index/Settings/UserSettings.tsx:29
msgid "Account" msgid "Account"
msgstr "Cuenta" msgstr ""
#: src/pages/Index/Settings/UserSettings.tsx:35 #: src/pages/Index/Settings/UserSettings.tsx:35
msgid "Security" msgid "Security"
msgstr "Seguridad" msgstr ""
#: src/pages/Index/Settings/UserSettings.tsx:46 #: src/pages/Index/Settings/UserSettings.tsx:46
msgid "Display Options" msgid "Display Options"
msgstr "Opciones de visualización" msgstr ""
#: src/pages/Index/Settings/UserSettings.tsx:115 #: src/pages/Index/Settings/UserSettings.tsx:115
msgid "Account Settings" msgid "Account Settings"
@ -2833,7 +2833,7 @@ msgstr ""
#: src/pages/NotFound.tsx:17 #: src/pages/NotFound.tsx:17
msgid "Not Found" msgid "Not Found"
msgstr "No encontrado" msgstr ""
#: src/pages/NotFound.tsx:20 #: src/pages/NotFound.tsx:20
msgid "Sorry, this page is not known or was moved." msgid "Sorry, this page is not known or was moved."
@ -2940,7 +2940,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:222 #: src/pages/build/BuildDetail.tsx:222
msgid "Report" msgid "Report"
msgstr "Informe" msgstr ""
#: src/pages/build/BuildDetail.tsx:223 #: src/pages/build/BuildDetail.tsx:223
msgid "Print build report" msgid "Print build report"
@ -2972,7 +2972,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:449 #: src/pages/part/PartDetail.tsx:449
#: src/pages/stock/StockDetail.tsx:70 #: src/pages/stock/StockDetail.tsx:70
msgid "Details" msgid "Details"
msgstr "Detalles" msgstr ""
#: src/pages/company/CompanyDetail.tsx:81 #: src/pages/company/CompanyDetail.tsx:81
msgid "Manufactured Parts" msgid "Manufactured Parts"
@ -3017,13 +3017,13 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:71 #: src/pages/part/CategoryDetail.tsx:71
#: src/pages/part/PartDetail.tsx:464 #: src/pages/part/PartDetail.tsx:464
msgid "Parameters" msgid "Parameters"
msgstr "Parámetros" msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:54 #: src/pages/company/ManufacturerPartDetail.tsx:54
#: src/pages/part/PartDetail.tsx:534 #: src/pages/part/PartDetail.tsx:534
#: src/pages/purchasing/PurchasingIndex.tsx:26 #: src/pages/purchasing/PurchasingIndex.tsx:26
msgid "Suppliers" msgid "Suppliers"
msgstr "Proveedores" msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:98 #: src/pages/company/ManufacturerPartDetail.tsx:98
msgid "ManufacturerPart" msgid "ManufacturerPart"
@ -3033,7 +3033,7 @@ msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:68 #: src/pages/company/SupplierPartDetail.tsx:68
#: src/tables/purchasing/PurchaseOrderTable.tsx:73 #: src/tables/purchasing/PurchaseOrderTable.tsx:73
msgid "Supplier" msgid "Supplier"
msgstr "Proveedor" msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:40 #: src/pages/company/SupplierPartDetail.tsx:40
#: src/pages/purchasing/PurchaseOrderDetail.tsx:66 #: src/pages/purchasing/PurchaseOrderDetail.tsx:66
@ -3064,7 +3064,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:145 #: src/pages/part/PartDetail.tsx:145
#: src/tables/stock/StockItemTable.tsx:264 #: src/tables/stock/StockItemTable.tsx:264
msgid "In Stock" msgid "In Stock"
msgstr "En Stock" msgstr ""
#: src/pages/part/PartDetail.tsx:155 #: src/pages/part/PartDetail.tsx:155
msgid "Minimum Stock" msgid "Minimum Stock"
@ -3287,31 +3287,31 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:174 #: src/pages/stock/StockDetail.tsx:174
msgid "Count stock" msgid "Count stock"
msgstr "Contar stock" msgstr ""
#: src/pages/stock/StockDetail.tsx:178 #: src/pages/stock/StockDetail.tsx:178
msgid "Add" msgid "Add"
msgstr "Agregar" msgstr ""
#: src/pages/stock/StockDetail.tsx:179 #: src/pages/stock/StockDetail.tsx:179
msgid "Add stock" msgid "Add stock"
msgstr "Agregar stock" msgstr ""
#: src/pages/stock/StockDetail.tsx:184 #: src/pages/stock/StockDetail.tsx:184
msgid "Remove stock" msgid "Remove stock"
msgstr "Remover stock" msgstr ""
#: src/pages/stock/StockDetail.tsx:188 #: src/pages/stock/StockDetail.tsx:188
msgid "Transfer" msgid "Transfer"
msgstr "Transferir" msgstr ""
#: src/pages/stock/StockDetail.tsx:189 #: src/pages/stock/StockDetail.tsx:189
msgid "Transfer stock" msgid "Transfer stock"
msgstr "Transferir stock" msgstr ""
#: src/pages/stock/StockDetail.tsx:201 #: src/pages/stock/StockDetail.tsx:201
msgid "Duplicate stock item" msgid "Duplicate stock item"
msgstr "Duplicar artículo de stock" msgstr ""
#: src/pages/stock/StockDetail.tsx:205 #: src/pages/stock/StockDetail.tsx:205
#~ msgid "Edit stock item" #~ msgid "Edit stock item"
@ -3662,7 +3662,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:627 #: src/tables/plugin/PluginListTable.tsx:627
#: src/tables/stock/StockItemTable.tsx:228 #: src/tables/stock/StockItemTable.tsx:228
msgid "Active" msgid "Active"
msgstr "Activo" msgstr ""
#: src/tables/bom/UsedInTable.tsx:67 #: src/tables/bom/UsedInTable.tsx:67
msgid "Show active assemblies" msgid "Show active assemblies"
@ -3672,11 +3672,11 @@ msgstr ""
#: src/tables/part/PartTable.tsx:194 #: src/tables/part/PartTable.tsx:194
#: src/tables/part/PartVariantTable.tsx:30 #: src/tables/part/PartVariantTable.tsx:30
msgid "Trackable" msgid "Trackable"
msgstr "Rastreable" msgstr ""
#: src/tables/bom/UsedInTable.tsx:72 #: src/tables/bom/UsedInTable.tsx:72
msgid "Show trackable assemblies" msgid "Show trackable assemblies"
msgstr "Mostrar ensamblajes rastreables" msgstr ""
#: src/tables/build/BuildLineTable.tsx:34 #: src/tables/build/BuildLineTable.tsx:34
msgid "Show allocated lines" msgid "Show allocated lines"
@ -3732,14 +3732,14 @@ msgstr ""
#: src/tables/build/BuildOrderTable.tsx:103 #: src/tables/build/BuildOrderTable.tsx:103
msgid "Show active orders" msgid "Show active orders"
msgstr "Mostrar órdenes activas" msgstr ""
#: src/tables/build/BuildOrderTable.tsx:107 #: src/tables/build/BuildOrderTable.tsx:107
#: src/tables/purchasing/PurchaseOrderTable.tsx:56 #: src/tables/purchasing/PurchaseOrderTable.tsx:56
#: src/tables/sales/ReturnOrderTable.tsx:46 #: src/tables/sales/ReturnOrderTable.tsx:46
#: src/tables/sales/SalesOrderTable.tsx:53 #: src/tables/sales/SalesOrderTable.tsx:53
msgid "Filter by order status" msgid "Filter by order status"
msgstr "Filtrar por estado de la orden" msgstr ""
#: src/tables/build/BuildOrderTable.tsx:113 #: src/tables/build/BuildOrderTable.tsx:113
msgid "Show overdue status" msgid "Show overdue status"
@ -3753,23 +3753,23 @@ msgstr ""
#: src/tables/company/AddressTable.tsx:121 #: src/tables/company/AddressTable.tsx:121
#: src/tables/company/AddressTable.tsx:185 #: src/tables/company/AddressTable.tsx:185
msgid "Add Address" msgid "Add Address"
msgstr "Añadir Dirección" msgstr ""
#: src/tables/company/AddressTable.tsx:126 #: src/tables/company/AddressTable.tsx:126
msgid "Address created" msgid "Address created"
msgstr "Dirección creada" msgstr ""
#: src/tables/company/AddressTable.tsx:135 #: src/tables/company/AddressTable.tsx:135
msgid "Edit Address" msgid "Edit Address"
msgstr "Editar Dirección" msgstr ""
#: src/tables/company/AddressTable.tsx:143 #: src/tables/company/AddressTable.tsx:143
msgid "Delete Address" msgid "Delete Address"
msgstr "Eliminar Dirección" msgstr ""
#: src/tables/company/AddressTable.tsx:145 #: src/tables/company/AddressTable.tsx:145
msgid "Are you sure you want to delete this address?" msgid "Are you sure you want to delete this address?"
msgstr "¿Estás seguro de que deseas eliminar esta dirección?" msgstr ""
#: src/tables/company/CompanyTable.tsx:62 #: src/tables/company/CompanyTable.tsx:62
msgid "New Company" msgid "New Company"
@ -3781,7 +3781,7 @@ msgstr ""
#: src/tables/company/ContactTable.tsx:73 #: src/tables/company/ContactTable.tsx:73
msgid "Edit Contact" msgid "Edit Contact"
msgstr "Editar contacto" msgstr ""
#: src/tables/company/ContactTable.tsx:80 #: src/tables/company/ContactTable.tsx:80
msgid "Add Contact" msgid "Add Contact"
@ -3789,23 +3789,23 @@ msgstr ""
#: src/tables/company/ContactTable.tsx:91 #: src/tables/company/ContactTable.tsx:91
msgid "Delete Contact" msgid "Delete Contact"
msgstr "Eliminar contacto" msgstr ""
#: src/tables/company/ContactTable.tsx:131 #: src/tables/company/ContactTable.tsx:131
msgid "Add contact" msgid "Add contact"
msgstr "Agregar contacto" msgstr ""
#: src/tables/general/AttachmentTable.tsx:157 #: src/tables/general/AttachmentTable.tsx:157
msgid "File uploaded" msgid "File uploaded"
msgstr "Archivo subido" msgstr ""
#: src/tables/general/AttachmentTable.tsx:158 #: src/tables/general/AttachmentTable.tsx:158
msgid "File {0} uploaded successfully" msgid "File {0} uploaded successfully"
msgstr "Archivo {0} se subió correctamente" msgstr ""
#: src/tables/general/AttachmentTable.tsx:169 #: src/tables/general/AttachmentTable.tsx:169
msgid "Upload Error" msgid "Upload Error"
msgstr "Error al subir" msgstr ""
#: src/tables/general/AttachmentTable.tsx:170 #: src/tables/general/AttachmentTable.tsx:170
msgid "File could not be uploaded" msgid "File could not be uploaded"
@ -3931,7 +3931,7 @@ msgstr ""
#: src/tables/part/PartTable.tsx:80 #: src/tables/part/PartTable.tsx:80
msgid "Minimum stock" msgid "Minimum stock"
msgstr "Stock mínimo" msgstr ""
#: src/tables/part/PartTable.tsx:89 #: src/tables/part/PartTable.tsx:89
msgid "On Order" msgid "On Order"
@ -4403,11 +4403,11 @@ msgstr ""
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:245 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:245
msgid "Add line item" msgid "Add line item"
msgstr "Añadir Artículo de Línea" msgstr ""
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:251 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:251
msgid "Receive items" msgid "Receive items"
msgstr "Recibir artículos" msgstr ""
#: src/tables/purchasing/PurchaseOrderTable.tsx:55 #: src/tables/purchasing/PurchaseOrderTable.tsx:55
#: src/tables/sales/ReturnOrderTable.tsx:45 #: src/tables/sales/ReturnOrderTable.tsx:45
@ -4427,7 +4427,7 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:114 #: src/tables/purchasing/SupplierPartTable.tsx:114
msgid "Base units" msgid "Base units"
msgstr "Unidades base" msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:140 #: src/tables/purchasing/SupplierPartTable.tsx:140
msgid "Updated" msgid "Updated"
@ -4480,11 +4480,11 @@ msgstr ""
#: src/tables/settings/CurrencyTable.tsx:28 #: src/tables/settings/CurrencyTable.tsx:28
msgid "Rate" msgid "Rate"
msgstr "Tarifa" msgstr ""
#: src/tables/settings/CurrencyTable.tsx:40 #: src/tables/settings/CurrencyTable.tsx:40
msgid "Exchange rates updated" msgid "Exchange rates updated"
msgstr "Tipos de cambio actualizados" msgstr ""
#: src/tables/settings/CurrencyTable.tsx:46 #: src/tables/settings/CurrencyTable.tsx:46
msgid "Exchange rate update error" msgid "Exchange rate update error"
@ -4576,7 +4576,7 @@ msgstr ""
#: src/tables/settings/GroupTable.tsx:126 #: src/tables/settings/GroupTable.tsx:126
msgid "Delete group" msgid "Delete group"
msgstr "Eliminar grupo" msgstr ""
#: src/tables/settings/GroupTable.tsx:127 #: src/tables/settings/GroupTable.tsx:127
msgid "Group deleted" msgid "Group deleted"
@ -4589,11 +4589,11 @@ msgstr ""
#: src/tables/settings/GroupTable.tsx:134 #: src/tables/settings/GroupTable.tsx:134
#: src/tables/settings/GroupTable.tsx:146 #: src/tables/settings/GroupTable.tsx:146
msgid "Add group" msgid "Add group"
msgstr "Agregar grupo" msgstr ""
#: src/tables/settings/GroupTable.tsx:158 #: src/tables/settings/GroupTable.tsx:158
msgid "Edit group" msgid "Edit group"
msgstr "Editar grupo" msgstr ""
#: src/tables/settings/PendingTasksTable.tsx:30 #: src/tables/settings/PendingTasksTable.tsx:30
msgid "Created" msgid "Created"
@ -4617,7 +4617,7 @@ msgstr ""
#: src/tables/settings/ProjectCodeTable.tsx:94 #: src/tables/settings/ProjectCodeTable.tsx:94
msgid "Add project code" msgid "Add project code"
msgstr "Agregar código de proyecto" msgstr ""
#: src/tables/settings/ScheduledTasksTable.tsx:25 #: src/tables/settings/ScheduledTasksTable.tsx:25
msgid "Last Run" msgid "Last Run"
@ -4686,11 +4686,11 @@ msgstr ""
#: src/tables/settings/UserTable.tsx:222 #: src/tables/settings/UserTable.tsx:222
msgid "Added user" msgid "Added user"
msgstr "Usuario agregado" msgstr ""
#: src/tables/settings/UserTable.tsx:239 #: src/tables/settings/UserTable.tsx:239
msgid "Edit user" msgid "Edit user"
msgstr "Editar usuario" msgstr ""
#: src/tables/stock/StockItemTable.tsx:59 #: src/tables/stock/StockItemTable.tsx:59
msgid "This stock item is in production" msgid "This stock item is in production"
@ -4779,7 +4779,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:269 #: src/tables/stock/StockItemTable.tsx:269
msgid "In Production" msgid "In Production"
msgstr "En producción" msgstr ""
#: src/tables/stock/StockItemTable.tsx:270 #: src/tables/stock/StockItemTable.tsx:270
msgid "Show items which are in production" msgid "Show items which are in production"
@ -4876,5 +4876,5 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "Leer la documentación" msgstr ""

View File

@ -4877,4 +4877,3 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: fi\n" "Language: fi\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Finnish\n" "Language-Team: Finnish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: fr\n" "Language: fr\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-09 13:35\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: French\n" "Language-Team: French\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
@ -110,7 +110,7 @@ msgstr "Erreur d'entrée"
#: src/components/forms/AuthenticationForm.tsx:98 #: src/components/forms/AuthenticationForm.tsx:98
msgid "Or continue with other methods" msgid "Or continue with other methods"
msgstr "" msgstr "Ou continuer avec d'autres méthodes"
#: src/components/forms/AuthenticationForm.tsx:109 #: src/components/forms/AuthenticationForm.tsx:109
#: src/components/forms/AuthenticationForm.tsx:233 #: src/components/forms/AuthenticationForm.tsx:233
@ -202,7 +202,7 @@ msgstr "S'enregistrer"
#: src/components/forms/AuthenticationForm.tsx:271 #: src/components/forms/AuthenticationForm.tsx:271
msgid "Or use SSO" msgid "Or use SSO"
msgstr "" msgstr "Ou utiliser SSO"
#: src/components/forms/AuthenticationForm.tsx:302 #: src/components/forms/AuthenticationForm.tsx:302
msgid "Don't have an account?" msgid "Don't have an account?"
@ -295,18 +295,18 @@ msgstr "Aucun résultat trouvé"
#: src/components/images/DetailsImage.tsx:61 #: src/components/images/DetailsImage.tsx:61
msgid "Remove Image" msgid "Remove Image"
msgstr "" msgstr "Supprimer l'image"
#: src/components/images/DetailsImage.tsx:64 #: src/components/images/DetailsImage.tsx:64
msgid "Remove the associated image from this item?" msgid "Remove the associated image from this item?"
msgstr "" msgstr "Supprimer l'image associée de cet élément ?"
#: src/components/images/DetailsImage.tsx:67 #: src/components/images/DetailsImage.tsx:67
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299
#: src/pages/stock/StockDetail.tsx:183 #: src/pages/stock/StockDetail.tsx:183
msgid "Remove" msgid "Remove"
msgstr "" msgstr "Supprimer"
#: src/components/images/DetailsImage.tsx:67 #: src/components/images/DetailsImage.tsx:67
#: src/contexts/ThemeContext.tsx:64 #: src/contexts/ThemeContext.tsx:64
@ -320,35 +320,35 @@ msgstr "Annuler"
#: src/components/images/DetailsImage.tsx:95 #: src/components/images/DetailsImage.tsx:95
msgid "Drag and drop to upload" msgid "Drag and drop to upload"
msgstr "" msgstr "Glisser et déposer pour télécharger"
#: src/components/images/DetailsImage.tsx:98 #: src/components/images/DetailsImage.tsx:98
msgid "Click to select file(s)" msgid "Click to select file(s)"
msgstr "" msgstr "Cliquer pour sélectionner le(s) fichier(s)"
#: src/components/images/DetailsImage.tsx:220 #: src/components/images/DetailsImage.tsx:220
msgid "Clear" msgid "Clear"
msgstr "" msgstr "Effacer"
#: src/components/images/DetailsImage.tsx:252 #: src/components/images/DetailsImage.tsx:252
msgid "Select image" msgid "Select image"
msgstr "" msgstr "Sélectionner une image"
#: src/components/images/DetailsImage.tsx:263 #: src/components/images/DetailsImage.tsx:263
msgid "Select from existing images" msgid "Select from existing images"
msgstr "" msgstr "Sélectionner parmi les images existantes"
#: src/components/images/DetailsImage.tsx:273 #: src/components/images/DetailsImage.tsx:273
msgid "Upload new image" msgid "Upload new image"
msgstr "" msgstr "Téléverser une nouvelle image"
#: src/components/images/DetailsImage.tsx:279 #: src/components/images/DetailsImage.tsx:279
msgid "Upload Image" msgid "Upload Image"
msgstr "" msgstr "Charger une image"
#: src/components/images/DetailsImage.tsx:292 #: src/components/images/DetailsImage.tsx:292
msgid "Delete image" msgid "Delete image"
msgstr "" msgstr "Supprimer l'image"
#: src/components/images/Thumbnail.tsx:14 #: src/components/images/Thumbnail.tsx:14
#: src/components/images/Thumbnail.tsx:51 #: src/components/images/Thumbnail.tsx:51
@ -489,7 +489,7 @@ msgstr "Version d'InvenTree"
#: src/components/modals/AboutInvenTreeModal.tsx:131 #: src/components/modals/AboutInvenTreeModal.tsx:131
msgid "Commit Hash" msgid "Commit Hash"
msgstr "" msgstr "Hash du commit"
#: src/components/modals/AboutInvenTreeModal.tsx:136 #: src/components/modals/AboutInvenTreeModal.tsx:136
msgid "Commit Date" msgid "Commit Date"
@ -675,11 +675,11 @@ msgstr "Configuration mail non effectuée"
#: src/tables/plugin/PluginListTable.tsx:185 #: src/tables/plugin/PluginListTable.tsx:185
#: src/tables/plugin/PluginListTable.tsx:310 #: src/tables/plugin/PluginListTable.tsx:310
msgid "Version" msgid "Version"
msgstr "" msgstr "Version"
#: src/components/modals/ServerInfoModal.tsx:127 #: src/components/modals/ServerInfoModal.tsx:127
msgid "Server Version" msgid "Server Version"
msgstr "" msgstr "Version du serveur"
#: src/components/nav/MainMenu.tsx:39 #: src/components/nav/MainMenu.tsx:39
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:26 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:26
@ -700,13 +700,13 @@ msgstr "Paramètres du compte"
#: src/defaults/menuItems.tsx:58 #: src/defaults/menuItems.tsx:58
#: src/pages/Index/Settings/SystemSettings.tsx:283 #: src/pages/Index/Settings/SystemSettings.tsx:283
msgid "System Settings" msgid "System Settings"
msgstr "" msgstr "Les paramètres du système"
#: src/components/nav/MainMenu.tsx:60 #: src/components/nav/MainMenu.tsx:60
#: src/defaults/menuItems.tsx:63 #: src/defaults/menuItems.tsx:63
#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 #: src/pages/Index/Settings/AdminCenter/Index.tsx:128
msgid "Admin Center" msgid "Admin Center"
msgstr "" msgstr "Centre Admin"
#: src/components/nav/MainMenu.tsx:68 #: src/components/nav/MainMenu.tsx:68
#~ msgid "Current language {locale}" #~ msgid "Current language {locale}"
@ -735,7 +735,7 @@ msgstr "Commencez"
#: src/components/nav/NavHoverMenu.tsx:96 #: src/components/nav/NavHoverMenu.tsx:96
msgid "Overview over high-level objects, functions and possible usecases." msgid "Overview over high-level objects, functions and possible usecases."
msgstr "" msgstr "Aperçu des objets de haut niveau, des fonctions et des cas d'usages."
#: src/components/nav/NavigationDrawer.tsx:59 #: src/components/nav/NavigationDrawer.tsx:59
msgid "Navigation" msgid "Navigation"
@ -769,18 +769,18 @@ msgstr "Notifications"
#: src/components/nav/NotificationDrawer.tsx:87 #: src/components/nav/NotificationDrawer.tsx:87
msgid "You have no unread notifications." msgid "You have no unread notifications."
msgstr "" msgstr "Vous n'avez pas de notifications non lues."
#: src/components/nav/NotificationDrawer.tsx:102 #: src/components/nav/NotificationDrawer.tsx:102
#: src/components/nav/NotificationDrawer.tsx:108 #: src/components/nav/NotificationDrawer.tsx:108
#: src/tables/notifications/NotificationsTable.tsx:34 #: src/tables/notifications/NotificationsTable.tsx:34
msgid "Notification" msgid "Notification"
msgstr "" msgstr "Notification"
#: src/components/nav/NotificationDrawer.tsx:131 #: src/components/nav/NotificationDrawer.tsx:131
#: src/pages/Notifications.tsx:36 #: src/pages/Notifications.tsx:36
msgid "Mark as read" msgid "Mark as read"
msgstr "" msgstr "Marqué comme lu"
#: src/components/nav/PartCategoryTree.tsx:80 #: src/components/nav/PartCategoryTree.tsx:80
#: src/components/render/ModelType.tsx:53 #: src/components/render/ModelType.tsx:53
@ -829,14 +829,14 @@ msgstr "Emplacements de stock"
#: src/components/render/Instance.tsx:135 #: src/components/render/Instance.tsx:135
msgid "Unknown model: {model}" msgid "Unknown model: {model}"
msgstr "" msgstr "Modèle inconnu : {model}"
#: src/components/render/ModelType.tsx:21 #: src/components/render/ModelType.tsx:21
#: src/pages/part/PartDetail.tsx:703 #: src/pages/part/PartDetail.tsx:703
#: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/part/RelatedPartTable.tsx:45
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:59 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:59
msgid "Part" msgid "Part"
msgstr "" msgstr "Pièce"
#: src/components/render/ModelType.tsx:22 #: src/components/render/ModelType.tsx:22
#: src/defaults/links.tsx:28 #: src/defaults/links.tsx:28
@ -850,17 +850,17 @@ msgstr "Composants"
#: src/components/render/ModelType.tsx:29 #: src/components/render/ModelType.tsx:29
msgid "Part Parameter Template" msgid "Part Parameter Template"
msgstr "" msgstr "Modèle de paramètre de pièce"
#: src/components/render/ModelType.tsx:30 #: src/components/render/ModelType.tsx:30
msgid "Part Parameter Templates" msgid "Part Parameter Templates"
msgstr "" msgstr "Modèles de paramètres de pièce"
#: src/components/render/ModelType.tsx:36 #: src/components/render/ModelType.tsx:36
#: src/pages/company/SupplierPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:78
#: src/tables/purchasing/SupplierPartTable.tsx:66 #: src/tables/purchasing/SupplierPartTable.tsx:66
msgid "Supplier Part" msgid "Supplier Part"
msgstr "" msgstr "Pièce fournisseur"
#: src/components/render/ModelType.tsx:37 #: src/components/render/ModelType.tsx:37
msgid "Supplier Parts" msgid "Supplier Parts"
@ -868,7 +868,7 @@ msgstr "Pièces du fournisseur"
#: src/components/render/ModelType.tsx:44 #: src/components/render/ModelType.tsx:44
msgid "Manufacturer Part" msgid "Manufacturer Part"
msgstr "" msgstr "Pièces du fabricant"
#: src/components/render/ModelType.tsx:45 #: src/components/render/ModelType.tsx:45
msgid "Manufacturer Parts" msgid "Manufacturer Parts"
@ -877,12 +877,12 @@ msgstr "Pièces du fabricant"
#: src/components/render/ModelType.tsx:52 #: src/components/render/ModelType.tsx:52
#: src/pages/part/CategoryDetail.tsx:101 #: src/pages/part/CategoryDetail.tsx:101
msgid "Part Category" msgid "Part Category"
msgstr "" msgstr "Catégorie de composant"
#: src/components/render/ModelType.tsx:60 #: src/components/render/ModelType.tsx:60
#: src/pages/stock/StockDetail.tsx:225 #: src/pages/stock/StockDetail.tsx:225
msgid "Stock Item" msgid "Stock Item"
msgstr "" msgstr "Article en stock"
#: src/components/render/ModelType.tsx:61 #: src/components/render/ModelType.tsx:61
#: src/pages/company/CompanyDetail.tsx:106 #: src/pages/company/CompanyDetail.tsx:106
@ -893,30 +893,30 @@ msgstr "Articles en stock"
#: src/components/render/ModelType.tsx:68 #: src/components/render/ModelType.tsx:68
msgid "Stock Location" msgid "Stock Location"
msgstr "" msgstr "Emplacement du stock"
#: src/components/render/ModelType.tsx:76 #: src/components/render/ModelType.tsx:76
msgid "Stock History" msgid "Stock History"
msgstr "" msgstr "Historique du stock"
#: src/components/render/ModelType.tsx:77 #: src/components/render/ModelType.tsx:77
msgid "Stock Histories" msgid "Stock Histories"
msgstr "" msgstr "Historique du stock"
#: src/components/render/ModelType.tsx:81 #: src/components/render/ModelType.tsx:81
#: src/defaults/links.tsx:30 #: src/defaults/links.tsx:30
#: src/defaults/menuItems.tsx:43 #: src/defaults/menuItems.tsx:43
msgid "Build" msgid "Build"
msgstr "" msgstr "Construction"
#: src/components/render/ModelType.tsx:82 #: src/components/render/ModelType.tsx:82
msgid "Builds" msgid "Builds"
msgstr "" msgstr "Construction"
#: src/components/render/ModelType.tsx:89 #: src/components/render/ModelType.tsx:89
#: src/pages/company/CompanyDetail.tsx:212 #: src/pages/company/CompanyDetail.tsx:212
msgid "Company" msgid "Company"
msgstr "" msgstr "Société"
#: src/components/render/ModelType.tsx:90 #: src/components/render/ModelType.tsx:90
msgid "Companies" msgid "Companies"
@ -925,17 +925,17 @@ msgstr "Sociétés"
#: src/components/render/ModelType.tsx:97 #: src/components/render/ModelType.tsx:97
#: src/tables/TableHoverCard.tsx:58 #: src/tables/TableHoverCard.tsx:58
msgid "Project Code" msgid "Project Code"
msgstr "" msgstr "Code du projet"
#: src/components/render/ModelType.tsx:98 #: src/components/render/ModelType.tsx:98
#: src/pages/Index/Settings/AdminCenter/Index.tsx:71 #: src/pages/Index/Settings/AdminCenter/Index.tsx:71
msgid "Project Codes" msgid "Project Codes"
msgstr "" msgstr "Codes du projet"
#: src/components/render/ModelType.tsx:104 #: src/components/render/ModelType.tsx:104
#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 #: src/pages/purchasing/PurchaseOrderDetail.tsx:131
msgid "Purchase Order" msgid "Purchase Order"
msgstr "" msgstr "Commande dachat"
#: src/components/render/ModelType.tsx:105 #: src/components/render/ModelType.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:235 #: src/pages/Index/Settings/SystemSettings.tsx:235
@ -948,16 +948,16 @@ msgstr "Ordres d'achat"
#: src/components/render/ModelType.tsx:112 #: src/components/render/ModelType.tsx:112
msgid "Purchase Order Line" msgid "Purchase Order Line"
msgstr "" msgstr "Ligne de commande d'achat"
#: src/components/render/ModelType.tsx:113 #: src/components/render/ModelType.tsx:113
msgid "Purchase Order Lines" msgid "Purchase Order Lines"
msgstr "" msgstr "Lignes de commande d'achat"
#: src/components/render/ModelType.tsx:117 #: src/components/render/ModelType.tsx:117
#: src/pages/sales/SalesOrderDetail.tsx:102 #: src/pages/sales/SalesOrderDetail.tsx:102
msgid "Sales Order" msgid "Sales Order"
msgstr "" msgstr "Ventes"
#: src/components/render/ModelType.tsx:118 #: src/components/render/ModelType.tsx:118
#: src/pages/Index/Settings/SystemSettings.tsx:249 #: src/pages/Index/Settings/SystemSettings.tsx:249
@ -969,16 +969,16 @@ msgstr "Ordres de vente"
#: src/components/render/ModelType.tsx:125 #: src/components/render/ModelType.tsx:125
msgid "Sales Order Shipment" msgid "Sales Order Shipment"
msgstr "" msgstr "Expédition de la commande"
#: src/components/render/ModelType.tsx:126 #: src/components/render/ModelType.tsx:126
msgid "Sales Order Shipments" msgid "Sales Order Shipments"
msgstr "" msgstr "Expéditions de la commande"
#: src/components/render/ModelType.tsx:132 #: src/components/render/ModelType.tsx:132
#: src/pages/sales/ReturnOrderDetail.tsx:68 #: src/pages/sales/ReturnOrderDetail.tsx:68
msgid "Return Order" msgid "Return Order"
msgstr "" msgstr "Retour de commande"
#: src/components/render/ModelType.tsx:133 #: src/components/render/ModelType.tsx:133
#: src/pages/Index/Settings/SystemSettings.tsx:263 #: src/pages/Index/Settings/SystemSettings.tsx:263
@ -990,25 +990,25 @@ msgstr "Retours"
#: src/components/render/ModelType.tsx:140 #: src/components/render/ModelType.tsx:140
#: src/tables/company/AddressTable.tsx:47 #: src/tables/company/AddressTable.tsx:47
msgid "Address" msgid "Address"
msgstr "" msgstr "Adresse"
#: src/components/render/ModelType.tsx:141 #: src/components/render/ModelType.tsx:141
#: src/pages/company/CompanyDetail.tsx:148 #: src/pages/company/CompanyDetail.tsx:148
msgid "Addresses" msgid "Addresses"
msgstr "" msgstr "Adresses"
#: src/components/render/ModelType.tsx:147 #: src/components/render/ModelType.tsx:147
msgid "Contact" msgid "Contact"
msgstr "" msgstr "Contact"
#: src/components/render/ModelType.tsx:148 #: src/components/render/ModelType.tsx:148
#: src/pages/company/CompanyDetail.tsx:142 #: src/pages/company/CompanyDetail.tsx:142
msgid "Contacts" msgid "Contacts"
msgstr "" msgstr "Contacts"
#: src/components/render/ModelType.tsx:154 #: src/components/render/ModelType.tsx:154
msgid "Owner" msgid "Owner"
msgstr "" msgstr "Propriétaire"
#: src/components/render/ModelType.tsx:155 #: src/components/render/ModelType.tsx:155
msgid "Owners" msgid "Owners"
@ -1708,56 +1708,56 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:45 #: src/contexts/LanguageContext.tsx:45
msgid "Turkish" msgid "Turkish"
msgstr "" msgstr "Turc"
#: src/contexts/LanguageContext.tsx:46 #: src/contexts/LanguageContext.tsx:46
msgid "Vietnamese" msgid "Vietnamese"
msgstr "" msgstr "Vietnamien"
#: src/contexts/LanguageContext.tsx:47 #: src/contexts/LanguageContext.tsx:47
msgid "Chinese (Simplified)" msgid "Chinese (Simplified)"
msgstr "" msgstr "Chinois (Simplifié)"
#: src/contexts/LanguageContext.tsx:48 #: src/contexts/LanguageContext.tsx:48
msgid "Chinese (Traditional)" msgid "Chinese (Traditional)"
msgstr "" msgstr "Chinois (Traditionnel)"
#: src/defaults/dashboardItems.tsx:15 #: src/defaults/dashboardItems.tsx:15
msgid "Subscribed Parts" msgid "Subscribed Parts"
msgstr "" msgstr "Pièces suivies"
#: src/defaults/dashboardItems.tsx:22 #: src/defaults/dashboardItems.tsx:22
msgid "Subscribed Categories" msgid "Subscribed Categories"
msgstr "" msgstr "Catégories suivies"
#: src/defaults/dashboardItems.tsx:29 #: src/defaults/dashboardItems.tsx:29
msgid "Latest Parts" msgid "Latest Parts"
msgstr "" msgstr "Dernières pièces"
#: src/defaults/dashboardItems.tsx:36 #: src/defaults/dashboardItems.tsx:36
msgid "BOM Waiting Validation" msgid "BOM Waiting Validation"
msgstr "" msgstr "BOM en attente de validation"
#: src/defaults/dashboardItems.tsx:43 #: src/defaults/dashboardItems.tsx:43
msgid "Recently Updated" msgid "Recently Updated"
msgstr "" msgstr "Mis à jour récemment"
#: src/defaults/dashboardItems.tsx:50 #: src/defaults/dashboardItems.tsx:50
#: src/tables/part/PartTable.tsx:218 #: src/tables/part/PartTable.tsx:218
msgid "Low Stock" msgid "Low Stock"
msgstr "" msgstr "Stock faible"
#: src/defaults/dashboardItems.tsx:57 #: src/defaults/dashboardItems.tsx:57
msgid "Depleted Stock" msgid "Depleted Stock"
msgstr "" msgstr "Stock épuisé"
#: src/defaults/dashboardItems.tsx:64 #: src/defaults/dashboardItems.tsx:64
msgid "Required for Build Orders" msgid "Required for Build Orders"
msgstr "" msgstr "Requis pour les commandes de construction"
#: src/defaults/dashboardItems.tsx:71 #: src/defaults/dashboardItems.tsx:71
msgid "Expired Stock" msgid "Expired Stock"
msgstr "" msgstr "Stock expiré"
#: src/defaults/dashboardItems.tsx:78 #: src/defaults/dashboardItems.tsx:78
msgid "Stale Stock" msgid "Stale Stock"
@ -1765,11 +1765,11 @@ msgstr ""
#: src/defaults/dashboardItems.tsx:85 #: src/defaults/dashboardItems.tsx:85
msgid "Build Orders In Progress" msgid "Build Orders In Progress"
msgstr "" msgstr "Ordre de construction en cours"
#: src/defaults/dashboardItems.tsx:92 #: src/defaults/dashboardItems.tsx:92
msgid "Overdue Build Orders" msgid "Overdue Build Orders"
msgstr "" msgstr "Ordres de construction en retard"
#: src/defaults/dashboardItems.tsx:99 #: src/defaults/dashboardItems.tsx:99
msgid "Outstanding Purchase Orders" msgid "Outstanding Purchase Orders"
@ -1777,7 +1777,7 @@ msgstr ""
#: src/defaults/dashboardItems.tsx:106 #: src/defaults/dashboardItems.tsx:106
msgid "Overdue Purchase Orders" msgid "Overdue Purchase Orders"
msgstr "" msgstr "Commandes d'achat en retard"
#: src/defaults/dashboardItems.tsx:113 #: src/defaults/dashboardItems.tsx:113
msgid "Outstanding Sales Orders" msgid "Outstanding Sales Orders"
@ -1785,11 +1785,11 @@ msgstr ""
#: src/defaults/dashboardItems.tsx:120 #: src/defaults/dashboardItems.tsx:120
msgid "Overdue Sales Orders" msgid "Overdue Sales Orders"
msgstr "" msgstr "Vente en retard"
#: src/defaults/dashboardItems.tsx:127 #: src/defaults/dashboardItems.tsx:127
msgid "Current News" msgid "Current News"
msgstr "" msgstr "Actualités en cours"
#: src/defaults/defaultHostList.tsx:8 #: src/defaults/defaultHostList.tsx:8
#~ msgid "InvenTree Demo" #~ msgid "InvenTree Demo"
@ -1805,7 +1805,7 @@ msgstr "Site web"
#: src/defaults/links.tsx:16 #: src/defaults/links.tsx:16
msgid "GitHub" msgid "GitHub"
msgstr "" msgstr "GitHub"
#: src/defaults/links.tsx:21 #: src/defaults/links.tsx:21
msgid "Demo" msgid "Demo"
@ -1814,14 +1814,14 @@ msgstr "Démo"
#: src/defaults/links.tsx:26 #: src/defaults/links.tsx:26
#: src/defaults/menuItems.tsx:9 #: src/defaults/menuItems.tsx:9
msgid "Home" msgid "Home"
msgstr "" msgstr "Page daccueil"
#: src/defaults/links.tsx:27 #: src/defaults/links.tsx:27
#: src/defaults/menuItems.tsx:28 #: src/defaults/menuItems.tsx:28
#: src/pages/Index/Dashboard.tsx:19 #: src/pages/Index/Dashboard.tsx:19
#: src/pages/Index/Settings/UserSettings.tsx:41 #: src/pages/Index/Settings/UserSettings.tsx:41
msgid "Dashboard" msgid "Dashboard"
msgstr "" msgstr "Tableau de bord"
#: src/defaults/links.tsx:31 #: src/defaults/links.tsx:31
#: src/defaults/menuItems.tsx:48 #: src/defaults/menuItems.tsx:48
@ -1832,7 +1832,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:134
#: src/pages/purchasing/PurchasingIndex.tsx:52 #: src/pages/purchasing/PurchasingIndex.tsx:52
msgid "Purchasing" msgid "Purchasing"
msgstr "" msgstr "Achat en cours"
#: src/defaults/links.tsx:32 #: src/defaults/links.tsx:32
#: src/defaults/menuItems.tsx:53 #: src/defaults/menuItems.tsx:53
@ -1841,13 +1841,13 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:45 #: src/pages/sales/SalesIndex.tsx:45
#: src/pages/sales/SalesOrderDetail.tsx:105 #: src/pages/sales/SalesOrderDetail.tsx:105
msgid "Sales" msgid "Sales"
msgstr "" msgstr "Ventes"
#: src/defaults/links.tsx:35 #: src/defaults/links.tsx:35
#: src/defaults/menuItems.tsx:71 #: src/defaults/menuItems.tsx:71
#: src/pages/Index/Playground.tsx:192 #: src/pages/Index/Playground.tsx:192
msgid "Playground" msgid "Playground"
msgstr "" msgstr "Le terrain de jeux"
#: src/defaults/links.tsx:49 #: src/defaults/links.tsx:49
msgid "Getting Started" msgid "Getting Started"
@ -1888,7 +1888,7 @@ msgstr "Foire aux questions"
#: src/defaults/links.tsx:79 #: src/defaults/links.tsx:79
#: src/defaults/links.tsx:104 #: src/defaults/links.tsx:104
msgid "System Information" msgid "System Information"
msgstr "" msgstr "Informations système"
#: src/defaults/links.tsx:83 #: src/defaults/links.tsx:83
#~ msgid "InvenTree" #~ msgid "InvenTree"
@ -1897,11 +1897,11 @@ msgstr ""
#: src/defaults/links.tsx:92 #: src/defaults/links.tsx:92
#: src/defaults/links.tsx:110 #: src/defaults/links.tsx:110
msgid "About InvenTree" msgid "About InvenTree"
msgstr "" msgstr "À propos d'InvenTree"
#: src/defaults/links.tsx:105 #: src/defaults/links.tsx:105
msgid "About this Inventree instance" msgid "About this Inventree instance"
msgstr "" msgstr "À propos de cette instance Inventree"
#: src/defaults/links.tsx:111 #: src/defaults/links.tsx:111
msgid "About the InvenTree org" msgid "About the InvenTree org"
@ -1913,7 +1913,7 @@ msgstr "Licences"
#: src/defaults/links.tsx:117 #: src/defaults/links.tsx:117
msgid "Licenses for packages used by InvenTree" msgid "Licenses for packages used by InvenTree"
msgstr "" msgstr "Licences pour les paquets utilisés par InvenTree"
#: src/defaults/menuItems.tsx:7 #: src/defaults/menuItems.tsx:7
#~ msgid "Open sourcea" #~ msgid "Open sourcea"
@ -1941,7 +1941,7 @@ msgstr ""
#: src/defaults/menuItems.tsx:17 #: src/defaults/menuItems.tsx:17
msgid "User attributes and design settings." msgid "User attributes and design settings."
msgstr "" msgstr "Attributs utilisateur et paramètres de conception."
#: src/defaults/menuItems.tsx:21 #: src/defaults/menuItems.tsx:21
#~ msgid "Free for everyone" #~ msgid "Free for everyone"
@ -1993,47 +1993,47 @@ msgstr ""
#: src/forms/AttachmentForms.tsx:57 #: src/forms/AttachmentForms.tsx:57
msgid "Add File" msgid "Add File"
msgstr "" msgstr "Ajouter un fichier"
#: src/forms/AttachmentForms.tsx:57 #: src/forms/AttachmentForms.tsx:57
msgid "Add Link" msgid "Add Link"
msgstr "" msgstr "Ajouter un lien"
#: src/forms/AttachmentForms.tsx:58 #: src/forms/AttachmentForms.tsx:58
msgid "File added" msgid "File added"
msgstr "" msgstr "Fichier ajouté"
#: src/forms/AttachmentForms.tsx:58 #: src/forms/AttachmentForms.tsx:58
msgid "Link added" msgid "Link added"
msgstr "" msgstr "Lien ajouté"
#: src/forms/AttachmentForms.tsx:99 #: src/forms/AttachmentForms.tsx:99
msgid "Edit File" msgid "Edit File"
msgstr "" msgstr "Éditer le fichier"
#: src/forms/AttachmentForms.tsx:99 #: src/forms/AttachmentForms.tsx:99
msgid "Edit Link" msgid "Edit Link"
msgstr "" msgstr "Modifier le lien"
#: src/forms/AttachmentForms.tsx:100 #: src/forms/AttachmentForms.tsx:100
msgid "File updated" msgid "File updated"
msgstr "" msgstr "Fichier mis à jour"
#: src/forms/AttachmentForms.tsx:100 #: src/forms/AttachmentForms.tsx:100
msgid "Link updated" msgid "Link updated"
msgstr "" msgstr "Lien mis à jour"
#: src/forms/AttachmentForms.tsx:124 #: src/forms/AttachmentForms.tsx:124
msgid "Delete Attachment" msgid "Delete Attachment"
msgstr "" msgstr "Supprimer la pièce jointe"
#: src/forms/AttachmentForms.tsx:125 #: src/forms/AttachmentForms.tsx:125
msgid "Attachment deleted" msgid "Attachment deleted"
msgstr "" msgstr "Pièce jointe supprimée"
#: src/forms/AttachmentForms.tsx:128 #: src/forms/AttachmentForms.tsx:128
msgid "Are you sure you want to delete this attachment?" msgid "Are you sure you want to delete this attachment?"
msgstr "" msgstr "Êtes-vous sûr de vouloir supprimer cette pièce jointe ?"
#: src/forms/CompanyForms.tsx:150 #: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated" #~ msgid "Company updated"
@ -2041,7 +2041,7 @@ msgstr ""
#: src/forms/PartForms.tsx:105 #: src/forms/PartForms.tsx:105
msgid "Parent part category" msgid "Parent part category"
msgstr "" msgstr "Catégorie de pièce parente"
#: src/forms/PartForms.tsx:106 #: src/forms/PartForms.tsx:106
#~ msgid "Create Part" #~ msgid "Create Part"
@ -2057,23 +2057,23 @@ msgstr ""
#: src/forms/StockForms.tsx:44 #: src/forms/StockForms.tsx:44
msgid "Add given quantity as packs instead of individual items" msgid "Add given quantity as packs instead of individual items"
msgstr "" msgstr "Ajouter une quantité en paquet au lieu de pièces individuelles"
#: src/forms/StockForms.tsx:55 #: src/forms/StockForms.tsx:55
msgid "Enter initial quantity for this stock item" msgid "Enter initial quantity for this stock item"
msgstr "" msgstr "Entrez la quantité initiale pour cet article en stock"
#: src/forms/StockForms.tsx:60 #: src/forms/StockForms.tsx:60
msgid "Serial Numbers" msgid "Serial Numbers"
msgstr "" msgstr "Numéros de Série"
#: src/forms/StockForms.tsx:61 #: src/forms/StockForms.tsx:61
msgid "Enter serial numbers for new stock (or leave blank)" msgid "Enter serial numbers for new stock (or leave blank)"
msgstr "" msgstr "Entrez les numéros de série pour le nouveau stock (ou laisser vide)"
#: src/forms/StockForms.tsx:110 #: src/forms/StockForms.tsx:110
msgid "Add Stock Item" msgid "Add Stock Item"
msgstr "" msgstr "Ajouter un article en stock"
#: src/forms/StockForms.tsx:110 #: src/forms/StockForms.tsx:110
#~ msgid "Create Stock Item" #~ msgid "Create Stock Item"
@ -2494,47 +2494,47 @@ msgstr ""
#: src/pages/Index/Scan.tsx:430 #: src/pages/Index/Scan.tsx:430
msgid "No history" msgid "No history"
msgstr "" msgstr "Aucun historique"
#: src/pages/Index/Scan.tsx:449 #: src/pages/Index/Scan.tsx:449
msgid "Item" msgid "Item"
msgstr "" msgstr "Élément"
#: src/pages/Index/Scan.tsx:452 #: src/pages/Index/Scan.tsx:452
msgid "Type" msgid "Type"
msgstr "" msgstr "Type"
#: src/pages/Index/Scan.tsx:455 #: src/pages/Index/Scan.tsx:455
msgid "Source" msgid "Source"
msgstr "" msgstr "Source"
#: src/pages/Index/Scan.tsx:458 #: src/pages/Index/Scan.tsx:458
msgid "Scanned at" msgid "Scanned at"
msgstr "" msgstr "Scanné le"
#: src/pages/Index/Scan.tsx:510 #: src/pages/Index/Scan.tsx:510
msgid "Enter item serial or data" msgid "Enter item serial or data"
msgstr "" msgstr "Entrez le numéro de série ou les données de l'élément"
#: src/pages/Index/Scan.tsx:522 #: src/pages/Index/Scan.tsx:522
msgid "Add dummy item" msgid "Add dummy item"
msgstr "" msgstr "Ajouter un élément factice"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:32 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:32
msgid "Account Details" msgid "Account Details"
msgstr "" msgstr "Détails du compte"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:41 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:41
msgid "First name" msgid "First name"
msgstr "" msgstr "Prénom"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:46 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:46
msgid "Last name" msgid "Last name"
msgstr "" msgstr "Nom de famille"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58
msgid "First name:" msgid "First name:"
msgstr "" msgstr "Prénom:"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58
#~ msgid "First name: {0}" #~ msgid "First name: {0}"
@ -2546,11 +2546,11 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:62 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:62
msgid "Last name:" msgid "Last name:"
msgstr "" msgstr "Nom de famille:"
#: src/pages/Index/Settings/AccountSettings/DisplaySettingsPanel.tsx:39 #: src/pages/Index/Settings/AccountSettings/DisplaySettingsPanel.tsx:39
msgid "Use pseudo language" msgid "Use pseudo language"
msgstr "" msgstr "Utiliser une pseudo langue"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:53 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:53
msgid "Single Sign On Accounts" msgid "Single Sign On Accounts"
@ -2559,7 +2559,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78
msgid "Not enabled" msgid "Not enabled"
msgstr "" msgstr "Non activé"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:63 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:63
msgid "Single Sign On is not enabled for this server" msgid "Single Sign On is not enabled for this server"
@ -2567,67 +2567,67 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
msgid "Multifactor" msgid "Multifactor"
msgstr "" msgstr "Multifacteur"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:81 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:81
msgid "Multifactor authentication is not configured for your account" msgid "Multifactor authentication is not configured for your account"
msgstr "" msgstr "L'authentification multifacteurs n'est pas configurée pour votre compte"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
msgid "The following email addresses are associated with your account:" msgid "The following email addresses are associated with your account:"
msgstr "" msgstr "Les adresses de messagerie suivantes sont associées à votre compte :"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:144 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:144
msgid "Primary" msgid "Primary"
msgstr "" msgstr "Principale"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:149 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:149
msgid "Verified" msgid "Verified"
msgstr "" msgstr "Vérifiée"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:153 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:153
msgid "Unverified" msgid "Unverified"
msgstr "" msgstr "Non vérifiée"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166
msgid "Add Email Address" msgid "Add Email Address"
msgstr "" msgstr "Ajouter une adresse email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:169 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:169
msgid "E-Mail" msgid "E-Mail"
msgstr "" msgstr "E-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170
msgid "E-Mail address" msgid "E-Mail address"
msgstr "" msgstr "Adresse e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:182 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:182
msgid "Make Primary" msgid "Make Primary"
msgstr "" msgstr "Rendre Principale"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:187 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:187
msgid "Re-send Verification" msgid "Re-send Verification"
msgstr "" msgstr "Renvoyer le message de vérification"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:198 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:198
msgid "Add Email" msgid "Add Email"
msgstr "" msgstr "Ajouter le-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
msgid "Provider has not been configured" msgid "Provider has not been configured"
msgstr "" msgstr "Le fournisseur n'a pas été configuré"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:273 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:273
msgid "Not configured" msgid "Not configured"
msgstr "" msgstr "Non configuré"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
msgid "There are no social network accounts connected to this account." msgid "There are no social network accounts connected to this account."
msgstr "" msgstr "Aucun compte de réseau social n'est connecté à ce compte."
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:286 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:286
msgid "You can sign in to your account using any of the following third party accounts" msgid "You can sign in to your account using any of the following third party accounts"
msgstr "" msgstr "Vous pouvez vous connecter à votre compte, utilisez lun des comptes tiers suivants"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:68 #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:68
msgid "bars" msgid "bars"
@ -2643,7 +2643,7 @@ msgstr "points"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:81 #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:81
msgid "Theme" msgid "Theme"
msgstr "" msgstr "Thème"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:87 #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:87
msgid "Primary color" msgid "Primary color"
@ -2659,11 +2659,11 @@ msgstr "Couleur noire"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:116 #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:116
msgid "Border Radius" msgid "Border Radius"
msgstr "" msgstr "Rayon de bordure"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:132 #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:132
msgid "Loader" msgid "Loader"
msgstr "" msgstr "Chargeur"
#: src/pages/Index/Settings/AdminCenter.tsx:30 #: src/pages/Index/Settings/AdminCenter.tsx:30
#~ msgid "User Management" #~ msgid "User Management"
@ -2675,40 +2675,40 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:59 #: src/pages/Index/Settings/AdminCenter/Index.tsx:59
msgid "Background Tasks" msgid "Background Tasks"
msgstr "" msgstr "Tâches en arrière plan"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:65 #: src/pages/Index/Settings/AdminCenter/Index.tsx:65
msgid "Error Reports" msgid "Error Reports"
msgstr "" msgstr "Rapports d'erreur"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:83 #: src/pages/Index/Settings/AdminCenter/Index.tsx:83
msgid "Custom Units" msgid "Custom Units"
msgstr "" msgstr "Unités personnalisées"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:89 #: src/pages/Index/Settings/AdminCenter/Index.tsx:89
msgid "Part Parameters" msgid "Part Parameters"
msgstr "" msgstr "Paramètres de la pièce"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:105 #: src/pages/Index/Settings/AdminCenter/Index.tsx:105
msgid "Quick Actions" msgid "Quick Actions"
msgstr "" msgstr "Actions rapides"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 #: src/pages/Index/Settings/AdminCenter/Index.tsx:110
msgid "Add a new user" msgid "Add a new user"
msgstr "" msgstr "Ajouter un utilisateur"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:129 #: src/pages/Index/Settings/AdminCenter/Index.tsx:129
msgid "Advanced Options" msgid "Advanced Options"
msgstr "" msgstr "Options avancées"
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:28 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:28
#: src/tables/settings/UserTable.tsx:103 #: src/tables/settings/UserTable.tsx:103
msgid "Info" msgid "Info"
msgstr "" msgstr "Info"
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:32 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:32
msgid "External plugins are not enabled for this InvenTree installation." msgid "External plugins are not enabled for this InvenTree installation."
msgstr "" msgstr "Les extensions tierces ne sont pas activées pour cette installation d'InvenTree."
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33
#~ msgid "Plugin Error Stack" #~ msgid "Plugin Error Stack"
@ -2724,28 +2724,28 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:50 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:50
msgid "Plugin Errors" msgid "Plugin Errors"
msgstr "" msgstr "Erreurs du plugin"
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:59 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:59
msgid "Plugin Settings" msgid "Plugin Settings"
msgstr "" msgstr "Paramètres du plug-in"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:25 #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:25
msgid "Pending Tasks" msgid "Pending Tasks"
msgstr "" msgstr "Tâches en attente"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:33 #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:33
msgid "Scheduled Tasks" msgid "Scheduled Tasks"
msgstr "" msgstr "Tâches planifiées"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:41 #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:41
msgid "Failed Tasks" msgid "Failed Tasks"
msgstr "" msgstr "Tâches en échec"
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:18 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:18
#: src/tables/settings/UserTable.tsx:121 #: src/tables/settings/UserTable.tsx:121
msgid "Groups" msgid "Groups"
msgstr "" msgstr "Groupes"
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:30 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:30
msgid "Select settings relevant for user lifecycle. More available in" msgid "Select settings relevant for user lifecycle. More available in"
@ -3068,7 +3068,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:155 #: src/pages/part/PartDetail.tsx:155
msgid "Minimum Stock" msgid "Minimum Stock"
msgstr "" msgstr "Stock Minimum"
#: src/pages/part/PartDetail.tsx:165 #: src/pages/part/PartDetail.tsx:165
#: src/tables/bom/BomTable.tsx:180 #: src/tables/bom/BomTable.tsx:180
@ -3078,11 +3078,11 @@ msgstr "Sur commande"
#: src/pages/part/PartDetail.tsx:181 #: src/pages/part/PartDetail.tsx:181
msgid "Allocated to Build Orders" msgid "Allocated to Build Orders"
msgstr "" msgstr "Alloué à l'ordre de construction"
#: src/pages/part/PartDetail.tsx:196 #: src/pages/part/PartDetail.tsx:196
msgid "Allocated to Sales Orders" msgid "Allocated to Sales Orders"
msgstr "" msgstr "Alloué aux ordres de ventes"
#: src/pages/part/PartDetail.tsx:207 #: src/pages/part/PartDetail.tsx:207
#: src/tables/bom/BomTable.tsx:204 #: src/tables/bom/BomTable.tsx:204
@ -3098,7 +3098,7 @@ msgstr "Construire"
#: src/pages/part/PartDetail.tsx:228 #: src/pages/part/PartDetail.tsx:228
#: src/tables/notifications/NotificationsTable.tsx:29 #: src/tables/notifications/NotificationsTable.tsx:29
msgid "Category" msgid "Category"
msgstr "" msgstr "Catégorie"
#: src/pages/part/PartDetail.tsx:239 #: src/pages/part/PartDetail.tsx:239
msgid "IPN" msgid "IPN"
@ -3106,17 +3106,17 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:250 #: src/pages/part/PartDetail.tsx:250
msgid "Revision" msgid "Revision"
msgstr "" msgstr "Révision"
#: src/pages/part/PartDetail.tsx:261 #: src/pages/part/PartDetail.tsx:261
#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:39 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:39
msgid "Units" msgid "Units"
msgstr "" msgstr "Unités"
#: src/pages/part/PartDetail.tsx:271 #: src/pages/part/PartDetail.tsx:271
#: src/tables/settings/PendingTasksTable.tsx:40 #: src/tables/settings/PendingTasksTable.tsx:40
msgid "Keywords" msgid "Keywords"
msgstr "" msgstr "Mots-clés"
#: src/pages/part/PartDetail.tsx:281 #: src/pages/part/PartDetail.tsx:281
msgid "Creation Date" msgid "Creation Date"
@ -3142,19 +3142,19 @@ msgstr "Échelle des prix"
#: src/pages/part/PartDetail.tsx:332 #: src/pages/part/PartDetail.tsx:332
msgid "Last Stocktake" msgid "Last Stocktake"
msgstr "" msgstr "Dernier inventaire"
#: src/pages/part/PartDetail.tsx:393 #: src/pages/part/PartDetail.tsx:393
msgid "Default Location" msgid "Default Location"
msgstr "" msgstr "Emplacement par défaut"
#: src/pages/part/PartDetail.tsx:404 #: src/pages/part/PartDetail.tsx:404
msgid "Default Supplier" msgid "Default Supplier"
msgstr "" msgstr "Fournisseur par Défaut"
#: src/pages/part/PartDetail.tsx:415 #: src/pages/part/PartDetail.tsx:415
msgid "Link" msgid "Link"
msgstr "" msgstr "Lien"
#: src/pages/part/PartDetail.tsx:427 #: src/pages/part/PartDetail.tsx:427
msgid "Responsible" msgid "Responsible"
@ -3162,12 +3162,12 @@ msgstr "Responsable"
#: src/pages/part/PartDetail.tsx:482 #: src/pages/part/PartDetail.tsx:482
msgid "Variants" msgid "Variants"
msgstr "" msgstr "Variants"
#: src/pages/part/PartDetail.tsx:489 #: src/pages/part/PartDetail.tsx:489
#: src/pages/stock/StockDetail.tsx:82 #: src/pages/stock/StockDetail.tsx:82
msgid "Allocations" msgid "Allocations"
msgstr "" msgstr "Allocations"
#: src/pages/part/PartDetail.tsx:495 #: src/pages/part/PartDetail.tsx:495
msgid "Bill of Materials" msgid "Bill of Materials"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: he\n" "Language: he\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Hebrew\n" "Language-Team: Hebrew\n"
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n"

View File

@ -4877,4 +4877,3 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: hu\n" "Language: hu\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Hungarian\n" "Language-Team: Hungarian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: it\n" "Language: it\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Italian\n" "Language-Team: Italian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: ja\n" "Language: ja\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Japanese\n" "Language-Team: Japanese\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: ko\n" "Language: ko\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:22\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Korean\n" "Language-Team: Korean\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: nl\n" "Language: nl\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Dutch\n" "Language-Team: Dutch\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: no\n" "Language: no\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Norwegian\n" "Language-Team: Norwegian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: pl\n" "Language: pl\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Polish\n" "Language-Team: Polish\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: pt\n" "Language: pt\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Portuguese\n" "Language-Team: Portuguese\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: ru\n" "Language: ru\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Russian\n" "Language-Team: Russian\n"
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: sk\n" "Language: sk\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Slovak\n" "Language-Team: Slovak\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: sl\n" "Language: sl\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Slovenian\n" "Language-Team: Slovenian\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n"

View File

@ -4877,4 +4877,3 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: sv\n" "Language: sv\n"
"Project-Id-Version: inventree\n" "Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-07 12:23\n" "PO-Revision-Date: 2024-02-10 14:55\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Swedish\n" "Language-Team: Swedish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
@ -202,7 +202,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:271 #: src/components/forms/AuthenticationForm.tsx:271
msgid "Or use SSO" msgid "Or use SSO"
msgstr "" msgstr "Eller använd SSO"
#: src/components/forms/AuthenticationForm.tsx:302 #: src/components/forms/AuthenticationForm.tsx:302
msgid "Don't have an account?" msgid "Don't have an account?"
@ -250,7 +250,7 @@ msgstr "Redigera möjliga värdalternativ"
#: src/components/forms/InstanceOptions.tsx:98 #: src/components/forms/InstanceOptions.tsx:98
msgid "Version: {0}" msgid "Version: {0}"
msgstr "Version {0}" msgstr "Version: {0}"
#: src/components/forms/InstanceOptions.tsx:100 #: src/components/forms/InstanceOptions.tsx:100
msgid "API:{0}" msgid "API:{0}"
@ -1600,7 +1600,7 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:18 #: src/contexts/LanguageContext.tsx:18
msgid "Bulgarian" msgid "Bulgarian"
msgstr "" msgstr "Bulgariska"
#: src/contexts/LanguageContext.tsx:19 #: src/contexts/LanguageContext.tsx:19
msgid "Czech" msgid "Czech"
@ -1608,23 +1608,23 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:20 #: src/contexts/LanguageContext.tsx:20
msgid "Danish" msgid "Danish"
msgstr "" msgstr "Danska"
#: src/contexts/LanguageContext.tsx:21 #: src/contexts/LanguageContext.tsx:21
msgid "German" msgid "German"
msgstr "" msgstr "Tyska"
#: src/contexts/LanguageContext.tsx:22 #: src/contexts/LanguageContext.tsx:22
msgid "Greek" msgid "Greek"
msgstr "" msgstr "Grekiska"
#: src/contexts/LanguageContext.tsx:23 #: src/contexts/LanguageContext.tsx:23
msgid "English" msgid "English"
msgstr "" msgstr "Engelska"
#: src/contexts/LanguageContext.tsx:24 #: src/contexts/LanguageContext.tsx:24
msgid "Spanish" msgid "Spanish"
msgstr "" msgstr "Spanska"
#: src/contexts/LanguageContext.tsx:25 #: src/contexts/LanguageContext.tsx:25
msgid "Spanish (Mexican)" msgid "Spanish (Mexican)"
@ -1636,11 +1636,11 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:27 #: src/contexts/LanguageContext.tsx:27
msgid "Finnish" msgid "Finnish"
msgstr "" msgstr "Finska"
#: src/contexts/LanguageContext.tsx:28 #: src/contexts/LanguageContext.tsx:28
msgid "French" msgid "French"
msgstr "" msgstr "Franska"
#: src/contexts/LanguageContext.tsx:29 #: src/contexts/LanguageContext.tsx:29
msgid "Hebrew" msgid "Hebrew"
@ -1648,19 +1648,19 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:30 #: src/contexts/LanguageContext.tsx:30
msgid "Hindi" msgid "Hindi"
msgstr "" msgstr "Hindi"
#: src/contexts/LanguageContext.tsx:31 #: src/contexts/LanguageContext.tsx:31
msgid "Hungarian" msgid "Hungarian"
msgstr "" msgstr "Ungerska"
#: src/contexts/LanguageContext.tsx:32 #: src/contexts/LanguageContext.tsx:32
msgid "Italian" msgid "Italian"
msgstr "" msgstr "Italienska"
#: src/contexts/LanguageContext.tsx:33 #: src/contexts/LanguageContext.tsx:33
msgid "Japanese" msgid "Japanese"
msgstr "" msgstr "Japanska"
#: src/contexts/LanguageContext.tsx:34 #: src/contexts/LanguageContext.tsx:34
msgid "Korean" msgid "Korean"
@ -1672,11 +1672,11 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:36 #: src/contexts/LanguageContext.tsx:36
msgid "Norwegian" msgid "Norwegian"
msgstr "" msgstr "Norska"
#: src/contexts/LanguageContext.tsx:37 #: src/contexts/LanguageContext.tsx:37
msgid "Polish" msgid "Polish"
msgstr "" msgstr "Polska"
#: src/contexts/LanguageContext.tsx:38 #: src/contexts/LanguageContext.tsx:38
msgid "Portuguese" msgid "Portuguese"
@ -1688,11 +1688,11 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:40 #: src/contexts/LanguageContext.tsx:40
msgid "Russian" msgid "Russian"
msgstr "" msgstr "Ryska"
#: src/contexts/LanguageContext.tsx:41 #: src/contexts/LanguageContext.tsx:41
msgid "Slovak" msgid "Slovak"
msgstr "" msgstr "Slovakiska"
#: src/contexts/LanguageContext.tsx:42 #: src/contexts/LanguageContext.tsx:42
msgid "Slovenian" msgid "Slovenian"
@ -1700,7 +1700,7 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:43 #: src/contexts/LanguageContext.tsx:43
msgid "Swedish" msgid "Swedish"
msgstr "" msgstr "Svenska"
#: src/contexts/LanguageContext.tsx:44 #: src/contexts/LanguageContext.tsx:44
msgid "Thai" msgid "Thai"
@ -1708,7 +1708,7 @@ msgstr ""
#: src/contexts/LanguageContext.tsx:45 #: src/contexts/LanguageContext.tsx:45
msgid "Turkish" msgid "Turkish"
msgstr "" msgstr "Turkiska"
#: src/contexts/LanguageContext.tsx:46 #: src/contexts/LanguageContext.tsx:46
msgid "Vietnamese" msgid "Vietnamese"
@ -3463,7 +3463,7 @@ msgstr "Lägg till filter"
#: src/tables/FilterSelectDrawer.tsx:228 #: src/tables/FilterSelectDrawer.tsx:228
msgid "Clear Filters" msgid "Clear Filters"
msgstr "" msgstr "Rensa filter"
#: src/tables/InvenTreeTable.tsx:88 #: src/tables/InvenTreeTable.tsx:88
#: src/tables/InvenTreeTable.tsx:352 #: src/tables/InvenTreeTable.tsx:352
@ -4049,7 +4049,7 @@ msgstr ""
#: src/tables/part/PartThumbTable.tsx:202 #: src/tables/part/PartThumbTable.tsx:202
msgid "Search..." msgid "Search..."
msgstr "" msgstr "Sök..."
#: src/tables/part/PartVariantTable.tsx:16 #: src/tables/part/PartVariantTable.tsx:16
msgid "Show active variants" msgid "Show active variants"

View File

@ -4877,4 +4877,3 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "" msgstr ""

View File

@ -4877,4 +4877,3 @@ msgstr ""
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "Belgeleri okuyun" msgstr "Belgeleri okuyun"

View File

@ -4877,4 +4877,3 @@ msgstr "Giao diện nền tảng được tối ưu cho máy tính bảng và m
#: src/views/MobileAppView.tsx:23 #: src/views/MobileAppView.tsx:23
msgid "Read the docs" msgid "Read the docs"
msgstr "Đọc tài liệu" msgstr "Đọc tài liệu"

File diff suppressed because it is too large Load Diff