2
0
mirror of https://github.com/inventree/schema.git synced 2025-04-27 20:46:49 +00:00

Update API schema for 309 / c077e2b605936f25ee4e3da09e82c5170a0eeb10

This commit is contained in:
SchrodingersGat 2025-02-01 21:00:01 +00:00 committed by github-actions[bot]
parent 76fc7e3eca
commit de44cc2d4f
4 changed files with 37480 additions and 0 deletions

34670
export/309/api.yaml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,683 @@
- body: ''
library: ''
meta: {}
name: addslashes
title: 'Add slashes before quotes. Useful for escaping strings in CSV, for
example. Less useful for escaping JavaScript; use the ``escapejs``
filter instead.'
- body: ''
library: ''
meta: {}
name: capfirst
title: Capitalize the first character of the value.
- body: ''
library: ''
meta: {}
name: escapejs
title: Hex encode characters for use in JavaScript strings.
- body: ''
library: ''
meta: {}
name: json_script
title: 'Output value JSON-encoded, wrapped in a <script type="application/json">
tag (with an optional id).'
- body: 'If called without an argument, display the floating point number with one
decimal place -- but only if there''s a decimal place to be displayed:
* num1 = 34.23234
* num2 = 34.00000
* num3 = 34.26000
* {{ num1|floatformat }} displays "34.2"
* {{ num2|floatformat }} displays "34"
* {{ num3|floatformat }} displays "34.3"
If arg is positive, always display exactly arg number of decimal places:
* {{ num1|floatformat:3 }} displays "34.232"
* {{ num2|floatformat:3 }} displays "34.000"
* {{ num3|floatformat:3 }} displays "34.260"
If arg is negative, display arg number of decimal places -- but only if
there are places to be displayed:
* {{ num1|floatformat:"-3" }} displays "34.232"
* {{ num2|floatformat:"-3" }} displays "34"
* {{ num3|floatformat:"-3" }} displays "34.260"
If arg has the ''g'' suffix, force the result to be grouped by the
THOUSAND_SEPARATOR for the active locale. When the active locale is
en (English):
* {{ 6666.6666|floatformat:"2g" }} displays "6,666.67"
* {{ 10000|floatformat:"g" }} displays "10,000"
If arg has the ''u'' suffix, force the result to be unlocalized. When the
active locale is pl (Polish):
* {{ 66666.6666|floatformat:"2" }} displays "66666,67"
* {{ 66666.6666|floatformat:"2u" }} displays "66666.67"
If the input float is infinity or NaN, display the string representation
of that value.'
library: ''
meta: {}
name: floatformat
title: Display a float to a specified number of decimal places.
- body: ''
library: ''
meta: {}
name: iriencode
title: Escape an IRI value for use in a URL.
- body: ''
library: ''
meta: {}
name: linenumbers
title: Display text with line numbers.
- body: ''
library: ''
meta: {}
name: lower
title: Convert a string into all lowercase.
- body: 'For an integer, it''s a list of digits.
For a string, it''s a list of characters.'
library: ''
meta: {}
name: make_list
title: Return the value turned into a list.
- body: ''
library: ''
meta: {}
name: slugify
title: 'Convert to ASCII. Convert spaces to hyphens. Remove characters that aren''t
alphanumerics, underscores, or hyphens. Convert to lowercase. Also strip
leading and trailing whitespace.'
- body: 'This specifier uses Python string formatting syntax, with the exception
that the leading "%" is dropped.
See https://docs.python.org/library/stdtypes.html#printf-style-string-formatting
for documentation of Python string formatting.'
library: ''
meta: {}
name: stringformat
title: Format the variable according to the arg, a string formatting specifier.
- body: ''
library: ''
meta: {}
name: title
title: Convert a string into titlecase.
- body: ''
library: ''
meta: {}
name: truncatechars
title: Truncate a string after `arg` number of characters.
- body: ''
library: ''
meta: {}
name: truncatechars_html
title: 'Truncate HTML after `arg` number of chars.
Preserve newlines in the HTML.'
- body: ''
library: ''
meta: {}
name: truncatewords
title: 'Truncate a string after `arg` number of words.
Remove newlines within the string.'
- body: ''
library: ''
meta: {}
name: truncatewords_html
title: 'Truncate HTML after `arg` number of words.
Preserve newlines in the HTML.'
- body: ''
library: ''
meta: {}
name: upper
title: Convert a string into all uppercase.
- body: 'The ``safe`` parameter determines the characters which should not be
escaped by Python''s quote() function. If not provided, use the default safe
characters (but an empty string can be provided when *all* characters
should be escaped).'
library: ''
meta: {}
name: urlencode
title: Escape a value for use in a URL.
- body: ''
library: ''
meta: {}
name: urlize
title: Convert URLs in plain text into clickable links.
- body: ''
library: ''
meta:
Argument: Length to truncate URLs to.
name: urlizetrunc
title: 'Convert URLs into clickable links, truncating URLs to the given character
limit, and adding ''rel=nofollow'' attribute to discourage spamming.'
- body: ''
library: ''
meta: {}
name: wordcount
title: Return the number of words.
- body: ''
library: ''
meta: {}
name: wordwrap
title: Wrap words at `arg` line length.
- body: ''
library: ''
meta: {}
name: ljust
title: Left-align the value in a field of a given width.
- body: ''
library: ''
meta: {}
name: rjust
title: Right-align the value in a field of a given width.
- body: ''
library: ''
meta: {}
name: center
title: Center the value in a field of a given width.
- body: ''
library: ''
meta: {}
name: cut
title: Remove all values of arg from the given string.
- body: ''
library: ''
meta: {}
name: escape
title: Mark the value as a string that should be auto-escaped.
- body: ''
library: ''
meta: {}
name: force_escape
title: 'Escape a string''s HTML. Return a new string containing the escaped
characters (as opposed to "escape", which marks the content for later
possible escaping).'
- body: ''
library: ''
meta: {}
name: linebreaks
title: 'Replace line breaks in plain text with appropriate HTML; a single
newline becomes an HTML line break (``<br>``) and a new line
followed by a blank line becomes a paragraph break (``</p>``).'
- body: ''
library: ''
meta: {}
name: linebreaksbr
title: 'Convert all newlines in a piece of plain text to HTML line breaks
(``<br>``).'
- body: ''
library: ''
meta: {}
name: safe
title: Mark the value as a string that should not be auto-escaped.
- body: ''
library: ''
meta: {}
name: safeseq
title: 'A "safe" filter for sequences. Mark each element in the sequence,
individually, as safe, after converting them to strings. Return a list
with the results.'
- body: ''
library: ''
meta: {}
name: striptags
title: Strip all [X]HTML tags.
- body: ''
library: ''
meta: {}
name: dictsort
title: 'Given a list of dicts, return that list sorted by the property given in
the argument.'
- body: ''
library: ''
meta: {}
name: dictsortreversed
title: 'Given a list of dicts, return that list sorted in reverse order by the
property given in the argument.'
- body: ''
library: ''
meta: {}
name: first
title: Return the first item in a list.
- body: ''
library: ''
meta: {}
name: join
title: Join a list with a string, like Python's ``str.join(list)``.
- body: ''
library: ''
meta: {}
name: last
title: Return the last item in a list.
- body: ''
library: ''
meta: {}
name: length
title: Return the length of the value - useful for lists.
- body: ''
library: ''
meta: {}
name: length_is
title: Return a boolean of whether the value's length is the argument.
- body: ''
library: ''
meta: {}
name: random
title: Return a random item from the list.
- body: ''
library: ''
meta: {}
name: slice
title: Return a slice of the list using the same syntax as Python's list slicing.
- body: "Assume the list is in the proper format. For example, if ``var`` contains:\n\
``['States', ['Kansas', ['Lawrence', 'Topeka'], 'Illinois']]``, then\n``{{\
\ var|unordered_list }}`` returns::\n\n <li>States\n <ul>\n \
\ <li>Kansas\n <ul>\n <li>Lawrence</li>\n\
\ <li>Topeka</li>\n </ul>\n </li>\n\
\ <li>Illinois</li>\n </ul>\n </li>"
library: ''
meta: {}
name: unordered_list
title: 'Recursively take a self-nested list and return an HTML unordered list
--
WITHOUT opening and closing <ul> tags.'
- body: ''
library: ''
meta: {}
name: add
title: Add the arg to the value.
- body: ''
library: ''
meta: {}
name: get_digit
title: 'Given a whole number, return the requested digit of it, where 1 is the
right-most digit, 2 is the second-right-most digit, etc. Return the
original value for invalid input (if input or argument is not an integer,
or if argument is less than 1). Otherwise, output is always an integer.'
- body: ''
library: ''
meta: {}
name: date
title: Format a date according to the given format.
- body: ''
library: ''
meta: {}
name: time
title: Format a time according to the given format.
- body: ''
library: ''
meta: {}
name: timesince
title: Format a date as the time since that date (i.e. "4 days, 6 hours").
- body: ''
library: ''
meta: {}
name: timeuntil
title: Format a date as the time until that date (i.e. "4 days, 6 hours").
- body: ''
library: ''
meta: {}
name: default
title: If value is unavailable, use given default.
- body: ''
library: ''
meta: {}
name: default_if_none
title: If value is None, use given default.
- body: ''
library: ''
meta: {}
name: divisibleby
title: Return True if the value is divisible by the argument.
- body: "========== ====================== ==================================\n\
Value Argument Outputs\n========== ======================\
\ ==================================\n``True`` ``\"yeah,no,maybe\"`` \
\ ``yeah``\n``False`` ``\"yeah,no,maybe\"`` ``no``\n``None`` ``\"\
yeah,no,maybe\"`` ``maybe``\n``None`` ``\"yeah,no\"`` ``\"\
no\"`` (converts None to False\n if no\
\ mapping for None is given.\n========== ====================== =================================="
library: ''
meta: {}
name: yesno
title: 'Given a string mapping values for true, false, and (optionally) None,
return one of those strings according to the value:'
- body: ''
library: ''
meta: {}
name: filesizeformat
title: 'Format the value like a ''human-readable'' file size (i.e. 13 KB, 4.1
MB,
102 bytes, etc.).'
- body: '* If value is 0, vote{{ value|pluralize }} display "votes".
* If value is 1, vote{{ value|pluralize }} display "vote".
* If value is 2, vote{{ value|pluralize }} display "votes".
If an argument is provided, use that string instead:
* If value is 0, class{{ value|pluralize:"es" }} display "classes".
* If value is 1, class{{ value|pluralize:"es" }} display "class".
* If value is 2, class{{ value|pluralize:"es" }} display "classes".
If the provided argument contains a comma, use the text before the comma
for the singular case and the text after the comma for the plural case:
* If value is 0, cand{{ value|pluralize:"y,ies" }} display "candies".
* If value is 1, cand{{ value|pluralize:"y,ies" }} display "candy".
* If value is 2, cand{{ value|pluralize:"y,ies" }} display "candies".'
library: ''
meta: {}
name: pluralize
title: 'Return a plural suffix if the value is not 1, ''1'', or an object of
length 1. By default, use ''s'' as the suffix:'
- body: ''
library: ''
meta: {}
name: phone2numeric
title: Take a phone number and converts it in to its numerical equivalent.
- body: ''
library: ''
meta: {}
name: pprint
title: A wrapper around pprint.pprint -- for debugging, really.
- body: ''
library: admin_modify
meta: {}
name: cell_count
title: Return the number of cells used in a tabular inline.
- body: ''
library: admin_urls
meta: {}
name: admin_urlname
title: ''
- body: ''
library: admin_urls
meta: {}
name: admin_urlquote
title: ''
- body: ''
library: flags_debug
meta: {}
name: bool_enabled
title: ''
- body: ''
library: flags_debug
meta: {}
name: conditions_without_bool
title: ''
- body: ''
library: flags_debug
meta: {}
name: required_conditions_without_bool
title: ''
- body: ''
library: flags_debug
meta: {}
name: state_str
title: Construct a string that describes the current state of the flag
- body: ''
library: i18n
meta: {}
name: language_name
title: ''
- body: ''
library: i18n
meta: {}
name: language_name_translated
title: ''
- body: ''
library: i18n
meta: {}
name: language_name_local
title: ''
- body: ''
library: i18n
meta: {}
name: language_bidi
title: ''
- body: ''
library: inventree_extras
meta:
Usage: ''
name: keyvalue
title: Access to key of supplied dict.
- body: ''
library: l10n
meta: {}
name: localize
title: 'Force a value to be rendered as a localized value,
regardless of the value of ``settings.USE_L10N``.'
- body: ''
library: l10n
meta: {}
name: unlocalize
title: 'Force a value to be rendered as a non-localized value,
regardless of the value of ``settings.USE_L10N``.'
- body: ''
library: markdownify
meta: {}
name: markdownify
title: ''
- body: " new_level\n ``True`` if the current item is the start of a new\
\ level in\n the tree, ``False`` otherwise.\n\n closed_levels\n \
\ A list of levels which end after the current item. This will\n be\
\ an empty list if the next item is at the same level as the\n current\
\ item.\n\nUsing this filter with unpacking in a ``{% for %}`` tag, you should\n\
have enough information about the tree structure to create a\nhierarchical\
\ representation of the tree.\n\nExample::\n\n {% for genre,structure in\
\ genres|tree_info %}\n {% if structure.new_level %}<ul><li>{% else %}</li><li>{%\
\ endif %}\n {{ genre.name }}\n {% for level in structure.closed_levels\
\ %}</li></ul>{% endfor %}\n {% endfor %}"
library: mptt_tags
meta: {}
name: tree_info
title: 'Given a list of tree items, produces doubles of a tree item and a
``dict`` containing information about the tree structure around the
item, with the following contents:'
- body: "Each path item will be coerced to unicode, so a list of model\ninstances\
\ may be given if required.\n\nExample::\n\n {{ some_list|tree_path }}\n\
\ {{ some_node.get_ancestors|tree_path:\" > \" }}"
library: mptt_tags
meta: {}
name: tree_path
title: 'Creates a tree path represented by a list of ``items`` by joining
the items with a ``separator``.'
- body: ''
library: mptt_tags
meta: {}
name: cache_tree_children
title: Alias to `mptt.utils.get_cached_trees`.
- body: ''
library: rest_framework
meta: {}
name: with_location
title: ''
- body: ''
library: rest_framework
meta: {}
name: as_string
title: ''
- body: ''
library: rest_framework
meta: {}
name: as_list_of_strings
title: ''
- body: "Inserts classes into template variables that contain HTML tags,\nuseful\
\ for modifying forms without needing to change the Form objects.\n\nUsage:\n\
\n {{ field.label_tag|add_class:\"control-label\" }}\n\nIn the case of\
\ REST Framework, the filter is used to add Bootstrap-specific\nclasses to\
\ the forms."
library: rest_framework
meta: {}
name: add_class
title: https://stackoverflow.com/questions/4124220/django-adding-css-classes-when-rendering-form-fields-in-a-template
- body: ''
library: rest_framework
meta: {}
name: format_value
title: ''
- body: ''
library: rest_framework
meta: {}
name: items
title: 'Simple filter to return the items of the dict. Useful when the dict may
have a key ''items'' which is resolved first in Django template dot-notation
lookup. See issue #4931
Also see: https://stackoverflow.com/questions/15416662/django-template-loop-over-dictionary-items-with-items-as-key'
- body: 'As per `items` filter above, allows accessing `document.data` when
Document contains Link keyed-at "data".
See issue #5395'
library: rest_framework
meta: {}
name: data
title: 'Simple filter to access `data` attribute of object,
specifically coreapi.Document.'
- body: ''
library: rest_framework
meta: {}
name: schema_links
title: Recursively find every link in a schema, even nested.
- body: ''
library: rest_framework
meta: {}
name: add_nested_class
title: ''
- body: ''
library: rest_framework
meta: {}
name: break_long_headers
title: 'Breaks headers longer than 160 characters (~page length)
when possible (are comma separated)'
- body: This only makes sense within a {% localtime off %} block.
library: tz
meta: {}
name: localtime
title: Convert a datetime to local time in the active time zone.
- body: ''
library: tz
meta: {}
name: utc
title: Convert a datetime to UTC.
- body: 'The argument must be an instance of a tzinfo subclass or a time zone name.
Naive datetimes are assumed to be in local time in the default time zone.'
library: tz
meta: {}
name: timezone
title: Convert a datetime to local time in a given time zone.
- body: 'Example output:
* Safari on iPhone
* Chrome on Windows 8.1
* Safari on macOS
* Firefox
* Linux
* None'
library: user_sessions
meta: {}
name: device
title: Transform a User Agent into human readable text.
- body: 'Example output:
* Zwolle, The Netherlands
* The Netherlands
* None'
library: user_sessions
meta: {}
name: location
title: Transform an IP address into an approximate location.

View File

@ -0,0 +1,990 @@
{
"global": {
"SERVER_RESTART_REQUIRED": {
"name": "Restart required",
"description": "A setting has been changed which requires a server restart",
"default": "False",
"units": ""
},
"_PENDING_MIGRATIONS": {
"name": "Pending migrations",
"description": "Number of pending database migrations",
"default": "0",
"units": ""
},
"INVENTREE_INSTANCE": {
"name": "Server Instance Name",
"description": "String descriptor for the server instance",
"default": "InvenTree",
"units": ""
},
"INVENTREE_INSTANCE_TITLE": {
"name": "Use instance name",
"description": "Use the instance name in the title-bar",
"default": "False",
"units": ""
},
"INVENTREE_RESTRICT_ABOUT": {
"name": "Restrict showing `about`",
"description": "Show the `about` modal only to superusers",
"default": "False",
"units": ""
},
"INVENTREE_COMPANY_NAME": {
"name": "Company name",
"description": "Internal company name",
"default": "My company name",
"units": ""
},
"INVENTREE_BASE_URL": {
"name": "Base URL",
"description": "Base URL for server instance",
"default": "",
"units": ""
},
"INVENTREE_DEFAULT_CURRENCY": {
"name": "Default Currency",
"description": "Select base currency for pricing calculations",
"default": "USD",
"units": ""
},
"CURRENCY_CODES": {
"name": "Supported Currencies",
"description": "List of supported currency codes",
"default": "AUD,CAD,CNY,EUR,GBP,JPY,NZD,USD",
"units": ""
},
"CURRENCY_UPDATE_INTERVAL": {
"name": "Currency Update Interval",
"description": "How often to update exchange rates (set to zero to disable)",
"default": "1",
"units": "days"
},
"CURRENCY_UPDATE_PLUGIN": {
"name": "Currency Update Plugin",
"description": "Currency update plugin to use",
"default": "inventreecurrencyexchange",
"units": ""
},
"INVENTREE_DOWNLOAD_FROM_URL": {
"name": "Download from URL",
"description": "Allow download of remote images and files from external URL",
"default": "False",
"units": ""
},
"INVENTREE_DOWNLOAD_IMAGE_MAX_SIZE": {
"name": "Download Size Limit",
"description": "Maximum allowable download size for remote image",
"default": "1",
"units": "MB"
},
"INVENTREE_DOWNLOAD_FROM_URL_USER_AGENT": {
"name": "User-agent used to download from URL",
"description": "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)",
"default": "",
"units": ""
},
"INVENTREE_STRICT_URLS": {
"name": "Strict URL Validation",
"description": "Require schema specification when validating URLs",
"default": "True",
"units": ""
},
"INVENTREE_UPDATE_CHECK_INTERVAL": {
"name": "Update Check Interval",
"description": "How often to check for updates (set to zero to disable)",
"default": "7",
"units": "days"
},
"INVENTREE_BACKUP_ENABLE": {
"name": "Automatic Backup",
"description": "Enable automatic backup of database and media files",
"default": "False",
"units": ""
},
"INVENTREE_BACKUP_DAYS": {
"name": "Auto Backup Interval",
"description": "Specify number of days between automated backup events",
"default": "1",
"units": "days"
},
"INVENTREE_DELETE_TASKS_DAYS": {
"name": "Task Deletion Interval",
"description": "Background task results will be deleted after specified number of days",
"default": "30",
"units": "days"
},
"INVENTREE_DELETE_ERRORS_DAYS": {
"name": "Error Log Deletion Interval",
"description": "Error logs will be deleted after specified number of days",
"default": "30",
"units": "days"
},
"INVENTREE_DELETE_NOTIFICATIONS_DAYS": {
"name": "Notification Deletion Interval",
"description": "User notifications will be deleted after specified number of days",
"default": "30",
"units": "days"
},
"BARCODE_ENABLE": {
"name": "Barcode Support",
"description": "Enable barcode scanner support in the web interface",
"default": "True",
"units": ""
},
"BARCODE_STORE_RESULTS": {
"name": "Store Barcode Results",
"description": "Store barcode scan results in the database",
"default": "False",
"units": ""
},
"BARCODE_RESULTS_MAX_NUM": {
"name": "Barcode Scans Maximum Count",
"description": "Maximum number of barcode scan results to store",
"default": "100",
"units": ""
},
"BARCODE_INPUT_DELAY": {
"name": "Barcode Input Delay",
"description": "Barcode input processing delay time",
"default": "50",
"units": "ms"
},
"BARCODE_WEBCAM_SUPPORT": {
"name": "Barcode Webcam Support",
"description": "Allow barcode scanning via webcam in browser",
"default": "True",
"units": ""
},
"BARCODE_SHOW_TEXT": {
"name": "Barcode Show Data",
"description": "Display barcode data in browser as text",
"default": "False",
"units": ""
},
"BARCODE_GENERATION_PLUGIN": {
"name": "Barcode Generation Plugin",
"description": "Plugin to use for internal barcode data generation",
"default": "inventreebarcode",
"units": ""
},
"PART_ENABLE_REVISION": {
"name": "Part Revisions",
"description": "Enable revision field for Part",
"default": "True",
"units": ""
},
"PART_REVISION_ASSEMBLY_ONLY": {
"name": "Assembly Revision Only",
"description": "Only allow revisions for assembly parts",
"default": "False",
"units": ""
},
"PART_ALLOW_DELETE_FROM_ASSEMBLY": {
"name": "Allow Deletion from Assembly",
"description": "Allow deletion of parts which are used in an assembly",
"default": "False",
"units": ""
},
"PART_IPN_REGEX": {
"name": "IPN Regex",
"description": "Regular expression pattern for matching Part IPN",
"default": "",
"units": ""
},
"PART_ALLOW_DUPLICATE_IPN": {
"name": "Allow Duplicate IPN",
"description": "Allow multiple parts to share the same IPN",
"default": "True",
"units": ""
},
"PART_ALLOW_EDIT_IPN": {
"name": "Allow Editing IPN",
"description": "Allow changing the IPN value while editing a part",
"default": "True",
"units": ""
},
"PART_COPY_BOM": {
"name": "Copy Part BOM Data",
"description": "Copy BOM data by default when duplicating a part",
"default": "True",
"units": ""
},
"PART_COPY_PARAMETERS": {
"name": "Copy Part Parameter Data",
"description": "Copy parameter data by default when duplicating a part",
"default": "True",
"units": ""
},
"PART_COPY_TESTS": {
"name": "Copy Part Test Data",
"description": "Copy test data by default when duplicating a part",
"default": "True",
"units": ""
},
"PART_CATEGORY_PARAMETERS": {
"name": "Copy Category Parameter Templates",
"description": "Copy category parameter templates when creating a part",
"default": "True",
"units": ""
},
"PART_TEMPLATE": {
"name": "Template",
"description": "Parts are templates by default",
"default": "False",
"units": ""
},
"PART_ASSEMBLY": {
"name": "Assembly",
"description": "Parts can be assembled from other components by default",
"default": "False",
"units": ""
},
"PART_COMPONENT": {
"name": "Component",
"description": "Parts can be used as sub-components by default",
"default": "True",
"units": ""
},
"PART_PURCHASEABLE": {
"name": "Purchaseable",
"description": "Parts are purchaseable by default",
"default": "True",
"units": ""
},
"PART_SALABLE": {
"name": "Salable",
"description": "Parts are salable by default",
"default": "False",
"units": ""
},
"PART_TRACKABLE": {
"name": "Trackable",
"description": "Parts are trackable by default",
"default": "False",
"units": ""
},
"PART_VIRTUAL": {
"name": "Virtual",
"description": "Parts are virtual by default",
"default": "False",
"units": ""
},
"PART_SHOW_IMPORT": {
"name": "Show Import in Views",
"description": "Display the import wizard in some part views",
"default": "False",
"units": ""
},
"PART_SHOW_RELATED": {
"name": "Show related parts",
"description": "Display related parts for a part",
"default": "True",
"units": ""
},
"PART_CREATE_INITIAL": {
"name": "Initial Stock Data",
"description": "Allow creation of initial stock when adding a new part",
"default": "False",
"units": ""
},
"PART_CREATE_SUPPLIER": {
"name": "Initial Supplier Data",
"description": "Allow creation of initial supplier data when adding a new part",
"default": "True",
"units": ""
},
"PART_NAME_FORMAT": {
"name": "Part Name Display Format",
"description": "Format to display the part name",
"default": "{{ part.IPN if part.IPN }}{{ ' | ' if part.IPN }}{{ part.name }}{{ ' | ' if part.revision }}{{ part.revision if part.revision }}",
"units": ""
},
"PART_CATEGORY_DEFAULT_ICON": {
"name": "Part Category Default Icon",
"description": "Part category default icon (empty means no icon)",
"default": "",
"units": ""
},
"PART_PARAMETER_ENFORCE_UNITS": {
"name": "Enforce Parameter Units",
"description": "If units are provided, parameter values must match the specified units",
"default": "True",
"units": ""
},
"PRICING_DECIMAL_PLACES_MIN": {
"name": "Minimum Pricing Decimal Places",
"description": "Minimum number of decimal places to display when rendering pricing data",
"default": "0",
"units": ""
},
"PRICING_DECIMAL_PLACES": {
"name": "Maximum Pricing Decimal Places",
"description": "Maximum number of decimal places to display when rendering pricing data",
"default": "6",
"units": ""
},
"PRICING_USE_SUPPLIER_PRICING": {
"name": "Use Supplier Pricing",
"description": "Include supplier price breaks in overall pricing calculations",
"default": "True",
"units": ""
},
"PRICING_PURCHASE_HISTORY_OVERRIDES_SUPPLIER": {
"name": "Purchase History Override",
"description": "Historical purchase order pricing overrides supplier price breaks",
"default": "False",
"units": ""
},
"PRICING_USE_STOCK_PRICING": {
"name": "Use Stock Item Pricing",
"description": "Use pricing from manually entered stock data for pricing calculations",
"default": "True",
"units": ""
},
"PRICING_STOCK_ITEM_AGE_DAYS": {
"name": "Stock Item Pricing Age",
"description": "Exclude stock items older than this number of days from pricing calculations",
"default": "0",
"units": "days"
},
"PRICING_USE_VARIANT_PRICING": {
"name": "Use Variant Pricing",
"description": "Include variant pricing in overall pricing calculations",
"default": "True",
"units": ""
},
"PRICING_ACTIVE_VARIANTS": {
"name": "Active Variants Only",
"description": "Only use active variant parts for calculating variant pricing",
"default": "False",
"units": ""
},
"PRICING_UPDATE_DAYS": {
"name": "Pricing Rebuild Interval",
"description": "Number of days before part pricing is automatically updated",
"default": "30",
"units": "days"
},
"PART_INTERNAL_PRICE": {
"name": "Internal Prices",
"description": "Enable internal prices for parts",
"default": "False",
"units": ""
},
"PART_BOM_USE_INTERNAL_PRICE": {
"name": "Internal Price Override",
"description": "If available, internal prices override price range calculations",
"default": "False",
"units": ""
},
"LABEL_ENABLE": {
"name": "Enable label printing",
"description": "Enable label printing from the web interface",
"default": "True",
"units": ""
},
"LABEL_DPI": {
"name": "Label Image DPI",
"description": "DPI resolution when generating image files to supply to label printing plugins",
"default": "300",
"units": ""
},
"REPORT_ENABLE": {
"name": "Enable Reports",
"description": "Enable generation of reports",
"default": "False",
"units": ""
},
"REPORT_DEBUG_MODE": {
"name": "Debug Mode",
"description": "Generate reports in debug mode (HTML output)",
"default": "False",
"units": ""
},
"REPORT_LOG_ERRORS": {
"name": "Log Report Errors",
"description": "Log errors which occur when generating reports",
"default": "False",
"units": ""
},
"REPORT_DEFAULT_PAGE_SIZE": {
"name": "Page Size",
"description": "Default page size for PDF reports",
"default": "A4",
"units": ""
},
"SERIAL_NUMBER_GLOBALLY_UNIQUE": {
"name": "Globally Unique Serials",
"description": "Serial numbers for stock items must be globally unique",
"default": "False",
"units": ""
},
"SERIAL_NUMBER_AUTOFILL": {
"name": "Autofill Serial Numbers",
"description": "Autofill serial numbers in forms",
"default": "False",
"units": ""
},
"STOCK_DELETE_DEPLETED_DEFAULT": {
"name": "Delete Depleted Stock",
"description": "Determines default behavior when a stock item is depleted",
"default": "True",
"units": ""
},
"STOCK_BATCH_CODE_TEMPLATE": {
"name": "Batch Code Template",
"description": "Template for generating default batch codes for stock items",
"default": "",
"units": ""
},
"STOCK_ENABLE_EXPIRY": {
"name": "Stock Expiry",
"description": "Enable stock expiry functionality",
"default": "False",
"units": ""
},
"STOCK_ALLOW_EXPIRED_SALE": {
"name": "Sell Expired Stock",
"description": "Allow sale of expired stock",
"default": "False",
"units": ""
},
"STOCK_STALE_DAYS": {
"name": "Stock Stale Time",
"description": "Number of days stock items are considered stale before expiring",
"default": "0",
"units": "days"
},
"STOCK_ALLOW_EXPIRED_BUILD": {
"name": "Build Expired Stock",
"description": "Allow building with expired stock",
"default": "False",
"units": ""
},
"STOCK_OWNERSHIP_CONTROL": {
"name": "Stock Ownership Control",
"description": "Enable ownership control over stock locations and items",
"default": "False",
"units": ""
},
"STOCK_LOCATION_DEFAULT_ICON": {
"name": "Stock Location Default Icon",
"description": "Stock location default icon (empty means no icon)",
"default": "",
"units": ""
},
"STOCK_SHOW_INSTALLED_ITEMS": {
"name": "Show Installed Stock Items",
"description": "Display installed stock items in stock tables",
"default": "False",
"units": ""
},
"STOCK_ENFORCE_BOM_INSTALLATION": {
"name": "Check BOM when installing items",
"description": "Installed stock items must exist in the BOM for the parent part",
"default": "True",
"units": ""
},
"STOCK_ALLOW_OUT_OF_STOCK_TRANSFER": {
"name": "Allow Out of Stock Transfer",
"description": "Allow stock items which are not in stock to be transferred between stock locations",
"default": "False",
"units": ""
},
"BUILDORDER_REFERENCE_PATTERN": {
"name": "Build Order Reference Pattern",
"description": "Required pattern for generating Build Order reference field",
"default": "BO-{ref:04d}",
"units": ""
},
"BUILDORDER_REQUIRE_RESPONSIBLE": {
"name": "Require Responsible Owner",
"description": "A responsible owner must be assigned to each order",
"default": "False",
"units": ""
},
"BUILDORDER_REQUIRE_ACTIVE_PART": {
"name": "Require Active Part",
"description": "Prevent build order creation for inactive parts",
"default": "False",
"units": ""
},
"BUILDORDER_REQUIRE_LOCKED_PART": {
"name": "Require Locked Part",
"description": "Prevent build order creation for unlocked parts",
"default": "False",
"units": ""
},
"BUILDORDER_REQUIRE_VALID_BOM": {
"name": "Require Valid BOM",
"description": "Prevent build order creation unless BOM has been validated",
"default": "False",
"units": ""
},
"BUILDORDER_REQUIRE_CLOSED_CHILDS": {
"name": "Require Closed Child Orders",
"description": "Prevent build order completion until all child orders are closed",
"default": "False",
"units": ""
},
"PREVENT_BUILD_COMPLETION_HAVING_INCOMPLETED_TESTS": {
"name": "Block Until Tests Pass",
"description": "Prevent build outputs from being completed until all required tests pass",
"default": "False",
"units": ""
},
"RETURNORDER_ENABLED": {
"name": "Enable Return Orders",
"description": "Enable return order functionality in the user interface",
"default": "False",
"units": ""
},
"RETURNORDER_REFERENCE_PATTERN": {
"name": "Return Order Reference Pattern",
"description": "Required pattern for generating Return Order reference field",
"default": "RMA-{ref:04d}",
"units": ""
},
"RETURNORDER_REQUIRE_RESPONSIBLE": {
"name": "Require Responsible Owner",
"description": "A responsible owner must be assigned to each order",
"default": "False",
"units": ""
},
"RETURNORDER_EDIT_COMPLETED_ORDERS": {
"name": "Edit Completed Return Orders",
"description": "Allow editing of return orders after they have been completed",
"default": "False",
"units": ""
},
"SALESORDER_REFERENCE_PATTERN": {
"name": "Sales Order Reference Pattern",
"description": "Required pattern for generating Sales Order reference field",
"default": "SO-{ref:04d}",
"units": ""
},
"SALESORDER_REQUIRE_RESPONSIBLE": {
"name": "Require Responsible Owner",
"description": "A responsible owner must be assigned to each order",
"default": "False",
"units": ""
},
"SALESORDER_DEFAULT_SHIPMENT": {
"name": "Sales Order Default Shipment",
"description": "Enable creation of default shipment with sales orders",
"default": "False",
"units": ""
},
"SALESORDER_EDIT_COMPLETED_ORDERS": {
"name": "Edit Completed Sales Orders",
"description": "Allow editing of sales orders after they have been shipped or completed",
"default": "False",
"units": ""
},
"SALESORDER_SHIP_COMPLETE": {
"name": "Mark Shipped Orders as Complete",
"description": "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status",
"default": "False",
"units": ""
},
"PURCHASEORDER_REFERENCE_PATTERN": {
"name": "Purchase Order Reference Pattern",
"description": "Required pattern for generating Purchase Order reference field",
"default": "PO-{ref:04d}",
"units": ""
},
"PURCHASEORDER_REQUIRE_RESPONSIBLE": {
"name": "Require Responsible Owner",
"description": "A responsible owner must be assigned to each order",
"default": "False",
"units": ""
},
"PURCHASEORDER_EDIT_COMPLETED_ORDERS": {
"name": "Edit Completed Purchase Orders",
"description": "Allow editing of purchase orders after they have been shipped or completed",
"default": "False",
"units": ""
},
"PURCHASEORDER_AUTO_COMPLETE": {
"name": "Auto Complete Purchase Orders",
"description": "Automatically mark purchase orders as complete when all line items are received",
"default": "True",
"units": ""
},
"LOGIN_ENABLE_PWD_FORGOT": {
"name": "Enable password forgot",
"description": "Enable password forgot function on the login pages",
"default": "True",
"units": ""
},
"LOGIN_ENABLE_REG": {
"name": "Enable registration",
"description": "Enable self-registration for users on the login pages",
"default": "False",
"units": ""
},
"LOGIN_ENABLE_SSO": {
"name": "Enable SSO",
"description": "Enable SSO on the login pages",
"default": "False",
"units": ""
},
"LOGIN_ENABLE_SSO_REG": {
"name": "Enable SSO registration",
"description": "Enable self-registration via SSO for users on the login pages",
"default": "False",
"units": ""
},
"LOGIN_ENABLE_SSO_GROUP_SYNC": {
"name": "Enable SSO group sync",
"description": "Enable synchronizing InvenTree groups with groups provided by the IdP",
"default": "False",
"units": ""
},
"SSO_GROUP_KEY": {
"name": "SSO group key",
"description": "The name of the groups claim attribute provided by the IdP",
"default": "groups",
"units": ""
},
"SSO_GROUP_MAP": {
"name": "SSO group map",
"description": "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created.",
"default": "{}",
"units": ""
},
"SSO_REMOVE_GROUPS": {
"name": "Remove groups outside of SSO",
"description": "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues",
"default": "True",
"units": ""
},
"LOGIN_MAIL_REQUIRED": {
"name": "Email required",
"description": "Require user to supply mail on signup",
"default": "False",
"units": ""
},
"LOGIN_SIGNUP_SSO_AUTO": {
"name": "Auto-fill SSO users",
"description": "Automatically fill out user-details from SSO account-data",
"default": "True",
"units": ""
},
"LOGIN_SIGNUP_MAIL_TWICE": {
"name": "Mail twice",
"description": "On signup ask users twice for their mail",
"default": "False",
"units": ""
},
"LOGIN_SIGNUP_PWD_TWICE": {
"name": "Password twice",
"description": "On signup ask users twice for their password",
"default": "True",
"units": ""
},
"LOGIN_SIGNUP_MAIL_RESTRICTION": {
"name": "Allowed domains",
"description": "Restrict signup to certain domains (comma-separated, starting with @)",
"default": "",
"units": ""
},
"SIGNUP_GROUP": {
"name": "Group on signup",
"description": "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP.",
"default": "",
"units": ""
},
"LOGIN_ENFORCE_MFA": {
"name": "Enforce MFA",
"description": "Users must use multifactor security.",
"default": "False",
"units": ""
},
"PLUGIN_ON_STARTUP": {
"name": "Check plugins on startup",
"description": "Check that all plugins are installed on startup - enable in container environments",
"default": "False",
"units": ""
},
"PLUGIN_UPDATE_CHECK": {
"name": "Check for plugin updates",
"description": "Enable periodic checks for updates to installed plugins",
"default": "True",
"units": ""
},
"ENABLE_PLUGINS_URL": {
"name": "Enable URL integration",
"description": "Enable plugins to add URL routes",
"default": "False",
"units": ""
},
"ENABLE_PLUGINS_NAVIGATION": {
"name": "Enable navigation integration",
"description": "Enable plugins to integrate into navigation",
"default": "False",
"units": ""
},
"ENABLE_PLUGINS_APP": {
"name": "Enable app integration",
"description": "Enable plugins to add apps",
"default": "False",
"units": ""
},
"ENABLE_PLUGINS_SCHEDULE": {
"name": "Enable schedule integration",
"description": "Enable plugins to run scheduled tasks",
"default": "False",
"units": ""
},
"ENABLE_PLUGINS_EVENTS": {
"name": "Enable event integration",
"description": "Enable plugins to respond to internal events",
"default": "False",
"units": ""
},
"ENABLE_PLUGINS_INTERFACE": {
"name": "Enable interface integration",
"description": "Enable plugins to integrate into the user interface",
"default": "False",
"units": ""
},
"PROJECT_CODES_ENABLED": {
"name": "Enable project codes",
"description": "Enable project codes for tracking projects",
"default": "False",
"units": ""
},
"STOCKTAKE_ENABLE": {
"name": "Stocktake Functionality",
"description": "Enable stocktake functionality for recording stock levels and calculating stock value",
"default": "False",
"units": ""
},
"STOCKTAKE_EXCLUDE_EXTERNAL": {
"name": "Exclude External Locations",
"description": "Exclude stock items in external locations from stocktake calculations",
"default": "False",
"units": ""
},
"STOCKTAKE_AUTO_DAYS": {
"name": "Automatic Stocktake Period",
"description": "Number of days between automatic stocktake recording (set to zero to disable)",
"default": "0",
"units": ""
},
"STOCKTAKE_DELETE_REPORT_DAYS": {
"name": "Report Deletion Interval",
"description": "Stocktake reports will be deleted after specified number of days",
"default": "30",
"units": "days"
},
"DISPLAY_FULL_NAMES": {
"name": "Display Users full names",
"description": "Display Users full names instead of usernames",
"default": "False",
"units": ""
},
"TEST_STATION_DATA": {
"name": "Enable Test Station Data",
"description": "Enable test station data collection for test results",
"default": "False",
"units": ""
},
"TEST_UPLOAD_CREATE_TEMPLATE": {
"name": "Create Template on Upload",
"description": "Create a new test template when uploading test data which does not match an existing template",
"default": "True",
"units": ""
}
},
"user": {
"LABEL_INLINE": {
"name": "Inline label display",
"description": "Display PDF labels in the browser, instead of downloading as a file",
"default": "True",
"units": ""
},
"LABEL_DEFAULT_PRINTER": {
"name": "Default label printer",
"description": "Configure which label printer should be selected by default",
"default": "",
"units": ""
},
"REPORT_INLINE": {
"name": "Inline report display",
"description": "Display PDF reports in the browser, instead of downloading as a file",
"default": "False",
"units": ""
},
"SEARCH_PREVIEW_SHOW_PARTS": {
"name": "Search Parts",
"description": "Display parts in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_SUPPLIER_PARTS": {
"name": "Search Supplier Parts",
"description": "Display supplier parts in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_MANUFACTURER_PARTS": {
"name": "Search Manufacturer Parts",
"description": "Display manufacturer parts in search preview window",
"default": "True",
"units": ""
},
"SEARCH_HIDE_INACTIVE_PARTS": {
"name": "Hide Inactive Parts",
"description": "Excluded inactive parts from search preview window",
"default": "False",
"units": ""
},
"SEARCH_PREVIEW_SHOW_CATEGORIES": {
"name": "Search Categories",
"description": "Display part categories in search preview window",
"default": "False",
"units": ""
},
"SEARCH_PREVIEW_SHOW_STOCK": {
"name": "Search Stock",
"description": "Display stock items in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_HIDE_UNAVAILABLE_STOCK": {
"name": "Hide Unavailable Stock Items",
"description": "Exclude stock items which are not available from the search preview window",
"default": "False",
"units": ""
},
"SEARCH_PREVIEW_SHOW_LOCATIONS": {
"name": "Search Locations",
"description": "Display stock locations in search preview window",
"default": "False",
"units": ""
},
"SEARCH_PREVIEW_SHOW_COMPANIES": {
"name": "Search Companies",
"description": "Display companies in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_BUILD_ORDERS": {
"name": "Search Build Orders",
"description": "Display build orders in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_PURCHASE_ORDERS": {
"name": "Search Purchase Orders",
"description": "Display purchase orders in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_EXCLUDE_INACTIVE_PURCHASE_ORDERS": {
"name": "Exclude Inactive Purchase Orders",
"description": "Exclude inactive purchase orders from search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_SALES_ORDERS": {
"name": "Search Sales Orders",
"description": "Display sales orders in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_EXCLUDE_INACTIVE_SALES_ORDERS": {
"name": "Exclude Inactive Sales Orders",
"description": "Exclude inactive sales orders from search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_SHOW_RETURN_ORDERS": {
"name": "Search Return Orders",
"description": "Display return orders in search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_EXCLUDE_INACTIVE_RETURN_ORDERS": {
"name": "Exclude Inactive Return Orders",
"description": "Exclude inactive return orders from search preview window",
"default": "True",
"units": ""
},
"SEARCH_PREVIEW_RESULTS": {
"name": "Search Preview Results",
"description": "Number of results to show in each section of the search preview window",
"default": "10",
"units": ""
},
"SEARCH_REGEX": {
"name": "Regex Search",
"description": "Enable regular expressions in search queries",
"default": "False",
"units": ""
},
"SEARCH_WHOLE": {
"name": "Whole Word Search",
"description": "Search queries return results for whole word matches",
"default": "False",
"units": ""
},
"PART_SHOW_QUANTITY_IN_FORMS": {
"name": "Show Quantity in Forms",
"description": "Display available part quantity in some forms",
"default": "True",
"units": ""
},
"FORMS_CLOSE_USING_ESCAPE": {
"name": "Escape Key Closes Forms",
"description": "Use the escape key to close modal forms",
"default": "False",
"units": ""
},
"STICKY_HEADER": {
"name": "Fixed Navbar",
"description": "The navbar position is fixed to the top of the screen",
"default": "False",
"units": ""
},
"DATE_DISPLAY_FORMAT": {
"name": "Date Format",
"description": "Preferred format for displaying dates",
"default": "YYYY-MM-DD",
"units": ""
},
"DISPLAY_SCHEDULE_TAB": {
"name": "Part Scheduling",
"description": "Display part scheduling information",
"default": "True",
"units": ""
},
"DISPLAY_STOCKTAKE_TAB": {
"name": "Part Stocktake",
"description": "Display part stocktake information (if stocktake functionality is enabled)",
"default": "True",
"units": ""
},
"TABLE_STRING_MAX_LENGTH": {
"name": "Table String Length",
"description": "Maximum length limit for strings displayed in table views",
"default": "100",
"units": ""
},
"NOTIFICATION_ERROR_REPORT": {
"name": "Receive error reports",
"description": "Receive notifications for system errors",
"default": "True",
"units": ""
},
"LAST_USED_PRINTING_MACHINES": {
"name": "Last used printing machines",
"description": "Save the last used printing machines for a user",
"default": "",
"units": ""
}
}
}

File diff suppressed because it is too large Load Diff