diff --git a/.docker/partdb-entrypoint.sh b/.docker/partdb-entrypoint.sh index 5bfc6b48..ffd2b24a 100644 --- a/.docker/partdb-entrypoint.sh +++ b/.docker/partdb-entrypoint.sh @@ -42,6 +42,48 @@ fi # Start PHP-FPM (the PHP_VERSION is replaced by the configured version in the Dockerfile) service phpPHP_VERSION-fpm start + +# Run migrations if automigration is enabled via env variable DB_AUTOMIGRATE +if [ "$DB_AUTOMIGRATE" = "true" ]; then + echo "Waiting for database to be ready..." + ATTEMPTS_LEFT_TO_REACH_DATABASE=60 + until [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ] || DATABASE_ERROR=$(sudo -E -u www-data php bin/console dbal:run-sql -q "SELECT 1" 2>&1); do + if [ $? -eq 255 ]; then + # If the Doctrine command exits with 255, an unrecoverable error occurred + ATTEMPTS_LEFT_TO_REACH_DATABASE=0 + break + fi + sleep 1 + ATTEMPTS_LEFT_TO_REACH_DATABASE=$((ATTEMPTS_LEFT_TO_REACH_DATABASE - 1)) + echo "Still waiting for database to be ready... Or maybe the database is not reachable. $ATTEMPTS_LEFT_TO_REACH_DATABASE attempts left." + done + + if [ $ATTEMPTS_LEFT_TO_REACH_DATABASE -eq 0 ]; then + echo "The database is not up or not reachable:" + echo "$DATABASE_ERROR" + exit 1 + else + echo "The database is now ready and reachable" + fi + + # Check if there are any available migrations to do, by executing doctrine:migrations:up-to-date + # and checking if the exit code is 0 (up to date) or 1 (not up to date) + if sudo -E -u www-data php bin/console doctrine:migrations:up-to-date --no-interaction; then + echo "Database is up to date, no migrations necessary." + else + echo "Migrations available..." + echo "Do backup of database..." + + sudo -E -u www-data mkdir -p /var/www/html/uploads/.automigration-backup/ + # Backup the database + sudo -E -u www-data php bin/console partdb:backup -n --database /var/www/html/uploads/.automigration-backup/backup-$(date +%Y-%m-%d_%H-%M-%S).zip + + # Check if there are any migration files + sudo -E -u www-data php bin/console doctrine:migrations:migrate --no-interaction + fi + +fi + # first arg is `-f` or `--some-option` (taken from https://github.com/docker-library/php/blob/master/8.2/bullseye/apache/docker-php-entrypoint) if [ "${1#-}" != "$1" ]; then set -- apache2-foreground "$@" diff --git a/.docker/symfony.conf b/.docker/symfony.conf index 5788a630..b5229bf6 100644 --- a/.docker/symfony.conf +++ b/.docker/symfony.conf @@ -44,6 +44,8 @@ PassEnv PROVIDER_MOUSER_KEY PROVIDER_MOUSER_SEARCH_OPTION PROVIDER_MOUSER_SEARCH_LIMIT PROVIDER_MOUSER_SEARCH_WITH_SIGNUP_LANGUAGE PassEnv PROVIDER_LCSC_ENABLED PROVIDER_LCSC_CURRENCY PassEnv PROVIDER_OEMSECRETS_KEY PROVIDER_OEMSECRETS_COUNTRY_CODE PROVIDER_OEMSECRETS_CURRENCY PROVIDER_OEMSECRETS_ZERO_PRICE PROVIDER_OEMSECRETS_SET_PARAM PROVIDER_OEMSECRETS_SORT_CRITERIA + PassEnv PROVIDER_REICHELT_ENABLED PROVIDER_REICHELT_CURRENCY PROVIDER_REICHELT_COUNTRY PROVIDER_REICHELT_LANGUAGE PROVIDER_REICHELT_INCLUDE_VAT + PassEnv PROVIDER_POLLIN_ENABLED PassEnv EDA_KICAD_CATEGORY_DEPTH # For most configuration files from conf-available/, which are diff --git a/.env b/.env index ce2a6b03..1806e9c6 100644 --- a/.env +++ b/.env @@ -143,7 +143,8 @@ PROVIDER_TME_CURRENCY=EUR PROVIDER_TME_LANGUAGE=en # The country to get results for PROVIDER_TME_COUNTRY=DE -# Set this to 1 to get gross prices (including VAT) instead of net prices +# [DEPRECATED] Set this to 1 to get gross prices (including VAT) instead of net prices +# With private API keys, this option cannot be used anymore is ignored by Part-DB. The VAT inclusion depends on your TME account settings. PROVIDER_TME_GET_GROSS_PRICES=1 # Octopart / Nexar Provider: @@ -215,6 +216,27 @@ PROVIDER_OEMSECRETS_SET_PARAM=1 #If unset or set to any other value, no sorting is performed. PROVIDER_OEMSECRETS_SORT_CRITERIA=C + +# Reichelt provider: +# Reichelt.com offers no official API, so this info provider webscrapes the website to extract info +# It could break at any time, use it at your own risk +# We dont require an API key for Reichelt, just set this to 1 to enable Reichelt support +PROVIDER_REICHELT_ENABLED=0 +# The country to get prices for +PROVIDER_REICHELT_COUNTRY=DE +# The language to get results in (en, de, fr, nl, pl, it, es) +PROVIDER_REICHELT_LANGUAGE=en +# Include VAT in prices (set to 1 to include VAT, 0 to exclude VAT) +PROVIDER_REICHELT_INCLUDE_VAT=1 +# The currency to get prices in (only for countries with countries other than EUR) +PROVIDER_REICHELT_CURRENCY=EUR + +# Pollin provider: +# Pollin.de offers no official API, so this info provider webscrapes the website to extract info +# It could break at any time, use it at your own risk +# We dont require an API key for Pollin, just set this to 1 to enable Pollin support +PROVIDER_POLLIN_ENABLED=0 + ################################################################################## # EDA integration related settings ################################################################################## diff --git a/assets/tomselect/extend_existing_selection/extend_existing_selection.js b/.env.dev similarity index 100% rename from assets/tomselect/extend_existing_selection/extend_existing_selection.js rename to .env.dev diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 62bdc123..8e6ea54c 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: false matrix: - php-versions: [ '8.1', '8.2', '8.3' ] + php-versions: [ '8.1', '8.2', '8.3', '8.4' ] db-type: [ 'mysql', 'sqlite', 'postgres' ] env: @@ -126,7 +126,7 @@ jobs: run: ./bin/phpunit --coverage-clover=coverage.xml - name: Upload coverage - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v5 with: env_vars: PHP_VERSION,DB_TYPE token: ${{ secrets.CODECOV_TOKEN }} diff --git a/Dockerfile b/Dockerfile index 15049166..0f909f16 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ ARG BASE_IMAGE=debian:bookworm-slim -ARG PHP_VERSION=8.2 +ARG PHP_VERSION=8.3 FROM ${BASE_IMAGE} AS base ARG PHP_VERSION @@ -125,6 +125,7 @@ upload_max_filesize=256M post_max_size=300M opcache.preload_user=www-data opcache.preload=/var/www/html/config/preload.php +log_limit=8096 EOF COPY ./.docker/symfony.conf /etc/apache2/sites-available/symfony.conf diff --git a/VERSION b/VERSION index 4ea8ad87..511a76e6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.14.3 +1.17.1 diff --git a/assets/ckeditor/plugins/PartDBLabel/PartDBLabelUI.js b/assets/ckeditor/plugins/PartDBLabel/PartDBLabelUI.js index aa29e889..37e1dcbe 100644 --- a/assets/ckeditor/plugins/PartDBLabel/PartDBLabelUI.js +++ b/assets/ckeditor/plugins/PartDBLabel/PartDBLabelUI.js @@ -128,6 +128,8 @@ const PLACEHOLDERS = [ ['[[BARCODE_QR]]', 'QR code linking to this element'], ['[[BARCODE_C128]]', 'Code 128 barcode linking to this element'], ['[[BARCODE_C39]]', 'Code 39 barcode linking to this element'], + ['[[BARCODE_C93]]', 'Code 93 barcode linking to this element'], + ['[[BARCODE_DATAMATRIX]]', 'Datamatrix code linking to this element'], ] }, { diff --git a/assets/ckeditor/plugins/PartDBLabel/lang/de.js b/assets/ckeditor/plugins/PartDBLabel/lang/de.js index 2220cc0b..748b1607 100644 --- a/assets/ckeditor/plugins/PartDBLabel/lang/de.js +++ b/assets/ckeditor/plugins/PartDBLabel/lang/de.js @@ -69,6 +69,8 @@ Object.assign( window.CKEDITOR_TRANSLATIONS[ 'de' ].dictionary, { 'QR code linking to this element': 'QR Code verknüpft mit diesem Element', 'Code 128 barcode linking to this element': 'Code 128 Barcode verknüpft mit diesem Element', 'Code 39 barcode linking to this element': 'Code 39 Barcode verknüpft mit diesem Element', + 'Code 93 barcode linking to this element': 'Code 93 Barcode verknüpft mit diesem Element', + 'Datamatrix code linking to this element': 'Datamatrix Code verknüpft mit diesem Element', 'Location ID': 'Lagerort ID', 'Name': 'Name', diff --git a/assets/controllers/elements/attachment_autocomplete_controller.js b/assets/controllers/elements/attachment_autocomplete_controller.js index fe44baee..f8bc301e 100644 --- a/assets/controllers/elements/attachment_autocomplete_controller.js +++ b/assets/controllers/elements/attachment_autocomplete_controller.js @@ -23,6 +23,12 @@ import "tom-select/dist/css/tom-select.bootstrap5.css"; import '../../css/components/tom-select_extensions.css'; import TomSelect from "tom-select"; +import TomSelect_click_to_edit from '../../tomselect/click_to_edit/click_to_edit' +import TomSelect_autoselect_typed from '../../tomselect/autoselect_typed/autoselect_typed' + +TomSelect.define('click_to_edit', TomSelect_click_to_edit) +TomSelect.define('autoselect_typed', TomSelect_autoselect_typed) + export default class extends Controller { _tomSelect; @@ -46,6 +52,12 @@ export default class extends Controller { } return '
' + escape(data.label) + '
'; } + }, + plugins: { + 'autoselect_typed': {}, + 'click_to_edit': {}, + 'clear_button': {}, + "restore_on_backspace": {} } }; diff --git a/assets/controllers/elements/ckeditor_controller.js b/assets/controllers/elements/ckeditor_controller.js index f368324f..079ee2ad 100644 --- a/assets/controllers/elements/ckeditor_controller.js +++ b/assets/controllers/elements/ckeditor_controller.js @@ -53,6 +53,7 @@ export default class extends Controller { const config = { language: language, + licenseKey: "GPL", } const watchdog = new EditorWatchdog(); diff --git a/assets/controllers/elements/static_file_autocomplete_controller.js b/assets/controllers/elements/static_file_autocomplete_controller.js index 57e48824..31ca0314 100644 --- a/assets/controllers/elements/static_file_autocomplete_controller.js +++ b/assets/controllers/elements/static_file_autocomplete_controller.js @@ -23,6 +23,12 @@ import "tom-select/dist/css/tom-select.bootstrap5.css"; import '../../css/components/tom-select_extensions.css'; import TomSelect from "tom-select"; +import TomSelect_click_to_edit from '../../tomselect/click_to_edit/click_to_edit' +import TomSelect_autoselect_typed from '../../tomselect/autoselect_typed/autoselect_typed' + +TomSelect.define('click_to_edit', TomSelect_click_to_edit) +TomSelect.define('autoselect_typed', TomSelect_autoselect_typed) + /** * This is the frontend controller for StaticFileAutocompleteType form element. * Basically it loads a text file from the given url (via data-url) and uses it as a source for the autocomplete. @@ -46,7 +52,13 @@ export default class extends Controller { orderField: 'text', //This a an ugly solution to disable the delimiter parsing of the TomSelect plugin - delimiter: 'VERY_L0NG_D€LIMITER_WHICH_WILL_NEVER_BE_ENCOUNTERED_IN_A_STRING' + delimiter: 'VERY_L0NG_D€LIMITER_WHICH_WILL_NEVER_BE_ENCOUNTERED_IN_A_STRING', + plugins: { + 'autoselect_typed': {}, + 'click_to_edit': {}, + 'clear_button': {}, + 'restore_on_backspace': {} + } }; if (this.element.dataset.url) { diff --git a/assets/controllers/elements/structural_entity_select_controller.js b/assets/controllers/elements/structural_entity_select_controller.js index 4735dd2a..a1114a97 100644 --- a/assets/controllers/elements/structural_entity_select_controller.js +++ b/assets/controllers/elements/structural_entity_select_controller.js @@ -24,6 +24,9 @@ import {Controller} from "@hotwired/stimulus"; import {trans, ENTITY_SELECT_GROUP_NEW_NOT_ADDED_TO_DB} from '../../translator.js' +import TomSelect_autoselect_typed from '../../tomselect/autoselect_typed/autoselect_typed' +TomSelect.define('autoselect_typed', TomSelect_autoselect_typed) + export default class extends Controller { _tomSelect; @@ -37,11 +40,15 @@ export default class extends Controller { const allowAdd = this.element.getAttribute("data-allow-add") === "true"; const addHint = this.element.getAttribute("data-add-hint") ?? ""; + + + let settings = { allowEmptyOption: true, selectOnTab: true, maxOptions: null, create: allowAdd ? this.createItem.bind(this) : false, + createFilter: this.createFilter.bind(this), // This three options allow us to paste element names with commas: (see issue #538) maxItems: 1, @@ -81,8 +88,17 @@ export default class extends Controller { //Add callbacks to update validity onInitialize: this.updateValidity.bind(this), onChange: this.updateValidity.bind(this), + + plugins: { + "autoselect_typed": {}, + } }; + //Add clear button plugin, if an empty option is present + if (this.element.querySelector("option[value='']") !== null) { + settings.plugins["clear_button"] = {}; + } + this._tomSelect = new TomSelect(this.element, settings); //Do not do a sync here as this breaks the initial rendering of the empty option //this._tomSelect.sync(); @@ -113,6 +129,31 @@ export default class extends Controller { }); } + createFilter(input) { + + //Normalize the input (replace spacing around arrows) + if (input.includes("->")) { + const inputs = input.split("->"); + inputs.forEach((value, index) => { + inputs[index] = value.trim(); + }); + input = inputs.join("->"); + } else { + input = input.trim(); + } + + const options = this._tomSelect.options; + //Iterate over all options and check if the input is already present + for (let index in options) { + const option = options[index]; + if (option.path === input) { + return false; + } + } + + return true; + } + updateValidity() { //Mark this input as invalid, if the selected option is disabled diff --git a/assets/controllers/elements/tagsinput_controller.js b/assets/controllers/elements/tagsinput_controller.js index acfcd0fa..1f10c457 100644 --- a/assets/controllers/elements/tagsinput_controller.js +++ b/assets/controllers/elements/tagsinput_controller.js @@ -23,14 +23,21 @@ import "tom-select/dist/css/tom-select.bootstrap5.css"; import '../../css/components/tom-select_extensions.css'; import TomSelect from "tom-select"; +import TomSelect_click_to_edit from '../../tomselect/click_to_edit/click_to_edit' +import TomSelect_autoselect_typed from '../../tomselect/autoselect_typed/autoselect_typed' + +TomSelect.define('click_to_edit', TomSelect_click_to_edit) +TomSelect.define('autoselect_typed', TomSelect_autoselect_typed) + export default class extends Controller { _tomSelect; connect() { let settings = { plugins: { - remove_button:{ - } + remove_button:{}, + 'autoselect_typed': {}, + 'click_to_edit': {}, }, persistent: false, selectOnTab: true, diff --git a/assets/controllers/pages/barcode_scan_controller.js b/assets/controllers/pages/barcode_scan_controller.js index 5f82a39e..368fef43 100644 --- a/assets/controllers/pages/barcode_scan_controller.js +++ b/assets/controllers/pages/barcode_scan_controller.js @@ -20,7 +20,7 @@ import {Controller} from "@hotwired/stimulus"; //import * as ZXing from "@zxing/library"; -import {Html5QrcodeScanner, Html5Qrcode} from "html5-qrcode"; +import {Html5QrcodeScanner, Html5Qrcode} from "@part-db/html5-qrcode"; /* stimulusFetch: 'lazy' */ export default class extends Controller { @@ -50,7 +50,7 @@ export default class extends Controller { }); this._scanner = new Html5QrcodeScanner(this.element.id, { - fps: 2, + fps: 10, qrbox: qrboxFunction, experimentalFeatures: { //This option improves reading quality on android chrome @@ -61,6 +61,11 @@ export default class extends Controller { this._scanner.render(this.onScanSuccess.bind(this)); } + disconnect() { + this._scanner.pause(); + this._scanner.clear(); + } + onScanSuccess(decodedText, decodedResult) { //Put our decoded Text into the input box document.getElementById('scan_dialog_input').value = decodedText; diff --git a/assets/controllers/pages/latex_preview_controller.js b/assets/controllers/pages/latex_preview_controller.js index c836faa6..6113393a 100644 --- a/assets/controllers/pages/latex_preview_controller.js +++ b/assets/controllers/pages/latex_preview_controller.js @@ -25,9 +25,20 @@ import "katex/dist/katex.css"; export default class extends Controller { static targets = ["input", "preview"]; + static values = { + unit: {type: Boolean, default: false} //Render as upstanding (non-italic) text, useful for units + } + updatePreview() { - katex.render(this.inputTarget.value, this.previewTarget, { + let value = ""; + if (this.unitValue) { + value = "\\mathrm{" + this.inputTarget.value + "}"; + } else { + value = this.inputTarget.value; + } + + katex.render(value, this.previewTarget, { throwOnError: false, }); } diff --git a/assets/controllers/pages/parameters_autocomplete_controller.js b/assets/controllers/pages/parameters_autocomplete_controller.js index f6504990..cd82875a 100644 --- a/assets/controllers/pages/parameters_autocomplete_controller.js +++ b/assets/controllers/pages/parameters_autocomplete_controller.js @@ -22,6 +22,13 @@ import TomSelect from "tom-select"; import katex from "katex"; import "katex/dist/katex.css"; + +import TomSelect_click_to_edit from '../../tomselect/click_to_edit/click_to_edit' +import TomSelect_autoselect_typed from '../../tomselect/autoselect_typed/autoselect_typed' + +TomSelect.define('click_to_edit', TomSelect_click_to_edit) +TomSelect.define('autoselect_typed', TomSelect_autoselect_typed) + /* stimulusFetch: 'lazy' */ export default class extends Controller { @@ -53,7 +60,10 @@ export default class extends Controller connect() { const settings = { plugins: { - clear_button:{} + 'autoselect_typed': {}, + 'click_to_edit': {}, + 'clear_button': {}, + 'restore_on_backspace': {} }, persistent: false, maxItems: 1, diff --git a/assets/css/app/helpers.css b/assets/css/app/helpers.css index 2741d667..8e7b6fa3 100644 --- a/assets/css/app/helpers.css +++ b/assets/css/app/helpers.css @@ -111,4 +111,11 @@ ul.structural_link li a:hover { .permission-checkbox:checked { background-color: var(--bs-success); border-color: var(--bs-success); +} + +/*********************************************** + * Katex rendering with same height as text + ***********************************************/ +.katex-same-height-as-text .katex { + font-size: 1.0em; } \ No newline at end of file diff --git a/assets/css/components/ckeditor.css b/assets/css/components/ckeditor.css index f8a682a2..d6b3def4 100644 --- a/assets/css/components/ckeditor.css +++ b/assets/css/components/ckeditor.css @@ -24,9 +24,8 @@ /** Should be the same settings, as in label_style.css */ .ck-html-label .ck-content { font-family: "DejaVu Sans Mono", monospace; - font-size: 12px; + font-size: 12pt; line-height: 1.0; - font-size-adjust: 1.5; } .ck-html-label .ck-content p { diff --git a/assets/js/app.js b/assets/js/app.js index fd7db935..43acec5d 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -44,4 +44,18 @@ import "./register_events"; import "./tristate_checkboxes"; //Define jquery globally -window.$ = window.jQuery = require("jquery") \ No newline at end of file +window.$ = window.jQuery = require("jquery"); + +//Use the local WASM file for the ZXing library +import { + setZXingModuleOverrides, +} from "barcode-detector/pure"; +import wasmFile from "../../node_modules/zxing-wasm/dist/reader/zxing_reader.wasm"; +setZXingModuleOverrides({ + locateFile: (path, prefix) => { + if (path.endsWith(".wasm")) { + return wasmFile; + } + return prefix + path; + }, +}); \ No newline at end of file diff --git a/assets/tomselect/autoselect_typed/autoselect_typed.js b/assets/tomselect/autoselect_typed/autoselect_typed.js new file mode 100644 index 00000000..8a426be7 --- /dev/null +++ b/assets/tomselect/autoselect_typed/autoselect_typed.js @@ -0,0 +1,63 @@ +/** + * Autoselect Typed plugin for Tomselect + * + * This plugin allows automatically selecting an option matching the typed text when the Tomselect element goes out of + * focus (is blurred) and/or when the delimiter is typed. + * + * #select_on_blur option + * Tomselect natively supports the "createOnBlur" option. This option picks up any remaining text in the input field + * and uses it to create a new option and selects that option. It does behave a bit strangely though, in that it will + * not select an already existing option when the input is blurred, so if you typed something that matches an option in + * the list and then click outside the box (without pressing enter) the entered text is just removed (unless you have + * allow duplicates on in which case it will create a new option). + * This plugin fixes that, such that Tomselect will first try to select an option matching the remaining uncommitted + * text and only when no matching option is found tries to create a new one (if createOnBlur and create is on) + * + * #select_on_delimiter option + * Normally when typing the delimiter (space by default) Tomselect will try to create a new option (and select it) (if + * create is on), but if the typed text matches an option (and allow duplicates is off) it refuses to react at all until + * you press enter. With this option, the delimiter will also allow selecting an option, not just creating it. + */ +function select_current_input(self){ + if(self.isLocked){ + return + } + + const val = self.inputValue() + //Do nothing if the input is empty + if (!val) { + return + } + + if (self.options[val]) { + self.addItem(val) + self.setTextboxValue() + } +} + +export default function(plugin_options_) { + const plugin_options = Object.assign({ + //Autoselect the typed text when the input element goes out of focus + select_on_blur: true, + //Autoselect the typed text when the delimiter is typed + select_on_delimiter: true, + }, plugin_options_); + + const self = this + + if(plugin_options.select_on_blur) { + this.hook("before", "onBlur", function () { + select_current_input(self) + }) + } + + if(plugin_options.select_on_delimiter) { + this.hook("before", "onKeyPress", function (e) { + const character = String.fromCharCode(e.keyCode || e.which); + if (self.settings.mode === 'multi' && character === self.settings.delimiter) { + select_current_input(self) + } + }) + } + +} \ No newline at end of file diff --git a/assets/tomselect/click_to_edit/click_to_edit.js b/assets/tomselect/click_to_edit/click_to_edit.js new file mode 100644 index 00000000..b7dcab03 --- /dev/null +++ b/assets/tomselect/click_to_edit/click_to_edit.js @@ -0,0 +1,93 @@ +/** + * click_to_edit plugin for Tomselect + * + * This plugin allows editing (and selecting text in) any selected item by clicking it. + * + * Usually, when the user typed some text and created an item in Tomselect that item cannot be edited anymore. To make + * a change, the item has to be deleted and retyped completely. There is also generally no way to copy text out of a + * tomselect item. The "restore_on_backspace" plugin improves that somewhat, by allowing the user to edit an item after + * pressing backspace. However, it is somewhat confusing to first have to focus the field an then hit backspace in order + * to copy a piece of text. It may also not be immediately obvious for editing. + * This plugin transforms an item into editable text when it is clicked, e.g. when the user tries to place the caret + * within an item or when they try to drag across the text to highlight it. + * It also plays nice with the remove_button plugin which still removes (deselects) an option entirely. + * + * It is recommended to also enable the autoselect_typed plugin when using this plugin. Without it, the text in the + * input field (i.e. the item that was just clicked) is lost when the user clicks outside the field. Also, when the user + * clicks an option (making it text) and then tries to enter another one by entering the delimiter (e.g. space) nothing + * happens until enter is pressed or the text is changed from what it was. + */ + +/** + * Return a dom element from either a dom query string, jQuery object, a dom element or html string + * https://stackoverflow.com/questions/494143/creating-a-new-dom-element-from-an-html-string-using-built-in-dom-methods-or-pro/35385518#35385518 + * + * param query should be {} + */ +const getDom = query => { + if (query.jquery) { + return query[0]; + } + if (query instanceof HTMLElement) { + return query; + } + if (isHtmlString(query)) { + var tpl = document.createElement('template'); + tpl.innerHTML = query.trim(); // Never return a text node of whitespace as the result + return tpl.content.firstChild; + } + return document.querySelector(query); +}; +const isHtmlString = arg => { + if (typeof arg === 'string' && arg.indexOf('<') > -1) { + return true; + } + return false; +}; + +function plugin(plugin_options_) { + const self = this + + const plugin_options = Object.assign({ + //If there is unsubmitted text in the input field, should that text be automatically used to select a matching + //element? If this is off, clicking on item1 and then clicking on item2 will result in item1 being deselected + auto_select_before_edit: true, + //If there is unsubmitted text in the input field, should that text be automatically used to create a matching + //element if no matching element was found or auto_select_before_edit is off? + auto_create_before_edit: true, + //customize this function to change which text the item is replaced with when clicking on it + text: option => { + return option[self.settings.labelField]; + } + }, plugin_options_); + + + self.hook('after', 'setupTemplates', () => { + const orig_render_item = self.settings.render.item; + self.settings.render.item = (data, escape) => { + const item = getDom(orig_render_item.call(self, data, escape)); + + item.addEventListener('click', evt => { + if (self.isLocked) { + return; + } + const val = self.inputValue(); + + if (self.options[val]) { + self.addItem(val) + } else if (self.settings.create) { + self.createItem(); + } + const option = self.options[item.dataset.value] + self.setTextboxValue(plugin_options.text.call(self, option)); + self.focus(); + self.removeItem(item); + } + ); + + return item; + } + }); + +} +export { plugin as default }; \ No newline at end of file diff --git a/bin/console b/bin/console index 88268a20..256c0a60 100755 --- a/bin/console +++ b/bin/console @@ -4,6 +4,10 @@ use App\Kernel; use Symfony\Bundle\FrameworkBundle\Console\Application; +if (!is_dir(dirname(__DIR__).'/vendor')) { + throw new LogicException('Dependencies are missing. Try running "composer install".'); +} + //Increase xdebug.max_nesting_level to 1000 if required (see issue #411) //Check if xdebug extension is active, and xdebug.max_nesting_level is set to 256 or lower if (extension_loaded('xdebug') && ((int) ini_get('xdebug.max_nesting_level')) <= 256) { diff --git a/composer.json b/composer.json index 0659f2ee..e57ce652 100644 --- a/composer.json +++ b/composer.json @@ -1,4 +1,5 @@ { + "name": "part-db/part-db-server", "type": "project", "license": "AGPL-3.0-or-later", "require": { @@ -14,9 +15,9 @@ "api-platform/core": "^3.1", "beberlei/doctrineextensions": "^1.2", "brick/math": "0.12.1 as 0.11.0", - "composer/ca-bundle": "^1.3", + "composer/ca-bundle": "^1.5", "composer/package-versions-deprecated": "^1.11.99.5", - "doctrine/data-fixtures": "^1.6.6", + "doctrine/data-fixtures": "^2.0.0", "doctrine/dbal": "^4.0.0", "doctrine/doctrine-bundle": "^2.0", "doctrine/doctrine-migrations-bundle": "^3.0", @@ -39,12 +40,10 @@ "nelmio/cors-bundle": "^2.3", "nelmio/security-bundle": "^3.0", "nyholm/psr7": "^1.1", - "ocramius/proxy-manager": "2.2.*", - "omines/datatables-bundle": "^0.8.0", + "omines/datatables-bundle": "^0.9.1", "paragonie/sodium_compat": "^1.21", "part-db/label-fonts": "^1.0", - "phpdocumentor/reflection-docblock": "^5.2", - "phpstan/phpdoc-parser": "^1.23", + "rhukster/dom-sanitizer": "^1.0", "runtime/frankenphp-symfony": "^0.2.0", "s9e/text-formatter": "^2.1", "scheb/2fa-backup-code": "^6.8.0", @@ -56,6 +55,8 @@ "symfony/apache-pack": "^1.0", "symfony/asset": "6.4.*", "symfony/console": "6.4.*", + "symfony/css-selector": "6.4.*", + "symfony/dom-crawler": "6.4.*", "symfony/dotenv": "6.4.*", "symfony/expression-language": "6.4.*", "symfony/flex": "^v2.3.1", @@ -69,7 +70,6 @@ "symfony/process": "6.4.*", "symfony/property-access": "6.4.*", "symfony/property-info": "6.4.*", - "symfony/proxy-manager-bridge": "6.4.*", "symfony/rate-limiter": "6.4.*", "symfony/runtime": "6.4.*", "symfony/security-bundle": "6.4.*", @@ -91,24 +91,22 @@ "twig/intl-extra": "^3.8", "twig/markdown-extra": "^3.8", "twig/string-extra": "^3.8", - "web-auth/webauthn-symfony-bundle": "^4.0.0", - "webmozart/assert": "^1.4" + "web-auth/webauthn-symfony-bundle": "^4.0.0" }, "require-dev": { "dama/doctrine-test-bundle": "^v8.0.0", - "doctrine/doctrine-fixtures-bundle": "^3.2", - "ekino/phpstan-banned-code": "^v1.0.0", + "doctrine/doctrine-fixtures-bundle": "^4.0.0", + "ekino/phpstan-banned-code": "^v3.0.0", "jbtronics/translation-editor-bundle": "^1.0", "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.4.7", - "phpstan/phpstan-doctrine": "^1.2.11", - "phpstan/phpstan-strict-rules": "^1.5", - "phpstan/phpstan-symfony": "^1.1.7", + "phpstan/phpstan": "^2.0.4", + "phpstan/phpstan-doctrine": "^2.0.1", + "phpstan/phpstan-strict-rules": "^2.0.1", + "phpstan/phpstan-symfony": "^2.0.0", "phpunit/phpunit": "^9.5", - "rector/rector": "^1.1.1", + "rector/rector": "^2.0.4", "roave/security-advisories": "dev-latest", "symfony/browser-kit": "6.4.*", - "symfony/css-selector": "6.4.*", "symfony/debug-bundle": "6.4.*", "symfony/maker-bundle": "^1.13", "symfony/phpunit-bridge": "6.4.*", diff --git a/composer.lock b/composer.lock index 9ee068ac..4d658092 100644 --- a/composer.lock +++ b/composer.lock @@ -4,20 +4,20 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "465fa2ab7f9f8dad2b8cfbeaa640c136", + "content-hash": "27cd0d915eab5e7cb57215a4c0b529fb", "packages": [ { "name": "amphp/amp", - "version": "v3.0.2", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/amphp/amp.git", - "reference": "138801fb68cfc9c329da8a7b39d01ce7291ee4b0" + "reference": "7cf7fef3d667bfe4b2560bc87e67d5387a7bcde9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/amp/zipball/138801fb68cfc9c329da8a7b39d01ce7291ee4b0", - "reference": "138801fb68cfc9c329da8a7b39d01ce7291ee4b0", + "url": "https://api.github.com/repos/amphp/amp/zipball/7cf7fef3d667bfe4b2560bc87e67d5387a7bcde9", + "reference": "7cf7fef3d667bfe4b2560bc87e67d5387a7bcde9", "shasum": "" }, "require": { @@ -77,7 +77,7 @@ ], "support": { "issues": "https://github.com/amphp/amp/issues", - "source": "https://github.com/amphp/amp/tree/v3.0.2" + "source": "https://github.com/amphp/amp/tree/v3.1.0" }, "funding": [ { @@ -85,20 +85,20 @@ "type": "github" } ], - "time": "2024-05-10T21:37:46+00:00" + "time": "2025-01-26T16:07:39+00:00" }, { "name": "amphp/byte-stream", - "version": "v2.1.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/amphp/byte-stream.git", - "reference": "daa00f2efdbd71565bf64ffefa89e37542addf93" + "reference": "55a6bd071aec26fa2a3e002618c20c35e3df1b46" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/byte-stream/zipball/daa00f2efdbd71565bf64ffefa89e37542addf93", - "reference": "daa00f2efdbd71565bf64ffefa89e37542addf93", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/55a6bd071aec26fa2a3e002618c20c35e3df1b46", + "reference": "55a6bd071aec26fa2a3e002618c20c35e3df1b46", "shasum": "" }, "require": { @@ -152,7 +152,7 @@ ], "support": { "issues": "https://github.com/amphp/byte-stream/issues", - "source": "https://github.com/amphp/byte-stream/tree/v2.1.1" + "source": "https://github.com/amphp/byte-stream/tree/v2.1.2" }, "funding": [ { @@ -160,7 +160,7 @@ "type": "github" } ], - "time": "2024-02-17T04:49:38+00:00" + "time": "2025-03-16T17:10:27+00:00" }, { "name": "amphp/cache", @@ -229,16 +229,16 @@ }, { "name": "amphp/dns", - "version": "v2.2.0", + "version": "v2.4.0", "source": { "type": "git", "url": "https://github.com/amphp/dns.git", - "reference": "758266b0ea7470e2e42cd098493bc6d6c7100cf7" + "reference": "78eb3db5fc69bf2fc0cb503c4fcba667bc223c71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/dns/zipball/758266b0ea7470e2e42cd098493bc6d6c7100cf7", - "reference": "758266b0ea7470e2e42cd098493bc6d6c7100cf7", + "url": "https://api.github.com/repos/amphp/dns/zipball/78eb3db5fc69bf2fc0cb503c4fcba667bc223c71", + "reference": "78eb3db5fc69bf2fc0cb503c4fcba667bc223c71", "shasum": "" }, "require": { @@ -246,9 +246,10 @@ "amphp/byte-stream": "^2", "amphp/cache": "^2", "amphp/parser": "^1", - "amphp/windows-registry": "^1.0.1", + "amphp/process": "^2", "daverandom/libdns": "^2.0.2", "ext-filter": "*", + "ext-json": "*", "php": ">=8.1", "revolt/event-loop": "^1 || ^0.2" }, @@ -305,7 +306,7 @@ ], "support": { "issues": "https://github.com/amphp/dns/issues", - "source": "https://github.com/amphp/dns/tree/v2.2.0" + "source": "https://github.com/amphp/dns/tree/v2.4.0" }, "funding": [ { @@ -313,7 +314,7 @@ "type": "github" } ], - "time": "2024-06-02T19:54:12+00:00" + "time": "2025-01-19T15:43:40+00:00" }, { "name": "amphp/hpack", @@ -391,16 +392,16 @@ }, { "name": "amphp/http", - "version": "v2.1.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/amphp/http.git", - "reference": "fe6b4dd50c1e70caf823092398074b5082e1d6da" + "reference": "3680d80bd38b5d6f3c2cef2214ca6dd6cef26588" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/http/zipball/fe6b4dd50c1e70caf823092398074b5082e1d6da", - "reference": "fe6b4dd50c1e70caf823092398074b5082e1d6da", + "url": "https://api.github.com/repos/amphp/http/zipball/3680d80bd38b5d6f3c2cef2214ca6dd6cef26588", + "reference": "3680d80bd38b5d6f3c2cef2214ca6dd6cef26588", "shasum": "" }, "require": { @@ -414,7 +415,7 @@ "amphp/php-cs-fixer-config": "^2", "league/uri": "^6.8 | ^7.1", "phpunit/phpunit": "^9", - "psalm/phar": "^5.4" + "psalm/phar": "^5.26.1" }, "type": "library", "autoload": { @@ -443,7 +444,7 @@ "description": "Basic HTTP primitives which can be shared by servers and clients.", "support": { "issues": "https://github.com/amphp/http/issues", - "source": "https://github.com/amphp/http/tree/v2.1.1" + "source": "https://github.com/amphp/http/tree/v2.1.2" }, "funding": [ { @@ -451,20 +452,20 @@ "type": "github" } ], - "time": "2024-04-03T18:00:53+00:00" + "time": "2024-11-23T14:57:26+00:00" }, { "name": "amphp/http-client", - "version": "v5.1.0", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/amphp/http-client.git", - "reference": "483df9a856625fe4406c7fb6a64d6787105bd184" + "reference": "cf885bf00550d645a27605626528a3b2ce5563ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/http-client/zipball/483df9a856625fe4406c7fb6a64d6787105bd184", - "reference": "483df9a856625fe4406c7fb6a64d6787105bd184", + "url": "https://api.github.com/repos/amphp/http-client/zipball/cf885bf00550d645a27605626528a3b2ce5563ae", + "reference": "cf885bf00550d645a27605626528a3b2ce5563ae", "shasum": "" }, "require": { @@ -475,15 +476,18 @@ "amphp/pipeline": "^1", "amphp/socket": "^2", "amphp/sync": "^2", - "league/uri": "^6 | ^7", - "league/uri-components": "^2.4 | ^7", + "league/uri": "^7", + "league/uri-components": "^7", "league/uri-interfaces": "^7.1", "php": ">=8.1", "psr/http-message": "^1 | ^2", "revolt/event-loop": "^1" }, + "conflict": { + "amphp/file": "<3 | >=5" + }, "require-dev": { - "amphp/file": "^3", + "amphp/file": "^3 | ^4", "amphp/http-server": "^3", "amphp/php-cs-fixer-config": "^2", "amphp/phpunit-util": "^3", @@ -538,7 +542,7 @@ ], "support": { "issues": "https://github.com/amphp/http-client/issues", - "source": "https://github.com/amphp/http-client/tree/v5.1.0" + "source": "https://github.com/amphp/http-client/tree/v5.3.2" }, "funding": [ { @@ -546,7 +550,7 @@ "type": "github" } ], - "time": "2024-04-21T16:40:36+00:00" + "time": "2025-05-18T18:27:44+00:00" }, { "name": "amphp/parser", @@ -612,16 +616,16 @@ }, { "name": "amphp/pipeline", - "version": "v1.2.1", + "version": "v1.2.3", "source": { "type": "git", "url": "https://github.com/amphp/pipeline.git", - "reference": "66c095673aa5b6e689e63b52d19e577459129ab3" + "reference": "7b52598c2e9105ebcddf247fc523161581930367" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/pipeline/zipball/66c095673aa5b6e689e63b52d19e577459129ab3", - "reference": "66c095673aa5b6e689e63b52d19e577459129ab3", + "url": "https://api.github.com/repos/amphp/pipeline/zipball/7b52598c2e9105ebcddf247fc523161581930367", + "reference": "7b52598c2e9105ebcddf247fc523161581930367", "shasum": "" }, "require": { @@ -667,7 +671,7 @@ ], "support": { "issues": "https://github.com/amphp/pipeline/issues", - "source": "https://github.com/amphp/pipeline/tree/v1.2.1" + "source": "https://github.com/amphp/pipeline/tree/v1.2.3" }, "funding": [ { @@ -675,7 +679,7 @@ "type": "github" } ], - "time": "2024-07-04T00:56:47+00:00" + "time": "2025-03-16T16:33:53+00:00" }, { "name": "amphp/process", @@ -962,70 +966,18 @@ ], "time": "2024-08-03T19:31:26+00:00" }, - { - "name": "amphp/windows-registry", - "version": "v1.0.1", - "source": { - "type": "git", - "url": "https://github.com/amphp/windows-registry.git", - "reference": "0d569e8f256cca974e3842b6e78b4e434bf98306" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/amphp/windows-registry/zipball/0d569e8f256cca974e3842b6e78b4e434bf98306", - "reference": "0d569e8f256cca974e3842b6e78b4e434bf98306", - "shasum": "" - }, - "require": { - "amphp/byte-stream": "^2", - "amphp/process": "^2", - "php": ">=8.1" - }, - "require-dev": { - "amphp/php-cs-fixer-config": "^2", - "psalm/phar": "^5.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "Amp\\WindowsRegistry\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Niklas Keller", - "email": "me@kelunik.com" - } - ], - "description": "Windows Registry Reader.", - "support": { - "issues": "https://github.com/amphp/windows-registry/issues", - "source": "https://github.com/amphp/windows-registry/tree/v1.0.1" - }, - "funding": [ - { - "url": "https://github.com/amphp", - "type": "github" - } - ], - "time": "2024-01-30T23:01:51+00:00" - }, { "name": "api-platform/core", - "version": "v3.4.5", + "version": "v3.4.17", "source": { "type": "git", "url": "https://github.com/api-platform/core.git", - "reference": "8bdf04409a4e873c889d22c4e05a3a81137f2a57" + "reference": "c5fb664d17ed9ae919394514ea69a5039d2ad9ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/api-platform/core/zipball/8bdf04409a4e873c889d22c4e05a3a81137f2a57", - "reference": "8bdf04409a4e873c889d22c4e05a3a81137f2a57", + "url": "https://api.github.com/repos/api-platform/core/zipball/c5fb664d17ed9ae919394514ea69a5039d2ad9ab", + "reference": "c5fb664d17ed9ae919394514ea69a5039d2ad9ab", "shasum": "" }, "require": { @@ -1052,7 +1004,7 @@ "elasticsearch/elasticsearch": ">=8.0,<8.4", "phpspec/prophecy": "<1.15", "phpunit/phpunit": "<9.5", - "symfony/framework-bundle": "6.4.6 || 7.1.6", + "symfony/framework-bundle": "6.4.6 || 7.0.6", "symfony/var-exporter": "<6.1.1" }, "replace": { @@ -1115,7 +1067,7 @@ "justinrainbow/json-schema": "^5.2.1", "phpspec/prophecy-phpunit": "^2.0", "phpstan/extension-installer": "^1.1", - "phpstan/phpdoc-parser": "^1.13", + "phpstan/phpdoc-parser": "^1.13|^2.0", "phpstan/phpstan": "^1.10", "phpstan/phpstan-doctrine": "^1.0", "phpstan/phpstan-phpunit": "^1.0", @@ -1182,13 +1134,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-3.4": "3.4.x-dev", - "dev-main": "4.0.x-dev" - }, - "symfony": { - "require": "^6.4 || ^7.1" - }, "pmu": { "projects": [ "./src/*/composer.json", @@ -1196,8 +1141,15 @@ ] }, "thanks": { - "name": "api-platform/api-platform", - "url": "https://github.com/api-platform/api-platform" + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.1" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-main": "4.0.x-dev" } }, "autoload": { @@ -1231,9 +1183,9 @@ ], "support": { "issues": "https://github.com/api-platform/core/issues", - "source": "https://github.com/api-platform/core/tree/v3.4.5" + "source": "https://github.com/api-platform/core/tree/v3.4.17" }, - "time": "2024-10-26T07:20:01+00:00" + "time": "2025-04-07T08:40:57+00:00" }, { "name": "beberlei/assert", @@ -1426,16 +1378,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.5.2", + "version": "1.5.6", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137" + "reference": "f65c239c970e7f072f067ab78646e9f0b2935175" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/48a792895a2b7a6ee65dd5442c299d7b835b6137", - "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/f65c239c970e7f072f067ab78646e9f0b2935175", + "reference": "f65c239c970e7f072f067ab78646e9f0b2935175", "shasum": "" }, "require": { @@ -1482,7 +1434,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.2" + "source": "https://github.com/composer/ca-bundle/tree/1.5.6" }, "funding": [ { @@ -1498,7 +1450,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T07:49:53+00:00" + "time": "2025-03-06T14:30:56+00:00" }, { "name": "composer/package-versions-deprecated", @@ -1617,124 +1569,31 @@ }, "time": "2024-04-12T12:12:48+00:00" }, - { - "name": "doctrine/cache", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "1ca8f21980e770095a31456042471a57bc4c68fb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/1ca8f21980e770095a31456042471a57bc4c68fb", - "reference": "1ca8f21980e770095a31456042471a57bc4c68fb", - "shasum": "" - }, - "require": { - "php": "~7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": ">2.2,<2.4" - }, - "require-dev": { - "cache/integration-tests": "dev-master", - "doctrine/coding-standard": "^9", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "psr/cache": "^1.0 || ^2.0 || ^3.0", - "symfony/cache": "^4.4 || ^5.4 || ^6", - "symfony/var-exporter": "^4.4 || ^5.4 || ^6" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", - "homepage": "https://www.doctrine-project.org/projects/cache.html", - "keywords": [ - "abstraction", - "apcu", - "cache", - "caching", - "couchdb", - "memcached", - "php", - "redis", - "xcache" - ], - "support": { - "issues": "https://github.com/doctrine/cache/issues", - "source": "https://github.com/doctrine/cache/tree/2.2.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", - "type": "tidelift" - } - ], - "time": "2022-05-20T20:07:39+00:00" - }, { "name": "doctrine/collections", - "version": "2.2.2", + "version": "2.3.0", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "d8af7f248c74f195f7347424600fd9e17b57af59" + "reference": "2eb07e5953eed811ce1b309a7478a3b236f2273d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/collections/zipball/d8af7f248c74f195f7347424600fd9e17b57af59", - "reference": "d8af7f248c74f195f7347424600fd9e17b57af59", + "url": "https://api.github.com/repos/doctrine/collections/zipball/2eb07e5953eed811ce1b309a7478a3b236f2273d", + "reference": "2eb07e5953eed811ce1b309a7478a3b236f2273d", "shasum": "" }, "require": { "doctrine/deprecations": "^1", - "php": "^8.1" + "php": "^8.1", + "symfony/polyfill-php84": "^1.30" }, "require-dev": { "doctrine/coding-standard": "^12", "ext-json": "*", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.0", - "phpunit/phpunit": "^10.5", - "vimeo/psalm": "^5.11" + "phpunit/phpunit": "^10.5" }, "type": "library", "autoload": { @@ -1778,7 +1637,7 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/2.2.2" + "source": "https://github.com/doctrine/collections/tree/2.3.0" }, "funding": [ { @@ -1794,26 +1653,26 @@ "type": "tidelift" } ], - "time": "2024-04-18T06:56:21+00:00" + "time": "2025-03-22T10:17:19+00:00" }, { "name": "doctrine/data-fixtures", - "version": "1.7.0", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/doctrine/data-fixtures.git", - "reference": "bbcb74f2ac6dbe81a14b3c3687d7623490a0448f" + "reference": "f7f1e12d6bceb58c204b3e77210a103c1c57601e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/bbcb74f2ac6dbe81a14b3c3687d7623490a0448f", - "reference": "bbcb74f2ac6dbe81a14b3c3687d7623490a0448f", + "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/f7f1e12d6bceb58c204b3e77210a103c1c57601e", + "reference": "f7f1e12d6bceb58c204b3e77210a103c1c57601e", "shasum": "" }, "require": { - "doctrine/deprecations": "^0.5.3 || ^1.0", - "doctrine/persistence": "^2.0|^3.0", - "php": "^7.4 || ^8.0" + "doctrine/persistence": "^3.1 || ^4.0", + "php": "^8.1", + "psr/log": "^1.1 || ^2 || ^3" }, "conflict": { "doctrine/dbal": "<3.5 || >=5", @@ -1821,17 +1680,16 @@ "doctrine/phpcr-odm": "<1.3.0" }, "require-dev": { - "doctrine/annotations": "^1.12 || ^2", "doctrine/coding-standard": "^12", "doctrine/dbal": "^3.5 || ^4", "doctrine/mongodb-odm": "^1.3.0 || ^2.0.0", "doctrine/orm": "^2.14 || ^3", "ext-sqlite3": "*", + "fig/log-test": "^1", "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^9.6.13 || ^10.4.2", - "symfony/cache": "^5.4 || ^6.3 || ^7", - "symfony/var-exporter": "^5.4 || ^6.3 || ^7", - "vimeo/psalm": "^5.9" + "phpunit/phpunit": "^10.5.3", + "symfony/cache": "^6.4 || ^7", + "symfony/var-exporter": "^6.4 || ^7" }, "suggest": { "alcaeus/mongo-php-adapter": "For using MongoDB ODM 1.3 with PHP 7 (deprecated)", @@ -1862,7 +1720,7 @@ ], "support": { "issues": "https://github.com/doctrine/data-fixtures/issues", - "source": "https://github.com/doctrine/data-fixtures/tree/1.7.0" + "source": "https://github.com/doctrine/data-fixtures/tree/2.0.2" }, "funding": [ { @@ -1878,20 +1736,20 @@ "type": "tidelift" } ], - "time": "2023-11-24T11:18:31+00:00" + "time": "2025-01-21T13:21:31+00:00" }, { "name": "doctrine/dbal", - "version": "4.2.1", + "version": "4.2.3", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "dadd35300837a3a2184bd47d403333b15d0a9bd0" + "reference": "33d2d7fe1269b2301640c44cf2896ea607b30e3e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/dadd35300837a3a2184bd47d403333b15d0a9bd0", - "reference": "dadd35300837a3a2184bd47d403333b15d0a9bd0", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/33d2d7fe1269b2301640c44cf2896ea607b30e3e", + "reference": "33d2d7fe1269b2301640c44cf2896ea607b30e3e", "shasum": "" }, "require": { @@ -1904,16 +1762,14 @@ "doctrine/coding-standard": "12.0.0", "fig/log-test": "^1", "jetbrains/phpstorm-stubs": "2023.2", - "phpstan/phpstan": "1.12.6", - "phpstan/phpstan-phpunit": "1.4.0", - "phpstan/phpstan-strict-rules": "^1.6", - "phpunit/phpunit": "10.5.30", - "psalm/plugin-phpunit": "0.19.0", + "phpstan/phpstan": "2.1.1", + "phpstan/phpstan-phpunit": "2.0.3", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "10.5.39", "slevomat/coding-standard": "8.13.1", "squizlabs/php_codesniffer": "3.10.2", "symfony/cache": "^6.3.8|^7.0", - "symfony/console": "^5.4|^6.3|^7.0", - "vimeo/psalm": "5.25.0" + "symfony/console": "^5.4|^6.3|^7.0" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -1970,7 +1826,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/4.2.1" + "source": "https://github.com/doctrine/dbal/tree/4.2.3" }, "funding": [ { @@ -1986,33 +1842,34 @@ "type": "tidelift" } ], - "time": "2024-10-10T18:01:27+00:00" + "time": "2025-03-07T18:29:05+00:00" }, { "name": "doctrine/deprecations", - "version": "1.1.3", + "version": "1.1.5", "source": { "type": "git", "url": "https://github.com/doctrine/deprecations.git", - "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab" + "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", - "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38", + "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, + "conflict": { + "phpunit/phpunit": "<=7.5 || >=13" + }, "require-dev": { - "doctrine/coding-standard": "^9", - "phpstan/phpstan": "1.4.10 || 1.10.15", - "phpstan/phpstan-phpunit": "^1.0", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "psalm/plugin-phpunit": "0.18.4", - "psr/log": "^1 || ^2 || ^3", - "vimeo/psalm": "4.30.0 || 5.12.0" + "doctrine/coding-standard": "^9 || ^12 || ^13", + "phpstan/phpstan": "1.4.10 || 2.1.11", + "phpstan/phpstan-phpunit": "^1.0 || ^2", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12", + "psr/log": "^1 || ^2 || ^3" }, "suggest": { "psr/log": "Allows logging deprecations via PSR-3 logger implementation" @@ -2020,7 +1877,7 @@ "type": "library", "autoload": { "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + "Doctrine\\Deprecations\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -2031,68 +1888,70 @@ "homepage": "https://www.doctrine-project.org/", "support": { "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/1.1.3" + "source": "https://github.com/doctrine/deprecations/tree/1.1.5" }, - "time": "2024-01-30T19:34:25+00:00" + "time": "2025-04-07T20:06:18+00:00" }, { "name": "doctrine/doctrine-bundle", - "version": "2.13.0", + "version": "2.14.0", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineBundle.git", - "reference": "ca59d84b8e63143ce1aed90cdb333ba329d71563" + "reference": "ca6a7350b421baf7fbdefbf9f4993292ed18effb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/ca59d84b8e63143ce1aed90cdb333ba329d71563", - "reference": "ca59d84b8e63143ce1aed90cdb333ba329d71563", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/ca6a7350b421baf7fbdefbf9f4993292ed18effb", + "reference": "ca6a7350b421baf7fbdefbf9f4993292ed18effb", "shasum": "" }, "require": { - "doctrine/cache": "^1.11 || ^2.0", "doctrine/dbal": "^3.7.0 || ^4.0", - "doctrine/persistence": "^2.2 || ^3", + "doctrine/persistence": "^3.1 || ^4", "doctrine/sql-formatter": "^1.0.1", - "php": "^7.4 || ^8.0", - "symfony/cache": "^5.4 || ^6.0 || ^7.0", - "symfony/config": "^5.4 || ^6.0 || ^7.0", - "symfony/console": "^5.4 || ^6.0 || ^7.0", - "symfony/dependency-injection": "^5.4 || ^6.0 || ^7.0", + "php": "^8.1", + "symfony/cache": "^6.4 || ^7.0", + "symfony/config": "^6.4 || ^7.0", + "symfony/console": "^6.4 || ^7.0", + "symfony/dependency-injection": "^6.4 || ^7.0", "symfony/deprecation-contracts": "^2.1 || ^3", - "symfony/doctrine-bridge": "^5.4.19 || ^6.0.7 || ^7.0", - "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0", - "symfony/polyfill-php80": "^1.15", - "symfony/service-contracts": "^1.1.1 || ^2.0 || ^3" + "symfony/doctrine-bridge": "^6.4.3 || ^7.0.3", + "symfony/framework-bundle": "^6.4 || ^7.0", + "symfony/service-contracts": "^2.5 || ^3" }, "conflict": { "doctrine/annotations": ">=3.0", + "doctrine/cache": "< 1.11", "doctrine/orm": "<2.17 || >=4.0", - "twig/twig": "<1.34 || >=2.0 <2.4" + "symfony/var-exporter": "< 6.4.1 || 7.0.0", + "twig/twig": "<2.13 || >=3.0 <3.0.4" }, "require-dev": { "doctrine/annotations": "^1 || ^2", + "doctrine/cache": "^1.11 || ^2.0", "doctrine/coding-standard": "^12", "doctrine/deprecations": "^1.0", "doctrine/orm": "^2.17 || ^3.0", "friendsofphp/proxy-manager-lts": "^1.0", - "phpunit/phpunit": "^9.5.26", - "psalm/plugin-phpunit": "^0.18.4", - "psalm/plugin-symfony": "^5", + "phpstan/phpstan": "2.1.1", + "phpstan/phpstan-phpunit": "2.0.3", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^9.6.22", "psr/log": "^1.1.4 || ^2.0 || ^3.0", - "symfony/phpunit-bridge": "^6.1 || ^7.0", - "symfony/property-info": "^5.4 || ^6.0 || ^7.0", - "symfony/proxy-manager-bridge": "^5.4 || ^6.0 || ^7.0", - "symfony/security-bundle": "^5.4 || ^6.0 || ^7.0", - "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0", - "symfony/string": "^5.4 || ^6.0 || ^7.0", - "symfony/twig-bridge": "^5.4 || ^6.0 || ^7.0", - "symfony/validator": "^5.4 || ^6.0 || ^7.0", - "symfony/var-exporter": "^5.4 || ^6.2 || ^7.0", - "symfony/web-profiler-bundle": "^5.4 || ^6.0 || ^7.0", - "symfony/yaml": "^5.4 || ^6.0 || ^7.0", - "twig/twig": "^1.34 || ^2.12 || ^3.0", - "vimeo/psalm": "^5.15" + "symfony/doctrine-messenger": "^6.4 || ^7.0", + "symfony/messenger": "^6.4 || ^7.0", + "symfony/phpunit-bridge": "^7.2", + "symfony/property-info": "^6.4 || ^7.0", + "symfony/security-bundle": "^6.4 || ^7.0", + "symfony/stopwatch": "^6.4 || ^7.0", + "symfony/string": "^6.4 || ^7.0", + "symfony/twig-bridge": "^6.4 || ^7.0", + "symfony/validator": "^6.4 || ^7.0", + "symfony/var-exporter": "^6.4.1 || ^7.0.1", + "symfony/web-profiler-bundle": "^6.4 || ^7.0", + "symfony/yaml": "^6.4 || ^7.0", + "twig/twig": "^2.13 || ^3.0.4" }, "suggest": { "doctrine/orm": "The Doctrine ORM integration is optional in the bundle.", @@ -2137,7 +1996,7 @@ ], "support": { "issues": "https://github.com/doctrine/DoctrineBundle/issues", - "source": "https://github.com/doctrine/DoctrineBundle/tree/2.13.0" + "source": "https://github.com/doctrine/DoctrineBundle/tree/2.14.0" }, "funding": [ { @@ -2153,26 +2012,26 @@ "type": "tidelift" } ], - "time": "2024-09-01T09:46:40+00:00" + "time": "2025-03-22T17:28:21+00:00" }, { "name": "doctrine/doctrine-migrations-bundle", - "version": "3.3.1", + "version": "3.4.2", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineMigrationsBundle.git", - "reference": "715b62c31a5894afcb2b2cdbbc6607d7dd0580c0" + "reference": "5a6ac7120c2924c4c070a869d08b11ccf9e277b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/715b62c31a5894afcb2b2cdbbc6607d7dd0580c0", - "reference": "715b62c31a5894afcb2b2cdbbc6607d7dd0580c0", + "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/5a6ac7120c2924c4c070a869d08b11ccf9e277b9", + "reference": "5a6ac7120c2924c4c070a869d08b11ccf9e277b9", "shasum": "" }, "require": { "doctrine/doctrine-bundle": "^2.4", "doctrine/migrations": "^3.2", - "php": "^7.2|^8.0", + "php": "^7.2 || ^8.0", "symfony/deprecation-contracts": "^2.1 || ^3", "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0" }, @@ -2180,27 +2039,20 @@ "composer/semver": "^3.0", "doctrine/coding-standard": "^12", "doctrine/orm": "^2.6 || ^3", - "doctrine/persistence": "^2.0 || ^3 ", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-deprecation-rules": "^1", - "phpstan/phpstan-phpunit": "^1", - "phpstan/phpstan-strict-rules": "^1.1", - "phpstan/phpstan-symfony": "^1.3", - "phpunit/phpunit": "^8.5|^9.5", - "psalm/plugin-phpunit": "^0.18.4", - "psalm/plugin-symfony": "^3 || ^5", + "phpstan/phpstan": "^1.4 || ^2", + "phpstan/phpstan-deprecation-rules": "^1 || ^2", + "phpstan/phpstan-phpunit": "^1 || ^2", + "phpstan/phpstan-strict-rules": "^1.1 || ^2", + "phpstan/phpstan-symfony": "^1.3 || ^2", + "phpunit/phpunit": "^8.5 || ^9.5", "symfony/phpunit-bridge": "^6.3 || ^7", - "symfony/var-exporter": "^5.4 || ^6 || ^7", - "vimeo/psalm": "^4.30 || ^5.15" + "symfony/var-exporter": "^5.4 || ^6 || ^7" }, "type": "symfony-bundle", "autoload": { "psr-4": { - "Doctrine\\Bundle\\MigrationsBundle\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Doctrine\\Bundle\\MigrationsBundle\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2229,7 +2081,7 @@ ], "support": { "issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues", - "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.3.1" + "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.4.2" }, "funding": [ { @@ -2245,7 +2097,7 @@ "type": "tidelift" } ], - "time": "2024-05-14T20:32:18+00:00" + "time": "2025-03-11T17:36:26+00:00" }, { "name": "doctrine/event-manager", @@ -2578,16 +2430,16 @@ }, { "name": "doctrine/migrations", - "version": "3.8.2", + "version": "3.9.0", "source": { "type": "git", "url": "https://github.com/doctrine/migrations.git", - "reference": "5007eb1168691225ac305fe16856755c20860842" + "reference": "325b61e41d032f5f7d7e2d11cbefff656eadc9ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/migrations/zipball/5007eb1168691225ac305fe16856755c20860842", - "reference": "5007eb1168691225ac305fe16856755c20860842", + "url": "https://api.github.com/repos/doctrine/migrations/zipball/325b61e41d032f5f7d7e2d11cbefff656eadc9ab", + "reference": "325b61e41d032f5f7d7e2d11cbefff656eadc9ab", "shasum": "" }, "require": { @@ -2607,7 +2459,7 @@ "require-dev": { "doctrine/coding-standard": "^12", "doctrine/orm": "^2.13 || ^3", - "doctrine/persistence": "^2 || ^3", + "doctrine/persistence": "^2 || ^3 || ^4", "doctrine/sql-formatter": "^1.0", "ext-pdo_sqlite": "*", "fig/log-test": "^1", @@ -2661,7 +2513,7 @@ ], "support": { "issues": "https://github.com/doctrine/migrations/issues", - "source": "https://github.com/doctrine/migrations/tree/3.8.2" + "source": "https://github.com/doctrine/migrations/tree/3.9.0" }, "funding": [ { @@ -2677,20 +2529,20 @@ "type": "tidelift" } ], - "time": "2024-10-10T21:35:27+00:00" + "time": "2025-03-26T06:48:45+00:00" }, { "name": "doctrine/orm", - "version": "3.3.0", + "version": "3.3.3", "source": { "type": "git", "url": "https://github.com/doctrine/orm.git", - "reference": "69958152e661aa9c14e80d1ee4962863485aa60b" + "reference": "1f1891d3e20ef9881e81c2f32c53e9dc88dfc9a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/orm/zipball/69958152e661aa9c14e80d1ee4962863485aa60b", - "reference": "69958152e661aa9c14e80d1ee4962863485aa60b", + "url": "https://api.github.com/repos/doctrine/orm/zipball/1f1891d3e20ef9881e81c2f32c53e9dc88dfc9a7", + "reference": "1f1891d3e20ef9881e81c2f32c53e9dc88dfc9a7", "shasum": "" }, "require": { @@ -2702,7 +2554,7 @@ "doctrine/inflector": "^1.4 || ^2.0", "doctrine/instantiator": "^1.3 || ^2", "doctrine/lexer": "^3", - "doctrine/persistence": "^3.3.1", + "doctrine/persistence": "^3.3.1 || ^4", "ext-ctype": "*", "php": "^8.1", "psr/cache": "^1 || ^2 || ^3", @@ -2710,17 +2562,16 @@ "symfony/var-exporter": "^6.3.9 || ^7.0" }, "require-dev": { - "doctrine/coding-standard": "^12.0", + "doctrine/coding-standard": "^13.0", "phpbench/phpbench": "^1.0", "phpdocumentor/guides-cli": "^1.4", "phpstan/extension-installer": "^1.4", - "phpstan/phpstan": "1.12.6", - "phpstan/phpstan-deprecation-rules": "^1.2", + "phpstan/phpstan": "2.0.3", + "phpstan/phpstan-deprecation-rules": "^2", "phpunit/phpunit": "^10.4.0", "psr/log": "^1 || ^2 || ^3", - "squizlabs/php_codesniffer": "3.7.2", - "symfony/cache": "^5.4 || ^6.2 || ^7.0", - "vimeo/psalm": "5.24.0" + "squizlabs/php_codesniffer": "3.12.0", + "symfony/cache": "^5.4 || ^6.2 || ^7.0" }, "suggest": { "ext-dom": "Provides support for XSD validation for XML mapping files", @@ -2766,27 +2617,27 @@ ], "support": { "issues": "https://github.com/doctrine/orm/issues", - "source": "https://github.com/doctrine/orm/tree/3.3.0" + "source": "https://github.com/doctrine/orm/tree/3.3.3" }, - "time": "2024-10-12T20:07:18+00:00" + "time": "2025-05-02T17:42:51+00:00" }, { "name": "doctrine/persistence", - "version": "3.4.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/persistence.git", - "reference": "0ea965320cec355dba75031c1b23d4c78362e3ff" + "reference": "45004aca79189474f113cbe3a53847c2115a55fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/persistence/zipball/0ea965320cec355dba75031c1b23d4c78362e3ff", - "reference": "0ea965320cec355dba75031c1b23d4c78362e3ff", + "url": "https://api.github.com/repos/doctrine/persistence/zipball/45004aca79189474f113cbe3a53847c2115a55fa", + "reference": "45004aca79189474f113cbe3a53847c2115a55fa", "shasum": "" }, "require": { "doctrine/event-manager": "^1 || ^2", - "php": "^7.2 || ^8.0", + "php": "^8.1", "psr/cache": "^1.0 || ^2.0 || ^3.0" }, "conflict": { @@ -2794,11 +2645,10 @@ }, "require-dev": { "doctrine/coding-standard": "^12", - "doctrine/common": "^3.0", "phpstan/phpstan": "1.12.7", "phpstan/phpstan-phpunit": "^1", "phpstan/phpstan-strict-rules": "^1.1", - "phpunit/phpunit": "^8.5.38 || ^9.5", + "phpunit/phpunit": "^9.6", "symfony/cache": "^4.4 || ^5.4 || ^6.0 || ^7.0" }, "type": "library", @@ -2848,7 +2698,7 @@ ], "support": { "issues": "https://github.com/doctrine/persistence/issues", - "source": "https://github.com/doctrine/persistence/tree/3.4.0" + "source": "https://github.com/doctrine/persistence/tree/4.0.0" }, "funding": [ { @@ -2864,20 +2714,20 @@ "type": "tidelift" } ], - "time": "2024-10-30T19:48:12+00:00" + "time": "2024-11-01T21:49:07+00:00" }, { "name": "doctrine/sql-formatter", - "version": "1.5.1", + "version": "1.5.2", "source": { "type": "git", "url": "https://github.com/doctrine/sql-formatter.git", - "reference": "b784cbde727cf806721451dde40eff4fec3bbe86" + "reference": "d6d00aba6fd2957fe5216fe2b7673e9985db20c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/sql-formatter/zipball/b784cbde727cf806721451dde40eff4fec3bbe86", - "reference": "b784cbde727cf806721451dde40eff4fec3bbe86", + "url": "https://api.github.com/repos/doctrine/sql-formatter/zipball/d6d00aba6fd2957fe5216fe2b7673e9985db20c8", + "reference": "d6d00aba6fd2957fe5216fe2b7673e9985db20c8", "shasum": "" }, "require": { @@ -2887,8 +2737,7 @@ "doctrine/coding-standard": "^12", "ergebnis/phpunit-slow-test-detector": "^2.14", "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^10.5", - "vimeo/psalm": "^5.24" + "phpunit/phpunit": "^10.5" }, "bin": [ "bin/sql-formatter" @@ -2918,22 +2767,22 @@ ], "support": { "issues": "https://github.com/doctrine/sql-formatter/issues", - "source": "https://github.com/doctrine/sql-formatter/tree/1.5.1" + "source": "https://github.com/doctrine/sql-formatter/tree/1.5.2" }, - "time": "2024-10-21T18:21:57+00:00" + "time": "2025-01-24T11:45:48+00:00" }, { "name": "dompdf/dompdf", - "version": "v3.0.0", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "fbc7c5ee5d94f7a910b78b43feb7931b7f971b59" + "reference": "a51bd7a063a65499446919286fb18b518177155a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/fbc7c5ee5d94f7a910b78b43feb7931b7f971b59", - "reference": "fbc7c5ee5d94f7a910b78b43feb7931b7f971b59", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/a51bd7a063a65499446919286fb18b518177155a", + "reference": "a51bd7a063a65499446919286fb18b518177155a", "shasum": "" }, "require": { @@ -2949,7 +2798,7 @@ "ext-json": "*", "ext-zip": "*", "mockery/mockery": "^1.3", - "phpunit/phpunit": "^7.5 || ^8 || ^9 || ^10", + "phpunit/phpunit": "^7.5 || ^8 || ^9 || ^10 || ^11", "squizlabs/php_codesniffer": "^3.5", "symfony/process": "^4.4 || ^5.4 || ^6.2 || ^7.0" }, @@ -2982,22 +2831,22 @@ "homepage": "https://github.com/dompdf/dompdf", "support": { "issues": "https://github.com/dompdf/dompdf/issues", - "source": "https://github.com/dompdf/dompdf/tree/v3.0.0" + "source": "https://github.com/dompdf/dompdf/tree/v3.1.0" }, - "time": "2024-04-29T14:01:28+00:00" + "time": "2025-01-15T14:09:04+00:00" }, { "name": "dompdf/php-font-lib", - "version": "1.0.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/dompdf/php-font-lib.git", - "reference": "991d6a954f6bbd7e41022198f00586b230731441" + "reference": "6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/php-font-lib/zipball/991d6a954f6bbd7e41022198f00586b230731441", - "reference": "991d6a954f6bbd7e41022198f00586b230731441", + "url": "https://api.github.com/repos/dompdf/php-font-lib/zipball/6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d", + "reference": "6137b7d4232b7f16c882c75e4ca3991dbcf6fe2d", "shasum": "" }, "require": { @@ -3027,9 +2876,9 @@ "homepage": "https://github.com/dompdf/php-font-lib", "support": { "issues": "https://github.com/dompdf/php-font-lib/issues", - "source": "https://github.com/dompdf/php-font-lib/tree/1.0.0" + "source": "https://github.com/dompdf/php-font-lib/tree/1.0.1" }, - "time": "2024-04-29T13:40:38+00:00" + "time": "2024-12-02T14:37:59+00:00" }, { "name": "dompdf/php-svg-lib", @@ -3079,16 +2928,16 @@ }, { "name": "egulias/email-validator", - "version": "4.0.2", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e" + "reference": "d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa", + "reference": "d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa", "shasum": "" }, "require": { @@ -3134,7 +2983,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/4.0.2" + "source": "https://github.com/egulias/EmailValidator/tree/4.0.4" }, "funding": [ { @@ -3142,7 +2991,7 @@ "type": "github" } ], - "time": "2023-10-06T06:47:41+00:00" + "time": "2025-03-06T22:45:56+00:00" }, { "name": "erusev/parsedown", @@ -3395,88 +3244,6 @@ }, "time": "2024-07-09T13:51:01+00:00" }, - { - "name": "friendsofphp/proxy-manager-lts", - "version": "v1.0.18", - "source": { - "type": "git", - "url": "https://github.com/FriendsOfPHP/proxy-manager-lts.git", - "reference": "2c8a6cffc3220e99352ad958fe7cf06bf6f7690f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/2c8a6cffc3220e99352ad958fe7cf06bf6f7690f", - "reference": "2c8a6cffc3220e99352ad958fe7cf06bf6f7690f", - "shasum": "" - }, - "require": { - "laminas/laminas-code": "~3.4.1|^4.0", - "php": ">=7.1", - "symfony/filesystem": "^4.4.17|^5.0|^6.0|^7.0" - }, - "conflict": { - "laminas/laminas-stdlib": "<3.2.1", - "zendframework/zend-stdlib": "<3.2.1" - }, - "replace": { - "ocramius/proxy-manager": "^2.1" - }, - "require-dev": { - "ext-phar": "*", - "symfony/phpunit-bridge": "^5.4|^6.0|^7.0" - }, - "type": "library", - "extra": { - "thanks": { - "name": "ocramius/proxy-manager", - "url": "https://github.com/Ocramius/ProxyManager" - } - }, - "autoload": { - "psr-4": { - "ProxyManager\\": "src/ProxyManager" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - } - ], - "description": "Adding support for a wider range of PHP versions to ocramius/proxy-manager", - "homepage": "https://github.com/FriendsOfPHP/proxy-manager-lts", - "keywords": [ - "aop", - "lazy loading", - "proxy", - "proxy pattern", - "service proxies" - ], - "support": { - "issues": "https://github.com/FriendsOfPHP/proxy-manager-lts/issues", - "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.18" - }, - "funding": [ - { - "url": "https://github.com/Ocramius", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ocramius/proxy-manager", - "type": "tidelift" - } - ], - "time": "2024-03-20T12:50:41+00:00" - }, { "name": "gregwar/captcha", "version": "v1.2.1", @@ -3603,16 +3370,16 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.9.2", + "version": "7.9.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "d281ed313b989f213357e3be1a179f02196ac99b" + "reference": "7b2f29fe81dc4da0ca0ea7d42107a0845946ea77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", - "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7b2f29fe81dc4da0ca0ea7d42107a0845946ea77", + "reference": "7b2f29fe81dc4da0ca0ea7d42107a0845946ea77", "shasum": "" }, "require": { @@ -3709,7 +3476,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.9.2" + "source": "https://github.com/guzzle/guzzle/tree/7.9.3" }, "funding": [ { @@ -3725,20 +3492,20 @@ "type": "tidelift" } ], - "time": "2024-07-24T11:22:20+00:00" + "time": "2025-03-27T13:37:11+00:00" }, { "name": "guzzlehttp/promises", - "version": "2.0.4", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455" + "reference": "7c69f28996b0a6920945dd20b3857e499d9ca96c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/f9c436286ab2892c7db7be8c8da4ef61ccf7b455", - "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455", + "url": "https://api.github.com/repos/guzzle/promises/zipball/7c69f28996b0a6920945dd20b3857e499d9ca96c", + "reference": "7c69f28996b0a6920945dd20b3857e499d9ca96c", "shasum": "" }, "require": { @@ -3792,7 +3559,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.0.4" + "source": "https://github.com/guzzle/promises/tree/2.2.0" }, "funding": [ { @@ -3808,20 +3575,20 @@ "type": "tidelift" } ], - "time": "2024-10-17T10:06:22+00:00" + "time": "2025-03-27T13:27:01+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.7.0", + "version": "2.7.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" + "reference": "c2270caaabe631b3b44c85f99e5a04bbb8060d16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/c2270caaabe631b3b44c85f99e5a04bbb8060d16", + "reference": "c2270caaabe631b3b44c85f99e5a04bbb8060d16", "shasum": "" }, "require": { @@ -3908,7 +3675,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.7.0" + "source": "https://github.com/guzzle/psr7/tree/2.7.1" }, "funding": [ { @@ -3924,7 +3691,7 @@ "type": "tidelift" } ], - "time": "2024-07-18T11:15:46+00:00" + "time": "2025-03-27T12:30:47+00:00" }, { "name": "hshn/base64-encoded-file", @@ -3990,20 +3757,20 @@ }, { "name": "imagine/imagine", - "version": "1.3.5", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/php-imagine/Imagine.git", - "reference": "7151d553edec4dc2bbac60419f7a74ff34700e7f" + "reference": "80ab21434890dee9ba54969d31c51ac8d4d551e0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-imagine/Imagine/zipball/7151d553edec4dc2bbac60419f7a74ff34700e7f", - "reference": "7151d553edec4dc2bbac60419f7a74ff34700e7f", + "url": "https://api.github.com/repos/php-imagine/Imagine/zipball/80ab21434890dee9ba54969d31c51ac8d4d551e0", + "reference": "80ab21434890dee9ba54969d31c51ac8d4d551e0", "shasum": "" }, "require": { - "php": ">=5.5" + "php": ">=7.1" }, "require-dev": { "phpunit/phpunit": "^4.8 || ^5.7 || ^6.5 || ^7.5 || ^8.4 || ^9.3" @@ -4036,7 +3803,7 @@ "homepage": "http://avalanche123.com" } ], - "description": "Image processing for PHP 5.3", + "description": "Image processing for PHP", "homepage": "http://imagine.readthedocs.org/", "keywords": [ "drawing", @@ -4046,22 +3813,22 @@ ], "support": { "issues": "https://github.com/php-imagine/Imagine/issues", - "source": "https://github.com/php-imagine/Imagine/tree/1.3.5" + "source": "https://github.com/php-imagine/Imagine/tree/1.5.0" }, - "time": "2023-06-07T14:49:52+00:00" + "time": "2024-12-03T14:37:55+00:00" }, { "name": "jbtronics/2fa-webauthn", - "version": "v2.2.2", + "version": "v2.2.3", "source": { "type": "git", "url": "https://github.com/jbtronics/2fa-webauthn.git", - "reference": "4341335ab9667f7347a24d60c29d143f25371e82" + "reference": "fda6f39e70784cbf1f93cf758bf798563219d451" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jbtronics/2fa-webauthn/zipball/4341335ab9667f7347a24d60c29d143f25371e82", - "reference": "4341335ab9667f7347a24d60c29d143f25371e82", + "url": "https://api.github.com/repos/jbtronics/2fa-webauthn/zipball/fda6f39e70784cbf1f93cf758bf798563219d451", + "reference": "fda6f39e70784cbf1f93cf758bf798563219d451", "shasum": "" }, "require": { @@ -4106,22 +3873,22 @@ ], "support": { "issues": "https://github.com/jbtronics/2fa-webauthn/issues", - "source": "https://github.com/jbtronics/2fa-webauthn/tree/v2.2.2" + "source": "https://github.com/jbtronics/2fa-webauthn/tree/v2.2.3" }, - "time": "2024-07-21T19:24:26+00:00" + "time": "2025-03-27T19:23:40+00:00" }, { "name": "jbtronics/dompdf-font-loader-bundle", - "version": "v1.1.2", + "version": "v1.1.3", "source": { "type": "git", "url": "https://github.com/jbtronics/dompdf-font-loader-bundle.git", - "reference": "de3a2982e626144bc543119585ed46dc4c884bea" + "reference": "da01d9655826105d53f9d0e8ba4f9d838201dcb2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jbtronics/dompdf-font-loader-bundle/zipball/de3a2982e626144bc543119585ed46dc4c884bea", - "reference": "de3a2982e626144bc543119585ed46dc4c884bea", + "url": "https://api.github.com/repos/jbtronics/dompdf-font-loader-bundle/zipball/da01d9655826105d53f9d0e8ba4f9d838201dcb2", + "reference": "da01d9655826105d53f9d0e8ba4f9d838201dcb2", "shasum": "" }, "require": { @@ -4161,9 +3928,9 @@ ], "support": { "issues": "https://github.com/jbtronics/dompdf-font-loader-bundle/issues", - "source": "https://github.com/jbtronics/dompdf-font-loader-bundle/tree/v1.1.2" + "source": "https://github.com/jbtronics/dompdf-font-loader-bundle/tree/v1.1.3" }, - "time": "2024-06-06T17:42:51+00:00" + "time": "2025-02-07T23:21:03+00:00" }, { "name": "jfcherng/php-color-output", @@ -4519,69 +4286,6 @@ }, "time": "2024-10-02T14:26:09+00:00" }, - { - "name": "laminas/laminas-code", - "version": "4.15.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-code.git", - "reference": "877ad42fe9c164785182fca8afa3f416a056884d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-code/zipball/877ad42fe9c164785182fca8afa3f416a056884d", - "reference": "877ad42fe9c164785182fca8afa3f416a056884d", - "shasum": "" - }, - "require": { - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" - }, - "require-dev": { - "doctrine/annotations": "^2.0.1", - "ext-phar": "*", - "laminas/laminas-coding-standard": "^3.0.0", - "laminas/laminas-stdlib": "^3.18.0", - "phpunit/phpunit": "^10.5.37", - "psalm/plugin-phpunit": "^0.19.0", - "vimeo/psalm": "^5.15.0" - }, - "suggest": { - "doctrine/annotations": "Doctrine\\Common\\Annotations >=1.0 for annotation features", - "laminas/laminas-stdlib": "Laminas\\Stdlib component" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Code\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Extensions to the PHP Reflection API, static code scanning, and code generation", - "homepage": "https://laminas.dev", - "keywords": [ - "code", - "laminas", - "laminasframework" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-code/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-code/issues", - "rss": "https://github.com/laminas/laminas-code/releases.atom", - "source": "https://github.com/laminas/laminas-code" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2024-10-25T10:15:16+00:00" - }, { "name": "lcobucci/clock", "version": "3.0.0", @@ -4894,35 +4598,30 @@ }, { "name": "league/oauth2-client", - "version": "2.7.0", + "version": "2.8.1", "source": { "type": "git", "url": "https://github.com/thephpleague/oauth2-client.git", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8" + "reference": "9df2924ca644736c835fc60466a3a60390d334f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/160d6274b03562ebeb55ed18399281d8118b76c8", - "reference": "160d6274b03562ebeb55ed18399281d8118b76c8", + "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/9df2924ca644736c835fc60466a3a60390d334f9", + "reference": "9df2924ca644736c835fc60466a3a60390d334f9", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^6.0 || ^7.0", - "paragonie/random_compat": "^1 || ^2 || ^9.99", - "php": "^5.6 || ^7.0 || ^8.0" + "ext-json": "*", + "guzzlehttp/guzzle": "^6.5.8 || ^7.4.5", + "php": "^7.1 || >=8.0.0 <8.5.0" }, "require-dev": { "mockery/mockery": "^1.3.5", - "php-parallel-lint/php-parallel-lint": "^1.3.1", - "phpunit/phpunit": "^5.7 || ^6.0 || ^9.5", - "squizlabs/php_codesniffer": "^2.3 || ^3.0" + "php-parallel-lint/php-parallel-lint": "^1.4", + "phpunit/phpunit": "^7 || ^8 || ^9 || ^10 || ^11", + "squizlabs/php_codesniffer": "^3.11" }, "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.0.x-dev" - } - }, "autoload": { "psr-4": { "League\\OAuth2\\Client\\": "src/" @@ -4958,26 +4657,26 @@ ], "support": { "issues": "https://github.com/thephpleague/oauth2-client/issues", - "source": "https://github.com/thephpleague/oauth2-client/tree/2.7.0" + "source": "https://github.com/thephpleague/oauth2-client/tree/2.8.1" }, - "time": "2023-04-16T18:19:15+00:00" + "time": "2025-02-26T04:37:30+00:00" }, { "name": "league/uri", - "version": "7.4.1", + "version": "7.5.1", "source": { "type": "git", "url": "https://github.com/thephpleague/uri.git", - "reference": "bedb6e55eff0c933668addaa7efa1e1f2c417cc4" + "reference": "81fb5145d2644324614cc532b28efd0215bda430" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/uri/zipball/bedb6e55eff0c933668addaa7efa1e1f2c417cc4", - "reference": "bedb6e55eff0c933668addaa7efa1e1f2c417cc4", + "url": "https://api.github.com/repos/thephpleague/uri/zipball/81fb5145d2644324614cc532b28efd0215bda430", + "reference": "81fb5145d2644324614cc532b28efd0215bda430", "shasum": "" }, "require": { - "league/uri-interfaces": "^7.3", + "league/uri-interfaces": "^7.5", "php": "^8.1" }, "conflict": { @@ -5042,7 +4741,7 @@ "docs": "https://uri.thephpleague.com", "forum": "https://thephpleague.slack.com", "issues": "https://github.com/thephpleague/uri-src/issues", - "source": "https://github.com/thephpleague/uri/tree/7.4.1" + "source": "https://github.com/thephpleague/uri/tree/7.5.1" }, "funding": [ { @@ -5050,24 +4749,24 @@ "type": "github" } ], - "time": "2024-03-23T07:42:40+00:00" + "time": "2024-12-08T08:40:02+00:00" }, { "name": "league/uri-components", - "version": "7.4.1", + "version": "7.5.1", "source": { "type": "git", "url": "https://github.com/thephpleague/uri-components.git", - "reference": "b94fe4097885f1b51c4c3fcb78025fbbabbb5d9d" + "reference": "4aabf0e2f2f9421ffcacab35be33e4fb5e63c44f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/uri-components/zipball/b94fe4097885f1b51c4c3fcb78025fbbabbb5d9d", - "reference": "b94fe4097885f1b51c4c3fcb78025fbbabbb5d9d", + "url": "https://api.github.com/repos/thephpleague/uri-components/zipball/4aabf0e2f2f9421ffcacab35be33e4fb5e63c44f", + "reference": "4aabf0e2f2f9421ffcacab35be33e4fb5e63c44f", "shasum": "" }, "require": { - "league/uri": "^7.3", + "league/uri": "^7.5", "php": "^8.1" }, "suggest": { @@ -5124,7 +4823,7 @@ "docs": "https://uri.thephpleague.com", "forum": "https://thephpleague.slack.com", "issues": "https://github.com/thephpleague/uri-src/issues", - "source": "https://github.com/thephpleague/uri-components/tree/7.4.1" + "source": "https://github.com/thephpleague/uri-components/tree/7.5.1" }, "funding": [ { @@ -5132,20 +4831,20 @@ "type": "github" } ], - "time": "2024-03-23T07:42:40+00:00" + "time": "2024-12-08T08:40:02+00:00" }, { "name": "league/uri-interfaces", - "version": "7.4.1", + "version": "7.5.0", "source": { "type": "git", "url": "https://github.com/thephpleague/uri-interfaces.git", - "reference": "8d43ef5c841032c87e2de015972c06f3865ef718" + "reference": "08cfc6c4f3d811584fb09c37e2849e6a7f9b0742" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/8d43ef5c841032c87e2de015972c06f3865ef718", - "reference": "8d43ef5c841032c87e2de015972c06f3865ef718", + "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/08cfc6c4f3d811584fb09c37e2849e6a7f9b0742", + "reference": "08cfc6c4f3d811584fb09c37e2849e6a7f9b0742", "shasum": "" }, "require": { @@ -5208,7 +4907,7 @@ "docs": "https://uri.thephpleague.com", "forum": "https://thephpleague.slack.com", "issues": "https://github.com/thephpleague/uri-src/issues", - "source": "https://github.com/thephpleague/uri-interfaces/tree/7.4.1" + "source": "https://github.com/thephpleague/uri-interfaces/tree/7.5.0" }, "funding": [ { @@ -5216,20 +4915,20 @@ "type": "github" } ], - "time": "2024-03-23T07:42:40+00:00" + "time": "2024-12-08T08:18:47+00:00" }, { "name": "liip/imagine-bundle", - "version": "2.13.2", + "version": "2.13.3", "source": { "type": "git", "url": "https://github.com/liip/LiipImagineBundle.git", - "reference": "98e0318ea0f7b9500343236e63cc29ded58a1d43" + "reference": "3faccde327f91368e51d05ecad49a9cd915abd81" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/liip/LiipImagineBundle/zipball/98e0318ea0f7b9500343236e63cc29ded58a1d43", - "reference": "98e0318ea0f7b9500343236e63cc29ded58a1d43", + "url": "https://api.github.com/repos/liip/LiipImagineBundle/zipball/3faccde327f91368e51d05ecad49a9cd915abd81", + "reference": "3faccde327f91368e51d05ecad49a9cd915abd81", "shasum": "" }, "require": { @@ -5320,9 +5019,9 @@ ], "support": { "issues": "https://github.com/liip/LiipImagineBundle/issues", - "source": "https://github.com/liip/LiipImagineBundle/tree/2.13.2" + "source": "https://github.com/liip/LiipImagineBundle/tree/2.13.3" }, - "time": "2024-09-04T12:55:26+00:00" + "time": "2024-12-12T09:38:23+00:00" }, { "name": "lorenzo/pinky", @@ -5446,16 +5145,16 @@ }, { "name": "monolog/monolog", - "version": "3.7.0", + "version": "3.9.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8" + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f4393b648b78a5408747de94fca38beb5f7e9ef8", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/10d85740180ecba7896c87e06a166e0c95a0e3b6", + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6", "shasum": "" }, "require": { @@ -5475,12 +5174,14 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "^10.5.17", + "php-console/php-console": "^3.1.8", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^10.5.17 || ^11.0.7", "predis/predis": "^1.1 || ^2", - "ruflin/elastica": "^7", + "rollbar/rollbar": "^4.0", + "ruflin/elastica": "^7 || ^8", "symfony/mailer": "^5.4 || ^6", "symfony/mime": "^5.4 || ^6" }, @@ -5531,7 +5232,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.7.0" + "source": "https://github.com/Seldaek/monolog/tree/3.9.0" }, "funding": [ { @@ -5543,7 +5244,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:40:51+00:00" + "time": "2025-03-24T10:02:05+00:00" }, { "name": "nbgrp/onelogin-saml-bundle", @@ -5745,16 +5446,16 @@ }, { "name": "nelmio/security-bundle", - "version": "v3.4.2", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/nelmio/NelmioSecurityBundle.git", - "reference": "3c4739628eafe886c001210aa0d97b33f3551599" + "reference": "b1c5e323d71152bc1a61a4f8fbf7d88c6fa3e2e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nelmio/NelmioSecurityBundle/zipball/3c4739628eafe886c001210aa0d97b33f3551599", - "reference": "3c4739628eafe886c001210aa0d97b33f3551599", + "url": "https://api.github.com/repos/nelmio/NelmioSecurityBundle/zipball/b1c5e323d71152bc1a61a4f8fbf7d88c6fa3e2e7", + "reference": "b1c5e323d71152bc1a61a4f8fbf7d88c6fa3e2e7", "shasum": "" }, "require": { @@ -5813,22 +5514,22 @@ ], "support": { "issues": "https://github.com/nelmio/NelmioSecurityBundle/issues", - "source": "https://github.com/nelmio/NelmioSecurityBundle/tree/v3.4.2" + "source": "https://github.com/nelmio/NelmioSecurityBundle/tree/v3.5.1" }, - "time": "2024-09-10T13:22:26+00:00" + "time": "2025-03-13T09:17:16+00:00" }, { "name": "nikolaposa/version", - "version": "4.2.0", + "version": "4.2.1", "source": { "type": "git", "url": "https://github.com/nikolaposa/version.git", - "reference": "003fefa14f47cd44917546285e39d196af062a95" + "reference": "2b9ee2f0b09333b6ce00bd6b63132cdf1d7a1428" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikolaposa/version/zipball/003fefa14f47cd44917546285e39d196af062a95", - "reference": "003fefa14f47cd44917546285e39d196af062a95", + "url": "https://api.github.com/repos/nikolaposa/version/zipball/2b9ee2f0b09333b6ce00bd6b63132cdf1d7a1428", + "reference": "2b9ee2f0b09333b6ce00bd6b63132cdf1d7a1428", "shasum": "" }, "require": { @@ -5874,9 +5575,9 @@ ], "support": { "issues": "https://github.com/nikolaposa/version/issues", - "source": "https://github.com/nikolaposa/version/tree/4.2.0" + "source": "https://github.com/nikolaposa/version/tree/4.2.1" }, - "time": "2023-12-29T22:07:54+00:00" + "time": "2025-03-24T19:12:02+00:00" }, { "name": "nyholm/psr7", @@ -5958,58 +5659,63 @@ }, { "name": "omines/datatables-bundle", - "version": "0.8.2", + "version": "0.9.2", "source": { "type": "git", "url": "https://github.com/omines/datatables-bundle.git", - "reference": "1a1bd7814419831898d834ac1b3e980120fd7425" + "reference": "15974fc7dde750f8a3eff32d9ad4d9de6028583f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/omines/datatables-bundle/zipball/1a1bd7814419831898d834ac1b3e980120fd7425", - "reference": "1a1bd7814419831898d834ac1b3e980120fd7425", + "url": "https://api.github.com/repos/omines/datatables-bundle/zipball/15974fc7dde750f8a3eff32d9ad4d9de6028583f", + "reference": "15974fc7dde750f8a3eff32d9ad4d9de6028583f", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/event-dispatcher": "^6.3|^7.0", - "symfony/framework-bundle": "^6.3|^7.0", - "symfony/options-resolver": "^6.3|^7.0", - "symfony/property-access": "^6.3|^7.0", - "symfony/translation": "^6.3|^7.0" + "symfony/event-dispatcher": "^6.4|^7.1", + "symfony/framework-bundle": "^6.4|^7.1", + "symfony/options-resolver": "^6.4|^7.1", + "symfony/polyfill-mbstring": "^1.31.0", + "symfony/property-access": "^6.4|^7.1", + "symfony/translation": "^6.4|^7.1" + }, + "conflict": { + "doctrine/orm": "^3.0 <3.3" }, "require-dev": { - "doctrine/common": "^3.4.3", - "doctrine/doctrine-bundle": "^2.11.1", - "doctrine/orm": "^2.17.2", - "doctrine/persistence": "^3.2.0", + "doctrine/common": "^3.4.5", + "doctrine/doctrine-bundle": "^2.13.1", + "doctrine/orm": "^2.19.3|^3.3.0", + "doctrine/persistence": "^3.4.0", "ext-curl": "*", "ext-json": "*", + "ext-mbstring": "*", "ext-mongodb": "*", "ext-pdo_sqlite": "*", "ext-zip": "*", - "friendsofphp/php-cs-fixer": "^v3.40.0", - "mongodb/mongodb": "^1.17", - "ocramius/package-versions": "^2.8", + "friendsofphp/php-cs-fixer": "^3.65.0", + "mongodb/mongodb": "^1.20.0", + "ocramius/package-versions": "^2.9", "openspout/openspout": "^4.23", - "phpoffice/phpspreadsheet": "^1.29.0 || ^2.0", - "phpstan/extension-installer": "^1.3.1", - "phpstan/phpstan": "^1.10.55", - "phpstan/phpstan-doctrine": "^1.3.54", - "phpstan/phpstan-phpunit": "^1.3.15", - "phpstan/phpstan-symfony": "^1.3.6", - "phpunit/phpunit": "^10.5.10 || ^11.0.3", - "ruflin/elastica": "^6.2|^7.3.1", - "symfony/browser-kit": "^6.3|^7.0", - "symfony/css-selector": "^6.3|^7.0", - "symfony/doctrine-bridge": "^6.3|^7.0.2", - "symfony/dom-crawler": "^6.3|^7.0", - "symfony/intl": "^6.3|^7.0.2", - "symfony/mime": "^6.3|^7.0", - "symfony/phpunit-bridge": "^6.3|^7.0.2", - "symfony/twig-bundle": "^6.3|^7.0", - "symfony/var-dumper": "^6.3|^7.0.2", - "symfony/yaml": "^6.3|^7.0" + "phpoffice/phpspreadsheet": "^2.3.3|^3.5", + "phpstan/extension-installer": "^1.4.3", + "phpstan/phpstan": "^2.0.3", + "phpstan/phpstan-doctrine": "^2.0.1", + "phpstan/phpstan-phpunit": "^2.0.1", + "phpstan/phpstan-symfony": "^2.0.0", + "phpunit/phpunit": "^10.5.38|^11.4.4", + "ruflin/elastica": "^6.2|^7.3.2", + "symfony/browser-kit": "^6.4.13|^7.1", + "symfony/css-selector": "^6.4.13|^7.1", + "symfony/doctrine-bridge": "^6.4.13|^7.1", + "symfony/dom-crawler": "^6.4.13|^7.1", + "symfony/intl": "^6.4.13|^7.1", + "symfony/mime": "^6.4.13|^7.1", + "symfony/phpunit-bridge": "^7.2", + "symfony/twig-bundle": "^6.4|^7.1", + "symfony/var-dumper": "^6.4.13|^7.1", + "symfony/yaml": "^6.4.13|^7.1" }, "suggest": { "doctrine/doctrine-bundle": "For integrated access to Doctrine object managers", @@ -6023,7 +5729,7 @@ "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "0.8-dev" + "dev-master": "0.9-dev" } }, "autoload": { @@ -6061,7 +5767,7 @@ ], "support": { "issues": "https://github.com/omines/datatables-bundle/issues", - "source": "https://github.com/omines/datatables-bundle/tree/0.8.2" + "source": "https://github.com/omines/datatables-bundle/tree/0.9.2" }, "funding": [ { @@ -6069,7 +5775,7 @@ "type": "github" } ], - "time": "2024-03-24T20:57:13+00:00" + "time": "2025-01-23T14:53:20+00:00" }, { "name": "onelogin/php-saml", @@ -6619,16 +6325,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.4.1", + "version": "5.6.2", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c" + "reference": "92dde6a5919e34835c506ac8c523ef095a95ed62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", - "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/92dde6a5919e34835c506ac8c523ef095a95ed62", + "reference": "92dde6a5919e34835c506ac8c523ef095a95ed62", "shasum": "" }, "require": { @@ -6637,17 +6343,17 @@ "php": "^7.4 || ^8.0", "phpdocumentor/reflection-common": "^2.2", "phpdocumentor/type-resolver": "^1.7", - "phpstan/phpdoc-parser": "^1.7", + "phpstan/phpdoc-parser": "^1.7|^2.0", "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.5", + "mockery/mockery": "~1.3.5 || ~1.6.0", "phpstan/extension-installer": "^1.1", "phpstan/phpstan": "^1.8", "phpstan/phpstan-mockery": "^1.1", "phpstan/phpstan-webmozart-assert": "^1.2", "phpunit/phpunit": "^9.5", - "vimeo/psalm": "^5.13" + "psalm/phar": "^5.26" }, "type": "library", "extra": { @@ -6677,29 +6383,29 @@ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.4.1" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.2" }, - "time": "2024-05-21T05:55:05+00:00" + "time": "2025-04-13T19:20:35+00:00" }, { "name": "phpdocumentor/type-resolver", - "version": "1.8.2", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "153ae662783729388a584b4361f2545e4d841e3c" + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c", - "reference": "153ae662783729388a584b4361f2545e4d841e3c", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/679e3ce485b99e84c775d28e2e96fade9a7fb50a", + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a", "shasum": "" }, "require": { "doctrine/deprecations": "^1.0", "php": "^7.3 || ^8.0", "phpdocumentor/reflection-common": "^2.0", - "phpstan/phpdoc-parser": "^1.13" + "phpstan/phpdoc-parser": "^1.18|^2.0" }, "require-dev": { "ext-tokenizer": "*", @@ -6735,36 +6441,36 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.2" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.10.0" }, - "time": "2024-02-23T11:10:43+00:00" + "time": "2024-11-09T15:12:26+00:00" }, { "name": "phpstan/phpdoc-parser", - "version": "1.33.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "82a311fd3690fb2bf7b64d5c98f912b3dd746140" + "reference": "9b30d6fd026b2c132b3985ce6b23bec09ab3aa68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/82a311fd3690fb2bf7b64d5c98f912b3dd746140", - "reference": "82a311fd3690fb2bf7b64d5c98f912b3dd746140", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/9b30d6fd026b2c132b3985ce6b23bec09ab3aa68", + "reference": "9b30d6fd026b2c132b3985ce6b23bec09ab3aa68", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": "^7.4 || ^8.0" }, "require-dev": { "doctrine/annotations": "^2.0", - "nikic/php-parser": "^4.15", + "nikic/php-parser": "^5.3.0", "php-parallel-lint/php-parallel-lint": "^1.2", "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.5", - "phpstan/phpstan-phpunit": "^1.1", - "phpstan/phpstan-strict-rules": "^1.0", - "phpunit/phpunit": "^9.5", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", "symfony/process": "^5.2" }, "type": "library", @@ -6782,9 +6488,9 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.33.0" + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.1.0" }, - "time": "2024-10-13T11:25:22+00:00" + "time": "2025-02-19T13:28:12+00:00" }, { "name": "psr/cache", @@ -7349,16 +7055,16 @@ }, { "name": "revolt/event-loop", - "version": "v1.0.6", + "version": "v1.0.7", "source": { "type": "git", "url": "https://github.com/revoltphp/event-loop.git", - "reference": "25de49af7223ba039f64da4ae9a28ec2d10d0254" + "reference": "09bf1bf7f7f574453efe43044b06fafe12216eb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/revoltphp/event-loop/zipball/25de49af7223ba039f64da4ae9a28ec2d10d0254", - "reference": "25de49af7223ba039f64da4ae9a28ec2d10d0254", + "url": "https://api.github.com/repos/revoltphp/event-loop/zipball/09bf1bf7f7f574453efe43044b06fafe12216eb3", + "reference": "09bf1bf7f7f574453efe43044b06fafe12216eb3", "shasum": "" }, "require": { @@ -7415,22 +7121,67 @@ ], "support": { "issues": "https://github.com/revoltphp/event-loop/issues", - "source": "https://github.com/revoltphp/event-loop/tree/v1.0.6" + "source": "https://github.com/revoltphp/event-loop/tree/v1.0.7" }, - "time": "2023-11-30T05:34:44+00:00" + "time": "2025-01-25T19:27:39+00:00" }, { - "name": "robrichards/xmlseclibs", - "version": "3.1.1", + "name": "rhukster/dom-sanitizer", + "version": "1.0.7", "source": { "type": "git", - "url": "https://github.com/robrichards/xmlseclibs.git", - "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df" + "url": "https://github.com/rhukster/dom-sanitizer.git", + "reference": "c2a98f27ad742668b254282ccc5581871d0fb601" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/robrichards/xmlseclibs/zipball/f8f19e58f26cdb42c54b214ff8a820760292f8df", - "reference": "f8f19e58f26cdb42c54b214ff8a820760292f8df", + "url": "https://api.github.com/repos/rhukster/dom-sanitizer/zipball/c2a98f27ad742668b254282ccc5581871d0fb601", + "reference": "c2a98f27ad742668b254282ccc5581871d0fb601", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9" + }, + "type": "library", + "autoload": { + "psr-4": { + "Rhukster\\DomSanitizer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Andy Miller", + "email": "rhuk@rhuk.net" + } + ], + "description": "A simple but effective DOM/SVG/MathML Sanitizer for PHP 7.4+", + "support": { + "issues": "https://github.com/rhukster/dom-sanitizer/issues", + "source": "https://github.com/rhukster/dom-sanitizer/tree/1.0.7" + }, + "time": "2023-11-06T16:46:48+00:00" + }, + { + "name": "robrichards/xmlseclibs", + "version": "3.1.3", + "source": { + "type": "git", + "url": "https://github.com/robrichards/xmlseclibs.git", + "reference": "2bdfd742624d739dfadbd415f00181b4a77aaf07" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/robrichards/xmlseclibs/zipball/2bdfd742624d739dfadbd415f00181b4a77aaf07", + "reference": "2bdfd742624d739dfadbd415f00181b4a77aaf07", "shasum": "" }, "require": { @@ -7457,9 +7208,9 @@ ], "support": { "issues": "https://github.com/robrichards/xmlseclibs/issues", - "source": "https://github.com/robrichards/xmlseclibs/tree/3.1.1" + "source": "https://github.com/robrichards/xmlseclibs/tree/3.1.3" }, - "time": "2020-09-05T13:00:25+00:00" + "time": "2024-11-20T21:13:56+00:00" }, { "name": "runtime/frankenphp-symfony", @@ -7603,16 +7354,16 @@ }, { "name": "s9e/text-formatter", - "version": "2.18.0", + "version": "2.19.0", "source": { "type": "git", "url": "https://github.com/s9e/TextFormatter.git", - "reference": "4970711f25d94306b4835b723b9cc5010170ea37" + "reference": "d65a4f61cbe494937afb3150dc73b6e757d400d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/s9e/TextFormatter/zipball/4970711f25d94306b4835b723b9cc5010170ea37", - "reference": "4970711f25d94306b4835b723b9cc5010170ea37", + "url": "https://api.github.com/repos/s9e/TextFormatter/zipball/d65a4f61cbe494937afb3150dc73b6e757d400d3", + "reference": "d65a4f61cbe494937afb3150dc73b6e757d400d3", "shasum": "" }, "require": { @@ -7640,7 +7391,7 @@ }, "type": "library", "extra": { - "version": "2.18.0" + "version": "2.19.0" }, "autoload": { "psr-4": { @@ -7672,22 +7423,22 @@ ], "support": { "issues": "https://github.com/s9e/TextFormatter/issues", - "source": "https://github.com/s9e/TextFormatter/tree/2.18.0" + "source": "https://github.com/s9e/TextFormatter/tree/2.19.0" }, - "time": "2024-07-24T14:50:52+00:00" + "time": "2025-04-26T09:27:34+00:00" }, { "name": "sabberworm/php-css-parser", - "version": "v8.7.0", + "version": "v8.8.0", "source": { "type": "git", "url": "https://github.com/MyIntervals/PHP-CSS-Parser.git", - "reference": "f414ff953002a9b18e3a116f5e462c56f21237cf" + "reference": "3de493bdddfd1f051249af725c7e0d2c38fed740" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/MyIntervals/PHP-CSS-Parser/zipball/f414ff953002a9b18e3a116f5e462c56f21237cf", - "reference": "f414ff953002a9b18e3a116f5e462c56f21237cf", + "url": "https://api.github.com/repos/MyIntervals/PHP-CSS-Parser/zipball/3de493bdddfd1f051249af725c7e0d2c38fed740", + "reference": "3de493bdddfd1f051249af725c7e0d2c38fed740", "shasum": "" }, "require": { @@ -7695,7 +7446,7 @@ "php": "^5.6.20 || ^7.0.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" }, "require-dev": { - "phpunit/phpunit": "5.7.27 || 6.5.14 || 7.5.20 || 8.5.40" + "phpunit/phpunit": "5.7.27 || 6.5.14 || 7.5.20 || 8.5.41" }, "suggest": { "ext-mbstring": "for parsing UTF-8 CSS" @@ -7737,26 +7488,26 @@ ], "support": { "issues": "https://github.com/MyIntervals/PHP-CSS-Parser/issues", - "source": "https://github.com/MyIntervals/PHP-CSS-Parser/tree/v8.7.0" + "source": "https://github.com/MyIntervals/PHP-CSS-Parser/tree/v8.8.0" }, - "time": "2024-10-27T17:38:32+00:00" + "time": "2025-03-23T17:59:05+00:00" }, { "name": "scheb/2fa-backup-code", - "version": "v6.12.0", + "version": "v6.13.1", "source": { "type": "git", "url": "https://github.com/scheb/2fa-backup-code.git", - "reference": "1ad84e7eb26eb425c609e03097cac99387dde44c" + "reference": "6dceeb5be0f6339d76f8e380ee09631c8bbebc7e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/scheb/2fa-backup-code/zipball/1ad84e7eb26eb425c609e03097cac99387dde44c", - "reference": "1ad84e7eb26eb425c609e03097cac99387dde44c", + "url": "https://api.github.com/repos/scheb/2fa-backup-code/zipball/6dceeb5be0f6339d76f8e380ee09631c8bbebc7e", + "reference": "6dceeb5be0f6339d76f8e380ee09631c8bbebc7e", "shasum": "" }, "require": { - "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", "scheb/2fa-bundle": "self.version" }, "type": "library", @@ -7786,27 +7537,27 @@ "two-step" ], "support": { - "source": "https://github.com/scheb/2fa-backup-code/tree/v6.12.0" + "source": "https://github.com/scheb/2fa-backup-code/tree/v6.13.1" }, - "time": "2023-12-03T15:44:26+00:00" + "time": "2024-11-29T19:22:48+00:00" }, { "name": "scheb/2fa-bundle", - "version": "v6.12.0", + "version": "v6.13.1", "source": { "type": "git", "url": "https://github.com/scheb/2fa-bundle.git", - "reference": "6e51477c53070f27ac3e3d36be1a991870db415a" + "reference": "8eadd57ebc2078ef273dca72b1ac4bd283812346" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/scheb/2fa-bundle/zipball/6e51477c53070f27ac3e3d36be1a991870db415a", - "reference": "6e51477c53070f27ac3e3d36be1a991870db415a", + "url": "https://api.github.com/repos/scheb/2fa-bundle/zipball/8eadd57ebc2078ef273dca72b1ac4bd283812346", + "reference": "8eadd57ebc2078ef273dca72b1ac4bd283812346", "shasum": "" }, "require": { "ext-json": "*", - "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", "symfony/config": "^5.4 || ^6.0", "symfony/dependency-injection": "^5.4 || ^6.0", "symfony/event-dispatcher": "^5.4 || ^6.0", @@ -7854,27 +7605,27 @@ "two-step" ], "support": { - "source": "https://github.com/scheb/2fa-bundle/tree/v6.12.0" + "source": "https://github.com/scheb/2fa-bundle/tree/v6.13.1" }, - "time": "2023-12-03T16:02:15+00:00" + "time": "2024-11-29T19:29:49+00:00" }, { "name": "scheb/2fa-google-authenticator", - "version": "v6.12.0", + "version": "v6.13.1", "source": { "type": "git", "url": "https://github.com/scheb/2fa-google-authenticator.git", - "reference": "2c43bbe432fdc465d8f1d1b2d73ca9ea5276fe34" + "reference": "2c960a5cb32edb4c37f719f10180df378a44fd6f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/scheb/2fa-google-authenticator/zipball/2c43bbe432fdc465d8f1d1b2d73ca9ea5276fe34", - "reference": "2c43bbe432fdc465d8f1d1b2d73ca9ea5276fe34", + "url": "https://api.github.com/repos/scheb/2fa-google-authenticator/zipball/2c960a5cb32edb4c37f719f10180df378a44fd6f", + "reference": "2c960a5cb32edb4c37f719f10180df378a44fd6f", "shasum": "" }, "require": { "paragonie/constant_time_encoding": "^2.4", - "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", "scheb/2fa-bundle": "self.version", "spomky-labs/otphp": "^10.0 || ^11.0" }, @@ -7905,28 +7656,28 @@ "two-step" ], "support": { - "source": "https://github.com/scheb/2fa-google-authenticator/tree/v6.12.0" + "source": "https://github.com/scheb/2fa-google-authenticator/tree/v6.13.1" }, - "time": "2023-12-03T15:44:26+00:00" + "time": "2024-11-29T19:22:48+00:00" }, { "name": "scheb/2fa-trusted-device", - "version": "v6.12.0", + "version": "v6.13.1", "source": { "type": "git", "url": "https://github.com/scheb/2fa-trusted-device.git", - "reference": "1ca6158dc6518ca9dba8b111bd9807a8b9be2903" + "reference": "38e690325232a4037ff4aec8de926c938906942c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/scheb/2fa-trusted-device/zipball/1ca6158dc6518ca9dba8b111bd9807a8b9be2903", - "reference": "1ca6158dc6518ca9dba8b111bd9807a8b9be2903", + "url": "https://api.github.com/repos/scheb/2fa-trusted-device/zipball/38e690325232a4037ff4aec8de926c938906942c", + "reference": "38e690325232a4037ff4aec8de926c938906942c", "shasum": "" }, "require": { "lcobucci/clock": "^2.0 || ^3.0", "lcobucci/jwt": "^4.1 || ^5.0", - "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0", "scheb/2fa-bundle": "self.version" }, "type": "library", @@ -7956,9 +7707,9 @@ "two-step" ], "support": { - "source": "https://github.com/scheb/2fa-trusted-device/tree/v6.12.0" + "source": "https://github.com/scheb/2fa-trusted-device/tree/v6.13.1" }, - "time": "2023-12-03T15:44:26+00:00" + "time": "2024-11-29T19:22:48+00:00" }, { "name": "shivas/versioning-bundle", @@ -8022,16 +7773,16 @@ }, { "name": "spatie/db-dumper", - "version": "3.7.0", + "version": "3.8.0", "source": { "type": "git", "url": "https://github.com/spatie/db-dumper.git", - "reference": "22553ab8c34a9bb70645cb9bc2d9f236f3135705" + "reference": "91e1fd4dc000aefc9753cda2da37069fc996baee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/db-dumper/zipball/22553ab8c34a9bb70645cb9bc2d9f236f3135705", - "reference": "22553ab8c34a9bb70645cb9bc2d9f236f3135705", + "url": "https://api.github.com/repos/spatie/db-dumper/zipball/91e1fd4dc000aefc9753cda2da37069fc996baee", + "reference": "91e1fd4dc000aefc9753cda2da37069fc996baee", "shasum": "" }, "require": { @@ -8069,7 +7820,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/db-dumper/tree/3.7.0" + "source": "https://github.com/spatie/db-dumper/tree/3.8.0" }, "funding": [ { @@ -8081,7 +7832,7 @@ "type": "github" } ], - "time": "2024-09-23T08:58:35+00:00" + "time": "2025-02-14T15:04:22+00:00" }, { "name": "spomky-labs/cbor-php", @@ -8250,39 +8001,37 @@ }, { "name": "spomky-labs/pki-framework", - "version": "1.2.1", + "version": "1.2.3", "source": { "type": "git", "url": "https://github.com/Spomky-Labs/pki-framework.git", - "reference": "0b10c8b53366729417d6226ae89a665f9e2d61b6" + "reference": "5ff1dcc21e961b60149a80e77f744fc047800b31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Spomky-Labs/pki-framework/zipball/0b10c8b53366729417d6226ae89a665f9e2d61b6", - "reference": "0b10c8b53366729417d6226ae89a665f9e2d61b6", + "url": "https://api.github.com/repos/Spomky-Labs/pki-framework/zipball/5ff1dcc21e961b60149a80e77f744fc047800b31", + "reference": "5ff1dcc21e961b60149a80e77f744fc047800b31", "shasum": "" }, "require": { - "brick/math": "^0.10|^0.11|^0.12", + "brick/math": "^0.10|^0.11|^0.12|^0.13", "ext-mbstring": "*", "php": ">=8.1" }, "require-dev": { - "ekino/phpstan-banned-code": "^1.0", + "ekino/phpstan-banned-code": "^1.0|^2.0|^3.0", "ext-gmp": "*", "ext-openssl": "*", - "infection/infection": "^0.28", + "infection/infection": "^0.28|^0.29", "php-parallel-lint/php-parallel-lint": "^1.3", - "phpstan/extension-installer": "^1.3", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-beberlei-assert": "^1.0", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.1", - "phpstan/phpstan-strict-rules": "^1.3", - "phpunit/phpunit": "^10.1|^11.0", - "rector/rector": "^1.0", + "phpstan/extension-installer": "^1.3|^2.0", + "phpstan/phpstan": "^1.8|^2.0", + "phpstan/phpstan-deprecation-rules": "^1.0|^2.0", + "phpstan/phpstan-phpunit": "^1.1|^2.0", + "phpstan/phpstan-strict-rules": "^1.3|^2.0", + "phpunit/phpunit": "^10.1|^11.0|^12.0", + "rector/rector": "^1.0|^2.0", "roave/security-advisories": "dev-latest", - "symfony/phpunit-bridge": "^6.4|^7.0", "symfony/string": "^6.4|^7.0", "symfony/var-dumper": "^6.4|^7.0", "symplify/easy-coding-standard": "^12.0" @@ -8345,7 +8094,7 @@ ], "support": { "issues": "https://github.com/Spomky-Labs/pki-framework/issues", - "source": "https://github.com/Spomky-Labs/pki-framework/tree/1.2.1" + "source": "https://github.com/Spomky-Labs/pki-framework/tree/1.2.3" }, "funding": [ { @@ -8357,7 +8106,7 @@ "type": "patreon" } ], - "time": "2024-03-30T18:03:49+00:00" + "time": "2025-04-25T15:57:13+00:00" }, { "name": "symfony/apache-pack", @@ -8456,16 +8205,16 @@ }, { "name": "symfony/cache", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "8079a3006f53805e7771d086b62428b7cac481dd" + "reference": "d1abcf763a7414f2e572f676f22da7a06c8cd9ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/8079a3006f53805e7771d086b62428b7cac481dd", - "reference": "8079a3006f53805e7771d086b62428b7cac481dd", + "url": "https://api.github.com/repos/symfony/cache/zipball/d1abcf763a7414f2e572f676f22da7a06c8cd9ee", + "reference": "d1abcf763a7414f2e572f676f22da7a06c8cd9ee", "shasum": "" }, "require": { @@ -8532,7 +8281,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v6.4.13" + "source": "https://github.com/symfony/cache/tree/v6.4.21" }, "funding": [ { @@ -8548,20 +8297,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:39:47+00:00" + "time": "2025-04-08T08:21:20+00:00" }, { "name": "symfony/cache-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/cache-contracts.git", - "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197" + "reference": "15a4f8e5cd3bce9aeafc882b1acab39ec8de2c1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/df6a1a44c890faded49a5fca33c2d5c5fd3c2197", - "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/15a4f8e5cd3bce9aeafc882b1acab39ec8de2c1b", + "reference": "15a4f8e5cd3bce9aeafc882b1acab39ec8de2c1b", "shasum": "" }, "require": { @@ -8570,12 +8319,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -8608,7 +8357,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/cache-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/cache-contracts/tree/v3.5.1" }, "funding": [ { @@ -8624,7 +8373,7 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/clock", @@ -8702,16 +8451,16 @@ }, { "name": "symfony/config", - "version": "v6.4.13", + "version": "v6.4.14", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "5ed4195a81d2352e0e4ce24e5f7e26fc794e7597" + "reference": "4e55e7e4ffddd343671ea972216d4509f46c22ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/5ed4195a81d2352e0e4ce24e5f7e26fc794e7597", - "reference": "5ed4195a81d2352e0e4ce24e5f7e26fc794e7597", + "url": "https://api.github.com/repos/symfony/config/zipball/4e55e7e4ffddd343671ea972216d4509f46c22ef", + "reference": "4e55e7e4ffddd343671ea972216d4509f46c22ef", "shasum": "" }, "require": { @@ -8757,7 +8506,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v6.4.13" + "source": "https://github.com/symfony/config/tree/v6.4.14" }, "funding": [ { @@ -8773,20 +8522,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2024-11-04T11:33:53+00:00" }, { "name": "symfony/console", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "f793dd5a7d9ae9923e35d0503d08ba734cec1d79" + "reference": "a3011c7b7adb58d89f6c0d822abb641d7a5f9719" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/f793dd5a7d9ae9923e35d0503d08ba734cec1d79", - "reference": "f793dd5a7d9ae9923e35d0503d08ba734cec1d79", + "url": "https://api.github.com/repos/symfony/console/zipball/a3011c7b7adb58d89f6c0d822abb641d7a5f9719", + "reference": "a3011c7b7adb58d89f6c0d822abb641d7a5f9719", "shasum": "" }, "require": { @@ -8851,7 +8600,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.13" + "source": "https://github.com/symfony/console/tree/v6.4.21" }, "funding": [ { @@ -8867,7 +8616,7 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:40:40+00:00" + "time": "2025-04-07T15:42:41+00:00" }, { "name": "symfony/css-selector", @@ -8936,16 +8685,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v6.4.13", + "version": "v6.4.20", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "728ae8f4e190133ce99d6d5f0bc1e8c8bd7c7a96" + "reference": "c49796a9184a532843e78e50df9e55708b92543a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/728ae8f4e190133ce99d6d5f0bc1e8c8bd7c7a96", - "reference": "728ae8f4e190133ce99d6d5f0bc1e8c8bd7c7a96", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/c49796a9184a532843e78e50df9e55708b92543a", + "reference": "c49796a9184a532843e78e50df9e55708b92543a", "shasum": "" }, "require": { @@ -8953,7 +8702,7 @@ "psr/container": "^1.1|^2.0", "symfony/deprecation-contracts": "^2.5|^3", "symfony/service-contracts": "^2.5|^3.0", - "symfony/var-exporter": "^6.2.10|^7.0" + "symfony/var-exporter": "^6.4.20|^7.2.5" }, "conflict": { "ext-psr": "<1.1|>=2", @@ -8997,7 +8746,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v6.4.13" + "source": "https://github.com/symfony/dependency-injection/tree/v6.4.20" }, "funding": [ { @@ -9013,20 +8762,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-03-13T09:55:08+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" + "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", - "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", + "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", "shasum": "" }, "require": { @@ -9034,12 +8783,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -9064,7 +8813,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.1" }, "funding": [ { @@ -9080,25 +8829,25 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/doctrine-bridge", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/doctrine-bridge.git", - "reference": "402d5831a73217ea76ab7e032cc05045cd3fa678" + "reference": "fcce66ede41ca56100b91fd4a00131ba6cf89aba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/402d5831a73217ea76ab7e032cc05045cd3fa678", - "reference": "402d5831a73217ea76ab7e032cc05045cd3fa678", + "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/fcce66ede41ca56100b91fd4a00131ba6cf89aba", + "reference": "fcce66ede41ca56100b91fd4a00131ba6cf89aba", "shasum": "" }, "require": { "doctrine/event-manager": "^1.2|^2", - "doctrine/persistence": "^3.1", + "doctrine/persistence": "^2.5|^3.1|^4", "php": ">=8.1", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-ctype": "~1.8", @@ -9123,7 +8872,7 @@ }, "require-dev": { "doctrine/collections": "^1.0|^2.0", - "doctrine/data-fixtures": "^1.1", + "doctrine/data-fixtures": "^1.1|^2", "doctrine/dbal": "^2.13.1|^3|^4", "doctrine/orm": "^2.15|^3", "psr/log": "^1|^2|^3", @@ -9172,7 +8921,7 @@ "description": "Provides integration for Doctrine with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/doctrine-bridge/tree/v6.4.13" + "source": "https://github.com/symfony/doctrine-bridge/tree/v6.4.21" }, "funding": [ { @@ -9188,20 +8937,87 @@ "type": "tidelift" } ], - "time": "2024-10-18T09:23:39+00:00" + "time": "2025-04-27T15:22:02+00:00" }, { - "name": "symfony/dotenv", - "version": "v6.4.13", + "name": "symfony/dom-crawler", + "version": "v6.4.19", "source": { "type": "git", - "url": "https://github.com/symfony/dotenv.git", - "reference": "436ae2dd89360fea8c7d5ff3f48ecf523c80bfb4" + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "19073e3e0bb50cbc1cb286077069b3107085206f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dotenv/zipball/436ae2dd89360fea8c7d5ff3f48ecf523c80bfb4", - "reference": "436ae2dd89360fea8c7d5ff3f48ecf523c80bfb4", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/19073e3e0bb50cbc1cb286077069b3107085206f", + "reference": "19073e3e0bb50cbc1cb286077069b3107085206f", + "shasum": "" + }, + "require": { + "masterminds/html5": "^2.6", + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DomCrawler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases DOM navigation for HTML and XML documents", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dom-crawler/tree/v6.4.19" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2025-02-14T17:58:34+00:00" + }, + { + "name": "symfony/dotenv", + "version": "v6.4.16", + "source": { + "type": "git", + "url": "https://github.com/symfony/dotenv.git", + "reference": "1ac5e7e7e862d4d574258daf08bd569ba926e4a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/1ac5e7e7e862d4d574258daf08bd569ba926e4a5", + "reference": "1ac5e7e7e862d4d574258daf08bd569ba926e4a5", "shasum": "" }, "require": { @@ -9246,7 +9062,7 @@ "environment" ], "support": { - "source": "https://github.com/symfony/dotenv/tree/v6.4.13" + "source": "https://github.com/symfony/dotenv/tree/v6.4.16" }, "funding": [ { @@ -9262,20 +9078,20 @@ "type": "tidelift" } ], - "time": "2024-09-28T07:43:51+00:00" + "time": "2024-11-27T11:08:19+00:00" }, { "name": "symfony/error-handler", - "version": "v6.4.13", + "version": "v6.4.20", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c" + "reference": "aa3bcf4f7674719df078e61cc8062e5b7f752031" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c", - "reference": "e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/aa3bcf4f7674719df078e61cc8062e5b7f752031", + "reference": "aa3bcf4f7674719df078e61cc8062e5b7f752031", "shasum": "" }, "require": { @@ -9321,7 +9137,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.13" + "source": "https://github.com/symfony/error-handler/tree/v6.4.20" }, "funding": [ { @@ -9337,7 +9153,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-03-01T13:00:38+00:00" }, { "name": "symfony/event-dispatcher", @@ -9421,16 +9237,16 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" + "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", - "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7642f5e970b672283b7823222ae8ef8bbc160b9f", + "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f", "shasum": "" }, "require": { @@ -9439,12 +9255,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -9477,7 +9293,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.1" }, "funding": [ { @@ -9493,7 +9309,7 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/expression-language", @@ -9627,16 +9443,16 @@ }, { "name": "symfony/finder", - "version": "v6.4.13", + "version": "v6.4.17", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958" + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/daea9eca0b08d0ed1dc9ab702a46128fd1be4958", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958", + "url": "https://api.github.com/repos/symfony/finder/zipball/1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", + "reference": "1d0e8266248c5d9ab6a87e3789e6dc482af3c9c7", "shasum": "" }, "require": { @@ -9671,7 +9487,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.4.13" + "source": "https://github.com/symfony/finder/tree/v6.4.17" }, "funding": [ { @@ -9687,20 +9503,20 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:30:56+00:00" + "time": "2024-12-29T13:51:37+00:00" }, { "name": "symfony/flex", - "version": "v2.4.7", + "version": "v2.5.1", "source": { "type": "git", "url": "https://github.com/symfony/flex.git", - "reference": "92f4fba342161ff36072bd3b8e0b3c6c23160402" + "reference": "62d5c38c7af6280d8605b725364680838b475641" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/flex/zipball/92f4fba342161ff36072bd3b8e0b3c6c23160402", - "reference": "92f4fba342161ff36072bd3b8e0b3c6c23160402", + "url": "https://api.github.com/repos/symfony/flex/zipball/62d5c38c7af6280d8605b725364680838b475641", + "reference": "62d5c38c7af6280d8605b725364680838b475641", "shasum": "" }, "require": { @@ -9739,7 +9555,7 @@ "description": "Composer plugin for Symfony", "support": { "issues": "https://github.com/symfony/flex/issues", - "source": "https://github.com/symfony/flex/tree/v2.4.7" + "source": "https://github.com/symfony/flex/tree/v2.5.1" }, "funding": [ { @@ -9755,20 +9571,20 @@ "type": "tidelift" } ], - "time": "2024-10-07T08:51:54+00:00" + "time": "2025-05-10T14:05:03+00:00" }, { "name": "symfony/form", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "0fe17f90af23908ddc11dc23507db98e66572046" + "reference": "44a0e253c16a3187299f07b8f80e23ecb000d360" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/0fe17f90af23908ddc11dc23507db98e66572046", - "reference": "0fe17f90af23908ddc11dc23507db98e66572046", + "url": "https://api.github.com/repos/symfony/form/zipball/44a0e253c16a3187299f07b8f80e23ecb000d360", + "reference": "44a0e253c16a3187299f07b8f80e23ecb000d360", "shasum": "" }, "require": { @@ -9836,7 +9652,7 @@ "description": "Allows to easily create, process and reuse HTML forms", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/form/tree/v6.4.13" + "source": "https://github.com/symfony/form/tree/v6.4.21" }, "funding": [ { @@ -9852,20 +9668,20 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:40:40+00:00" + "time": "2025-04-27T15:22:02+00:00" }, { "name": "symfony/framework-bundle", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "e8b0bd921f9bd35ea4d1508067c3f3f6e2036418" + "reference": "d0b06133b00e4dd3df7f47a3188fb7baabcc6b2a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/e8b0bd921f9bd35ea4d1508067c3f3f6e2036418", - "reference": "e8b0bd921f9bd35ea4d1508067c3f3f6e2036418", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/d0b06133b00e4dd3df7f47a3188fb7baabcc6b2a", + "reference": "d0b06133b00e4dd3df7f47a3188fb7baabcc6b2a", "shasum": "" }, "require": { @@ -9985,7 +9801,7 @@ "description": "Provides a tight integration between Symfony components and the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/framework-bundle/tree/v6.4.13" + "source": "https://github.com/symfony/framework-bundle/tree/v6.4.21" }, "funding": [ { @@ -10001,27 +9817,27 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/http-client", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "509d0e8a798bf5e41e0b6317e9bce1140af47376" + "reference": "3294a433fc9d12ae58128174896b5b1822c28dad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/509d0e8a798bf5e41e0b6317e9bce1140af47376", - "reference": "509d0e8a798bf5e41e0b6317e9bce1140af47376", + "url": "https://api.github.com/repos/symfony/http-client/zipball/3294a433fc9d12ae58128174896b5b1822c28dad", + "reference": "3294a433fc9d12ae58128174896b5b1822c28dad", "shasum": "" }, "require": { "php": ">=8.1", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3.4.1", + "symfony/http-client-contracts": "~3.4.4|^3.5.2", "symfony/service-contracts": "^2.5|^3" }, "conflict": { @@ -10078,7 +9894,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v6.4.13" + "source": "https://github.com/symfony/http-client/tree/v6.4.19" }, "funding": [ { @@ -10094,20 +9910,20 @@ "type": "tidelift" } ], - "time": "2024-10-14T18:15:01+00:00" + "time": "2025-02-13T09:55:13+00:00" }, { "name": "symfony/http-client-contracts", - "version": "v3.5.0", + "version": "v3.5.2", "source": { "type": "git", "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "20414d96f391677bf80078aa55baece78b82647d" + "reference": "ee8d807ab20fcb51267fdace50fbe3494c31e645" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", - "reference": "20414d96f391677bf80078aa55baece78b82647d", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/ee8d807ab20fcb51267fdace50fbe3494c31e645", + "reference": "ee8d807ab20fcb51267fdace50fbe3494c31e645", "shasum": "" }, "require": { @@ -10115,12 +9931,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -10156,7 +9972,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.2" }, "funding": [ { @@ -10172,20 +9988,20 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-12-07T08:49:48+00:00" }, { "name": "symfony/http-foundation", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "4c0341b3e0a7291e752c69d2a1ed9a84b68d604c" + "reference": "3f0c7ea41db479383b81d436b836d37168fd5b99" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/4c0341b3e0a7291e752c69d2a1ed9a84b68d604c", - "reference": "4c0341b3e0a7291e752c69d2a1ed9a84b68d604c", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3f0c7ea41db479383b81d436b836d37168fd5b99", + "reference": "3f0c7ea41db479383b81d436b836d37168fd5b99", "shasum": "" }, "require": { @@ -10195,12 +10011,12 @@ "symfony/polyfill-php83": "^1.27" }, "conflict": { - "symfony/cache": "<6.3" + "symfony/cache": "<6.4.12|>=7.0,<7.1.5" }, "require-dev": { "doctrine/dbal": "^2.13.1|^3|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.3|^7.0", + "symfony/cache": "^6.4.12|^7.1.5", "symfony/dependency-injection": "^5.4|^6.0|^7.0", "symfony/expression-language": "^5.4|^6.0|^7.0", "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4|^7.0", @@ -10233,7 +10049,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.13" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.21" }, "funding": [ { @@ -10249,20 +10065,20 @@ "type": "tidelift" } ], - "time": "2024-10-11T19:20:58+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "4474015c363ec0cd3bf47d55657e68630dbae66e" + "reference": "983ca05eec6623920d24ec0f1005f487d3734a0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/4474015c363ec0cd3bf47d55657e68630dbae66e", - "reference": "4474015c363ec0cd3bf47d55657e68630dbae66e", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/983ca05eec6623920d24ec0f1005f487d3734a0c", + "reference": "983ca05eec6623920d24ec0f1005f487d3734a0c", "shasum": "" }, "require": { @@ -10347,7 +10163,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.13" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.21" }, "funding": [ { @@ -10363,20 +10179,20 @@ "type": "tidelift" } ], - "time": "2024-10-27T13:00:29+00:00" + "time": "2025-05-02T08:46:38+00:00" }, { "name": "symfony/intl", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "e9fbfa4a20c01f8cc9cbbd59f5faa63f85fe644c" + "reference": "b248d227fa10fd6345efd4c1c74efaa1c1de6f76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/e9fbfa4a20c01f8cc9cbbd59f5faa63f85fe644c", - "reference": "e9fbfa4a20c01f8cc9cbbd59f5faa63f85fe644c", + "url": "https://api.github.com/repos/symfony/intl/zipball/b248d227fa10fd6345efd4c1c74efaa1c1de6f76", + "reference": "b248d227fa10fd6345efd4c1c74efaa1c1de6f76", "shasum": "" }, "require": { @@ -10430,7 +10246,7 @@ "localization" ], "support": { - "source": "https://github.com/symfony/intl/tree/v6.4.13" + "source": "https://github.com/symfony/intl/tree/v6.4.21" }, "funding": [ { @@ -10446,20 +10262,20 @@ "type": "tidelift" } ], - "time": "2024-10-22T10:03:31+00:00" + "time": "2025-04-07T19:02:30+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663" + "reference": "ada2809ccd4ec27aba9fc344e3efdaec624c6438" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", + "url": "https://api.github.com/repos/symfony/mailer/zipball/ada2809ccd4ec27aba9fc344e3efdaec624c6438", + "reference": "ada2809ccd4ec27aba9fc344e3efdaec624c6438", "shasum": "" }, "require": { @@ -10510,7 +10326,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.13" + "source": "https://github.com/symfony/mailer/tree/v6.4.21" }, "funding": [ { @@ -10526,20 +10342,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-26T23:47:35+00:00" }, { "name": "symfony/mime", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855" + "reference": "fec8aa5231f3904754955fad33c2db50594d22d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/1de1cf14d99b12c7ebbb850491ec6ae3ed468855", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855", + "url": "https://api.github.com/repos/symfony/mime/zipball/fec8aa5231f3904754955fad33c2db50594d22d1", + "reference": "fec8aa5231f3904754955fad33c2db50594d22d1", "shasum": "" }, "require": { @@ -10595,7 +10411,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.13" + "source": "https://github.com/symfony/mime/tree/v6.4.21" }, "funding": [ { @@ -10611,7 +10427,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/monolog-bridge", @@ -10775,16 +10591,16 @@ }, { "name": "symfony/options-resolver", - "version": "v6.4.13", + "version": "v6.4.16", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "0a62a9f2504a8dd27083f89d21894ceb01cc59db" + "reference": "368128ad168f20e22c32159b9f761e456cec0c78" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/0a62a9f2504a8dd27083f89d21894ceb01cc59db", - "reference": "0a62a9f2504a8dd27083f89d21894ceb01cc59db", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/368128ad168f20e22c32159b9f761e456cec0c78", + "reference": "368128ad168f20e22c32159b9f761e456cec0c78", "shasum": "" }, "require": { @@ -10822,7 +10638,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.4.13" + "source": "https://github.com/symfony/options-resolver/tree/v6.4.16" }, "funding": [ { @@ -10838,7 +10654,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-20T10:57:02+00:00" }, { "name": "symfony/password-hasher", @@ -10914,7 +10730,7 @@ }, { "name": "symfony/polyfill-ctype", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", @@ -10938,8 +10754,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -10973,7 +10789,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.32.0" }, "funding": [ { @@ -10993,7 +10809,7 @@ }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", @@ -11014,8 +10830,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11051,7 +10867,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.32.0" }, "funding": [ { @@ -11071,16 +10887,16 @@ }, { "name": "symfony/polyfill-intl-icu", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78" + "reference": "763d2a91fea5681509ca01acbc1c5e450d127811" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", + "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/763d2a91fea5681509ca01acbc1c5e450d127811", + "reference": "763d2a91fea5681509ca01acbc1c5e450d127811", "shasum": "" }, "require": { @@ -11092,8 +10908,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11135,7 +10951,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.32.0" }, "funding": [ { @@ -11151,20 +10967,20 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-12-21T18:38:29+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773" + "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/c36586dcf89a12315939e00ec9b4474adcb1d773", - "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/9614ac4d8061dc257ecc64cba1b140873dce8ad3", + "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3", "shasum": "" }, "require": { @@ -11177,8 +10993,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11218,7 +11034,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.32.0" }, "funding": [ { @@ -11234,11 +11050,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-09-10T14:38:51+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", @@ -11259,8 +11075,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11299,7 +11115,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.32.0" }, "funding": [ { @@ -11319,19 +11135,20 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", "shasum": "" }, "require": { + "ext-iconv": "*", "php": ">=7.2" }, "provide": { @@ -11343,8 +11160,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11379,7 +11196,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.32.0" }, "funding": [ { @@ -11395,167 +11212,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.31.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "type": "library", - "extra": { - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-09T11:45:10+00:00" - }, - { - "name": "symfony/polyfill-php81", - "version": "v1.31.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", - "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "type": "library", - "extra": { - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-12-23T08:48:59+00:00" }, { "name": "symfony/polyfill-php82", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php82.git", @@ -11573,8 +11234,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11611,7 +11272,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php82/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php82/tree/v1.32.0" }, "funding": [ { @@ -11631,7 +11292,7 @@ }, { "name": "symfony/polyfill-php83", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php83.git", @@ -11649,8 +11310,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11687,7 +11348,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php83/tree/v1.32.0" }, "funding": [ { @@ -11705,9 +11366,85 @@ ], "time": "2024-09-09T11:45:10+00:00" }, + { + "name": "symfony/polyfill-php84", + "version": "v1.32.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php84.git", + "reference": "000df7860439609837bbe28670b0be15783b7fbf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/000df7860439609837bbe28670b0be15783b7fbf", + "reference": "000df7860439609837bbe28670b0be15783b7fbf", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php84\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.4+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php84/tree/v1.32.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2025-02-20T12:04:08+00:00" + }, { "name": "symfony/polyfill-uuid", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-uuid.git", @@ -11731,8 +11468,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -11766,7 +11503,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.32.0" }, "funding": [ { @@ -11786,16 +11523,16 @@ }, { "name": "symfony/process", - "version": "v6.4.13", + "version": "v6.4.20", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "1f9f59b46880201629df3bd950fc5ae8c55b960f" + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/1f9f59b46880201629df3bd950fc5ae8c55b960f", - "reference": "1f9f59b46880201629df3bd950fc5ae8c55b960f", + "url": "https://api.github.com/repos/symfony/process/zipball/e2a61c16af36c9a07e5c9906498b73e091949a20", + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20", "shasum": "" }, "require": { @@ -11827,7 +11564,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.13" + "source": "https://github.com/symfony/process/tree/v6.4.20" }, "funding": [ { @@ -11843,20 +11580,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-03-10T17:11:00+00:00" }, { "name": "symfony/property-access", - "version": "v6.4.13", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", - "reference": "8cc779d88d12e440adaa26387bcfc25744064afe" + "reference": "80e0378f2f058b60d87dedc3c760caec882e992c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/8cc779d88d12e440adaa26387bcfc25744064afe", - "reference": "8cc779d88d12e440adaa26387bcfc25744064afe", + "url": "https://api.github.com/repos/symfony/property-access/zipball/80e0378f2f058b60d87dedc3c760caec882e992c", + "reference": "80e0378f2f058b60d87dedc3c760caec882e992c", "shasum": "" }, "require": { @@ -11904,7 +11641,7 @@ "reflection" ], "support": { - "source": "https://github.com/symfony/property-access/tree/v6.4.13" + "source": "https://github.com/symfony/property-access/tree/v6.4.18" }, "funding": [ { @@ -11920,20 +11657,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-12-16T14:42:05+00:00" }, { "name": "symfony/property-info", - "version": "v6.4.13", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "ea388133aadf407dfa54092873d1b7e52f439515" + "reference": "94d18e5cc11a37fd92856d38b61d9cdf72536a1e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/ea388133aadf407dfa54092873d1b7e52f439515", - "reference": "ea388133aadf407dfa54092873d1b7e52f439515", + "url": "https://api.github.com/repos/symfony/property-info/zipball/94d18e5cc11a37fd92856d38b61d9cdf72536a1e", + "reference": "94d18e5cc11a37fd92856d38b61d9cdf72536a1e", "shasum": "" }, "require": { @@ -11941,17 +11678,20 @@ "symfony/string": "^5.4|^6.0|^7.0" }, "conflict": { + "doctrine/annotations": "<1.12", "phpdocumentor/reflection-docblock": "<5.2", "phpdocumentor/type-resolver": "<1.5.1", - "symfony/dependency-injection": "<5.4", - "symfony/serializer": "<6.4" + "symfony/cache": "<5.4", + "symfony/dependency-injection": "<5.4|>=6.0,<6.4", + "symfony/serializer": "<5.4" }, "require-dev": { + "doctrine/annotations": "^1.12|^2", "phpdocumentor/reflection-docblock": "^5.2", - "phpstan/phpdoc-parser": "^1.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", "symfony/cache": "^5.4|^6.0|^7.0", "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/serializer": "^6.4|^7.0" + "symfony/serializer": "^5.4|^6.4|^7.0" }, "type": "library", "autoload": { @@ -11987,7 +11727,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v6.4.13" + "source": "https://github.com/symfony/property-info/tree/v6.4.18" }, "funding": [ { @@ -12003,74 +11743,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" - }, - { - "name": "symfony/proxy-manager-bridge", - "version": "v6.4.13", - "source": { - "type": "git", - "url": "https://github.com/symfony/proxy-manager-bridge.git", - "reference": "8932b572e147e80fb498045c580eb14215197529" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/8932b572e147e80fb498045c580eb14215197529", - "reference": "8932b572e147e80fb498045c580eb14215197529", - "shasum": "" - }, - "require": { - "friendsofphp/proxy-manager-lts": "^1.0.2", - "php": ">=8.1", - "symfony/dependency-injection": "^6.3|^7.0", - "symfony/deprecation-contracts": "^2.5|^3" - }, - "require-dev": { - "symfony/config": "^6.1|^7.0" - }, - "type": "symfony-bridge", - "autoload": { - "psr-4": { - "Symfony\\Bridge\\ProxyManager\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides integration for ProxyManager with various Symfony components", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/proxy-manager-bridge/tree/v6.4.13" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-01-21T10:52:27+00:00" }, { "name": "symfony/psr-http-message-bridge", @@ -12157,16 +11830,16 @@ }, { "name": "symfony/rate-limiter", - "version": "v6.4.13", + "version": "v6.4.15", "source": { "type": "git", "url": "https://github.com/symfony/rate-limiter.git", - "reference": "96070e47962ee0094c1853b39d0fc03b98e24643" + "reference": "e250d82fc17b277b97cbce94efef5414aff29bf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/96070e47962ee0094c1853b39d0fc03b98e24643", - "reference": "96070e47962ee0094c1853b39d0fc03b98e24643", + "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/e250d82fc17b277b97cbce94efef5414aff29bf9", + "reference": "e250d82fc17b277b97cbce94efef5414aff29bf9", "shasum": "" }, "require": { @@ -12208,7 +11881,7 @@ "rate-limiter" ], "support": { - "source": "https://github.com/symfony/rate-limiter/tree/v6.4.13" + "source": "https://github.com/symfony/rate-limiter/tree/v6.4.15" }, "funding": [ { @@ -12224,20 +11897,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-09T07:19:24+00:00" }, { "name": "symfony/routing", - "version": "v6.4.13", + "version": "v6.4.18", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "640a74250d13f9c30d5ca045b6aaaabcc8215278" + "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/640a74250d13f9c30d5ca045b6aaaabcc8215278", - "reference": "640a74250d13f9c30d5ca045b6aaaabcc8215278", + "url": "https://api.github.com/repos/symfony/routing/zipball/e9bfc94953019089acdfb9be51c1b9142c4afa68", + "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68", "shasum": "" }, "require": { @@ -12291,7 +11964,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.13" + "source": "https://github.com/symfony/routing/tree/v6.4.18" }, "funding": [ { @@ -12307,20 +11980,20 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:30:56+00:00" + "time": "2025-01-09T08:51:02+00:00" }, { "name": "symfony/runtime", - "version": "v6.4.13", + "version": "v6.4.14", "source": { "type": "git", "url": "https://github.com/symfony/runtime.git", - "reference": "2c61a6c1b1fb842cedcb73e137e23c35b450df46" + "reference": "4facd4174f45cd37c65860403412b67c7381136a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/runtime/zipball/2c61a6c1b1fb842cedcb73e137e23c35b450df46", - "reference": "2c61a6c1b1fb842cedcb73e137e23c35b450df46", + "url": "https://api.github.com/repos/symfony/runtime/zipball/4facd4174f45cd37c65860403412b67c7381136a", + "reference": "4facd4174f45cd37c65860403412b67c7381136a", "shasum": "" }, "require": { @@ -12370,7 +12043,7 @@ "runtime" ], "support": { - "source": "https://github.com/symfony/runtime/tree/v6.4.13" + "source": "https://github.com/symfony/runtime/tree/v6.4.14" }, "funding": [ { @@ -12386,20 +12059,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-05T16:39:55+00:00" }, { "name": "symfony/security-bundle", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/security-bundle.git", - "reference": "181d1fcf5f88ef8212ed7f6434e5ff51c9d7dff3" + "reference": "99b656ff6046ef217d4e3f852940de7e22489849" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-bundle/zipball/181d1fcf5f88ef8212ed7f6434e5ff51c9d7dff3", - "reference": "181d1fcf5f88ef8212ed7f6434e5ff51c9d7dff3", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/99b656ff6046ef217d4e3f852940de7e22489849", + "reference": "99b656ff6046ef217d4e3f852940de7e22489849", "shasum": "" }, "require": { @@ -12482,7 +12155,7 @@ "description": "Provides a tight integration of the Security component into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-bundle/tree/v6.4.13" + "source": "https://github.com/symfony/security-bundle/tree/v6.4.21" }, "funding": [ { @@ -12498,20 +12171,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/security-core", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "bbd1a919aec8696a95bf8749d5577fbe74de973c" + "reference": "c6e70da38436a9a49ed39d9cbead1ecf760f0fbd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/bbd1a919aec8696a95bf8749d5577fbe74de973c", - "reference": "bbd1a919aec8696a95bf8749d5577fbe74de973c", + "url": "https://api.github.com/repos/symfony/security-core/zipball/c6e70da38436a9a49ed39d9cbead1ecf760f0fbd", + "reference": "c6e70da38436a9a49ed39d9cbead1ecf760f0fbd", "shasum": "" }, "require": { @@ -12568,7 +12241,7 @@ "description": "Symfony Security Component - Core Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-core/tree/v6.4.13" + "source": "https://github.com/symfony/security-core/tree/v6.4.21" }, "funding": [ { @@ -12584,7 +12257,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-04-17T07:43:34+00:00" }, { "name": "symfony/security-csrf", @@ -12656,16 +12329,16 @@ }, { "name": "symfony/security-http", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/security-http.git", - "reference": "f5aa8f50a0d01a79fe8f4e5de0ec2e627b6a80be" + "reference": "67d0edaf6702c3192f27ad483df9a875c9a1f1a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-http/zipball/f5aa8f50a0d01a79fe8f4e5de0ec2e627b6a80be", - "reference": "f5aa8f50a0d01a79fe8f4e5de0ec2e627b6a80be", + "url": "https://api.github.com/repos/symfony/security-http/zipball/67d0edaf6702c3192f27ad483df9a875c9a1f1a2", + "reference": "67d0edaf6702c3192f27ad483df9a875c9a1f1a2", "shasum": "" }, "require": { @@ -12724,7 +12397,7 @@ "description": "Symfony Security Component - HTTP Integration", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-http/tree/v6.4.13" + "source": "https://github.com/symfony/security-http/tree/v6.4.21" }, "funding": [ { @@ -12740,20 +12413,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-27T13:58:34+00:00" }, { "name": "symfony/serializer", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "8be421505938b11a0ca4f656e4322232236386f0" + "reference": "c45f8f7763afb11e85772c0c1debb8f272c17f51" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/8be421505938b11a0ca4f656e4322232236386f0", - "reference": "8be421505938b11a0ca4f656e4322232236386f0", + "url": "https://api.github.com/repos/symfony/serializer/zipball/c45f8f7763afb11e85772c0c1debb8f272c17f51", + "reference": "c45f8f7763afb11e85772c0c1debb8f272c17f51", "shasum": "" }, "require": { @@ -12822,7 +12495,7 @@ "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/serializer/tree/v6.4.13" + "source": "https://github.com/symfony/serializer/tree/v6.4.21" }, "funding": [ { @@ -12838,20 +12511,20 @@ "type": "tidelift" } ], - "time": "2024-10-03T09:58:04+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" + "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", - "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/e53260aabf78fb3d63f8d79d69ece59f80d5eda0", + "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0", "shasum": "" }, "require": { @@ -12864,12 +12537,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -12905,7 +12578,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.5.1" }, "funding": [ { @@ -12921,20 +12594,20 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/stimulus-bundle", - "version": "v2.21.0", + "version": "v2.24.0", "source": { "type": "git", "url": "https://github.com/symfony/stimulus-bundle.git", - "reference": "e5f7747b514865719e0990389ce35a9b71bebb48" + "reference": "e09840304467cda3324cc116c7f4ee23c8ff227c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stimulus-bundle/zipball/e5f7747b514865719e0990389ce35a9b71bebb48", - "reference": "e5f7747b514865719e0990389ce35a9b71bebb48", + "url": "https://api.github.com/repos/symfony/stimulus-bundle/zipball/e09840304467cda3324cc116c7f4ee23c8ff227c", + "reference": "e09840304467cda3324cc116c7f4ee23c8ff227c", "shasum": "" }, "require": { @@ -12974,7 +12647,7 @@ "symfony-ux" ], "support": { - "source": "https://github.com/symfony/stimulus-bundle/tree/v2.21.0" + "source": "https://github.com/symfony/stimulus-bundle/tree/v2.24.0" }, "funding": [ { @@ -12990,20 +12663,20 @@ "type": "tidelift" } ], - "time": "2024-10-05T22:11:16+00:00" + "time": "2025-03-09T21:10:04+00:00" }, { "name": "symfony/stopwatch", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "2cae0a6f8d04937d02f6d19806251e2104d54f92" + "reference": "dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/2cae0a6f8d04937d02f6d19806251e2104d54f92", - "reference": "2cae0a6f8d04937d02f6d19806251e2104d54f92", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c", + "reference": "dfe1481c12c06266d0c3d58c0cb4b09bd497ab9c", "shasum": "" }, "require": { @@ -13036,7 +12709,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.4.13" + "source": "https://github.com/symfony/stopwatch/tree/v6.4.19" }, "funding": [ { @@ -13052,20 +12725,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-02-21T10:06:30+00:00" }, { "name": "symfony/string", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "38371c60c71c72b3d64d8d76f6b1bb81a2cc3627" + "reference": "73e2c6966a5aef1d4892873ed5322245295370c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/38371c60c71c72b3d64d8d76f6b1bb81a2cc3627", - "reference": "38371c60c71c72b3d64d8d76f6b1bb81a2cc3627", + "url": "https://api.github.com/repos/symfony/string/zipball/73e2c6966a5aef1d4892873ed5322245295370c6", + "reference": "73e2c6966a5aef1d4892873ed5322245295370c6", "shasum": "" }, "require": { @@ -13122,7 +12795,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.4.13" + "source": "https://github.com/symfony/string/tree/v6.4.21" }, "funding": [ { @@ -13138,20 +12811,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-18T15:23:29+00:00" }, { "name": "symfony/translation", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66" + "reference": "bb92ea5588396b319ba43283a5a3087a034cb29c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/bee9bfabfa8b4045a66bf82520e492cddbaffa66", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66", + "url": "https://api.github.com/repos/symfony/translation/zipball/bb92ea5588396b319ba43283a5a3087a034cb29c", + "reference": "bb92ea5588396b319ba43283a5a3087a034cb29c", "shasum": "" }, "require": { @@ -13217,7 +12890,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.13" + "source": "https://github.com/symfony/translation/tree/v6.4.21" }, "funding": [ { @@ -13233,20 +12906,20 @@ "type": "tidelift" } ], - "time": "2024-09-27T18:14:25+00:00" + "time": "2025-04-07T19:02:30+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a" + "reference": "4667ff3bd513750603a09c8dedbea942487fb07c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", - "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/4667ff3bd513750603a09c8dedbea942487fb07c", + "reference": "4667ff3bd513750603a09c8dedbea942487fb07c", "shasum": "" }, "require": { @@ -13254,12 +12927,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -13295,7 +12968,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.5.1" }, "funding": [ { @@ -13311,20 +12984,20 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/twig-bridge", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "ec3511eef0576f378b2758da9e1c157086babd59" + "reference": "0457b7944bf1cc9c846c98d4923b5379ec6afc09" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/ec3511eef0576f378b2758da9e1c157086babd59", - "reference": "ec3511eef0576f378b2758da9e1c157086babd59", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/0457b7944bf1cc9c846c98d4923b5379ec6afc09", + "reference": "0457b7944bf1cc9c846c98d4923b5379ec6afc09", "shasum": "" }, "require": { @@ -13355,7 +13028,7 @@ "symfony/dependency-injection": "^5.4|^6.0|^7.0", "symfony/expression-language": "^5.4|^6.0|^7.0", "symfony/finder": "^5.4|^6.0|^7.0", - "symfony/form": "^6.4|^7.0", + "symfony/form": "^6.4.20|^7.2.5", "symfony/html-sanitizer": "^6.1|^7.0", "symfony/http-foundation": "^5.4|^6.0|^7.0", "symfony/http-kernel": "^6.4|^7.0", @@ -13404,7 +13077,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v6.4.13" + "source": "https://github.com/symfony/twig-bridge/tree/v6.4.21" }, "funding": [ { @@ -13420,7 +13093,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/twig-bundle", @@ -13582,16 +13255,16 @@ }, { "name": "symfony/ux-translator", - "version": "v2.21.0", + "version": "v2.24.0", "source": { "type": "git", "url": "https://github.com/symfony/ux-translator.git", - "reference": "df523d5f90256a40bc7ceaabfe6664bd9856cb74" + "reference": "a829b5c83ed676a8e848dce90dd6d42f12e90be6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ux-translator/zipball/df523d5f90256a40bc7ceaabfe6664bd9856cb74", - "reference": "df523d5f90256a40bc7ceaabfe6664bd9856cb74", + "url": "https://api.github.com/repos/symfony/ux-translator/zipball/a829b5c83ed676a8e848dce90dd6d42f12e90be6", + "reference": "a829b5c83ed676a8e848dce90dd6d42f12e90be6", "shasum": "" }, "require": { @@ -13609,8 +13282,8 @@ "type": "symfony-bundle", "extra": { "thanks": { - "name": "symfony/ux", - "url": "https://github.com/symfony/ux" + "url": "https://github.com/symfony/ux", + "name": "symfony/ux" } }, "autoload": { @@ -13638,7 +13311,7 @@ "symfony-ux" ], "support": { - "source": "https://github.com/symfony/ux-translator/tree/v2.21.0" + "source": "https://github.com/symfony/ux-translator/tree/v2.24.0" }, "funding": [ { @@ -13654,20 +13327,20 @@ "type": "tidelift" } ], - "time": "2024-10-12T06:22:44+00:00" + "time": "2025-03-09T21:10:04+00:00" }, { "name": "symfony/ux-turbo", - "version": "v2.21.0", + "version": "v2.24.0", "source": { "type": "git", "url": "https://github.com/symfony/ux-turbo.git", - "reference": "075c609e54fc421c6b1c1974e46e9a8b2d44277c" + "reference": "22954300bd0b01ca46f17c7890ea15138d9cf67f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ux-turbo/zipball/075c609e54fc421c6b1c1974e46e9a8b2d44277c", - "reference": "075c609e54fc421c6b1c1974e46e9a8b2d44277c", + "url": "https://api.github.com/repos/symfony/ux-turbo/zipball/22954300bd0b01ca46f17c7890ea15138d9cf67f", + "reference": "22954300bd0b01ca46f17c7890ea15138d9cf67f", "shasum": "" }, "require": { @@ -13702,8 +13375,8 @@ "type": "symfony-bundle", "extra": { "thanks": { - "name": "symfony/ux", - "url": "https://github.com/symfony/ux" + "url": "https://github.com/symfony/ux", + "name": "symfony/ux" } }, "autoload": { @@ -13736,7 +13409,7 @@ "turbo-stream" ], "support": { - "source": "https://github.com/symfony/ux-turbo/tree/v2.21.0" + "source": "https://github.com/symfony/ux-turbo/tree/v2.24.0" }, "funding": [ { @@ -13752,20 +13425,20 @@ "type": "tidelift" } ], - "time": "2024-10-21T19:07:02+00:00" + "time": "2025-04-04T17:29:20+00:00" }, { "name": "symfony/validator", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "68e0bf4522756269d9bff801a16701b2ed5eb730" + "reference": "47610116f476595b90c368ff2a22514050712785" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/68e0bf4522756269d9bff801a16701b2ed5eb730", - "reference": "68e0bf4522756269d9bff801a16701b2ed5eb730", + "url": "https://api.github.com/repos/symfony/validator/zipball/47610116f476595b90c368ff2a22514050712785", + "reference": "47610116f476595b90c368ff2a22514050712785", "shasum": "" }, "require": { @@ -13833,7 +13506,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v6.4.13" + "source": "https://github.com/symfony/validator/tree/v6.4.21" }, "funding": [ { @@ -13849,20 +13522,20 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-04-30T18:50:04+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41" + "reference": "22560f80c0c5cd58cc0bcaf73455ffd81eb380d5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41", - "reference": "2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/22560f80c0c5cd58cc0bcaf73455ffd81eb380d5", + "reference": "22560f80c0c5cd58cc0bcaf73455ffd81eb380d5", "shasum": "" }, "require": { @@ -13918,7 +13591,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.13" + "source": "https://github.com/symfony/var-dumper/tree/v6.4.21" }, "funding": [ { @@ -13934,20 +13607,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-09T07:34:50+00:00" }, { "name": "symfony/var-exporter", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "0f605f72a363f8743001038a176eeb2a11223b51" + "reference": "717e7544aa99752c54ecba5c0e17459c48317472" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0f605f72a363f8743001038a176eeb2a11223b51", - "reference": "0f605f72a363f8743001038a176eeb2a11223b51", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/717e7544aa99752c54ecba5c0e17459c48317472", + "reference": "717e7544aa99752c54ecba5c0e17459c48317472", "shasum": "" }, "require": { @@ -13995,7 +13668,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.13" + "source": "https://github.com/symfony/var-exporter/tree/v6.4.21" }, "funding": [ { @@ -14011,7 +13684,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-27T21:06:26+00:00" }, { "name": "symfony/web-link", @@ -14128,8 +13801,8 @@ "type": "symfony-bundle", "extra": { "thanks": { - "name": "symfony/webpack-encore", - "url": "https://github.com/symfony/webpack-encore" + "url": "https://github.com/symfony/webpack-encore", + "name": "symfony/webpack-encore" } }, "autoload": { @@ -14170,16 +13843,16 @@ }, { "name": "symfony/yaml", - "version": "v6.4.13", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9" + "reference": "f01987f45676778b474468aa266fe2eda1f2bc7e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", - "reference": "e99b4e94d124b29ee4cf3140e1b537d2dad8cec9", + "url": "https://api.github.com/repos/symfony/yaml/zipball/f01987f45676778b474468aa266fe2eda1f2bc7e", + "reference": "f01987f45676778b474468aa266fe2eda1f2bc7e", "shasum": "" }, "require": { @@ -14222,7 +13895,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.4.13" + "source": "https://github.com/symfony/yaml/tree/v6.4.21" }, "funding": [ { @@ -14238,20 +13911,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2025-04-04T09:48:44+00:00" }, { "name": "tecnickcom/tc-lib-barcode", - "version": "2.3.2", + "version": "2.4.6", "source": { "type": "git", "url": "https://github.com/tecnickcom/tc-lib-barcode.git", - "reference": "e6ba1a00575c949faf8d56cdd7d71c39b3397b92" + "reference": "c6130222fdc02a2d7c90682b5c2ca24a059c16f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tecnickcom/tc-lib-barcode/zipball/e6ba1a00575c949faf8d56cdd7d71c39b3397b92", - "reference": "e6ba1a00575c949faf8d56cdd7d71c39b3397b92", + "url": "https://api.github.com/repos/tecnickcom/tc-lib-barcode/zipball/c6130222fdc02a2d7c90682b5c2ca24a059c16f4", + "reference": "c6130222fdc02a2d7c90682b5c2ca24a059c16f4", "shasum": "" }, "require": { @@ -14259,14 +13932,14 @@ "ext-date": "*", "ext-gd": "*", "ext-pcre": "*", - "php": ">=8.0", + "php": ">=8.1", "tecnickcom/tc-lib-color": "^2.2" }, "require-dev": { - "pdepend/pdepend": "2.13.0", - "phpmd/phpmd": "2.13.0", - "phpunit/phpunit": "10.1.2 || 9.6.13", - "squizlabs/php_codesniffer": "3.7.2" + "pdepend/pdepend": "2.16.2", + "phpmd/phpmd": "2.15.0", + "phpunit/phpunit": "12.1.3 || 11.5.7 || 10.5.40", + "squizlabs/php_codesniffer": "3.12.2" }, "type": "library", "autoload": { @@ -14330,39 +14003,39 @@ ], "support": { "issues": "https://github.com/tecnickcom/tc-lib-barcode/issues", - "source": "https://github.com/tecnickcom/tc-lib-barcode/tree/2.3.2" + "source": "https://github.com/tecnickcom/tc-lib-barcode/tree/2.4.6" }, "funding": [ { - "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_donations¤cy_code=GBP&business=paypal@tecnick.com&item_name=donation%20for%20tc-lib-barcode%20project", + "url": "https://www.paypal.com/donate/?hosted_button_id=NZUEC5XS8MFBJ", "type": "custom" } ], - "time": "2024-10-26T12:35:31+00:00" + "time": "2025-05-13T05:49:21+00:00" }, { "name": "tecnickcom/tc-lib-color", - "version": "2.2.4", + "version": "2.2.11", "source": { "type": "git", "url": "https://github.com/tecnickcom/tc-lib-color.git", - "reference": "37e63eaf78e288569f43640d858808015deacc0a" + "reference": "ead45d76932d936e065062194032bf87f7ea45f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tecnickcom/tc-lib-color/zipball/37e63eaf78e288569f43640d858808015deacc0a", - "reference": "37e63eaf78e288569f43640d858808015deacc0a", + "url": "https://api.github.com/repos/tecnickcom/tc-lib-color/zipball/ead45d76932d936e065062194032bf87f7ea45f8", + "reference": "ead45d76932d936e065062194032bf87f7ea45f8", "shasum": "" }, "require": { "ext-pcre": "*", - "php": ">=8.0" + "php": ">=8.1" }, "require-dev": { - "pdepend/pdepend": "2.13.0", - "phpmd/phpmd": "2.13.0", - "phpunit/phpunit": "10.1.2 || 9.6.13", - "squizlabs/php_codesniffer": "3.7.2" + "pdepend/pdepend": "2.16.2", + "phpmd/phpmd": "2.15.0", + "phpunit/phpunit": "12.1.3 || 11.5.7 || 10.5.40", + "squizlabs/php_codesniffer": "3.12.2" }, "type": "library", "autoload": { @@ -14399,43 +14072,45 @@ ], "support": { "issues": "https://github.com/tecnickcom/tc-lib-color/issues", - "source": "https://github.com/tecnickcom/tc-lib-color/tree/2.2.4" + "source": "https://github.com/tecnickcom/tc-lib-color/tree/2.2.11" }, "funding": [ { - "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_donations¤cy_code=GBP&business=paypal@tecnick.com&item_name=donation%20for%20tc-lib-color%20project", + "url": "https://www.paypal.com/donate/?hosted_button_id=NZUEC5XS8MFBJ", "type": "custom" } ], - "time": "2024-10-26T12:33:55+00:00" + "time": "2025-05-13T05:47:44+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "v2.2.7", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb" + "reference": "0d72ac1c00084279c1816675284073c5a337c20d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/83ee6f38df0a63106a9e4536e3060458b74ccedb", - "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0d72ac1c00084279c1816675284073c5a337c20d", + "reference": "0d72ac1c00084279c1816675284073c5a337c20d", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", - "php": "^5.5 || ^7.0 || ^8.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0" + "php": "^7.4 || ^8.0", + "symfony/css-selector": "^5.4 || ^6.0 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10" + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^8.5.21 || ^9.5.10" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.x-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -14458,26 +14133,26 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.2.7" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.3.0" }, - "time": "2023-12-08T13:03:43+00:00" + "time": "2024-12-21T16:25:41+00:00" }, { "name": "twig/cssinliner-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/cssinliner-extra.git", - "reference": "cef36c444b1cce4c0978d7aebd20427671a918f4" + "reference": "378d29b61d6406c456e3a4afbd15bbeea0b72ea8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/cssinliner-extra/zipball/cef36c444b1cce4c0978d7aebd20427671a918f4", - "reference": "cef36c444b1cce4c0978d7aebd20427671a918f4", + "url": "https://api.github.com/repos/twigphp/cssinliner-extra/zipball/378d29b61d6406c456e3a4afbd15bbeea0b72ea8", + "reference": "378d29b61d6406c456e3a4afbd15bbeea0b72ea8", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/deprecation-contracts": "^2.5|^3", "tijsverkoyen/css-to-inline-styles": "^2.0", "twig/twig": "^3.13|^4.0" @@ -14517,7 +14192,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/cssinliner-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/cssinliner-extra/tree/v3.21.0" }, "funding": [ { @@ -14529,27 +14204,27 @@ "type": "tidelift" } ], - "time": "2024-09-03T13:08:40+00:00" + "time": "2025-01-31T20:45:36+00:00" }, { "name": "twig/extra-bundle", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/twig-extra-bundle.git", - "reference": "21a9a7aa9f79d4493bb6fed4eb2794339f9551f5" + "reference": "62d1cf47a1aa009cbd07b21045b97d3d5cb79896" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/21a9a7aa9f79d4493bb6fed4eb2794339f9551f5", - "reference": "21a9a7aa9f79d4493bb6fed4eb2794339f9551f5", + "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/62d1cf47a1aa009cbd07b21045b97d3d5cb79896", + "reference": "62d1cf47a1aa009cbd07b21045b97d3d5cb79896", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/framework-bundle": "^5.4|^6.4|^7.0", "symfony/twig-bundle": "^5.4|^6.4|^7.0", - "twig/twig": "^3.0|^4.0" + "twig/twig": "^3.2|^4.0" }, "require-dev": { "league/commonmark": "^1.0|^2.0", @@ -14591,7 +14266,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.13.0" + "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.21.0" }, "funding": [ { @@ -14603,24 +14278,24 @@ "type": "tidelift" } ], - "time": "2024-09-01T20:39:12+00:00" + "time": "2025-02-19T14:29:33+00:00" }, { "name": "twig/html-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/html-extra.git", - "reference": "8229e750091171c1f11801a525927811c7ac5a7e" + "reference": "5442dd707601c83b8cd4233e37bb10ab8489a90f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/html-extra/zipball/8229e750091171c1f11801a525927811c7ac5a7e", - "reference": "8229e750091171c1f11801a525927811c7ac5a7e", + "url": "https://api.github.com/repos/twigphp/html-extra/zipball/5442dd707601c83b8cd4233e37bb10ab8489a90f", + "reference": "5442dd707601c83b8cd4233e37bb10ab8489a90f", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/deprecation-contracts": "^2.5|^3", "symfony/mime": "^5.4|^6.4|^7.0", "twig/twig": "^3.13|^4.0" @@ -14659,7 +14334,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/html-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/html-extra/tree/v3.21.0" }, "funding": [ { @@ -14671,25 +14346,25 @@ "type": "tidelift" } ], - "time": "2024-09-03T13:08:40+00:00" + "time": "2025-02-19T14:29:33+00:00" }, { "name": "twig/inky-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/inky-extra.git", - "reference": "60c92c2a435ccd95d7a852229f01098aaf7fbced" + "reference": "aacd79d94534b4a7fd6533cb5c33c4ee97239a0d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/inky-extra/zipball/60c92c2a435ccd95d7a852229f01098aaf7fbced", - "reference": "60c92c2a435ccd95d7a852229f01098aaf7fbced", + "url": "https://api.github.com/repos/twigphp/inky-extra/zipball/aacd79d94534b4a7fd6533cb5c33c4ee97239a0d", + "reference": "aacd79d94534b4a7fd6533cb5c33c4ee97239a0d", "shasum": "" }, "require": { "lorenzo/pinky": "^1.0.5", - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/deprecation-contracts": "^2.5|^3", "twig/twig": "^3.13|^4.0" }, @@ -14729,7 +14404,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/inky-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/inky-extra/tree/v3.21.0" }, "funding": [ { @@ -14741,24 +14416,24 @@ "type": "tidelift" } ], - "time": "2024-09-03T13:08:40+00:00" + "time": "2025-01-31T20:45:36+00:00" }, { "name": "twig/intl-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/intl-extra.git", - "reference": "1b8d78c5db08bdc61015fd55009d2e84b3aa7e38" + "reference": "05bc5d46b9df9e62399eae53e7c0b0633298b146" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/intl-extra/zipball/1b8d78c5db08bdc61015fd55009d2e84b3aa7e38", - "reference": "1b8d78c5db08bdc61015fd55009d2e84b3aa7e38", + "url": "https://api.github.com/repos/twigphp/intl-extra/zipball/05bc5d46b9df9e62399eae53e7c0b0633298b146", + "reference": "05bc5d46b9df9e62399eae53e7c0b0633298b146", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/intl": "^5.4|^6.4|^7.0", "twig/twig": "^3.13|^4.0" }, @@ -14793,7 +14468,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/intl-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/intl-extra/tree/v3.21.0" }, "funding": [ { @@ -14805,29 +14480,29 @@ "type": "tidelift" } ], - "time": "2024-09-03T13:08:40+00:00" + "time": "2025-01-31T20:45:36+00:00" }, { "name": "twig/markdown-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/markdown-extra.git", - "reference": "25f23c02936f8c7157a8413154c06a462c9c20d3" + "reference": "f4616e1dd375209dacf6026f846e6b537d036ce4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/markdown-extra/zipball/25f23c02936f8c7157a8413154c06a462c9c20d3", - "reference": "25f23c02936f8c7157a8413154c06a462c9c20d3", + "url": "https://api.github.com/repos/twigphp/markdown-extra/zipball/f4616e1dd375209dacf6026f846e6b537d036ce4", + "reference": "f4616e1dd375209dacf6026f846e6b537d036ce4", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/deprecation-contracts": "^2.5|^3", "twig/twig": "^3.13|^4.0" }, "require-dev": { - "erusev/parsedown": "^1.7", + "erusev/parsedown": "dev-master as 1.x-dev", "league/commonmark": "^1.0|^2.0", "league/html-to-markdown": "^4.8|^5.0", "michelf/php-markdown": "^1.8|^2.0", @@ -14865,7 +14540,7 @@ "twig" ], "support": { - "source": "https://github.com/twigphp/markdown-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/markdown-extra/tree/v3.21.0" }, "funding": [ { @@ -14877,24 +14552,24 @@ "type": "tidelift" } ], - "time": "2024-09-03T20:17:35+00:00" + "time": "2025-01-31T20:45:36+00:00" }, { "name": "twig/string-extra", - "version": "v3.13.0", + "version": "v3.21.0", "source": { "type": "git", "url": "https://github.com/twigphp/string-extra.git", - "reference": "148e869d87cf4bea9d97896ab49e048e4add3310" + "reference": "4b3337544ac8f76c280def94e32b53acfaec0589" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/string-extra/zipball/148e869d87cf4bea9d97896ab49e048e4add3310", - "reference": "148e869d87cf4bea9d97896ab49e048e4add3310", + "url": "https://api.github.com/repos/twigphp/string-extra/zipball/4b3337544ac8f76c280def94e32b53acfaec0589", + "reference": "4b3337544ac8f76c280def94e32b53acfaec0589", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/string": "^5.4|^6.4|^7.0", "symfony/translation-contracts": "^1.1|^2|^3", "twig/twig": "^3.13|^4.0" @@ -14932,7 +14607,7 @@ "unicode" ], "support": { - "source": "https://github.com/twigphp/string-extra/tree/v3.13.0" + "source": "https://github.com/twigphp/string-extra/tree/v3.21.0" }, "funding": [ { @@ -14944,30 +14619,30 @@ "type": "tidelift" } ], - "time": "2024-09-03T13:08:40+00:00" + "time": "2025-01-31T20:45:36+00:00" }, { "name": "twig/twig", - "version": "v3.14.0", + "version": "v3.21.1", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72" + "reference": "285123877d4dd97dd7c11842ac5fb7e86e60d81d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/126b2c97818dbff0cdf3fbfc881aedb3d40aae72", - "reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/285123877d4dd97dd7c11842ac5fb7e86e60d81d", + "reference": "285123877d4dd97dd7c11842ac5fb7e86e60d81d", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1.0", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-ctype": "^1.8", - "symfony/polyfill-mbstring": "^1.3", - "symfony/polyfill-php81": "^1.29" + "symfony/polyfill-mbstring": "^1.3" }, "require-dev": { + "phpstan/phpstan": "^2.0", "psr/container": "^1.0|^2.0", "symfony/phpunit-bridge": "^5.4.9|^6.4|^7.0" }, @@ -15011,7 +14686,7 @@ ], "support": { "issues": "https://github.com/twigphp/Twig/issues", - "source": "https://github.com/twigphp/Twig/tree/v3.14.0" + "source": "https://github.com/twigphp/Twig/tree/v3.21.1" }, "funding": [ { @@ -15023,7 +14698,7 @@ "type": "tidelift" } ], - "time": "2024-09-09T17:55:12+00:00" + "time": "2025-05-03T07:21:55+00:00" }, { "name": "ua-parser/uap-php", @@ -15172,16 +14847,16 @@ }, { "name": "web-auth/webauthn-lib", - "version": "4.9.1", + "version": "4.9.2", "source": { "type": "git", "url": "https://github.com/web-auth/webauthn-lib.git", - "reference": "fd7a0943c663b325e92ad562c2bcc943e77beeac" + "reference": "008b25171c27cf4813420d0de31cc059bcc71f1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/web-auth/webauthn-lib/zipball/fd7a0943c663b325e92ad562c2bcc943e77beeac", - "reference": "fd7a0943c663b325e92ad562c2bcc943e77beeac", + "url": "https://api.github.com/repos/web-auth/webauthn-lib/zipball/008b25171c27cf4813420d0de31cc059bcc71f1a", + "reference": "008b25171c27cf4813420d0de31cc059bcc71f1a", "shasum": "" }, "require": { @@ -15215,8 +14890,8 @@ "type": "library", "extra": { "thanks": { - "name": "web-auth/webauthn-framework", - "url": "https://github.com/web-auth/webauthn-framework" + "url": "https://github.com/web-auth/webauthn-framework", + "name": "web-auth/webauthn-framework" } }, "autoload": { @@ -15246,7 +14921,7 @@ "webauthn" ], "support": { - "source": "https://github.com/web-auth/webauthn-lib/tree/4.9.1" + "source": "https://github.com/web-auth/webauthn-lib/tree/4.9.2" }, "funding": [ { @@ -15258,20 +14933,20 @@ "type": "patreon" } ], - "time": "2024-07-16T18:36:36+00:00" + "time": "2025-01-04T09:47:58+00:00" }, { "name": "web-auth/webauthn-symfony-bundle", - "version": "4.9.1", + "version": "4.9.2", "source": { "type": "git", "url": "https://github.com/web-auth/webauthn-symfony-bundle.git", - "reference": "fa6dfa596db1cbf159079c0bb76d746ed84c4a26" + "reference": "80aa16fa6f16ab8f017a4108ffcd2ecc12264c07" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/web-auth/webauthn-symfony-bundle/zipball/fa6dfa596db1cbf159079c0bb76d746ed84c4a26", - "reference": "fa6dfa596db1cbf159079c0bb76d746ed84c4a26", + "url": "https://api.github.com/repos/web-auth/webauthn-symfony-bundle/zipball/80aa16fa6f16ab8f017a4108ffcd2ecc12264c07", + "reference": "80aa16fa6f16ab8f017a4108ffcd2ecc12264c07", "shasum": "" }, "require": { @@ -15297,8 +14972,8 @@ "type": "symfony-bundle", "extra": { "thanks": { - "name": "web-auth/webauthn-framework", - "url": "https://github.com/web-auth/webauthn-framework" + "url": "https://github.com/web-auth/webauthn-framework", + "name": "web-auth/webauthn-framework" } }, "autoload": { @@ -15331,7 +15006,7 @@ "webauthn" ], "support": { - "source": "https://github.com/web-auth/webauthn-symfony-bundle/tree/4.9.1" + "source": "https://github.com/web-auth/webauthn-symfony-bundle/tree/4.9.2" }, "funding": [ { @@ -15343,20 +15018,20 @@ "type": "patreon" } ], - "time": "2024-07-11T09:06:25+00:00" + "time": "2025-01-04T09:38:56+00:00" }, { "name": "web-token/jwt-library", - "version": "3.4.6", + "version": "3.4.8", "source": { "type": "git", "url": "https://github.com/web-token/jwt-library.git", - "reference": "1a25c8ced3e2b3c31d32dcfad215cbd8cb812f28" + "reference": "92445671cc788fa5f639898a67c06f9fd0bf491f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/web-token/jwt-library/zipball/1a25c8ced3e2b3c31d32dcfad215cbd8cb812f28", - "reference": "1a25c8ced3e2b3c31d32dcfad215cbd8cb812f28", + "url": "https://api.github.com/repos/web-token/jwt-library/zipball/92445671cc788fa5f639898a67c06f9fd0bf491f", + "reference": "92445671cc788fa5f639898a67c06f9fd0bf491f", "shasum": "" }, "require": { @@ -15366,7 +15041,7 @@ "paragonie/constant_time_encoding": "^2.6|^3.0", "paragonie/sodium_compat": "^1.20|^2.0", "php": ">=8.1", - "psr/cache": "^3.0", + "psr/cache": "^2.0|^3.0", "psr/clock": "^1.0", "psr/http-client": "^1.0", "psr/http-factory": "^1.0", @@ -15429,7 +15104,7 @@ ], "support": { "issues": "https://github.com/web-token/jwt-library/issues", - "source": "https://github.com/web-token/jwt-library/tree/3.4.6" + "source": "https://github.com/web-token/jwt-library/tree/3.4.8" }, "funding": [ { @@ -15441,7 +15116,7 @@ "type": "patreon" } ], - "time": "2024-07-02T16:35:11+00:00" + "time": "2025-05-07T09:11:18+00:00" }, { "name": "webmozart/assert", @@ -15561,16 +15236,16 @@ "packages-dev": [ { "name": "dama/doctrine-test-bundle", - "version": "v8.2.0", + "version": "v8.2.2", "source": { "type": "git", "url": "https://github.com/dmaicher/doctrine-test-bundle.git", - "reference": "1f81a280ea63f049d24e9c8ce00e557b18e0ff2f" + "reference": "eefe54fdf00d910f808efea9cfce9cc261064a0a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dmaicher/doctrine-test-bundle/zipball/1f81a280ea63f049d24e9c8ce00e557b18e0ff2f", - "reference": "1f81a280ea63f049d24e9c8ce00e557b18e0ff2f", + "url": "https://api.github.com/repos/dmaicher/doctrine-test-bundle/zipball/eefe54fdf00d910f808efea9cfce9cc261064a0a", + "reference": "eefe54fdf00d910f808efea9cfce9cc261064a0a", "shasum": "" }, "require": { @@ -15584,9 +15259,9 @@ "require-dev": { "behat/behat": "^3.0", "friendsofphp/php-cs-fixer": "^3.27", - "phpstan/phpstan": "^1.2", + "phpstan/phpstan": "^2.0", "phpunit/phpunit": "^8.0 || ^9.0 || ^10.0 || ^11.0", - "symfony/phpunit-bridge": "^6.3", + "symfony/phpunit-bridge": "^7.2", "symfony/process": "^5.4 || ^6.3 || ^7.0", "symfony/yaml": "^5.4 || ^6.3 || ^7.0" }, @@ -15622,46 +15297,45 @@ ], "support": { "issues": "https://github.com/dmaicher/doctrine-test-bundle/issues", - "source": "https://github.com/dmaicher/doctrine-test-bundle/tree/v8.2.0" + "source": "https://github.com/dmaicher/doctrine-test-bundle/tree/v8.2.2" }, - "time": "2024-05-28T15:41:06+00:00" + "time": "2025-02-04T14:37:36+00:00" }, { "name": "doctrine/doctrine-fixtures-bundle", - "version": "3.6.1", + "version": "4.1.0", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineFixturesBundle.git", - "reference": "d13a08ebf244f74c8adb8ff15aa55d01c404e534" + "reference": "a06db6b81ff20a2980bf92063d80c013bb8b4b7c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/d13a08ebf244f74c8adb8ff15aa55d01c404e534", - "reference": "d13a08ebf244f74c8adb8ff15aa55d01c404e534", + "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/a06db6b81ff20a2980bf92063d80c013bb8b4b7c", + "reference": "a06db6b81ff20a2980bf92063d80c013bb8b4b7c", "shasum": "" }, "require": { - "doctrine/data-fixtures": "^1.3", + "doctrine/data-fixtures": "^2.0", "doctrine/doctrine-bundle": "^2.2", "doctrine/orm": "^2.14.0 || ^3.0", - "doctrine/persistence": "^2.4|^3.0", - "php": "^7.4 || ^8.0", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/doctrine-bridge": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0" + "doctrine/persistence": "^2.4 || ^3.0 || ^4.0", + "php": "^8.1", + "psr/log": "^2 || ^3", + "symfony/config": "^6.4 || ^7.0", + "symfony/console": "^6.4 || ^7.0", + "symfony/dependency-injection": "^6.4 || ^7.0", + "symfony/deprecation-contracts": "^2.1 || ^3", + "symfony/doctrine-bridge": "^6.4.16 || ^7.1.9", + "symfony/http-kernel": "^6.4 || ^7.0" }, "conflict": { "doctrine/dbal": "< 3" }, "require-dev": { - "doctrine/coding-standard": "^12", - "phpstan/phpstan": "^1.10.39", - "phpunit/phpunit": "^9.6.13", - "symfony/phpunit-bridge": "^6.3.6", - "vimeo/psalm": "^5.15" + "doctrine/coding-standard": "13.0.0", + "phpstan/phpstan": "2.1.11", + "phpunit/phpunit": "^10.5.38 || 11.4.14" }, "type": "symfony-bundle", "autoload": { @@ -15695,7 +15369,7 @@ ], "support": { "issues": "https://github.com/doctrine/DoctrineFixturesBundle/issues", - "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.6.1" + "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/4.1.0" }, "funding": [ { @@ -15711,43 +15385,43 @@ "type": "tidelift" } ], - "time": "2024-05-07T07:16:35+00:00" + "time": "2025-03-26T10:56:26+00:00" }, { "name": "ekino/phpstan-banned-code", - "version": "v1.0.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/ekino/phpstan-banned-code.git", - "reference": "4f0d7c8a0c9f5d222ffc24234aa6c5b3b71bf4c3" + "reference": "27122aa1783d6521e500c0c397c53244cfbde26f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ekino/phpstan-banned-code/zipball/4f0d7c8a0c9f5d222ffc24234aa6c5b3b71bf4c3", - "reference": "4f0d7c8a0c9f5d222ffc24234aa6c5b3b71bf4c3", + "url": "https://api.github.com/repos/ekino/phpstan-banned-code/zipball/27122aa1783d6521e500c0c397c53244cfbde26f", + "reference": "27122aa1783d6521e500c0c397c53244cfbde26f", "shasum": "" }, "require": { - "php": "^7.3 || ^8.0", - "phpstan/phpstan": "^1.0" + "php": "^8.1", + "phpstan/phpstan": "^2.0" }, "require-dev": { "ergebnis/composer-normalize": "^2.6", "friendsofphp/php-cs-fixer": "^3.0", "nikic/php-parser": "^4.3", - "phpstan/phpstan-phpunit": "^1.0", + "phpstan/phpstan-phpunit": "^2.0", "phpunit/phpunit": "^9.5", "symfony/var-dumper": "^5.0" }, "type": "phpstan-extension", "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - }, "phpstan": { "includes": [ "extension.neon" ] + }, + "branch-alias": { + "dev-master": "1.0-dev" } }, "autoload": { @@ -15770,26 +15444,27 @@ "homepage": "https://github.com/ekino/phpstan-banned-code", "keywords": [ "PHPStan", - "code quality" + "code quality", + "static analysis" ], "support": { "issues": "https://github.com/ekino/phpstan-banned-code/issues", - "source": "https://github.com/ekino/phpstan-banned-code/tree/v1.0.0" + "source": "https://github.com/ekino/phpstan-banned-code/tree/v3.0.0" }, - "time": "2021-11-02T08:37:34+00:00" + "time": "2024-11-13T09:57:22+00:00" }, { "name": "jbtronics/translation-editor-bundle", - "version": "v1.0", + "version": "v1.1.1", "source": { "type": "git", "url": "https://github.com/jbtronics/translation-editor-bundle.git", - "reference": "4e771c290bf73dded061808bc3ba3c56bc35aa06" + "reference": "fa003c38f3f61060a368734b91aeb40d788b0825" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jbtronics/translation-editor-bundle/zipball/4e771c290bf73dded061808bc3ba3c56bc35aa06", - "reference": "4e771c290bf73dded061808bc3ba3c56bc35aa06", + "url": "https://api.github.com/repos/jbtronics/translation-editor-bundle/zipball/fa003c38f3f61060a368734b91aeb40d788b0825", + "reference": "fa003c38f3f61060a368734b91aeb40d788b0825", "shasum": "" }, "require": { @@ -15834,7 +15509,7 @@ ], "support": { "issues": "https://github.com/jbtronics/translation-editor-bundle/issues", - "source": "https://github.com/jbtronics/translation-editor-bundle/tree/v1.0" + "source": "https://github.com/jbtronics/translation-editor-bundle/tree/v1.1.1" }, "funding": [ { @@ -15846,20 +15521,20 @@ "type": "github" } ], - "time": "2024-09-03T16:44:00+00:00" + "time": "2025-03-29T15:14:31+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.12.0", + "version": "1.13.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/1720ddd719e16cf0db4eb1c6eca108031636d46c", + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c", "shasum": "" }, "require": { @@ -15898,7 +15573,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.1" }, "funding": [ { @@ -15906,20 +15581,20 @@ "type": "tidelift" } ], - "time": "2024-06-12T14:39:25+00:00" + "time": "2025-04-29T12:36:36+00:00" }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -15962,9 +15637,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -16134,20 +15809,20 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.7", + "version": "2.1.16", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "dc2b9976bd8b0f84ec9b0e50cc35378551de7af0" + "reference": "b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/dc2b9976bd8b0f84ec9b0e50cc35378551de7af0", - "reference": "dc2b9976bd8b0f84ec9b0e50cc35378551de7af0", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9", + "reference": "b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9", "shasum": "" }, "require": { - "php": "^7.2|^8.0" + "php": "^7.4|^8.0" }, "conflict": { "phpstan/phpstan-shim": "*" @@ -16188,25 +15863,25 @@ "type": "github" } ], - "time": "2024-10-18T11:12:07+00:00" + "time": "2025-05-16T09:40:10+00:00" }, { "name": "phpstan/phpstan-doctrine", - "version": "1.5.5", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-doctrine.git", - "reference": "4e9c77fc7bc3293f773fb2d8155c99572a3c89a4" + "reference": "4497663eb17b9d29211830df5aceaa3a4d256a35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-doctrine/zipball/4e9c77fc7bc3293f773fb2d8155c99572a3c89a4", - "reference": "4e9c77fc7bc3293f773fb2d8155c99572a3c89a4", + "url": "https://api.github.com/repos/phpstan/phpstan-doctrine/zipball/4497663eb17b9d29211830df5aceaa3a4d256a35", + "reference": "4497663eb17b9d29211830df5aceaa3a4d256a35", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "phpstan/phpstan": "^1.12.6" + "php": "^7.4 || ^8.0", + "phpstan/phpstan": "^2.1.13" }, "conflict": { "doctrine/collections": "<1.0", @@ -16219,20 +15894,20 @@ "cache/array-adapter": "^1.1", "composer/semver": "^3.3.2", "cweagans/composer-patches": "^1.7.3", - "doctrine/annotations": "^1.11 || ^2.0", + "doctrine/annotations": "^2.0", "doctrine/collections": "^1.6 || ^2.1", "doctrine/common": "^2.7 || ^3.0", - "doctrine/dbal": "^2.13.8 || ^3.3.3", + "doctrine/dbal": "^3.3.8", "doctrine/lexer": "^2.0 || ^3.0", - "doctrine/mongodb-odm": "^1.3 || ^2.4.3", + "doctrine/mongodb-odm": "^2.4.3", "doctrine/orm": "^2.16.0", "doctrine/persistence": "^2.2.1 || ^3.2", "gedmo/doctrine-extensions": "^3.8", "nesbot/carbon": "^2.49", - "nikic/php-parser": "^4.13.2", "php-parallel-lint/php-parallel-lint": "^1.2", - "phpstan/phpstan-phpunit": "^1.3.13", - "phpstan/phpstan-strict-rules": "^1.5.1", + "phpstan/phpstan-deprecation-rules": "^2.0.2", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", "phpunit/phpunit": "^9.6.20", "ramsey/uuid": "^4.2", "symfony/cache": "^5.4" @@ -16258,34 +15933,33 @@ "description": "Doctrine extensions for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-doctrine/issues", - "source": "https://github.com/phpstan/phpstan-doctrine/tree/1.5.5" + "source": "https://github.com/phpstan/phpstan-doctrine/tree/2.0.3" }, - "time": "2024-10-29T12:19:49+00:00" + "time": "2025-05-05T15:28:52+00:00" }, { "name": "phpstan/phpstan-strict-rules", - "version": "1.6.1", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-strict-rules.git", - "reference": "daeec748b53de80a97498462513066834ec28f8b" + "reference": "3e139cbe67fafa3588e1dbe27ca50f31fdb6236a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/daeec748b53de80a97498462513066834ec28f8b", - "reference": "daeec748b53de80a97498462513066834ec28f8b", + "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/3e139cbe67fafa3588e1dbe27ca50f31fdb6236a", + "reference": "3e139cbe67fafa3588e1dbe27ca50f31fdb6236a", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "phpstan/phpstan": "^1.12.4" + "php": "^7.4 || ^8.0", + "phpstan/phpstan": "^2.0.4" }, "require-dev": { - "nikic/php-parser": "^4.13.0", "php-parallel-lint/php-parallel-lint": "^1.2", - "phpstan/phpstan-deprecation-rules": "^1.1", - "phpstan/phpstan-phpunit": "^1.0", - "phpunit/phpunit": "^9.5" + "phpstan/phpstan-deprecation-rules": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^9.6" }, "type": "phpstan-extension", "extra": { @@ -16307,39 +15981,38 @@ "description": "Extra strict and opinionated rules for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-strict-rules/issues", - "source": "https://github.com/phpstan/phpstan-strict-rules/tree/1.6.1" + "source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.4" }, - "time": "2024-09-20T14:04:44+00:00" + "time": "2025-03-18T11:42:40+00:00" }, { "name": "phpstan/phpstan-symfony", - "version": "1.4.11", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-symfony.git", - "reference": "270c2ee1478d1f8dc5121f539e890017bd64b04c" + "reference": "5005288e07583546ea00b52de4a9ac412eb869d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-symfony/zipball/270c2ee1478d1f8dc5121f539e890017bd64b04c", - "reference": "270c2ee1478d1f8dc5121f539e890017bd64b04c", + "url": "https://api.github.com/repos/phpstan/phpstan-symfony/zipball/5005288e07583546ea00b52de4a9ac412eb869d7", + "reference": "5005288e07583546ea00b52de4a9ac412eb869d7", "shasum": "" }, "require": { "ext-simplexml": "*", - "php": "^7.2 || ^8.0", - "phpstan/phpstan": "^1.12" + "php": "^7.4 || ^8.0", + "phpstan/phpstan": "^2.1.13" }, "conflict": { "symfony/framework-bundle": "<3.0" }, "require-dev": { - "nikic/php-parser": "^4.13.0", "php-parallel-lint/php-parallel-lint": "^1.2", - "phpstan/phpstan-phpunit": "^1.3.11", - "phpstan/phpstan-strict-rules": "^1.5.1", - "phpunit/phpunit": "^8.5.29 || ^9.5", - "psr/container": "1.0 || 1.1.1", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", + "psr/container": "1.1.2", "symfony/config": "^5.4 || ^6.1", "symfony/console": "^5.4 || ^6.1", "symfony/dependency-injection": "^5.4 || ^6.1", @@ -16379,9 +16052,9 @@ "description": "Symfony Framework extensions and rules for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-symfony/issues", - "source": "https://github.com/phpstan/phpstan-symfony/tree/1.4.11" + "source": "https://github.com/phpstan/phpstan-symfony/tree/2.0.6" }, - "time": "2024-10-30T12:07:21+00:00" + "time": "2025-05-14T07:00:05+00:00" }, { "name": "phpunit/php-code-coverage", @@ -16704,16 +16377,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.21", + "version": "9.6.23", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" + "reference": "43d2cb18d0675c38bd44982a5d1d88f6d53d8d95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", - "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/43d2cb18d0675c38bd44982a5d1d88f6d53d8d95", + "reference": "43d2cb18d0675c38bd44982a5d1d88f6d53d8d95", "shasum": "" }, "require": { @@ -16724,7 +16397,7 @@ "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.12.0", + "myclabs/deep-copy": "^1.13.1", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", @@ -16787,7 +16460,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.23" }, "funding": [ { @@ -16798,30 +16471,38 @@ "url": "https://github.com/sebastianbergmann", "type": "github" }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, { "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", "type": "tidelift" } ], - "time": "2024-09-19T10:50:18+00:00" + "time": "2025-05-02T06:40:34+00:00" }, { "name": "rector/rector", - "version": "1.2.8", + "version": "2.0.16", "source": { "type": "git", "url": "https://github.com/rectorphp/rector.git", - "reference": "05755bf43617449c08ee8e50fb840c85ad3b1240" + "reference": "f1366d1f8c7490541c8f7af6e5c7cef7cca1b5a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rectorphp/rector/zipball/05755bf43617449c08ee8e50fb840c85ad3b1240", - "reference": "05755bf43617449c08ee8e50fb840c85ad3b1240", + "url": "https://api.github.com/repos/rectorphp/rector/zipball/f1366d1f8c7490541c8f7af6e5c7cef7cca1b5a2", + "reference": "f1366d1f8c7490541c8f7af6e5c7cef7cca1b5a2", "shasum": "" }, "require": { - "php": "^7.2|^8.0", - "phpstan/phpstan": "^1.12.5" + "php": "^7.4|^8.0", + "phpstan/phpstan": "^2.1.14" }, "conflict": { "rector/rector-doctrine": "*", @@ -16854,7 +16535,7 @@ ], "support": { "issues": "https://github.com/rectorphp/rector/issues", - "source": "https://github.com/rectorphp/rector/tree/1.2.8" + "source": "https://github.com/rectorphp/rector/tree/2.0.16" }, "funding": [ { @@ -16862,7 +16543,7 @@ "type": "github" } ], - "time": "2024-10-18T11:54:27+00:00" + "time": "2025-05-12T16:37:16+00:00" }, { "name": "roave/security-advisories", @@ -16870,18 +16551,19 @@ "source": { "type": "git", "url": "https://github.com/Roave/SecurityAdvisories.git", - "reference": "e3b44e38648ef5386687032582759f9c616c8d19" + "reference": "0cc529f6cf08a858fcb7a2c5617780fcdc20d1fe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/e3b44e38648ef5386687032582759f9c616c8d19", - "reference": "e3b44e38648ef5386687032582759f9c616c8d19", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/0cc529f6cf08a858fcb7a2c5617780fcdc20d1fe", + "reference": "0cc529f6cf08a858fcb7a2c5617780fcdc20d1fe", "shasum": "" }, "conflict": { "3f/pygmentize": "<1.2", + "adaptcms/adaptcms": "<=1.3", "admidio/admidio": "<4.3.12", - "adodb/adodb-php": "<=5.20.20|>=5.21,<=5.21.3", + "adodb/adodb-php": "<=5.22.8", "aheinze/cockpit": "<2.2", "aimeos/ai-admin-graphql": ">=2022.04.1,<2022.10.10|>=2023.04.1,<2023.10.6|>=2024.04.1,<2024.07.2", "aimeos/ai-admin-jsonadm": "<2020.10.13|>=2021.04.1,<2021.10.6|>=2022.04.1,<2022.10.3|>=2023.04.1,<2023.10.4|==2024.04.1", @@ -16892,7 +16574,7 @@ "airesvsg/acf-to-rest-api": "<=3.1", "akaunting/akaunting": "<2.1.13", "akeneo/pim-community-dev": "<5.0.119|>=6,<6.0.53", - "alextselegidis/easyappointments": "<1.5", + "alextselegidis/easyappointments": "<=1.5.1", "alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1", "amazing/media2click": ">=1,<1.3.3", "ameos/ameos_tarteaucitron": "<1.2.23", @@ -16902,9 +16584,11 @@ "anchorcms/anchor-cms": "<=0.12.7", "andreapollastri/cipi": "<=3.1.15", "andrewhaine/silverstripe-form-capture": ">=0.2,<=0.2.3|>=1,<1.0.2|>=2,<2.2.5", + "aoe/restler": "<1.7.1", "apache-solr-for-typo3/solr": "<2.8.3", "apereo/phpcas": "<1.6", - "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6|>=2.6,<2.7.10|>=3,<3.0.12|>=3.1,<3.1.3", + "api-platform/core": "<3.4.17|>=4.0.0.0-alpha1,<4.0.22", + "api-platform/graphql": "<3.4.17|>=4.0.0.0-alpha1,<4.0.22", "appwrite/server-ce": "<=1.2.1", "arc/web": "<3", "area17/twill": "<1.2.5|>=2,<2.5.3", @@ -16912,15 +16596,21 @@ "asymmetricrypt/asymmetricrypt": "<9.9.99", "athlon1600/php-proxy": "<=5.1", "athlon1600/php-proxy-app": "<=3", + "athlon1600/youtube-downloader": "<=4", "austintoddj/canvas": "<=3.4.2", - "auth0/wordpress": "<=4.6", + "auth0/auth0-php": ">=8.0.0.0-beta1,<8.14", + "auth0/login": "<7.17", + "auth0/symfony": "<5.4", + "auth0/wordpress": "<5.3", "automad/automad": "<2.0.0.0-alpha5", "automattic/jetpack": "<9.8", "awesome-support/awesome-support": "<=6.0.7", "aws/aws-sdk-php": "<3.288.1", "azuracast/azuracast": "<0.18.3", + "b13/seo_basics": "<0.8.2", "backdrop/backdrop": "<1.27.3|>=1.28,<1.28.2", "backpack/crud": "<3.4.9", + "backpack/filemanager": "<2.0.2|>=3,<3.0.9", "bacula-web/bacula-web": "<8.0.0.0-RC2-dev", "badaso/core": "<2.7", "bagisto/bagisto": "<2.1", @@ -16933,6 +16623,7 @@ "bbpress/bbpress": "<2.6.5", "bcosca/fatfree": "<3.7.2", "bedita/bedita": "<4", + "bednee/cooluri": "<1.0.30", "bigfork/silverstripe-form-capture": ">=3,<3.1.1", "billz/raspap-webgui": "<=3.1.4", "bk2k/bootstrap-package": ">=7.1,<7.1.2|>=8,<8.0.8|>=9,<9.0.4|>=9.1,<9.1.3|>=10,<10.0.10|>=11,<11.0.3", @@ -16949,6 +16640,7 @@ "brotkrueml/typo3-matomo-integration": "<1.3.2", "buddypress/buddypress": "<7.2.1", "bugsnag/bugsnag-laravel": ">=2,<2.0.2", + "bvbmedia/multishop": "<2.0.39", "bytefury/crater": "<6.0.2", "cachethq/cachet": "<2.5.1", "cakephp/cakephp": "<3.10.3|>=4,<4.0.10|>=4.1,<4.1.4|>=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", @@ -16959,32 +16651,37 @@ "cart2quote/module-quotation-encoded": ">=4.1.6,<=4.4.5|>=5,<5.4.4", "cartalyst/sentry": "<=2.1.6", "catfan/medoo": "<1.7.5", - "causal/oidc": "<2.1", + "causal/oidc": "<4", "cecil/cecil": "<7.47.1", "centreon/centreon": "<22.10.15", "cesnet/simplesamlphp-module-proxystatistics": "<3.1", "chriskacerguis/codeigniter-restserver": "<=2.7.1", "civicrm/civicrm-core": ">=4.2,<4.2.9|>=4.3,<4.3.3", - "ckeditor/ckeditor": "<4.24", + "ckeditor/ckeditor": "<4.25", + "clickstorm/cs-seo": ">=6,<6.7|>=7,<7.4|>=8,<8.3|>=9,<9.2", + "co-stack/fal_sftp": "<0.2.6", "cockpit-hq/cockpit": "<2.7|==2.7", "codeception/codeception": "<3.1.3|>=4,<4.1.22", "codeigniter/framework": "<3.1.9", - "codeigniter4/framework": "<4.4.7", + "codeigniter4/framework": "<4.5.8", "codeigniter4/shield": "<1.0.0.0-beta8", "codiad/codiad": "<=2.8.4", + "codingms/additional-tca": ">=1.7,<1.15.17|>=1.16,<1.16.9", + "commerceteam/commerce": ">=0.9.6,<0.9.9", + "components/jquery": ">=1.0.3,<3.5", "composer/composer": "<1.10.27|>=2,<2.2.24|>=2.3,<2.7.7", - "concrete5/concrete5": "<9.3.4", + "concrete5/concrete5": "<9.4.0.0-RC2-dev", "concrete5/core": "<8.5.8|>=9,<9.1", "contao-components/mediaelement": ">=2.14.2,<2.21.1", "contao/comments-bundle": ">=2,<4.13.40|>=5.0.0.0-RC1-dev,<5.3.4", - "contao/contao": "<=5.4.1", + "contao/contao": ">=3,<3.5.37|>=4,<4.4.56|>=4.5,<4.9.40|>=4.10,<4.11.7|>=4.13,<4.13.21|>=5.1,<5.1.4", "contao/core": "<3.5.39", - "contao/core-bundle": "<4.13.49|>=5,<5.3.15|>=5.4,<5.4.3", + "contao/core-bundle": "<4.13.54|>=5,<5.3.30|>=5.4,<5.5.6", "contao/listing-bundle": ">=3,<=3.5.30|>=4,<4.4.8", "contao/managed-edition": "<=1.5", "corveda/phpsandbox": "<1.3.5", "cosenary/instagram": "<=2.3", - "craftcms/cms": "<4.6.2|>=5,<=5.2.2", + "craftcms/cms": "<4.15.3|>=5,<5.7.5", "croogo/croogo": "<4", "cuyz/valinor": "<0.12", "czim/file-handling": "<1.5|>=2,<2.3", @@ -16996,13 +16693,17 @@ "datatables/datatables": "<1.10.10", "david-garcia/phpwhois": "<=4.3.1", "dbrisinajumi/d2files": "<1", - "dcat/laravel-admin": "<=2.1.3", + "dcat/laravel-admin": "<=2.1.3|==2.2.0.0-beta|==2.2.2.0-beta", "derhansen/fe_change_pwd": "<2.0.5|>=3,<3.0.3", "derhansen/sf_event_mgt": "<4.3.1|>=5,<5.1.1|>=7,<7.4", "desperado/xml-bundle": "<=0.1.7", "dev-lancer/minecraft-motd-parser": "<=1.0.5", "devgroup/dotplant": "<2020.09.14-dev", + "digimix/wp-svg-upload": "<=1", "directmailteam/direct-mail": "<6.0.3|>=7,<7.0.3|>=8,<9.5.2", + "dl/yag": "<3.0.1", + "dmk/webkitpdf": "<1.1.4", + "dnadesign/silverstripe-elemental": "<5.3.12", "doctrine/annotations": "<1.2.7", "doctrine/cache": ">=1,<1.3.2|>=1.4,<1.4.2", "doctrine/common": "<2.4.3|>=2.5,<2.5.1", @@ -17012,12 +16713,28 @@ "doctrine/mongodb-odm": "<1.0.2", "doctrine/mongodb-odm-bundle": "<3.0.1", "doctrine/orm": ">=1,<1.2.4|>=2,<2.4.8|>=2.5,<2.5.1|>=2.8.3,<2.8.4", - "dolibarr/dolibarr": "<19.0.2", + "dolibarr/dolibarr": "<19.0.2|==21.0.0.0-beta", "dompdf/dompdf": "<2.0.4", "doublethreedigital/guest-entries": "<3.1.2", - "drupal/core": ">=6,<6.38|>=7,<7.96|>=8,<10.2.9|>=10.3,<10.3.6|>=11,<11.0.5", - "drupal/core-recommended": ">=8,<10.2.9|>=10.3,<10.3.6|>=11,<11.0.5", - "drupal/drupal": ">=5,<5.11|>=6,<6.38|>=7,<7.80|>=8,<10.2.9|>=10.3,<10.3.6|>=11,<11.0.5", + "drupal/ai": "<1.0.5", + "drupal/alogin": "<2.0.6", + "drupal/cache_utility": "<1.2.1", + "drupal/config_split": "<1.10|>=2,<2.0.2", + "drupal/core": ">=6,<6.38|>=7,<7.102|>=8,<10.3.14|>=10.4,<10.4.5|>=11,<11.0.13|>=11.1,<11.1.5", + "drupal/core-recommended": ">=7,<7.102|>=8,<10.2.11|>=10.3,<10.3.9|>=11,<11.0.8", + "drupal/drupal": ">=5,<5.11|>=6,<6.38|>=7,<7.102|>=8,<10.2.11|>=10.3,<10.3.9|>=11,<11.0.8", + "drupal/formatter_suite": "<2.1", + "drupal/gdpr": "<3.0.1|>=3.1,<3.1.2", + "drupal/google_tag": "<1.8|>=2,<2.0.8", + "drupal/ignition": "<1.0.4", + "drupal/link_field_display_mode_formatter": "<1.6", + "drupal/matomo": "<1.24", + "drupal/oauth2_client": "<4.1.3", + "drupal/oauth2_server": "<2.1", + "drupal/obfuscate": "<2.0.1", + "drupal/rapidoc_elements_field_formatter": "<1.0.1", + "drupal/spamspan": "<3.2.1", + "drupal/tfa": "<1.10", "duncanmcclean/guest-entries": "<3.1.2", "dweeves/magmi": "<=0.7.24", "ec-cube/ec-cube": "<2.4.4|>=2.11,<=2.17.1|>=3,<=3.0.18.0-patch4|>=4,<=4.1.2", @@ -17044,9 +16761,10 @@ "ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26|>=3.3,<3.3.39", "ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1", "ezsystems/ezplatform-graphql": ">=1.0.0.0-RC1-dev,<1.0.13|>=2.0.0.0-beta1,<2.3.12", + "ezsystems/ezplatform-http-cache": "<2.3.16", "ezsystems/ezplatform-kernel": "<1.2.5.1-dev|>=1.3,<1.3.35", "ezsystems/ezplatform-rest": ">=1.2,<=1.2.2|>=1.3,<1.3.8", - "ezsystems/ezplatform-richtext": ">=2.3,<2.3.7.1-dev|>=3.3,<3.3.40", + "ezsystems/ezplatform-richtext": ">=2.3,<2.3.26|>=3.3,<3.3.40", "ezsystems/ezplatform-solr-search-engine": ">=1.7,<1.7.12|>=2,<2.0.2|>=3.3,<3.3.15", "ezsystems/ezplatform-user": ">=1,<1.0.1", "ezsystems/ezpublish-kernel": "<6.13.8.2-dev|>=7,<7.5.31", @@ -17060,6 +16778,7 @@ "feehi/cms": "<=2.1.1", "feehi/feehicms": "<=2.1.1", "fenom/fenom": "<=2.12.1", + "filament/actions": ">=3.2,<3.2.123", "filament/infolists": ">=3,<3.2.115", "filament/tables": ">=3,<3.2.115", "filegator/filegator": "<7.8", @@ -17068,10 +16787,10 @@ "firebase/php-jwt": "<6", "fisharebest/webtrees": "<=2.1.18", "fixpunkt/fp-masterquiz": "<2.2.1|>=3,<3.5.2", - "fixpunkt/fp-newsletter": "<1.1.1|>=2,<2.1.2|>=2.2,<3.2.6", - "flarum/core": "<1.8.5", + "fixpunkt/fp-newsletter": "<1.1.1|>=1.2,<2.1.2|>=2.2,<3.2.6", + "flarum/core": "<1.8.10", "flarum/flarum": "<0.1.0.0-beta8", - "flarum/framework": "<1.8.5", + "flarum/framework": "<1.8.10", "flarum/mentions": "<1.6.3", "flarum/sticky": ">=0.1.0.0-beta14,<=0.1.0.0-beta15", "flarum/tags": "<=0.1.0.0-beta13", @@ -17092,22 +16811,25 @@ "friendsofsymfony1/symfony1": ">=1.1,<1.5.19", "friendsoftypo3/mediace": ">=7.6.2,<7.6.5", "friendsoftypo3/openid": ">=4.5,<4.5.31|>=4.7,<4.7.16|>=6,<6.0.11|>=6.1,<6.1.6", - "froala/wysiwyg-editor": "<3.2.7|>=4.0.1,<=4.1.3", - "froxlor/froxlor": "<=2.2.0.0-RC3", + "froala/wysiwyg-editor": "<=4.3", + "froxlor/froxlor": "<=2.2.5", "frozennode/administrator": "<=5.0.12", "fuel/core": "<1.8.1", "funadmin/funadmin": "<=5.0.2", "gaoming13/wechat-php-sdk": "<=1.10.2", "genix/cms": "<=1.1.11", - "getformwork/formwork": "<1.13.1|==2.0.0.0-beta1", + "georgringer/news": "<1.3.3", + "geshi/geshi": "<1.0.8.11-dev", + "getformwork/formwork": "<1.13.1|>=2.0.0.0-beta1,<2.0.0.0-beta4", "getgrav/grav": "<1.7.46", - "getkirby/cms": "<=3.6.6.5|>=3.7,<=3.7.5.4|>=3.8,<=3.8.4.3|>=3.9,<=3.9.8.1|>=3.10,<=3.10.1|>=4,<=4.3", - "getkirby/kirby": "<=2.5.12", + "getkirby/cms": "<3.9.8.3-dev|>=3.10,<3.10.1.2-dev|>=4,<4.7.1", + "getkirby/kirby": "<3.9.8.3-dev|>=3.10,<3.10.1.2-dev|>=4,<4.7.1", "getkirby/panel": "<2.5.14", "getkirby/starterkit": "<=3.7.0.2", "gilacms/gila": "<=1.15.4", "gleez/cms": "<=1.3|==2", "globalpayments/php-sdk": "<2", + "goalgorilla/open_social": "<12.3.11|>=12.4,<12.4.10|>=13.0.0.0-alpha1,<13.0.0.0-alpha11", "gogentooss/samlbase": "<1.2.7", "google/protobuf": "<3.15", "gos/web-socket-bundle": "<1.10.4|>=2,<2.6.1|>=3,<3.3", @@ -17116,6 +16838,7 @@ "grumpydictator/firefly-iii": "<6.1.17", "gugoan/economizzer": "<=0.9.0.0-beta1", "guzzlehttp/guzzle": "<6.5.8|>=7,<7.4.5", + "guzzlehttp/oauth-subscriber": "<0.8.1", "guzzlehttp/psr7": "<1.9.1|>=2,<2.4.5", "haffner/jh_captcha": "<=2.1.3|>=3,<=3.0.2", "harvesthq/chosen": "<1.8.7", @@ -17127,11 +16850,12 @@ "hov/jobfair": "<1.0.13|>=2,<2.0.2", "httpsoft/http-message": "<1.0.12", "hyn/multi-tenant": ">=5.6,<5.7.2", - "ibexa/admin-ui": ">=4.2,<4.2.3|>=4.6.0.0-beta1,<4.6.9", + "ibexa/admin-ui": ">=4.2,<4.2.3|>=4.6,<4.6.14", "ibexa/core": ">=4,<4.0.7|>=4.1,<4.1.4|>=4.2,<4.2.3|>=4.5,<4.5.6|>=4.6,<4.6.2", - "ibexa/fieldtype-richtext": ">=4.6,<4.6.10", + "ibexa/fieldtype-richtext": ">=4.6,<4.6.19", "ibexa/graphql": ">=2.5,<2.5.31|>=3.3,<3.3.28|>=4.2,<4.2.3", - "ibexa/post-install": "<=1.0.4", + "ibexa/http-cache": ">=4.6,<4.6.14", + "ibexa/post-install": "<1.0.16|>=4.6,<4.6.14", "ibexa/solr": ">=4.5,<4.5.4", "ibexa/user": ">=4,<4.4.3", "icecoder/icecoder": "<=8.1", @@ -17144,7 +16868,7 @@ "illuminate/view": "<6.20.42|>=7,<7.30.6|>=8,<8.75", "imdbphp/imdbphp": "<=5.1.1", "impresscms/impresscms": "<=1.4.5", - "impresspages/impresspages": "<=1.0.12", + "impresspages/impresspages": "<1.0.13", "in2code/femanager": "<5.5.3|>=6,<6.3.4|>=7,<7.2.3", "in2code/ipandlanguageredirect": "<5.1.2", "in2code/lux": "<17.6.1|>=18,<24.0.2", @@ -17153,27 +16877,34 @@ "intelliants/subrion": "<4.2.2", "inter-mediator/inter-mediator": "==5.5", "ipl/web": "<0.10.1", + "islandora/crayfish": "<4.1", "islandora/islandora": ">=2,<2.4.1", "ivankristianto/phpwhois": "<=4.3", "jackalope/jackalope-doctrine-dbal": "<1.7.4", + "jambagecom/div2007": "<0.10.2", "james-heinrich/getid3": "<1.9.21", "james-heinrich/phpthumb": "<1.7.12", "jasig/phpcas": "<1.3.3", + "jbartels/wec-map": "<3.0.3", "jcbrand/converse.js": "<3.3.3", + "joelbutcher/socialstream": "<5.6|>=6,<6.2", "johnbillion/wp-crontrol": "<1.16.2", "joomla/application": "<1.0.13", "joomla/archive": "<1.1.12|>=2,<2.0.1", + "joomla/database": ">=1,<2.2|>=3,<3.4", "joomla/filesystem": "<1.6.2|>=2,<2.0.1", "joomla/filter": "<1.4.4|>=2,<2.0.1", "joomla/framework": "<1.5.7|>=2.5.4,<=3.8.12", "joomla/input": ">=2,<2.0.2", - "joomla/joomla-cms": ">=2.5,<3.9.12", + "joomla/joomla-cms": "<3.9.12|>=4,<4.4.13|>=5,<5.2.6", + "joomla/joomla-platform": "<1.5.4", "joomla/session": "<1.3.1", "joyqi/hyper-down": "<=2.4.27", "jsdecena/laracom": "<2.0.9", "jsmitty12/phpwhois": "<5.1", "juzaweb/cms": "<=3.4", "jweiland/events2": "<8.3.8|>=9,<9.0.6", + "jweiland/kk-downloader": "<1.2.2", "kazist/phpwhois": "<=4.2.6", "kelvinmo/simplexrd": "<3.1.1", "kevinpapst/kimai2": "<1.16.7", @@ -17183,6 +16914,7 @@ "klaviyo/magento2-extension": ">=1,<3", "knplabs/knp-snappy": "<=1.4.2", "kohana/core": "<3.3.3", + "koillection/koillection": "<1.6.12", "krayin/laravel-crm": "<=1.3", "kreait/firebase-php": ">=3.2,<3.8.1", "kumbiaphp/kumbiapp": "<=1.1.1", @@ -17193,16 +16925,18 @@ "lara-zeus/artemis": ">=1,<=1.0.6", "lara-zeus/dynamic-dashboard": ">=3,<=3.0.1", "laravel/fortify": "<1.11.1", - "laravel/framework": "<6.20.44|>=7,<7.30.6|>=8,<8.75", + "laravel/framework": "<10.48.29|>=11,<11.44.1|>=12,<12.1.1", "laravel/laravel": ">=5.4,<5.4.22", + "laravel/pulse": "<1.3.1", "laravel/reverb": "<1.4", "laravel/socialite": ">=1,<2.0.10", "latte/latte": "<2.10.8", "lavalite/cms": "<=9|==10.1", "lcobucci/jwt": ">=3.4,<3.4.6|>=4,<4.0.4|>=4.1,<4.1.5", - "league/commonmark": "<0.18.3", + "league/commonmark": "<2.7", "league/flysystem": "<1.1.4|>=2,<2.1.1", "league/oauth2-server": ">=8.3.2,<8.4.2|>=8.5,<8.5.3", + "leantime/leantime": "<3.3", "lexik/jwt-authentication-bundle": "<2.10.7|>=2.11,<2.11.3", "libreform/libreform": ">=2,<=2.0.8", "librenms/librenms": "<2017.08.18", @@ -17211,28 +16945,37 @@ "limesurvey/limesurvey": "<6.5.12", "livehelperchat/livehelperchat": "<=3.91", "livewire/livewire": "<2.12.7|>=3.0.0.0-beta1,<3.5.2", + "livewire/volt": "<1.7", "lms/routes": "<2.1.1", "localizationteam/l10nmgr": "<7.4|>=8,<8.7|>=9,<9.2", + "luracast/restler": "<3.1", "luyadev/yii-helpers": "<1.2.1", + "macropay-solutions/laravel-crud-wizard-free": "<3.4.17", "maestroerror/php-heic-to-jpg": "<1.0.5", - "magento/community-edition": "<2.4.5|==2.4.5|>=2.4.5.0-patch1,<2.4.5.0-patch10|==2.4.6|>=2.4.6.0-patch1,<2.4.6.0-patch8|>=2.4.7.0-beta1,<2.4.7.0-patch3", + "magento/community-edition": "<2.4.5|==2.4.5|>=2.4.5.0-patch1,<2.4.5.0-patch12|==2.4.6|>=2.4.6.0-patch1,<2.4.6.0-patch10|>=2.4.7.0-beta1,<2.4.7.0-patch5|>=2.4.8.0-beta1,<2.4.8.0-beta2", "magento/core": "<=1.9.4.5", "magento/magento1ce": "<1.9.4.3-dev", "magento/magento1ee": ">=1,<1.14.4.3-dev", "magento/product-community-edition": "<2.4.4.0-patch9|>=2.4.5,<2.4.5.0-patch8|>=2.4.6,<2.4.6.0-patch6|>=2.4.7,<2.4.7.0-patch1", + "magento/project-community-edition": "<=2.0.2", "magneto/core": "<1.9.4.4-dev", "maikuolan/phpmussel": ">=1,<1.6", "mainwp/mainwp": "<=4.4.3.3", "mantisbt/mantisbt": "<=2.26.3", "marcwillmann/turn": "<0.3.3", + "matomo/matomo": "<1.11", "matyhtf/framework": "<3.0.6", - "mautic/core": "<4.4.13|>=5,<5.1.1", + "mautic/core": "<5.2.3", "mautic/core-lib": ">=1.0.0.0-beta,<4.4.13|>=5.0.0.0-alpha,<5.1.1", + "maximebf/debugbar": "<1.19", "mdanter/ecc": "<2", + "mediawiki/abuse-filter": "<1.39.9|>=1.40,<1.41.3|>=1.42,<1.42.2", "mediawiki/cargo": "<3.6.1", "mediawiki/core": "<1.39.5|==1.40", + "mediawiki/data-transfer": ">=1.39,<1.39.11|>=1.41,<1.41.3|>=1.42,<1.42.2", "mediawiki/matomo": "<2.4.3", "mediawiki/semantic-media-wiki": "<4.0.2", + "mehrwert/phpmyadmin": "<3.2", "melisplatform/melis-asset-manager": "<5.0.1", "melisplatform/melis-cms": "<5.0.1", "melisplatform/melis-front": "<5.0.1", @@ -17246,11 +16989,11 @@ "miniorange/miniorange-saml": "<1.4.3", "mittwald/typo3_forum": "<1.2.1", "mobiledetect/mobiledetectlib": "<2.8.32", - "modx/revolution": "<=2.8.3.0-patch", + "modx/revolution": "<=3.1", "mojo42/jirafeau": "<4.4", "mongodb/mongodb": ">=1,<1.9.2", "monolog/monolog": ">=1.8,<1.12", - "moodle/moodle": "<4.3.5|>=4.4.0.0-beta,<4.4.1", + "moodle/moodle": "<4.3.12|>=4.4,<4.4.8|>=4.5.0.0-beta,<4.5.4", "mos/cimage": "<0.7.19", "movim/moxl": ">=0.8,<=0.10", "movingbytes/social-network": "<=1.2.1", @@ -17262,7 +17005,9 @@ "munkireport/reportdata": "<3.5", "munkireport/softwareupdate": "<1.6", "mustache/mustache": ">=2,<2.14.1", + "mwdelaney/wp-enable-svg": "<=0.2", "namshi/jose": "<2.2", + "nasirkhan/laravel-starter": "<11.11", "nategood/httpful": "<1", "neoan3-apps/template": "<1.1.1", "neorazorx/facturascripts": "<2022.04", @@ -17271,10 +17016,12 @@ "neos/media-browser": "<7.3.19|>=8,<8.0.16|>=8.1,<8.1.11|>=8.2,<8.2.11|>=8.3,<8.3.9", "neos/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<5.3.10|>=7,<7.0.9|>=7.1,<7.1.7|>=7.2,<7.2.6|>=7.3,<7.3.4|>=8,<8.0.2", "neos/swiftmailer": "<5.4.5", + "nesbot/carbon": "<2.72.6|>=3,<3.8.4", + "netcarver/textile": "<=4.1.2", "netgen/tagsbundle": ">=3.4,<3.4.11|>=4,<4.0.15", "nette/application": ">=2,<2.0.19|>=2.1,<2.1.13|>=2.2,<2.2.10|>=2.3,<2.3.14|>=2.4,<2.4.16|>=3,<3.0.6", "nette/nette": ">=2,<2.0.19|>=2.1,<2.1.13", - "nilsteampassnet/teampass": "<3.0.10", + "nilsteampassnet/teampass": "<3.1.3.1-dev", "nonfiction/nterchange": "<4.1.1", "notrinos/notrinos-erp": "<=0.7", "noumo/easyii": "<=0.9", @@ -17286,19 +17033,20 @@ "nzo/url-encryptor-bundle": ">=4,<4.3.2|>=5,<5.0.1", "october/backend": "<1.1.2", "october/cms": "<1.0.469|==1.0.469|==1.0.471|==1.1.1", - "october/october": "<=3.6.4", + "october/october": "<3.7.5", "october/rain": "<1.0.472|>=1.1,<1.1.2", - "october/system": "<1.0.476|>=1.1,<1.1.12|>=2,<2.2.34|>=3,<3.5.15", + "october/system": "<3.7.5", + "oliverklee/phpunit": "<3.5.15", "omeka/omeka-s": "<4.0.3", "onelogin/php-saml": "<2.10.4", "oneup/uploader-bundle": ">=1,<1.9.3|>=2,<2.1.5", "open-web-analytics/open-web-analytics": "<1.7.4", "opencart/opencart": ">=0", "openid/php-openid": "<2.3", - "openmage/magento-lts": "<20.10.1", + "openmage/magento-lts": "<20.12.3", "opensolutions/vimbadmin": "<=3.0.15", - "opensource-workshop/connect-cms": "<1.7.2|>=2,<2.3.2", - "orchid/platform": ">=9,<9.4.4|>=14.0.0.0-alpha4,<14.5", + "opensource-workshop/connect-cms": "<1.8.7|>=2,<2.4.7", + "orchid/platform": ">=8,<14.43", "oro/calendar-bundle": ">=4.2,<=4.2.6|>=5,<=5.0.6|>=5.1,<5.1.1", "oro/commerce": ">=4.1,<5.0.11|>=5.1,<5.1.1", "oro/crm": ">=1.7,<1.7.4|>=3.1,<4.1.17|>=4.2,<4.2.7", @@ -17306,7 +17054,7 @@ "oro/customer-portal": ">=4.1,<=4.1.13|>=4.2,<=4.2.10|>=5,<=5.0.11|>=5.1,<=5.1.3", "oro/platform": ">=1.7,<1.7.4|>=3.1,<3.1.29|>=4.1,<4.1.17|>=4.2,<=4.2.10|>=5,<=5.0.12|>=5.1,<=5.1.3", "oveleon/contao-cookiebar": "<1.16.3|>=2,<2.1.3", - "oxid-esales/oxideshop-ce": "<4.5", + "oxid-esales/oxideshop-ce": "<=7.0.5", "oxid-esales/paymorrow-module": ">=1,<1.0.2|>=2,<2.0.1", "packbackbooks/lti-1-3-php-library": "<5", "padraic/humbug_get_contents": "<1.1.2", @@ -17322,6 +17070,7 @@ "pear/archive_tar": "<1.4.14", "pear/auth": "<1.2.4", "pear/crypt_gpg": "<1.6.7", + "pear/http_request2": "<2.7", "pear/pear": "<=1.10.1", "pegasus/google-for-jobs": "<1.5.1|>=2,<2.1.1", "personnummer/personnummer": "<3.0.2", @@ -17334,11 +17083,11 @@ "phpfastcache/phpfastcache": "<6.1.5|>=7,<7.1.2|>=8,<8.0.7", "phpmailer/phpmailer": "<6.5", "phpmussel/phpmussel": ">=1,<1.6", - "phpmyadmin/phpmyadmin": "<5.2.1", - "phpmyfaq/phpmyfaq": "<3.2.5|==3.2.5", + "phpmyadmin/phpmyadmin": "<5.2.2", + "phpmyfaq/phpmyfaq": "<3.2.5|==3.2.5|>=3.2.10,<=4.0.1", "phpoffice/common": "<0.2.9", - "phpoffice/phpexcel": "<1.8", - "phpoffice/phpspreadsheet": "<1.29.2|>=2,<2.1.1|>=2.2,<2.3", + "phpoffice/phpexcel": "<=1.8.2", + "phpoffice/phpspreadsheet": "<1.29.9|>=2,<2.1.8|>=2.2,<2.3.7|>=3,<3.9", "phpseclib/phpseclib": "<2.0.47|>=3,<3.0.36", "phpservermon/phpservermon": "<3.6", "phpsysinfo/phpsysinfo": "<3.4.3", @@ -17347,18 +17096,19 @@ "phpxmlrpc/extras": "<0.6.1", "phpxmlrpc/phpxmlrpc": "<4.9.2", "pi/pi": "<=2.5", - "pimcore/admin-ui-classic-bundle": "<1.5.4", - "pimcore/customer-management-framework-bundle": "<4.0.6", + "pimcore/admin-ui-classic-bundle": "<1.7.6", + "pimcore/customer-management-framework-bundle": "<4.2.1", "pimcore/data-hub": "<1.2.4", "pimcore/data-importer": "<1.8.9|>=1.9,<1.9.3", "pimcore/demo": "<10.3", "pimcore/ecommerce-framework-bundle": "<1.0.10", "pimcore/perspective-editor": "<1.5.1", - "pimcore/pimcore": "<11.2.4", - "pixelfed/pixelfed": "<0.11.11", + "pimcore/pimcore": "<11.5.4", + "piwik/piwik": "<1.11", + "pixelfed/pixelfed": "<0.12.5", "plotly/plotly.js": "<2.25.2", "pocketmine/bedrock-protocol": "<8.0.2", - "pocketmine/pocketmine-mp": "<5.11.2", + "pocketmine/pocketmine-mp": "<5.25.2", "pocketmine/raklib": ">=0.14,<0.14.6|>=0.15,<0.15.1", "pressbooks/pressbooks": "<5.18", "prestashop/autoupgrade": ">=4,<4.10.1", @@ -17368,6 +17118,7 @@ "prestashop/gamification": "<2.3.2", "prestashop/prestashop": "<8.1.6", "prestashop/productcomments": "<5.0.2", + "prestashop/ps_contactinfo": "<=3.3.2", "prestashop/ps_emailsubscription": "<2.6.1", "prestashop/ps_facetedsearch": "<3.4.1", "prestashop/ps_linklist": "<3.1", @@ -17379,6 +17130,7 @@ "ptheofan/yii2-statemachine": ">=2.0.0.0-RC1-dev,<=2", "ptrofimov/beanstalk_console": "<1.7.14", "pubnub/pubnub": "<6.1", + "punktde/pt_extbase": "<1.5.1", "pusher/pusher-php-server": "<2.2.1", "pwweb/laravel-core": "<=0.3.6.0-beta", "pxlrbt/filament-excel": "<1.1.14|>=2.0.0.0-alpha,<2.3.3", @@ -17392,7 +17144,7 @@ "rap2hpoutre/laravel-log-viewer": "<0.13", "react/http": ">=0.7,<1.9", "really-simple-plugins/complianz-gdpr": "<6.4.2", - "redaxo/source": "<=5.17.1", + "redaxo/source": "<5.18.3", "remdex/livehelperchat": "<4.29", "reportico-web/reportico": "<=8.1", "rhukster/dom-sanitizer": "<1.0.7", @@ -17400,29 +17152,32 @@ "robrichards/xmlseclibs": ">=1,<3.0.4", "roots/soil": "<4.1", "rudloff/alltube": "<3.0.3", + "rudloff/rtmpdump-bin": "<=2.3.1", "s-cart/core": "<6.9", "s-cart/s-cart": "<6.9", "sabberworm/php-css-parser": ">=1,<1.0.1|>=2,<2.0.1|>=3,<3.0.1|>=4,<4.0.1|>=5,<5.0.9|>=5.1,<5.1.3|>=5.2,<5.2.1|>=6,<6.0.2|>=7,<7.0.4|>=8,<8.0.1|>=8.1,<8.1.1|>=8.2,<8.2.1|>=8.3,<8.3.1", "sabre/dav": ">=1.6,<1.7.11|>=1.8,<1.8.9", + "samwilson/unlinked-wikibase": "<1.42", "scheb/two-factor-bundle": "<3.26|>=4,<4.11", "sensiolabs/connect": "<4.2.3", "serluck/phpwhois": "<=4.2.6", "sfroemken/url_redirect": "<=1.2.1", - "sheng/yiicms": "<=1.2", - "shopware/core": "<=6.5.8.12|>=6.6,<=6.6.5", - "shopware/platform": "<=6.5.8.12|>=6.6,<=6.6.5", + "sheng/yiicms": "<1.2.1", + "shopware/core": "<6.5.8.18-dev|>=6.6,<6.6.10.3-dev|>=6.7.0.0-RC1-dev,<6.7.0.0-RC2-dev", + "shopware/platform": "<6.5.8.18-dev|>=6.6,<6.6.10.3-dev|>=6.7.0.0-RC1-dev,<6.7.0.0-RC2-dev", "shopware/production": "<=6.3.5.2", "shopware/shopware": "<=5.7.17", "shopware/storefront": "<=6.4.8.1|>=6.5.8,<6.5.8.7-dev", - "shopxo/shopxo": "<=6.1", + "shopxo/shopxo": "<=6.4", "showdoc/showdoc": "<2.10.4", + "shuchkin/simplexlsx": ">=1.0.12,<1.1.13", "silverstripe-australia/advancedreports": ">=1,<=2", "silverstripe/admin": "<1.13.19|>=2,<2.1.8", "silverstripe/assets": ">=1,<1.11.1", "silverstripe/cms": "<4.11.3", "silverstripe/comments": ">=1.3,<3.1.1", "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", - "silverstripe/framework": "<5.2.16", + "silverstripe/framework": "<5.3.23", "silverstripe/graphql": ">=2,<2.0.5|>=3,<3.8.2|>=4,<4.3.7|>=5,<5.1.3", "silverstripe/hybridsessions": ">=1,<2.4.1|>=2.5,<2.5.1", "silverstripe/recipe-cms": ">=4.5,<4.5.3", @@ -17435,47 +17190,54 @@ "silverstripe/userforms": "<3|>=5,<5.4.2", "silverstripe/versioned-admin": ">=1,<1.11.1", "simple-updates/phpwhois": "<=1", - "simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4|==5.0.0.0-alpha12", + "simplesamlphp/saml2": "<=4.16.15|>=5.0.0.0-alpha1,<=5.0.0.0-alpha19", + "simplesamlphp/saml2-legacy": "<=4.16.15", "simplesamlphp/simplesamlphp": "<1.18.6", "simplesamlphp/simplesamlphp-module-infocard": "<1.0.1", "simplesamlphp/simplesamlphp-module-openid": "<1", "simplesamlphp/simplesamlphp-module-openidprovider": "<0.9", + "simplesamlphp/xml-common": "<1.20", "simplesamlphp/xml-security": "==1.6.11", "simplito/elliptic-php": "<1.0.6", "sitegeist/fluid-components": "<3.5", + "sjbr/sr-feuser-register": "<2.6.2", "sjbr/sr-freecap": "<2.4.6|>=2.5,<2.5.3", + "sjbr/static-info-tables": "<2.3.1", "slim/psr7": "<1.4.1|>=1.5,<1.5.1|>=1.6,<1.6.1", "slim/slim": "<2.6", "slub/slub-events": "<3.0.3", "smarty/smarty": "<4.5.3|>=5,<5.1.1", - "snipe/snipe-it": "<7.0.10", + "snipe/snipe-it": "<8.1", "socalnick/scn-social-auth": "<1.15.2", "socialiteproviders/steam": "<1.1", - "spatie/browsershot": "<3.57.4", + "spatie/browsershot": "<5.0.5", "spatie/image-optimizer": "<1.7.3", + "spencer14420/sp-php-email-handler": "<1", "spipu/html2pdf": "<5.2.8", "spoon/library": "<1.4.1", "spoonity/tcpdf": "<6.2.22", "squizlabs/php_codesniffer": ">=1,<2.8.1|>=3,<3.0.1", "ssddanbrown/bookstack": "<24.05.1", "starcitizentools/citizen-skin": ">=2.6.3,<2.31", - "statamic/cms": "<4.46|>=5.3,<5.6.2", + "starcitizentools/tabber-neue": ">=1.9.1,<2.7.2", + "statamic/cms": "<=5.16", "stormpath/sdk": "<9.9.99", "studio-42/elfinder": "<=2.1.64", "studiomitte/friendlycaptcha": "<0.1.4", "subhh/libconnect": "<7.0.8|>=8,<8.1", "sukohi/surpass": "<1", "sulu/form-bundle": ">=2,<2.5.3", - "sulu/sulu": "<1.6.44|>=2,<2.5.21|>=2.6,<2.6.5", + "sulu/sulu": "<1.6.44|>=2,<2.5.25|>=2.6,<2.6.9|>=3.0.0.0-alpha1,<3.0.0.0-alpha3", "sumocoders/framework-user-bundle": "<1.4", "superbig/craft-audit": "<3.0.2", + "svewap/a21glossary": "<=0.4.10", "swag/paypal": "<5.4.4", "swiftmailer/swiftmailer": "<6.2.5", "swiftyedit/swiftyedit": "<1.2", "sylius/admin-bundle": ">=1,<1.0.17|>=1.1,<1.1.9|>=1.2,<1.2.2", "sylius/grid": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1", "sylius/grid-bundle": "<1.10.1", - "sylius/paypal-plugin": ">=1,<1.2.4|>=1.3,<1.3.1", + "sylius/paypal-plugin": "<1.6.2|>=1.7,<1.7.2|>=2,<2.0.2", "sylius/resource-bundle": ">=1,<1.3.14|>=1.4,<1.4.7|>=1.5,<1.5.2|>=1.6,<1.6.4", "sylius/sylius": "<1.12.19|>=1.13.0.0-alpha1,<1.13.4", "symbiote/silverstripe-multivaluefield": ">=3,<3.1", @@ -17488,7 +17250,8 @@ "symfony/error-handler": ">=4.4,<4.4.4|>=5,<5.0.4", "symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1", "symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=5.3.14,<5.3.15|>=5.4.3,<5.4.4|>=6.0.3,<6.0.4", - "symfony/http-foundation": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7", + "symfony/http-client": ">=4.3,<5.4.47|>=6,<6.4.15|>=7,<7.1.8", + "symfony/http-foundation": "<5.4.46|>=6,<6.4.14|>=7,<7.1.7", "symfony/http-kernel": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", "symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13", "symfony/maker-bundle": ">=1.27,<1.29.2|>=1.30,<1.31.1", @@ -17496,20 +17259,22 @@ "symfony/phpunit-bridge": ">=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", "symfony/polyfill": ">=1,<1.10", "symfony/polyfill-php55": ">=1,<1.10", + "symfony/process": "<5.4.46|>=6,<6.4.14|>=7,<7.1.7", "symfony/proxy-manager-bridge": ">=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", "symfony/routing": ">=2,<2.0.19", + "symfony/runtime": ">=5.3,<5.4.46|>=6,<6.4.14|>=7,<7.1.7", "symfony/security": ">=2,<2.7.51|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.8", - "symfony/security-bundle": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", + "symfony/security-bundle": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.4.10|>=7,<7.0.10|>=7.1,<7.1.3", "symfony/security-core": ">=2.4,<2.6.13|>=2.7,<2.7.9|>=2.7.30,<2.7.32|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.9", "symfony/security-csrf": ">=2.4,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11", "symfony/security-guard": ">=2.8,<3.4.48|>=4,<4.4.23|>=5,<5.2.8", - "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.3.2|>=5.4,<5.4.31|>=6,<6.3.8", + "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.4.47|>=6,<6.4.15|>=7,<7.1.8", "symfony/serializer": ">=2,<2.0.11|>=4.1,<4.4.35|>=5,<5.3.12", - "symfony/symfony": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", + "symfony/symfony": "<5.4.47|>=6,<6.4.15|>=7,<7.1.8", "symfony/translation": ">=2,<2.0.17", "symfony/twig-bridge": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", "symfony/ux-autocomplete": "<2.11.2", - "symfony/validator": ">=2,<2.0.24|>=2.1,<2.1.12|>=2.2,<2.2.5|>=2.3,<2.3.3", + "symfony/validator": "<5.4.43|>=6,<6.4.11|>=7,<7.1.4", "symfony/var-exporter": ">=4.2,<4.2.12|>=4.3,<4.3.8", "symfony/web-profiler-bundle": ">=2,<2.3.19|>=2.4,<2.4.9|>=2.5,<2.5.4", "symfony/webhook": ">=6.3,<6.3.8", @@ -17518,20 +17283,22 @@ "t3/dce": "<0.11.5|>=2.2,<2.6.2", "t3g/svg-sanitizer": "<1.0.3", "t3s/content-consent": "<1.0.3|>=2,<2.0.2", - "tastyigniter/tastyigniter": "<3.3", - "tcg/voyager": "<=1.4", - "tecnickcom/tcpdf": "<=6.7.4", + "tastyigniter/tastyigniter": "<4", + "tcg/voyager": "<=1.8", + "tecnickcom/tc-lib-pdf-font": "<2.6.4", + "tecnickcom/tcpdf": "<6.8", "terminal42/contao-tablelookupwizard": "<3.3.5", "thelia/backoffice-default-template": ">=2.1,<2.1.2", "thelia/thelia": ">=2.1,<2.1.3", "theonedemon/phpwhois": "<=4.2.5", "thinkcmf/thinkcmf": "<6.0.8", - "thorsten/phpmyfaq": "<3.2.2", + "thorsten/phpmyfaq": "<=4.0.1", "tikiwiki/tiki-manager": "<=17.1", "timber/timber": ">=0.16.6,<1.23.1|>=1.24,<1.24.1|>=2,<2.1", "tinymce/tinymce": "<7.2", "tinymighty/wiki-seo": "<1.2.2", "titon/framework": "<9.9.99", + "tltneon/lgsl": "<7", "tobiasbg/tablepress": "<=2.0.0.0-RC1", "topthink/framework": "<6.0.17|>=6.1,<=8.0.4", "topthink/think": "<=6.1.1", @@ -17542,16 +17309,24 @@ "truckersmp/phpwhois": "<=4.3.1", "ttskch/pagination-service-provider": "<1", "twbs/bootstrap": "<=3.4.1|>=4,<=4.6.2", - "twig/twig": "<1.44.8|>=2,<2.16.1|>=3,<3.11.1|>=3.12,<3.14", + "twig/twig": "<3.11.2|>=3.12,<3.14.1|>=3.16,<3.19", "typo3/cms": "<9.5.29|>=10,<10.4.35|>=11,<11.5.23|>=12,<12.2", "typo3/cms-backend": "<4.1.14|>=4.2,<4.2.15|>=4.3,<4.3.7|>=4.4,<4.4.4|>=7,<=7.6.50|>=8,<=8.7.39|>=9,<=9.5.24|>=10,<10.4.46|>=11,<11.5.40|>=12,<12.4.21|>=13,<13.3.1", - "typo3/cms-core": "<=8.7.56|>=9,<=9.5.47|>=10,<=10.4.44|>=11,<=11.5.36|>=12,<=12.4.14|>=13,<=13.1", + "typo3/cms-belog": ">=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", + "typo3/cms-beuser": ">=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", + "typo3/cms-core": "<=8.7.56|>=9,<=9.5.48|>=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", + "typo3/cms-dashboard": ">=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", "typo3/cms-extbase": "<6.2.24|>=7,<7.6.8|==8.1.1", + "typo3/cms-extensionmanager": ">=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", + "typo3/cms-felogin": ">=4.2,<4.2.3", "typo3/cms-fluid": "<4.3.4|>=4.4,<4.4.1", - "typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", + "typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", "typo3/cms-frontend": "<4.3.9|>=4.4,<4.4.5", - "typo3/cms-install": "<4.1.14|>=4.2,<4.2.16|>=4.3,<4.3.9|>=4.4,<4.4.5|>=12.2,<12.4.8", + "typo3/cms-indexed-search": ">=10,<=10.4.47|>=11,<=11.5.41|>=12,<=12.4.24|>=13,<=13.4.2", + "typo3/cms-install": "<4.1.14|>=4.2,<4.2.16|>=4.3,<4.3.9|>=4.4,<4.4.5|>=12.2,<12.4.8|==13.4.2", + "typo3/cms-lowlevel": ">=11,<=11.5.41", "typo3/cms-rte-ckeditor": ">=9.5,<9.5.42|>=10,<10.4.39|>=11,<11.5.30", + "typo3/cms-scheduler": ">=11,<=11.5.41", "typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", "typo3/html-sanitizer": ">=1,<=1.5.2|>=2,<=2.1.3", "typo3/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<2.3.99|>=3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<3.3.23|>=4,<4.0.17|>=4.1,<4.1.16|>=4.2,<4.2.12|>=4.3,<4.3.3", @@ -17560,28 +17335,32 @@ "typo3fluid/fluid": ">=2,<2.0.8|>=2.1,<2.1.7|>=2.2,<2.2.4|>=2.3,<2.3.7|>=2.4,<2.4.4|>=2.5,<2.5.11|>=2.6,<2.6.10", "ua-parser/uap-php": "<3.8", "uasoft-indonesia/badaso": "<=2.9.7", - "unisharp/laravel-filemanager": "<2.6.4", + "unisharp/laravel-filemanager": "<2.9.1", + "unopim/unopim": "<0.1.5", "userfrosting/userfrosting": ">=0.3.1,<4.6.3", "usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2", "uvdesk/community-skeleton": "<=1.1.1", "uvdesk/core-framework": "<=1.1.1", "vanilla/safecurl": "<0.9.2", "verbb/comments": "<1.5.5", - "verbb/formie": "<2.1.6", + "verbb/formie": "<=2.1.43", "verbb/image-resizer": "<2.0.9", "verbb/knock-knock": "<1.2.8", "verot/class.upload.php": "<=2.1.6", + "vertexvaar/falsftp": "<0.2.6", "villagedefrance/opencart-overclocked": "<=1.11.1", "vova07/yii2-fileapi-widget": "<0.1.9", "vrana/adminer": "<4.8.1", "vufind/vufind": ">=2,<9.1.1", "waldhacker/hcaptcha": "<2.1.2", "wallabag/tcpdf": "<6.2.22", - "wallabag/wallabag": "<2.6.7", + "wallabag/wallabag": "<2.6.11", "wanglelecc/laracms": "<=1.0.3", + "wapplersystems/a21glossary": "<=0.4.10", "web-auth/webauthn-framework": ">=3.3,<3.3.4|>=4.5,<4.9", "web-auth/webauthn-lib": ">=4.5,<4.9", "web-feet/coastercms": "==5.5", + "web-tp3/wec_map": "<3.0.3", "webbuilders-group/silverstripe-kapost-bridge": "<0.4", "webcoast/deferred-image-processing": "<1.0.2", "webklex/laravel-imap": "<5.3", @@ -17591,6 +17370,7 @@ "wikimedia/parsoid": "<0.12.2", "willdurand/js-translation-bundle": "<2.1.1", "winter/wn-backend-module": "<1.2.4", + "winter/wn-cms-module": "<1.0.476|>=1.1,<1.1.11|>=1.2,<1.2.7", "winter/wn-dusk-plugin": "<2.1", "winter/wn-system-module": "<1.2.4", "wintercms/winter": "<=1.2.3", @@ -17606,15 +17386,15 @@ "xataface/xataface": "<3", "xpressengine/xpressengine": "<3.0.15", "yab/quarx": "<2.4.5", - "yeswiki/yeswiki": "<=4.4.4", - "yetiforce/yetiforce-crm": "<=6.4", + "yeswiki/yeswiki": "<4.5.4", + "yetiforce/yetiforce-crm": "<6.5", "yidashi/yii2cmf": "<=2", "yii2mod/yii2-cms": "<1.9.2", - "yiisoft/yii": "<1.1.29", - "yiisoft/yii2": "<2.0.49.4-dev", + "yiisoft/yii": "<1.1.31", + "yiisoft/yii2": "<2.0.52", "yiisoft/yii2-authclient": "<2.2.15", "yiisoft/yii2-bootstrap": "<2.0.4", - "yiisoft/yii2-dev": "<2.0.43", + "yiisoft/yii2-dev": "<=2.0.45", "yiisoft/yii2-elasticsearch": "<2.0.5", "yiisoft/yii2-gii": "<=2.2.4", "yiisoft/yii2-jui": "<2.0.4", @@ -17697,7 +17477,7 @@ "type": "tidelift" } ], - "time": "2024-10-31T18:06:19+00:00" + "time": "2025-05-17T16:05:20+00:00" }, { "name": "sebastian/cli-parser", @@ -18664,16 +18444,16 @@ }, { "name": "symfony/browser-kit", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "65d4b3fd9556e4b5b41287bef93c671f8f9f86ab" + "reference": "ce95f3e3239159e7fa3be7690c6ce95a4714637f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/65d4b3fd9556e4b5b41287bef93c671f8f9f86ab", - "reference": "65d4b3fd9556e4b5b41287bef93c671f8f9f86ab", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/ce95f3e3239159e7fa3be7690c6ce95a4714637f", + "reference": "ce95f3e3239159e7fa3be7690c6ce95a4714637f", "shasum": "" }, "require": { @@ -18712,7 +18492,7 @@ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/browser-kit/tree/v6.4.13" + "source": "https://github.com/symfony/browser-kit/tree/v6.4.19" }, "funding": [ { @@ -18728,7 +18508,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2025-02-14T11:23:16+00:00" }, { "name": "symfony/debug-bundle", @@ -18804,90 +18584,23 @@ ], "time": "2024-09-25T14:18:03+00:00" }, - { - "name": "symfony/dom-crawler", - "version": "v6.4.13", - "source": { - "type": "git", - "url": "https://github.com/symfony/dom-crawler.git", - "reference": "ae074dffb018c37a57071990d16e6152728dd972" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/ae074dffb018c37a57071990d16e6152728dd972", - "reference": "ae074dffb018c37a57071990d16e6152728dd972", - "shasum": "" - }, - "require": { - "masterminds/html5": "^2.6", - "php": ">=8.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.0" - }, - "require-dev": { - "symfony/css-selector": "^5.4|^6.0|^7.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\DomCrawler\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Eases DOM navigation for HTML and XML documents", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v6.4.13" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-10-25T15:07:50+00:00" - }, { "name": "symfony/maker-bundle", - "version": "v1.61.0", + "version": "v1.63.0", "source": { "type": "git", "url": "https://github.com/symfony/maker-bundle.git", - "reference": "a3b7f14d349f8f44ed752d4dde2263f77510cc18" + "reference": "69478ab39bc303abfbe3293006a78b09a8512425" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/a3b7f14d349f8f44ed752d4dde2263f77510cc18", - "reference": "a3b7f14d349f8f44ed752d4dde2263f77510cc18", + "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/69478ab39bc303abfbe3293006a78b09a8512425", + "reference": "69478ab39bc303abfbe3293006a78b09a8512425", "shasum": "" }, "require": { "doctrine/inflector": "^2.0", - "nikic/php-parser": "^4.18|^5.0", + "nikic/php-parser": "^5.0", "php": ">=8.1", "symfony/config": "^6.4|^7.0", "symfony/console": "^6.4|^7.0", @@ -18945,7 +18658,7 @@ ], "support": { "issues": "https://github.com/symfony/maker-bundle/issues", - "source": "https://github.com/symfony/maker-bundle/tree/v1.61.0" + "source": "https://github.com/symfony/maker-bundle/tree/v1.63.0" }, "funding": [ { @@ -18961,20 +18674,20 @@ "type": "tidelift" } ], - "time": "2024-08-29T22:50:23+00:00" + "time": "2025-04-26T01:41:37+00:00" }, { "name": "symfony/phpunit-bridge", - "version": "v6.4.13", + "version": "v6.4.16", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "e6377bea5b114f70de6332fe935e160da5014ce8" + "reference": "cebafe2f1ad2d1e745c1015b7c2519592341e4e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/e6377bea5b114f70de6332fe935e160da5014ce8", - "reference": "e6377bea5b114f70de6332fe935e160da5014ce8", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/cebafe2f1ad2d1e745c1015b7c2519592341e4e6", + "reference": "cebafe2f1ad2d1e745c1015b7c2519592341e4e6", "shasum": "" }, "require": { @@ -18994,8 +18707,8 @@ "type": "symfony-bridge", "extra": { "thanks": { - "name": "phpunit/phpunit", - "url": "https://github.com/sebastianbergmann/phpunit" + "url": "https://github.com/sebastianbergmann/phpunit", + "name": "phpunit/phpunit" } }, "autoload": { @@ -19027,7 +18740,7 @@ "description": "Provides utilities for PHPUnit, especially user deprecation notices management", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/phpunit-bridge/tree/v6.4.13" + "source": "https://github.com/symfony/phpunit-bridge/tree/v6.4.16" }, "funding": [ { @@ -19043,20 +18756,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-13T15:06:22+00:00" }, { "name": "symfony/web-profiler-bundle", - "version": "v6.4.13", + "version": "v6.4.19", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "646bf712f64d56763d0a00a11da72c5c0e4cf617" + "reference": "7d1026a8e950d416cb5148ae88ac23db5d264839" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/646bf712f64d56763d0a00a11da72c5c0e4cf617", - "reference": "646bf712f64d56763d0a00a11da72c5c0e4cf617", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/7d1026a8e950d416cb5148ae88ac23db5d264839", + "reference": "7d1026a8e950d416cb5148ae88ac23db5d264839", "shasum": "" }, "require": { @@ -19109,7 +18822,7 @@ "dev" ], "support": { - "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.4.13" + "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.4.19" }, "funding": [ { @@ -19125,20 +18838,20 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:47:05+00:00" + "time": "2025-02-14T12:21:59+00:00" }, { "name": "symplify/easy-coding-standard", - "version": "12.3.6", + "version": "12.5.18", "source": { "type": "git", "url": "https://github.com/easy-coding-standard/easy-coding-standard.git", - "reference": "c0f378782d06dfd21c66c3024e9d28f4e737645e" + "reference": "451dfeba3770f2d7476468b891a789c451ae4b34" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/easy-coding-standard/easy-coding-standard/zipball/c0f378782d06dfd21c66c3024e9d28f4e737645e", - "reference": "c0f378782d06dfd21c66c3024e9d28f4e737645e", + "url": "https://api.github.com/repos/easy-coding-standard/easy-coding-standard/zipball/451dfeba3770f2d7476468b891a789c451ae4b34", + "reference": "451dfeba3770f2d7476468b891a789c451ae4b34", "shasum": "" }, "require": { @@ -19174,7 +18887,7 @@ ], "support": { "issues": "https://github.com/easy-coding-standard/easy-coding-standard/issues", - "source": "https://github.com/easy-coding-standard/easy-coding-standard/tree/12.3.6" + "source": "https://github.com/easy-coding-standard/easy-coding-standard/tree/12.5.18" }, "funding": [ { @@ -19186,7 +18899,7 @@ "type": "github" } ], - "time": "2024-10-06T08:27:28+00:00" + "time": "2025-05-14T09:38:08+00:00" }, { "name": "theseer/tokenizer", diff --git a/config/packages/api_platform.yaml b/config/packages/api_platform.yaml index b32ddac7..d55f91ea 100644 --- a/config/packages/api_platform.yaml +++ b/config/packages/api_platform.yaml @@ -34,4 +34,8 @@ api_platform: keep_legacy_inflector: false # Need to be true, or some tests will fail - use_symfony_listeners: true \ No newline at end of file + use_symfony_listeners: true + + serializer: + # Change this to false later, to remove the hydra prefix on the API + hydra_prefix: true \ No newline at end of file diff --git a/config/packages/datatables.yaml b/config/packages/datatables.yaml index 63d386ee..6076a6c7 100644 --- a/config/packages/datatables.yaml +++ b/config/packages/datatables.yaml @@ -8,7 +8,7 @@ datatables: # Set options, as documented at https://datatables.net/reference/option/ options: - lengthMenu : [[10, 25, 50, 100, -1], [10, 25, 50, 100, "All"]] + lengthMenu : [[10, 25, 50, 100], [10, 25, 50, 100]] # We add the "All" option, when part tables are generated pageLength: '%partdb.table.default_page_size%' # Set to -1 to disable pagination (i.e. show all rows) by default dom: " <'row' <'col mb-2 input-group flex-nowrap' B l > <'col-auto mb-2' < p >>> <'card' diff --git a/config/packages/doctrine.yaml b/config/packages/doctrine.yaml index 0986565f..3211fbbe 100644 --- a/config/packages/doctrine.yaml +++ b/config/packages/doctrine.yaml @@ -57,6 +57,7 @@ doctrine: field2: App\Doctrine\Functions\Field2 natsort: App\Doctrine\Functions\Natsort array_position: App\Doctrine\Functions\ArrayPosition + ilike: App\Doctrine\Functions\ILike when@test: doctrine: diff --git a/config/packages/monolog.yaml b/config/packages/monolog.yaml index 8938cc13..44a078b8 100644 --- a/config/packages/monolog.yaml +++ b/config/packages/monolog.yaml @@ -50,7 +50,6 @@ when@prod: type: stream path: "%kernel.logs_dir%/%kernel.environment%.log" level: debug - formatter: monolog.formatter.json console: type: console process_psr_3_messages: false @@ -74,7 +73,6 @@ when@docker: type: stream path: "php://stderr" level: debug - formatter: monolog.formatter.json console: type: console process_psr_3_messages: false diff --git a/config/packages/nelmio_security.yaml b/config/packages/nelmio_security.yaml index 075ce930..1cb74da7 100644 --- a/config/packages/nelmio_security.yaml +++ b/config/packages/nelmio_security.yaml @@ -51,12 +51,16 @@ nelmio_security: img-src: - '*' - 'data:' + # Required for be able to load pictures in the QR code scanner + - 'blob:' style-src: - 'self' - 'unsafe-inline' - 'data:' script-src: - 'self' + # Required for loading the Wasm for the barcode scanner: + - 'wasm-unsafe-eval' object-src: - 'self' - 'data:' diff --git a/docs/concepts.md b/docs/concepts.md index b6221026..ddf38633 100644 --- a/docs/concepts.md +++ b/docs/concepts.md @@ -23,7 +23,7 @@ each other so that it does not matter which one of your 1000 things of Part you A part entity has many fields, which can be used to describe it better. Most of the fields are optional: * **Name** (Required): The name of the part or how you want to call it. This could be a manufacturer-provided name, or a - name you thought of yourself. The name have to be unique in a single category. + name you thought of yourself. Each name needs to be unique and must exist in a single category. * **Description**: A short (single-line) description of what this part is/does. For longer information, you should use the comment field or the specifications * **Category** (Required): The category (see there) to which this part belongs to. @@ -239,4 +239,4 @@ replaced with data for the actual thing. You do not have to define a label profile to generate labels (you can just set the settings on the fly in the label dialog), however, if you want to generate many labels, it is recommended to save the settings as a label profile, to save -it for later usage. This ensures that all generated labels look the same. \ No newline at end of file +it for later usage. This ensures that all generated labels look the same. diff --git a/docs/installation/choosing_database.md b/docs/installation/choosing_database.md index 69dc810e..cd9657d4 100644 --- a/docs/installation/choosing_database.md +++ b/docs/installation/choosing_database.md @@ -150,9 +150,9 @@ In the `serverVersion` parameter you can specify the version of the PostgreSQL s The `charset` parameter specify the character set of the database. It should be set to `utf8` to ensure that all characters are stored correctly. -If you want to use a unix socket for the connection instead of a TCP connnection, you can specify the socket path in the `unix_socket` parameter. +If you want to use a unix socket for the connection instead of a TCP connnection, you can specify the socket path in the `host` parameter. ```shell -DATABASE_URL="postgresql://db_user:db_password@localhost/db_name?serverVersion=12.19&charset=utf8&unix_socket=/var/run/postgresql/.s.PGSQL.5432" +DATABASE_URL="postgresql://db_user@localhost/db_name?serverVersion=16.6&charset=utf8&host=/var/run/postgresql" ``` diff --git a/docs/installation/index.md b/docs/installation/index.md index e7b59104..217f702a 100644 --- a/docs/installation/index.md +++ b/docs/installation/index.md @@ -6,4 +6,6 @@ has_children: true --- # Installation -Below you can find some guides to install Part-DB. \ No newline at end of file +Below you can find some guides to install Part-DB. + +For the hobbyists without much experience, we recommend the docker installation or direct installation on debian. \ No newline at end of file diff --git a/docs/installation/installation_docker.md b/docs/installation/installation_docker.md index 5d357ae5..c9b46fdb 100644 --- a/docs/installation/installation_docker.md +++ b/docs/installation/installation_docker.md @@ -47,6 +47,12 @@ services: - DATABASE_URL=sqlite:///%kernel.project_dir%/var/db/app.db # In docker env logs will be redirected to stderr - APP_ENV=docker + + # Uncomment this, if you want to use the automatic database migration feature. With this you have you do not have to + # run the doctrine:migrations:migrate commands on installation or upgrade. A database backup is written to the uploads/ + # folder (under .automigration-backup), so you can restore it, if the migration fails. + # This feature is currently experimental, so use it at your own risk! + # - DB_AUTOMIGRATE=true # You can configure Part-DB using environment variables # Below you can find the most essential ones predefined @@ -130,6 +136,12 @@ services: # In docker env logs will be redirected to stderr - APP_ENV=docker + # Uncomment this, if you want to use the automatic database migration feature. With this you have you do not have to + # run the doctrine:migrations:migrate commands on installation or upgrade. A database backup is written to the uploads/ + # folder (under .automigration-backup), so you can restore it, if the migration fails. + # This feature is currently experimental, so use it at your own risk! + # - DB_AUTOMIGRATE=true + # You can configure Part-DB using environment variables # Below you can find the most essential ones predefined # However you can add add any other environment configuration you want here @@ -201,6 +213,10 @@ You also have to create the database as described above in step 4. You can run the console commands described in README by executing `docker exec --user=www-data -it partdb bin/console [command]` +{: .warning } +> If you run a root console inside the container, and wanna execute commands on the webserver behalf, be sure to use `sudo -E` command (with the `-E` flag) to preserve env variables from the current shell. +> Otherwise Part-DB console might use the wrong configuration to execute commands. + ## Troubleshooting *Login is not possible. Login page is just reloading and no error message is shown or something like "CSFR token invalid"*: diff --git a/docs/installation/kubernetes.md b/docs/installation/kubernetes.md new file mode 100644 index 00000000..86504af2 --- /dev/null +++ b/docs/installation/kubernetes.md @@ -0,0 +1,42 @@ +--- +title: Kubernetes / Helm +layout: default +parent: Installation +nav_order: 5 +--- + +# Kubernetes / Helm Charts + +If you are using Kubernetes, you can use the [helm charts](https://helm.sh/) provided in this [repository](https://github.com/Part-DB/helm-charts). + +## Usage + +[Helm](https://helm.sh) must be installed to use the charts. Please refer to +Helm's [documentation](https://helm.sh/docs) to get started. + +Once Helm has been set up correctly, add the repo as follows: + +`helm repo add part-db https://part-db.github.io/helm-charts` + +If you had already added this repo earlier, run `helm repo update` to retrieve +the latest versions of the packages. You can then run `helm search repo +part-db` to see the charts. + +To install the part-db chart: + + helm install my-part-db part-db/part-db + +To uninstall the chart: + + helm delete my-part-db + +This repository is also available at [ArtifactHUB](https://artifacthub.io/packages/search?repo=part-db). + +## Configuration + +See the README in the [chart directory](https://github.com/Part-DB/helm-charts/tree/main/charts/part-db) for more +information on the available configuration options. + +## Bugreports + +If you find issues related to the helm charts, please open an issue in the [helm-charts repository](https://github.com/Part-DB/helm-charts). \ No newline at end of file diff --git a/docs/installation/nginx.md b/docs/installation/nginx.md index 82a2e4cf..84305975 100644 --- a/docs/installation/nginx.md +++ b/docs/installation/nginx.md @@ -52,6 +52,11 @@ server { location ~ \.php$ { return 404; } + + # Set Content-Security-Policy for svg files, to block embedded javascript in there + location ~* \.svg$ { + add_header Content-Security-Policy "default-src 'self'; script-src 'none'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; frame-ancestors 'none';"; + } error_log /var/log/nginx/parts.error.log; access_log /var/log/nginx/parts.access.log; diff --git a/docs/installation/proxmox.md b/docs/installation/proxmox.md new file mode 100644 index 00000000..865d2bf4 --- /dev/null +++ b/docs/installation/proxmox.md @@ -0,0 +1,31 @@ +--- +title: Proxmox VE LXC +layout: default +parent: Installation +nav_order: 6 +--- + +# Proxmox VE LXC + +{: .warning } +> The proxmox VE LXC script for Part-DB is developed and maintained by [Proxmox VE Helper-Scripts](https://community-scripts.github.io/ProxmoxVE/) +> and not by the Part-DB developers. Keep in mind that the script is not officially supported by the Part-DB developers. + +If you are using Proxmox VE you can use the scripts provided by [Proxmox VE Helper-Scripts community](https://community-scripts.github.io/ProxmoxVE/scripts?id=part-db) +to easily install Part-DB in a LXC container. + +## Usage + +To create a new LXC container with Part-DB, you can use the following command in the Proxmox VE shell: + +```bash +bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/part-db.sh)" +``` + +The same command can be used to update an existing Part-DB container. + +See the [helper script website](https://community-scripts.github.io/ProxmoxVE/scripts?id=part-db) for more information. + +## Bugreports + +If you find issues related to the proxmox VE LXC script, please open an issue in the [Proxmox VE Helper-Scripts repository](https://github.com/community-scripts/ProxmoxVE). diff --git a/docs/usage/console_commands.md b/docs/usage/console_commands.md index 00431a34..e5197251 100644 --- a/docs/usage/console_commands.md +++ b/docs/usage/console_commands.md @@ -25,6 +25,12 @@ is named `partdb`, you can execute the command `php bin/console cache:clear` wit docker exec --user=www-data partdb php bin/console cache:clear ``` +{: .warning } +> If you run a root console inside the docker container, and wanna execute commands on the webserver behalf, be sure to use `sudo -E` command (with the `-E` flag) to preserve env variables from the current shell. +> Otherwise Part-DB console might use the wrong configuration to execute commands. + +## Troubleshooting + ## User management commands * `php bin/console partdb:users:list`: List all users of this Part-DB instance @@ -64,4 +70,10 @@ docker exec --user=www-data partdb php bin/console cache:clear ## Database commands * `php bin/console doctrine:migrations:migrate`: Migrate the database to the latest version -* `php bin/console doctrine:migrations:up-to-date`: Check if the database is up-to-date \ No newline at end of file +* `php bin/console doctrine:migrations:up-to-date`: Check if the database is up-to-date + +## Attachment commands + +* `php bin/console partdb:attachments:download`: Download all attachments, which are not already downloaded, to the + local filesystem. This is useful to create local backups of the attachments, no matter what happens on the remote and + also makes pictures thumbnails available for the frontend for them \ No newline at end of file diff --git a/docs/usage/information_provider_system.md b/docs/usage/information_provider_system.md index ee9fd394..8de83a8e 100644 --- a/docs/usage/information_provider_system.md +++ b/docs/usage/information_provider_system.md @@ -107,7 +107,7 @@ The following env configuration options are available: default: `EUR`). If an offer is only available in a certain currency, Part-DB will save the prices in their native currency, and you can use Part-DB currency conversion feature to convert it to your preferred currency. -* `PROVIDER_OCOTPART_COUNTRY`: The country you want to get prices in if available (optional, 2 letter ISO-code, +* `PROVIDER_OCTOPART_COUNTRY`: The country you want to get prices in if available (optional, 2 letter ISO-code, default: `DE`). To get the correct prices, you have to set this and the currency setting to the correct value. * `PROVIDER_OCTOPART_SEARCH_LIMIT`: The maximum number of results to return per search (optional, default: `10`). This affects how quickly your monthly limit is used up. @@ -232,6 +232,26 @@ The following env configuration options are available: completeness (prioritizing items with the most detailed information). If set to 'M', it further sorts by manufacturer name. If set to any other value, no sorting is performed. +### Reichelt + +The reichelt provider uses webscraping from [reichelt.com](https://reichelt.com/) to get part information. +This is not an official API and could break at any time. So use it at your own risk. + +The following env configuration options are available: +* `PROVIDER_REICHELT_ENABLED`: Set this to `1` to enable the Reichelt provider +* `PROVIDER_REICHELT_CURRENCY`: The currency you want to get prices in. Only possible for countries which use Non-EUR (optional, default: `EUR`) +* `PROVIDER_REICHELT_COUNTRY`: The country you want to get the prices for (optional, default: `DE`) +* `PROVIDER_REICHELT_LANGUAGE`: The language you want to get the descriptions in (optional, default: `en`) +* `PROVIDER_REICHELT_INCLUDE_VAT`: If set to `1`, the prices will be gross prices (including tax), otherwise net prices (optional, default: `1`) + +### Pollin + +The pollin provider uses webscraping from [pollin.de](https://www.pollin.de/) to get part information. +This is not an official API and could break at any time. So use it at your own risk. + +The following env configuration options are available: +* `PROVIDER_POLLIN_ENABLED`: Set this to `1` to enable the Pollin provider + ### Custom provider To create a custom provider, you have to create a new class implementing the `InfoProviderInterface` interface. As long diff --git a/docs/usage/keybindings.md b/docs/usage/keybindings.md index 698524c5..771d7684 100644 --- a/docs/usage/keybindings.md +++ b/docs/usage/keybindings.md @@ -117,6 +117,6 @@ For a German keyboard layout, replace `[` with `0`, and `]` with `´`. | Key | Character | |--------------------------------|--------------------| | **Alt + [** (code 219) | © (Copyright char) | -| **Alt + Shift + [** (code 219) | (Registered char) | +| **Alt + Shift + [** (code 219) | ® (Registered char) | | **Alt + ]** (code 221) | ™ (Trademark char) | -| **Alt + Shift + ]** (code 221) | (Degree char) | +| **Alt + Shift + ]** (code 221) | ° (Degree char) | diff --git a/migrations/Version20250220215048.php b/migrations/Version20250220215048.php new file mode 100644 index 00000000..90a73eb1 --- /dev/null +++ b/migrations/Version20250220215048.php @@ -0,0 +1,42 @@ +addSql('ALTER TABLE attachments ADD internal_path VARCHAR(255) DEFAULT NULL'); + $this->addSql('ALTER TABLE attachments ADD external_path VARCHAR(255) DEFAULT NULL'); + + //Copy the data from path to external_path and remove the path column + $this->addSql('UPDATE attachments SET external_path=path'); + $this->addSql('ALTER TABLE attachments DROP COLUMN path'); + + + $this->addSql('UPDATE attachments SET internal_path=external_path WHERE external_path LIKE \'#%MEDIA#%%\' ESCAPE \'#\''); + $this->addSql('UPDATE attachments SET internal_path=external_path WHERE external_path LIKE \'#%BASE#%%\' ESCAPE \'#\''); + $this->addSql('UPDATE attachments SET internal_path=external_path WHERE external_path LIKE \'#%SECURE#%%\' ESCAPE \'#\''); + $this->addSql('UPDATE attachments SET internal_path=external_path WHERE external_path LIKE \'#%FOOTPRINTS#%%\' ESCAPE \'#\''); + $this->addSql('UPDATE attachments SET internal_path=external_path WHERE external_path LIKE \'#%FOOTPRINTS3D#%%\' ESCAPE \'#\''); + $this->addSql('UPDATE attachments SET external_path=NULL WHERE internal_path IS NOT NULL'); + } + + public function down(Schema $schema): void + { + $this->addSql('UPDATE attachments SET external_path=internal_path WHERE internal_path IS NOT NULL'); + $this->addSql('ALTER TABLE attachments DROP COLUMN internal_path'); + $this->addSql('ALTER TABLE attachments RENAME COLUMN external_path TO path'); + } +} diff --git a/migrations/Version20250222165240.php b/migrations/Version20250222165240.php new file mode 100644 index 00000000..57cd3970 --- /dev/null +++ b/migrations/Version20250222165240.php @@ -0,0 +1,31 @@ +addSql("UPDATE attachments SET class_name = 'Part' WHERE class_name = 'PartDB\Part'"); + $this->addSql("UPDATE attachments SET class_name = 'Device' WHERE class_name = 'PartDB\Device'"); + } + + public function down(Schema $schema): void + { + //No down required, as the new format can also be read by older Part-DB version + } +} diff --git a/package.json b/package.json index bafa31e2..38656c72 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "@symfony/stimulus-bridge": "^3.2.0", "@symfony/ux-translator": "file:vendor/symfony/ux-translator/assets", "@symfony/ux-turbo": "file:vendor/symfony/ux-turbo/assets", - "@symfony/webpack-encore": "^4.1.0", + "@symfony/webpack-encore": "^5.0.0", "bootstrap": "^5.1.3", "core-js": "^3.23.0", "intl-messageformat": "^10.2.5", @@ -18,7 +18,7 @@ "regenerator-runtime": "^0.13.9", "webpack": "^5.74.0", "webpack-bundle-analyzer": "^4.3.0", - "webpack-cli": "^4.10.0", + "webpack-cli": "^5.1.0", "webpack-notifier": "^1.15.0" }, "license": "AGPL-3.0-or-later", @@ -33,50 +33,52 @@ "@algolia/autocomplete-js": "^1.17.0", "@algolia/autocomplete-plugin-recent-searches": "^1.17.0", "@algolia/autocomplete-theme-classic": "^1.17.0", - "@ckeditor/ckeditor5-alignment": "^41.0.0", - "@ckeditor/ckeditor5-autoformat": "^41.0.0", - "@ckeditor/ckeditor5-basic-styles": "^41.0.0", - "@ckeditor/ckeditor5-block-quote": "^41.0.0", - "@ckeditor/ckeditor5-code-block": "^41.0.0", - "@ckeditor/ckeditor5-dev-translations": "^39.1.0", - "@ckeditor/ckeditor5-dev-utils": "^39.1.0", - "@ckeditor/ckeditor5-editor-classic": "^41.0.0", - "@ckeditor/ckeditor5-essentials": "^41.0.0", - "@ckeditor/ckeditor5-find-and-replace": "^41.0.0", - "@ckeditor/ckeditor5-font": "^41.0.0", - "@ckeditor/ckeditor5-heading": "^41.0.0", - "@ckeditor/ckeditor5-highlight": "^41.0.0", - "@ckeditor/ckeditor5-horizontal-line": "^41.0.0", - "@ckeditor/ckeditor5-html-embed": "^41.0.0", - "@ckeditor/ckeditor5-html-support": "^41.0.0", - "@ckeditor/ckeditor5-image": "^41.0.0", - "@ckeditor/ckeditor5-indent": "^41.0.0", - "@ckeditor/ckeditor5-link": "^41.0.0", - "@ckeditor/ckeditor5-list": "^41.0.0", - "@ckeditor/ckeditor5-markdown-gfm": "^41.0.0", - "@ckeditor/ckeditor5-media-embed": "^41.0.0", - "@ckeditor/ckeditor5-paragraph": "^41.0.0", - "@ckeditor/ckeditor5-paste-from-office": "^41.0.0", - "@ckeditor/ckeditor5-remove-format": "^41.0.0", - "@ckeditor/ckeditor5-source-editing": "^41.0.0", - "@ckeditor/ckeditor5-special-characters": "^41.0.0", - "@ckeditor/ckeditor5-table": "^41.0.0", - "@ckeditor/ckeditor5-theme-lark": "^41.0.0", - "@ckeditor/ckeditor5-upload": "^41.0.0", - "@ckeditor/ckeditor5-watchdog": "^41.0.0", - "@ckeditor/ckeditor5-word-count": "^41.0.0", + "@ckeditor/ckeditor5-alignment": "^44.0.0", + "@ckeditor/ckeditor5-autoformat": "^44.0.0", + "@ckeditor/ckeditor5-basic-styles": "^44.0.0", + "@ckeditor/ckeditor5-block-quote": "^44.0.0", + "@ckeditor/ckeditor5-code-block": "^44.0.0", + "@ckeditor/ckeditor5-dev-translations": "^43.0.1", + "@ckeditor/ckeditor5-dev-utils": "^43.0.1", + "@ckeditor/ckeditor5-editor-classic": "^44.0.0", + "@ckeditor/ckeditor5-essentials": "^44.0.0", + "@ckeditor/ckeditor5-find-and-replace": "^44.0.0", + "@ckeditor/ckeditor5-font": "^44.0.0", + "@ckeditor/ckeditor5-heading": "^44.0.0", + "@ckeditor/ckeditor5-highlight": "^44.0.0", + "@ckeditor/ckeditor5-horizontal-line": "^44.0.0", + "@ckeditor/ckeditor5-html-embed": "^44.0.0", + "@ckeditor/ckeditor5-html-support": "^44.0.0", + "@ckeditor/ckeditor5-image": "^44.0.0", + "@ckeditor/ckeditor5-indent": "^44.0.0", + "@ckeditor/ckeditor5-link": "^44.0.0", + "@ckeditor/ckeditor5-list": "^44.0.0", + "@ckeditor/ckeditor5-markdown-gfm": "^44.0.0", + "@ckeditor/ckeditor5-media-embed": "^44.0.0", + "@ckeditor/ckeditor5-paragraph": "^44.0.0", + "@ckeditor/ckeditor5-paste-from-office": "^44.0.0", + "@ckeditor/ckeditor5-remove-format": "^44.0.0", + "@ckeditor/ckeditor5-source-editing": "^44.0.0", + "@ckeditor/ckeditor5-special-characters": "^44.0.0", + "@ckeditor/ckeditor5-table": "^44.0.0", + "@ckeditor/ckeditor5-theme-lark": "^44.0.0", + "@ckeditor/ckeditor5-upload": "^44.0.0", + "@ckeditor/ckeditor5-watchdog": "^44.0.0", + "@ckeditor/ckeditor5-word-count": "^44.0.0", "@jbtronics/bs-treeview": "^1.0.1", + "@part-db/html5-qrcode": "^3.1.0", "@zxcvbn-ts/core": "^3.0.2", "@zxcvbn-ts/language-common": "^3.0.3", "@zxcvbn-ts/language-de": "^3.0.1", "@zxcvbn-ts/language-en": "^3.0.1", "@zxcvbn-ts/language-fr": "^3.0.1", "@zxcvbn-ts/language-ja": "^3.0.1", + "barcode-detector": "^2.3.1", "bootbox": "^6.0.0", "bootswatch": "^5.1.3", "bs-custom-file-input": "^1.3.4", "clipboard": "^2.0.4", - "compression-webpack-plugin": "^10.0.0", + "compression-webpack-plugin": "^11.1.0", "datatables.net": "^2.0.0", "datatables.net-bs5": "^2.0.0", "datatables.net-buttons-bs5": "^3.0.0", @@ -86,18 +88,17 @@ "datatables.net-select-bs5": "^2.0.0", "dompurify": "^3.0.3", "emoji.json": "^15.0.0", - "exports-loader": "^3.0.0", - "html5-qrcode": "^2.2.1", + "exports-loader": "^5.0.0", "json-formatter-js": "^2.3.4", "jszip": "^3.2.0", "katex": "^0.16.0", - "marked": "^12.0.0", - "marked-gfm-heading-id": "^3.0.4", + "marked": "^15.0.4", + "marked-gfm-heading-id": "^4.1.1", "marked-mangle": "^1.0.1", "pdfmake": "^0.2.2", "stimulus-use": "^0.52.0", "tom-select": "^2.1.0", "ts-loader": "^9.2.6", - "typescript": "^4.0.2" + "typescript": "^5.7.2" } } diff --git a/phpstan.dist.neon b/phpstan.dist.neon index a9f11291..fc7b3524 100644 --- a/phpstan.dist.neon +++ b/phpstan.dist.neon @@ -20,7 +20,7 @@ parameters: treatPhpDocTypesAsCertain: false symfony: - container_xml_path: '%rootDir%/../../../var/cache/dev/App_KernelDevDebugContainer.xml' + containerXmlPath: '%rootDir%/../../../var/cache/dev/App_KernelDevDebugContainer.xml' doctrine: objectManagerLoader: tests/object-manager.php @@ -30,11 +30,6 @@ parameters: checkFunctionNameCase: false - checkAlwaysTrueInstanceof: false - checkAlwaysTrueCheckTypeFunctionCall: false - checkAlwaysTrueStrictComparison: false - reportAlwaysTrueInLastCondition: false - reportMaybesInPropertyPhpDocTypes: false reportMaybesInMethodSignatures: false @@ -43,14 +38,14 @@ parameters: booleansInConditions: false uselessCast: false requireParentConstructorCall: true - disallowedConstructs: false overwriteVariablesWithLoop: false closureUsesThis: false matchingInheritedMethodNames: true numericOperandsInArithmeticOperators: true - strictCalls: true switchConditionsMatchingType: false noVariableVariables: false + disallowedEmpty: false + disallowedShortTernary: false ignoreErrors: # Ignore errors caused by complex mapping with AbstractStructuralDBElement @@ -62,4 +57,7 @@ parameters: - '#Part::getParameters\(\) should return .*AbstractParameter#' # Ignore doctrine type mapping mismatch - - '#Property .* type mapping mismatch: property can contain .* but database expects .*#' \ No newline at end of file + - '#Property .* type mapping mismatch: property can contain .* but database expects .*#' + + # Ignore error of unused WithPermPresetsTrait, as it is used in the migrations which are not analyzed by Phpstan + - '#Trait App\\Migration\\WithPermPresetsTrait is used zero times and is not analysed#' diff --git a/public/.htaccess b/public/.htaccess index ee3b5450..bfaab5de 100644 --- a/public/.htaccess +++ b/public/.htaccess @@ -118,3 +118,10 @@ DirectoryIndex index.php # RedirectTemp cannot be used instead + +# Set Content-Security-Policy for svg files (and compressed variants), to block embedded javascript in there + + + Header set Content-Security-Policy "default-src 'self'; script-src 'none'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; frame-ancestors 'none';" + + \ No newline at end of file diff --git a/public/kicad/footprints.txt b/public/kicad/footprints.txt index 0f65227e..8f0f944c 100644 --- a/public/kicad/footprints.txt +++ b/public/kicad/footprints.txt @@ -1,6 +1,6 @@ # This file contains all the KiCad footprints available in the official library # Generated by footprints.sh -# on Sat Dec 2 19:52:08 CET 2023 +# on Sun Feb 16 21:19:56 CET 2025 Audio_Module:Reverb_BTDR-1H Audio_Module:Reverb_BTDR-1V Battery:BatteryClip_Keystone_54_D16-19mm @@ -38,6 +38,8 @@ Battery:BatteryHolder_MPD_BC2003_1x2032 Battery:BatteryHolder_MPD_BC2AAPC_2xAA Battery:BatteryHolder_MPD_BH-18650-PC2 Battery:BatteryHolder_Multicomp_BC-2001_1x2032 +Battery:BatteryHolder_MYOUNG_BS-07-A1BJ001_CR2032 +Battery:BatteryHolder_Renata_SMTU2032-LF_1x2032 Battery:BatteryHolder_Seiko_MS621F Battery:BatteryHolder_TruPower_BH-331P_3xAA Battery:Battery_CR1225 @@ -45,6 +47,7 @@ Battery:Battery_Panasonic_CR1025-VSK_Vertical_CircularHoles Battery:Battery_Panasonic_CR1220-VCN_Vertical_CircularHoles Battery:Battery_Panasonic_CR1632-V1AN_Vertical_CircularHoles Battery:Battery_Panasonic_CR2025-V1AK_Vertical_CircularHoles +Battery:Battery_Panasonic_CR2032-HFN_Horizontal_CircularHoles Battery:Battery_Panasonic_CR2032-VS1N_Vertical_CircularHoles Battery:Battery_Panasonic_CR2354-VCN_Vertical_CircularHoles Battery:Battery_Panasonic_CR2450-VAN_Vertical_CircularHoles @@ -177,16 +180,16 @@ Button_Switch_SMD:SW_DPDT_CK_JS202011JCQN Button_Switch_SMD:SW_MEC_5GSH9 Button_Switch_SMD:SW_Push_1P1T-MP_NO_Horizontal_Alps_SKRTLAE010 Button_Switch_SMD:SW_Push_1P1T-SH_NO_CK_KMR2xxG -Button_Switch_SMD:SW_Push_1P1T_NO_6x6mm_H9.5mm Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2 Button_Switch_SMD:SW_Push_1P1T_NO_CK_KSC6xxJ Button_Switch_SMD:SW_Push_1P1T_NO_CK_KSC7xxJ Button_Switch_SMD:SW_Push_1P1T_NO_CK_PTS125Sx43PSMTR Button_Switch_SMD:SW_Push_1P1T_NO_Vertical_Wuerth_434133025816 Button_Switch_SMD:SW_Push_1P1T_XKB_TS-1187A +Button_Switch_SMD:SW_Push_1TS009xxxx-xxxx-xxxx_6x6x5mm Button_Switch_SMD:SW_Push_SPST_NO_Alps_SKRK Button_Switch_SMD:SW_SP3T_PCM13 -Button_Switch_SMD:SW_SPDT_CK-JS102011SAQN +Button_Switch_SMD:SW_SPDT_CK_JS102011SAQN Button_Switch_SMD:SW_SPDT_PCM12 Button_Switch_SMD:SW_SPDT_REED_MSDM-DT Button_Switch_SMD:SW_SPST_B3S-1000 @@ -219,6 +222,9 @@ Button_Switch_SMD:SW_SPST_Omron_B3FS-105xP Button_Switch_SMD:SW_SPST_Panasonic_EVQPL_3PL_5PL_PT_A08 Button_Switch_SMD:SW_SPST_Panasonic_EVQPL_3PL_5PL_PT_A15 Button_Switch_SMD:SW_SPST_PTS645 +Button_Switch_SMD:SW_SPST_PTS647_Sx38 +Button_Switch_SMD:SW_SPST_PTS647_Sx50 +Button_Switch_SMD:SW_SPST_PTS647_Sx70 Button_Switch_SMD:SW_SPST_PTS810 Button_Switch_SMD:SW_SPST_REED_CT05-XXXX-G1 Button_Switch_SMD:SW_SPST_REED_CT05-XXXX-J1 @@ -235,9 +241,8 @@ Button_Switch_SMD:SW_Tactile_SPST_NO_Straight_CK_PTS636Sx25SMTRLFS Button_Switch_THT:KSA_Tactile_SPST Button_Switch_THT:Nidec_Copal_SH-7010C Button_Switch_THT:Push_E-Switch_KS01Q01 -Button_Switch_THT:SW_CuK_JS202011AQN_DPDT_Angled -Button_Switch_THT:SW_CuK_JS202011CQN_DPDT_Straight -Button_Switch_THT:SW_CuK_OS102011MA1QN1_SPDT_Angled +Button_Switch_THT:SW_CK_JS202011AQN_DPDT_Angled +Button_Switch_THT:SW_CK_JS202011CQN_DPDT_Straight Button_Switch_THT:SW_CW_GPTS203211B Button_Switch_THT:SW_DIP_SPSTx01_Piano_10.8x4.1mm_W7.62mm_P2.54mm Button_Switch_THT:SW_DIP_SPSTx01_Slide_6.7x4.1mm_W7.62mm_P2.54mm_LowProfile @@ -322,8 +327,12 @@ Button_Switch_THT:SW_PUSH_6mm_H9.5mm Button_Switch_THT:SW_PUSH_E-Switch_FS5700DP_DPDT Button_Switch_THT:SW_PUSH_LCD_E3_SAxxxx Button_Switch_THT:SW_PUSH_LCD_E3_SAxxxx_SocketPins -Button_Switch_THT:SW_Slide_1P2T_CK_OS102011MS2Q +Button_Switch_THT:SW_Slide-03_Wuerth-WS-SLTV_10x2.5x6.4_P2.54mm +Button_Switch_THT:SW_Slide_SPDT_Angled_CK_OS102011MA1Q +Button_Switch_THT:SW_Slide_SPDT_Straight_CK_OS102011MS2Q Button_Switch_THT:SW_SPST_Omron_B3F-315x_Angled +Button_Switch_THT:SW_SPST_Omron_B3F-40xx +Button_Switch_THT:SW_SPST_Omron_B3F-50xx Button_Switch_THT:SW_Tactile_SKHH_Angled Button_Switch_THT:SW_Tactile_SPST_Angled_PTS645Vx31-2LFS Button_Switch_THT:SW_Tactile_SPST_Angled_PTS645Vx39-2LFS @@ -332,6 +341,9 @@ Button_Switch_THT:SW_Tactile_SPST_Angled_PTS645Vx83-2LFS Button_Switch_THT:SW_Tactile_Straight_KSA0Axx1LFTR Button_Switch_THT:SW_Tactile_Straight_KSL0Axx1LFTR Button_Switch_THT:SW_TH_Tactile_Omron_B3F-10xx +Button_Switch_THT:SW_XKB_DM1-16UC-1 +Button_Switch_THT:SW_XKB_DM1-16UD-1 +Button_Switch_THT:SW_XKB_DM1-16UP-1 Buzzer_Beeper:Buzzer_12x9.5RM7.6 Buzzer_Beeper:Buzzer_15x7.5RM7.6 Buzzer_Beeper:Buzzer_CUI_CPT-9019S-SMT @@ -442,6 +454,8 @@ Capacitor_SMD:C_1206_3216Metric Capacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolder Capacitor_SMD:C_1210_3225Metric Capacitor_SMD:C_1210_3225Metric_Pad1.33x2.70mm_HandSolder +Capacitor_SMD:C_1808_4520Metric +Capacitor_SMD:C_1808_4520Metric_Pad1.72x2.30mm_HandSolder Capacitor_SMD:C_1812_4532Metric Capacitor_SMD:C_1812_4532Metric_Pad1.57x3.40mm_HandSolder Capacitor_SMD:C_1825_4564Metric @@ -910,7 +924,12 @@ Capacitor_THT:C_Rect_L9.0mm_W9.8mm_P7.50mm_MKT Capacitor_THT:DX_5R5HxxxxU_D11.5mm_P10.00mm Capacitor_THT:DX_5R5VxxxxU_D11.5mm_P5.00mm Capacitor_THT:DX_5R5VxxxxU_D19.0mm_P5.00mm -Connector:Banana_Cliff_FCR7350x_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350B_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350G_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350L_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350N_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350R_S16N-PC_Horizontal +Connector:Banana_Cliff_FCR7350Y_S16N-PC_Horizontal Connector:Banana_Jack_1Pin Connector:Banana_Jack_2Pin Connector:Banana_Jack_3Pin @@ -948,9 +967,13 @@ Connector_AMASS:AMASS_XT60-M_1x02_P7.20mm_Vertical Connector_AMASS:AMASS_XT60IPW-M_1x03_P7.20mm_Horizontal Connector_AMASS:AMASS_XT60PW-F_1x02_P7.20mm_Horizontal Connector_AMASS:AMASS_XT60PW-M_1x02_P7.20mm_Horizontal +Connector_AMASS:AMASS_XT90PW-M_1x02_P10.90mm_Horizontal Connector_Amphenol:Amphenol_M8S-03PMMR-SF8001 Connector_Audio:Jack_3.5mm_CUI_SJ-3523-SMT_Horizontal Connector_Audio:Jack_3.5mm_CUI_SJ-3524-SMT_Horizontal +Connector_Audio:Jack_3.5mm_CUI_SJ1-3513N_Horizontal +Connector_Audio:Jack_3.5mm_CUI_SJ1-3514N_Horizontal +Connector_Audio:Jack_3.5mm_CUI_SJ1-3515N_Horizontal Connector_Audio:Jack_3.5mm_CUI_SJ1-3523N_Horizontal Connector_Audio:Jack_3.5mm_CUI_SJ1-3524N_Horizontal Connector_Audio:Jack_3.5mm_CUI_SJ1-3525N_Horizontal @@ -1161,11 +1184,14 @@ Connector_BarrelJack:BarrelJack_CLIFF_FC681465S_SMT_Horizontal Connector_BarrelJack:BarrelJack_CUI_PJ-036AH-SMT_Horizontal Connector_BarrelJack:BarrelJack_CUI_PJ-063AH_Horizontal Connector_BarrelJack:BarrelJack_CUI_PJ-063AH_Horizontal_CircularHoles +Connector_BarrelJack:BarrelJack_CUI_PJ-079BH_Horizontal Connector_BarrelJack:BarrelJack_CUI_PJ-102AH_Horizontal Connector_BarrelJack:BarrelJack_GCT_DCJ200-10-A_Horizontal Connector_BarrelJack:BarrelJack_Horizontal Connector_BarrelJack:BarrelJack_Kycon_KLDX-0202-xC_Horizontal Connector_BarrelJack:BarrelJack_SwitchcraftConxall_RAPC10U_Horizontal +Connector_BarrelJack:BarrelJack_Wuerth_694102107102_1.0x3.9mm +Connector_BarrelJack:BarrelJack_Wuerth_694103107102_1.35x3.9mm Connector_BarrelJack:BarrelJack_Wuerth_694106106102_2.0x5.5mm Connector_BarrelJack:BarrelJack_Wuerth_694108106102_2.5x5.5mm Connector_BarrelJack:BarrelJack_Wuerth_6941xx301002 @@ -1178,6 +1204,11 @@ Connector_Card:microSD_HC_Molex_104031-0811 Connector_Card:microSD_HC_Molex_47219-2001 Connector_Card:microSD_HC_Wuerth_693072010801 Connector_Card:microSIM_JAE_SF53S006VCBR2000 +Connector_Card:nanoSIM_GCT_SIM8060-6-0-14-00 +Connector_Card:nanoSIM_GCT_SIM8060-6-1-14-00 +Connector_Card:nanoSIM_Hinged_CUI_NSIM-2-C +Connector_Card:SD-SIM_microSD-microSIM_Molex_104168-1620 +Connector_Card:SD_Card_Device_16mm_SlotDepth Connector_Card:SD_Hirose_DM1AA_SF_PEJ82 Connector_Card:SD_Kyocera_145638009211859+ Connector_Card:SD_Kyocera_145638009511859+ @@ -1192,6 +1223,8 @@ Connector_Coaxial:BNC_TEConnectivity_1478035_Horizontal Connector_Coaxial:BNC_TEConnectivity_1478204_Vertical Connector_Coaxial:BNC_Win_364A2x95_Horizontal Connector_Coaxial:CoaxialSwitch_Hirose_MS-156C3_Horizontal +Connector_Coaxial:LEMO-EPG.00.302.NLN +Connector_Coaxial:LEMO-EPL.00.250.NTN Connector_Coaxial:MMCX_Molex_73415-0961_Horizontal_0.8mm-PCB Connector_Coaxial:MMCX_Molex_73415-0961_Horizontal_1.0mm-PCB Connector_Coaxial:MMCX_Molex_73415-0961_Horizontal_1.6mm-PCB @@ -1207,10 +1240,11 @@ Connector_Coaxial:SMA_Amphenol_132291-12_Vertical Connector_Coaxial:SMA_Amphenol_132291_Vertical Connector_Coaxial:SMA_Amphenol_901-143_Horizontal Connector_Coaxial:SMA_Amphenol_901-144_Vertical +Connector_Coaxial:SMA_BAT_Wireless_BWSMA-KWE-Z001 Connector_Coaxial:SMA_Molex_73251-1153_EdgeMount_Horizontal Connector_Coaxial:SMA_Molex_73251-2120_EdgeMount_Horizontal Connector_Coaxial:SMA_Molex_73251-2200_Horizontal -Connector_Coaxial:SMA_Samtec_SMA-J-P-X-ST-EM1_EdgeMount +Connector_Coaxial:SMA_Samtec_SMA-J-P-H-ST-EM1_EdgeMount Connector_Coaxial:SMA_Wurth_60312002114503_Vertical Connector_Coaxial:SMA_Wurth_60312102114405_Vertical Connector_Coaxial:SMB_Jack_Vertical @@ -1290,126 +1324,110 @@ Connector_DIN:DIN41612_R_3x16_Female_Horizontal_THT Connector_DIN:DIN41612_R_3x16_Male_Vertical_THT Connector_DIN:DIN41612_R_3x32_Female_Horizontal_THT Connector_DIN:DIN41612_R_3x32_Male_Vertical_THT -Connector_Dsub:DSUB-15-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-15-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-15-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15-HD_Female_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15-HD_Female_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-15-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-15-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-15-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15-HD_Male_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15-HD_Male_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-15_Female_EdgeMount_P2.77mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-15_Female_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-15_Female_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-15_Male_EdgeMount_P2.77mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-15_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-15_Male_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-15_Male_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-25_Female_EdgeMount_P2.77mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-25_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-25_Female_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-25_Female_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-25_Male_EdgeMount_P2.77mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-25_Male_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-25_Male_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-26-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-26-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-26-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-26-HD_Female_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-26-HD_Female_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-26-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-26-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-26-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-26-HD_Male_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-26-HD_Male_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-37_Female_EdgeMount_P2.77mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-37_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-37_Female_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-37_Female_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-37_Male_EdgeMount_P2.77mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-37_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-37_Male_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-37_Male_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-44-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-44-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-44-HD_Female_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-44-HD_Female_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-44-HD_Female_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-44-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-44-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-44-HD_Male_Horizontal_P2.29x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-44-HD_Male_Horizontal_P2.29x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-44-HD_Male_Vertical_P2.29x1.98mm_MountingHoles -Connector_Dsub:DSUB-62-HD_Female_Horizontal_P2.41x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-62-HD_Female_Horizontal_P2.41x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-62-HD_Female_Horizontal_P2.41x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-62-HD_Female_Horizontal_P2.41x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-62-HD_Female_Vertical_P2.41x1.98mm_MountingHoles -Connector_Dsub:DSUB-62-HD_Male_Horizontal_P2.41x1.98mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm -Connector_Dsub:DSUB-62-HD_Male_Horizontal_P2.41x1.98mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm -Connector_Dsub:DSUB-62-HD_Male_Horizontal_P2.41x1.98mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-62-HD_Male_Horizontal_P2.41x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-62-HD_Male_Vertical_P2.41x1.98mm_MountingHoles -Connector_Dsub:DSUB-9_Female_EdgeMount_P2.77mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-9_Female_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-9_Female_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-9_Female_Vertical_P2.77x2.84mm_MountingHoles -Connector_Dsub:DSUB-9_Male_EdgeMount_P2.77mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset7.48mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm -Connector_Dsub:DSUB-9_Male_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm -Connector_Dsub:DSUB-9_Male_Vertical_P2.77x2.84mm -Connector_Dsub:DSUB-9_Male_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-15-HD_Pins_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-15-HD_Pins_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-15-HD_Pins_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-15-HD_Socket_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-15-HD_Socket_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-15-HD_Socket_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-15_Pins_EdgeMount_P2.77mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-15_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-15_Pins_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-15_Pins_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-15_Socket_EdgeMount_P2.77mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-15_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-15_Socket_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-15_Socket_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-25_Pins_EdgeMount_P2.77mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-25_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-25_Pins_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-25_Pins_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-25_Socket_EdgeMount_P2.77mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-25_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-25_Socket_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-25_Socket_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-26-HD_Pins_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-26-HD_Pins_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-26-HD_Pins_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-26-HD_Socket_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-26-HD_Socket_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-26-HD_Socket_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-37_Pins_EdgeMount_P2.77mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-37_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-37_Pins_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-37_Pins_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-37_Socket_EdgeMount_P2.77mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-37_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-37_Socket_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-37_Socket_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-44-HD_Pins_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-44-HD_Pins_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-44-HD_Pins_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-44-HD_Socket_Horizontal_P2.29x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-44-HD_Socket_Horizontal_P2.29x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-44-HD_Socket_Vertical_P2.29x1.98mm_MountingHoles +Connector_Dsub:DSUB-62-HD_Pins_Horizontal_P2.41x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-62-HD_Pins_Horizontal_P2.41x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-62-HD_Pins_Vertical_P2.41x1.98mm_MountingHoles +Connector_Dsub:DSUB-62-HD_Socket_Horizontal_P2.41x1.90mm_EdgePinOffset3.03mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-62-HD_Socket_Horizontal_P2.41x2.54mm_EdgePinOffset8.35mm_Housed_MountingHolesOffset10.89mm +Connector_Dsub:DSUB-62-HD_Socket_Vertical_P2.41x1.98mm_MountingHoles +Connector_Dsub:DSUB-9_Pins_EdgeMount_P2.77mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-9_Pins_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-9_Pins_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-9_Pins_Vertical_P2.77x2.84mm_MountingHoles +Connector_Dsub:DSUB-9_Socket_EdgeMount_P2.77mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.54mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset8.20mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset4.94mm_Housed_MountingHolesOffset4.94mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.40mm +Connector_Dsub:DSUB-9_Socket_Horizontal_P2.77x2.84mm_EdgePinOffset9.90mm_Housed_MountingHolesOffset11.32mm +Connector_Dsub:DSUB-9_Socket_Vertical_P2.77x2.84mm +Connector_Dsub:DSUB-9_Socket_Vertical_P2.77x2.84mm_MountingHoles Connector_FFC-FPC:Hirose_FH12-10S-0.5SH_1x10-1MP_P0.50mm_Horizontal Connector_FFC-FPC:Hirose_FH12-11S-0.5SH_1x11-1MP_P0.50mm_Horizontal Connector_FFC-FPC:Hirose_FH12-12S-0.5SH_1x12-1MP_P0.50mm_Horizontal @@ -1438,6 +1456,27 @@ Connector_FFC-FPC:Hirose_FH12-50S-0.5SH_1x50-1MP_P0.50mm_Horizontal Connector_FFC-FPC:Hirose_FH12-53S-0.5SH_1x53-1MP_P0.50mm_Horizontal Connector_FFC-FPC:Hirose_FH12-6S-0.5SH_1x06-1MP_P0.50mm_Horizontal Connector_FFC-FPC:Hirose_FH12-8S-0.5SH_1x08-1MP_P0.50mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-13S-0.3SHW_2Rows-13Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-15S-0.3SHW_2Rows-15Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-17S-0.3SHW_2Rows-17Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-19S-0.3SHW_2Rows-19Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-21S-0.3SHW_2Rows-21Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-23S-0.3SHW_2Rows-23Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-25S-0.3SHW_2Rows-25Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-27S-0.3SHW_2Rows-27Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-29S-0.3SHW_2Rows-29Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-31S-0.3SHW_2Rows-31Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-33S-0.3SHW_2Rows-33Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-35S-0.3SHW_2Rows-35Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-37S-0.3SHW_2Rows-37Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-39S-0.3SHW_2Rows-39Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-41S-0.3SHW_2Rows-41Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-45S-0.3SHW_2Rows-45Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-51S-0.3SHW_2Rows-51Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-55S-0.3SHW_2Rows-55Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-57S-0.3SHW_2Rows-57Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-61S-0.3SHW_2Rows-61Pins-1MP_P0.60mm_Horizontal +Connector_FFC-FPC:Hirose_FH26-71S-0.3SHW_2Rows-71Pins-1MP_P0.60mm_Horizontal Connector_FFC-FPC:Hirose_FH41-30S-0.5SH_1x30_1MP_1SH_P0.5mm_Horizontal Connector_FFC-FPC:JAE_FF0825SA1_2Rows-25Pins_P0.40mm_Horizontal Connector_FFC-FPC:JAE_FF0829SA1_2Rows-29Pins_P0.40mm_Horizontal @@ -1445,6 +1484,32 @@ Connector_FFC-FPC:JAE_FF0841SA1_2Rows-41Pins_P0.40mm_Horizontal Connector_FFC-FPC:JAE_FF0851SA1_2Rows-51Pins_P0.40mm_Horizontal Connector_FFC-FPC:JAE_FF0871SA1_2Rows-71Pins_P0.40mm_Horizontal Connector_FFC-FPC:JAE_FF0881SA1_2Rows-81Pins_P0.40mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S04FCA-00_1x4-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S05FCA-00_1x5-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S06FCA-00_1x6-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S07FCA-00_1x7-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S08FCA-00_1x8-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S09FCA-00_1x9-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S10FCA-00_1x10-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S11FCA-00_1x11-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S12FCA-00_1x12-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S13FCA-00_1x13-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S14FCA-00_1x14-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S15FCA-00_1x15-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S16FCA-00_1x16-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S17FCA-00_1x17-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S18FCA-00_1x18-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S19FCA-00_1x19-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S20FCA-00_1x20-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S21FCA-00_1x21-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S22FCA-00_1x22-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S23FCA-00_1x23-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S24FCA-00_1x24-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S25FCA-00_1x25-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S26FCA-00_1x26-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S27FCA-00_1x27-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S28FCA-00_1x28-1MP_P1.0mm_Horizontal +Connector_FFC-FPC:JUSHUO_AFA07-S29FCA-00_1x29-1MP_P1.0mm_Horizontal Connector_FFC-FPC:Jushuo_AFC07-S06FCA-00_1x6-1MP_P0.50_Horizontal Connector_FFC-FPC:Jushuo_AFC07-S24FCA-00_1x24-1MP_P0.50_Horizontal Connector_FFC-FPC:Molex_200528-0040_1x04-1MP_P1.00mm_Horizontal @@ -1721,13 +1786,8 @@ Connector_Harwin:Harwin_M20-89017xx_1x17_P2.54mm_Horizontal Connector_Harwin:Harwin_M20-89018xx_1x18_P2.54mm_Horizontal Connector_Harwin:Harwin_M20-89019xx_1x19_P2.54mm_Horizontal Connector_Harwin:Harwin_M20-89020xx_1x20_P2.54mm_Horizontal -Connector_HDMI:HDMI_A_Amphenol_10029449-x01xLF_Horizontal -Connector_HDMI:HDMI_A_Contact_Technology_HDMI-19APL2_Horizontal -Connector_HDMI:HDMI_A_Kycon_KDMIX-SL1-NS-WS-B15_VerticalRightAngle -Connector_HDMI:HDMI_A_Molex_208658-1001_Horizontal -Connector_HDMI:HDMI_Micro-D_Molex_46765-0x01 -Connector_HDMI:HDMI_Micro-D_Molex_46765-1x01 -Connector_HDMI:HDMI_Micro-D_Molex_46765-2x0x +Connector_Hirose:Hirose_BM23FR0.6-16DP-0.35V_2x08_1MP_Vertical +Connector_Hirose:Hirose_BM23FR0.6-16DS-0.35V_2x08_P0.35_1MP_Vertical Connector_Hirose:Hirose_BM24_BM24-40DP-2-0.35V_2x20_P0.35mm_PowerPin2_Vertical Connector_Hirose:Hirose_BM24_BM24-40DS-2-0.35V_2x20_P0.35mm_PowerPin2_Vertical Connector_Hirose:Hirose_DF11-10DP-2DSA_2x05_P2.00mm_Vertical @@ -1842,6 +1902,18 @@ Connector_Hirose:Hirose_DF63R-2P-3.96DSA_1x02_P3.96mm_Vertical Connector_Hirose:Hirose_DF63R-3P-3.96DSA_1x03_P3.96mm_Vertical Connector_Hirose:Hirose_DF63R-4P-3.96DSA_1x04_P3.96mm_Vertical Connector_Hirose:Hirose_DF63R-5P-3.96DSA_1x05_P3.96mm_Vertical +Connector_Hirose_FX8:Hirose_FX8-100P-SV_2x50_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-100S-SV_2x50_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-120P-SV_2x60_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-120S-SV_2x60_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-140P-SV_2x70_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-140S-SV_2x70_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-60P-SV_2x30_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-60S-SV_2x30_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-80P-SV_2x40_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-80S-SV_2x40_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-90P-SV_2x45_P0.6mm +Connector_Hirose_FX8:Hirose_FX8-90S-SV_2x45_P0.6mm Connector_IDC:IDC-Header_2x03_P2.54mm_Horizontal Connector_IDC:IDC-Header_2x03_P2.54mm_Vertical Connector_IDC:IDC-Header_2x03_P2.54mm_Vertical_SMD @@ -1901,6 +1973,9 @@ Connector_IDC:IDC-Header_2x08_P2.54mm_Latch_Horizontal Connector_IDC:IDC-Header_2x08_P2.54mm_Latch_Vertical Connector_IDC:IDC-Header_2x08_P2.54mm_Vertical Connector_IDC:IDC-Header_2x08_P2.54mm_Vertical_SMD +Connector_IDC:IDC-Header_2x09_P2.54mm_Horizontal +Connector_IDC:IDC-Header_2x09_P2.54mm_Vertical +Connector_IDC:IDC-Header_2x09_P2.54mm_Vertical_SMD Connector_IDC:IDC-Header_2x10-1MP_P2.54mm_Latch12.0mm_Vertical Connector_IDC:IDC-Header_2x10-1MP_P2.54mm_Latch6.5mm_Vertical Connector_IDC:IDC-Header_2x10-1MP_P2.54mm_Latch9.5mm_Vertical @@ -1914,6 +1989,9 @@ Connector_IDC:IDC-Header_2x10_P2.54mm_Latch_Horizontal Connector_IDC:IDC-Header_2x10_P2.54mm_Latch_Vertical Connector_IDC:IDC-Header_2x10_P2.54mm_Vertical Connector_IDC:IDC-Header_2x10_P2.54mm_Vertical_SMD +Connector_IDC:IDC-Header_2x11_P2.54mm_Horizontal +Connector_IDC:IDC-Header_2x11_P2.54mm_Vertical +Connector_IDC:IDC-Header_2x11_P2.54mm_Vertical_SMD Connector_IDC:IDC-Header_2x12-1MP_P2.54mm_Latch12.0mm_Vertical Connector_IDC:IDC-Header_2x12-1MP_P2.54mm_Latch6.5mm_Vertical Connector_IDC:IDC-Header_2x12-1MP_P2.54mm_Latch9.5mm_Vertical @@ -1977,6 +2055,9 @@ Connector_IDC:IDC-Header_2x20_P2.54mm_Latch_Horizontal Connector_IDC:IDC-Header_2x20_P2.54mm_Latch_Vertical Connector_IDC:IDC-Header_2x20_P2.54mm_Vertical Connector_IDC:IDC-Header_2x20_P2.54mm_Vertical_SMD +Connector_IDC:IDC-Header_2x22_P2.54mm_Horizontal +Connector_IDC:IDC-Header_2x22_P2.54mm_Vertical +Connector_IDC:IDC-Header_2x22_P2.54mm_Vertical_SMD Connector_IDC:IDC-Header_2x25-1MP_P2.54mm_Latch12.0mm_Vertical Connector_IDC:IDC-Header_2x25-1MP_P2.54mm_Latch6.5mm_Vertical Connector_IDC:IDC-Header_2x25-1MP_P2.54mm_Latch9.5mm_Vertical @@ -2059,6 +2140,26 @@ Connector_JAE:JAE_LY20-8P-DLT1_2x04_P2.00mm_Horizontal Connector_JAE:JAE_LY20-8P-DT1_2x04_P2.00mm_Vertical Connector_JAE:JAE_MM70-314-310B1 Connector_JAE:JAE_SIM_Card_SF72S006 +Connector_JAE_WP7B:JAE_WP7B-P034VA1-R8000_2x17-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P034VA1-R8000_Longpads_2x17-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P040VA1-R8000_2x20-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P040VA1-R8000_Longpads_2x20-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P050VA1-R8000_2x25-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P050VA1-R8000_Longpads_2x25-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P060VA1-R8000_2x30-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P060VA1-R8000_Longpads_2x30-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P070VA1-R8000_2x35-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-P070VA1-R8000_Longpads_2x35-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S034VA1-R8000_2x17-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S034VA1-R8000_Longpads_2x17-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S040VA1-R8000_2x20-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S040VA1-R8000_Longpads_2x20-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S050VA1-R8000_2x25-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S050VA1-R8000_Longpads_2x25-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S060VA1-R8000_2x30-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S060VA1-R8000_Longpads_2x30-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S070VA1-R8000_2x35-1MP_P0.4mm +Connector_JAE_WP7B:JAE_WP7B-S070VA1-R8000_Longpads_2x35-1MP_P0.4mm Connector_JST:JST_ACH_BM01B-ACHSS-A-GAN-ETF_1x01-1MP_P1.20mm_Vertical Connector_JST:JST_ACH_BM02B-ACHSS-GAN-ETF_1x02-1MP_P1.20mm_Vertical Connector_JST:JST_ACH_BM03B-ACHSS-GAN-ETF_1x03-1MP_P1.20mm_Vertical @@ -2481,12 +2582,15 @@ Connector_JST:JST_XH_S2B-XH-A-1_1x02_P2.50mm_Horizontal Connector_JST:JST_XH_S2B-XH-A_1x02_P2.50mm_Horizontal Connector_JST:JST_XH_S3B-XH-A-1_1x03_P2.50mm_Horizontal Connector_JST:JST_XH_S3B-XH-A_1x03_P2.50mm_Horizontal +Connector_JST:JST_XH_S3B-XH-SM4-TB_1x03-1MP_P2.50mm_Horizontal Connector_JST:JST_XH_S4B-XH-A-1_1x04_P2.50mm_Horizontal Connector_JST:JST_XH_S4B-XH-A_1x04_P2.50mm_Horizontal +Connector_JST:JST_XH_S4B-XH-SM4-TB_1x04-1MP_P2.50mm_Horizontal Connector_JST:JST_XH_S5B-XH-A-1_1x05_P2.50mm_Horizontal Connector_JST:JST_XH_S5B-XH-A_1x05_P2.50mm_Horizontal Connector_JST:JST_XH_S6B-XH-A-1_1x06_P2.50mm_Horizontal Connector_JST:JST_XH_S6B-XH-A_1x06_P2.50mm_Horizontal +Connector_JST:JST_XH_S6B-XH-SM4-TB_1x06-1MP_P2.50mm_Horizontal Connector_JST:JST_XH_S7B-XH-A-1_1x07_P2.50mm_Horizontal Connector_JST:JST_XH_S7B-XH-A_1x07_P2.50mm_Horizontal Connector_JST:JST_XH_S8B-XH-A-1_1x08_P2.50mm_Horizontal @@ -2567,6 +2671,41 @@ Connector_JST:JST_ZE_SM13B-ZESS-TB_1x13-1MP_P1.50mm_Horizontal Connector_JST:JST_ZE_SM14B-ZESS-TB_1x14-1MP_P1.50mm_Horizontal Connector_JST:JST_ZE_SM15B-ZESS-TB_1x15-1MP_P1.50mm_Horizontal Connector_JST:JST_ZE_SM16B-ZESS-TB_1x16-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_B10B-ZR-SM4-TF_1x10-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B10B-ZR_1x10_P1.50mm_Vertical +Connector_JST:JST_ZH_B11B-ZR-SM4-TF_1x11-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B11B-ZR_1x11_P1.50mm_Vertical +Connector_JST:JST_ZH_B12B-ZR-SM4-TF_1x12-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B12B-ZR_1x12_P1.50mm_Vertical +Connector_JST:JST_ZH_B13B-ZR-SM4-TF_1x13-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B2B-ZR-SM4-TF_1x02-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B2B-ZR_1x02_P1.50mm_Vertical +Connector_JST:JST_ZH_B3B-ZR-SM4-TF_1x03-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B3B-ZR_1x03_P1.50mm_Vertical +Connector_JST:JST_ZH_B4B-ZR-SM4-TF_1x04-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B4B-ZR_1x04_P1.50mm_Vertical +Connector_JST:JST_ZH_B5B-ZR-SM4-TF_1x05-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B5B-ZR_1x05_P1.50mm_Vertical +Connector_JST:JST_ZH_B6B-ZR-SM4-TF_1x06-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B6B-ZR_1x06_P1.50mm_Vertical +Connector_JST:JST_ZH_B7B-ZR-SM4-TF_1x07-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B7B-ZR_1x07_P1.50mm_Vertical +Connector_JST:JST_ZH_B8B-ZR-SM4-TF_1x08-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B8B-ZR_1x08_P1.50mm_Vertical +Connector_JST:JST_ZH_B9B-ZR-SM4-TF_1x09-1MP_P1.50mm_Vertical +Connector_JST:JST_ZH_B9B-ZR_1x09_P1.50mm_Vertical +Connector_JST:JST_ZH_S10B-ZR-SM4A-TF_1x10-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S11B-ZR-SM4A-TF_1x11-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S12B-ZR-SM4A-TF_1x12-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S13B-ZR-SM4A-TF_1x13-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S2B-ZR-SM4A-TF_1x02-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S3B-ZR-SM4A-TF_1x03-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S4B-ZR-SM4A-TF_1x04-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S5B-ZR-SM4A-TF_1x05-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S6B-ZR-SM4A-TF_1x06-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S7B-ZR-SM4A-TF_1x07-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S8B-ZR-SM4A-TF_1x08-1MP_P1.50mm_Horizontal +Connector_JST:JST_ZH_S9B-ZR-SM4A-TF_1x09-1MP_P1.50mm_Horizontal Connector_Molex:Molex_CLIK-Mate_502382-0270_1x02-1MP_P1.25mm_Vertical Connector_Molex:Molex_CLIK-Mate_502382-0370_1x03-1MP_P1.25mm_Vertical Connector_Molex:Molex_CLIK-Mate_502382-0470_1x04-1MP_P1.25mm_Vertical @@ -3098,12 +3237,21 @@ Connector_Molex:Molex_Pico-EZmate_78171-0003_1x03-1MP_P1.20mm_Vertical Connector_Molex:Molex_Pico-EZmate_78171-0004_1x04-1MP_P1.20mm_Vertical Connector_Molex:Molex_Pico-EZmate_78171-0005_1x05-1MP_P1.20mm_Vertical Connector_Molex:Molex_Pico-EZmate_Slim_202656-0021_1x02-1MP_P1.20mm_Vertical +Connector_Molex:Molex_Pico-Lock_205338-0002_1x02-1MP_P2.00mm_Horizontal +Connector_Molex:Molex_Pico-Lock_205338-0004_1x04-1MP_P2.00mm_Horizontal +Connector_Molex:Molex_Pico-Lock_205338-0006_1x06-1MP_P2.00mm_Horizontal +Connector_Molex:Molex_Pico-Lock_205338-0008_1x08-1MP_P2.00mm_Horizontal +Connector_Molex:Molex_Pico-Lock_205338-0010_1x10-1MP_P2.00mm_Horizontal +Connector_Molex:Molex_Pico-Lock_504050-0291_1x02-1MP_P1.50mm_Horizontal +Connector_Molex:Molex_Pico-Lock_504050-0391_1x03-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-0491_1x04-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-0591_1x05-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-0691_1x06-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-0791_1x07-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-0891_1x08-1MP_P1.50mm_Horizontal +Connector_Molex:Molex_Pico-Lock_504050-0991_1x09-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-1091_1x10-1MP_P1.50mm_Horizontal +Connector_Molex:Molex_Pico-Lock_504050-1191_1x11-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-Lock_504050-1291_1x12-1MP_P1.50mm_Horizontal Connector_Molex:Molex_Pico-SPOX_87437-1443_1x14-P1.5mm_Vertical Connector_Molex:Molex_PicoBlade_53047-0210_1x02_P1.25mm_Vertical @@ -3444,6 +3592,7 @@ Connector_PCBEdge:Samtec_MECF-70-0_-L-DV_2x70_P1.27mm_Polarized_Edge Connector_PCBEdge:Samtec_MECF-70-0_-NP-L-DV_2x70_P1.27mm_Edge Connector_PCBEdge:SODIMM-200_1.8V_Card_edge Connector_PCBEdge:SODIMM-200_2.5V_Card_edge +Connector_PCBEdge:SODIMM-260_DDR4_H4.0-5.2_OrientationStd_Socket Connector_Phoenix_GMSTB:PhoenixContact_GMSTBA_2,5_10-G-7,62_1x10_P7.62mm_Horizontal Connector_Phoenix_GMSTB:PhoenixContact_GMSTBA_2,5_10-G_1x10_P7.50mm_Horizontal Connector_Phoenix_GMSTB:PhoenixContact_GMSTBA_2,5_11-G-7,62_1x11_P7.62mm_Horizontal @@ -6132,16 +6281,19 @@ Connector_RJ:RJ45_HALO_HFJ11-x2450HRL_Horizontal Connector_RJ:RJ45_Hanrun_HR911105A_Horizontal Connector_RJ:RJ45_Kycon_G7LX-A88S7-BP-xx_Horizontal Connector_RJ:RJ45_Molex_0855135013_Vertical +Connector_RJ:RJ45_Molex_9346520x_Horizontal Connector_RJ:RJ45_Ninigi_GE Connector_RJ:RJ45_OST_PJ012-8P8CX_Vertical Connector_RJ:RJ45_Plug_Metz_AJP92A8813 Connector_RJ:RJ45_Pulse_JK00177NL_Horizontal Connector_RJ:RJ45_Pulse_JK0654219NL_Horizontal Connector_RJ:RJ45_Pulse_JXD6-0001NL_Horizontal +Connector_RJ:RJ45_RCH_RC01937 Connector_RJ:RJ45_UDE_RB1-125B8G1A Connector_RJ:RJ45_Wuerth_74980111211_Horizontal Connector_RJ:RJ45_Wuerth_7499010001A_Horizontal Connector_RJ:RJ45_Wuerth_7499010121A_Horizontal +Connector_RJ:RJ45_Wuerth_7499010211A_Horizontal Connector_RJ:RJ45_Wuerth_7499111446_Horizontal Connector_RJ:RJ45_Wuerth_7499151120_Horizontal Connector_RJ:RJ9_Evercom_5301-440xxx_Horizontal @@ -6631,8 +6783,9 @@ Connector_Samtec_HPM_THT:Samtec_HPM-19-01-x-S_Straight_1x19_Pitch5.08mm Connector_Samtec_HPM_THT:Samtec_HPM-19-05-x-S_Straight_1x19_Pitch5.08mm Connector_Samtec_HSEC8:Samtec_HSEC8-109-01-X-DV-A-BL_2x09_P0.8mm_Pol04_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-109-01-X-DV-A-WT_2x09_P0.8mm_Pol04_Socket_WeldTabs -Connector_Samtec_HSEC8:Samtec_HSEC8-109-01-X-DV-A_2x09_P0.8mm_Pol04_Socket_AlignmentPins -Connector_Samtec_HSEC8:Samtec_HSEC8-109-01-X-DV_2x09_P0.8mm_Pol04_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-109-X-X-DV-BL_2x09_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-109-X-X-DV_2x09_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-109-X-X-DV_2x09_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-110-01-X-DV-A-BL_2x10_P0.8mm_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-110-01-X-DV-A-WT_2x10_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-110-01-X-DV-A_2x10_P0.8mm_Socket_AlignmentPins @@ -6640,6 +6793,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-110-01-X-DV_2x10_P0.8mm_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-110-03-X-DV-A-WT_2x10_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-110-03-X-DV-A_2x10_P0.8mm_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-110-03-X-DV_2x10_P0.8mm_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-110-X-X-DV-BL_2x10_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-110-X-X-DV_2x10_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-110-X-X-DV_2x10_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-1100-01-X-DV-A-BL_2x100_P0.8mm_Pol32_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-1100-01-X-DV-A-WT_2x100_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-1100-01-X-DV-A_2x100_P0.8mm_Pol32_Socket_AlignmentPins @@ -6647,10 +6803,16 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-1100-01-X-DV_2x100_P0.8mm_Pol32_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-1100-03-X-DV-A-WT_2x100_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-1100-03-X-DV-A_2x100_P0.8mm_Pol32_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-1100-03-X-DV_2x100_P0.8mm_Pol32_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-1100-X-X-DV-BL_2x100_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-1100-X-X-DV_2x100_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-1100-X-X-DV_2x100_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-113-01-X-DV-A-BL_2x13_P0.8mm_Pol06_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-113-01-X-DV-A-WT_2x13_P0.8mm_Pol06_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-113-01-X-DV-A_2x13_P0.8mm_Pol06_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-113-01-X-DV_2x13_P0.8mm_Pol06_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-113-X-X-DV-BL_2x13_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-113-X-X-DV_2x13_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-113-X-X-DV_2x13_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-120-01-X-DV-A-BL_2x20_P0.8mm_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-120-01-X-DV-A-WT_2x20_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-120-01-X-DV-A_2x20_P0.8mm_Socket_AlignmentPins @@ -6658,10 +6820,16 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-120-01-X-DV_2x20_P0.8mm_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-120-03-X-DV-A-WT_2x20_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-120-03-X-DV-A_2x20_P0.8mm_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-120-03-X-DV_2x20_P0.8mm_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-120-X-X-DV-BL_2x20_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-120-X-X-DV_2x20_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-120-X-X-DV_2x20_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-125-01-X-DV-A-BL_2x25_P0.8mm_Pol06_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-125-01-X-DV-A-WT_2x25_P0.8mm_Pol06_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-125-01-X-DV-A_2x25_P0.8mm_Pol06_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-125-01-X-DV_2x25_P0.8mm_Pol06_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-125-X-X-DV-BL_2x25_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-125-X-X-DV_2x25_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-125-X-X-DV_2x25_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-130-01-X-DV-A-BL_2x30_P0.8mm_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-130-01-X-DV-A-WT_2x30_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-130-01-X-DV-A_2x30_P0.8mm_Socket_AlignmentPins @@ -6669,10 +6837,16 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-130-01-X-DV_2x30_P0.8mm_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-130-03-X-DV-A-WT_2x30_P0.8mm_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-130-03-X-DV-A_2x30_P0.8mm_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-130-03-X-DV_2x30_P0.8mm_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-130-X-X-DV-BL_2x30_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-130-X-X-DV_2x30_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-130-X-X-DV_2x30_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-137-01-X-DV-A-BL_2x37_P0.8mm_Pol21_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-137-01-X-DV-A-WT_2x37_P0.8mm_Pol21_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-137-01-X-DV-A_2x37_P0.8mm_Pol21_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-137-01-X-DV_2x37_P0.8mm_Pol21_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-137-X-X-DV-BL_2x37_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-137-X-X-DV_2x37_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-137-X-X-DV_2x37_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-140-01-X-DV-A-BL_2x40_P0.8mm_Pol22_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-140-01-X-DV-A-WT_2x40_P0.8mm_Pol22_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-140-01-X-DV-A_2x40_P0.8mm_Pol22_Socket_AlignmentPins @@ -6680,10 +6854,16 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-140-01-X-DV_2x40_P0.8mm_Pol22_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-140-03-X-DV-A-WT_2x40_P0.8mm_Pol22_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-140-03-X-DV-A_2x40_P0.8mm_Pol22_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-140-03-X-DV_2x40_P0.8mm_Pol22_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-140-X-X-DV-BL_2x40_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-140-X-X-DV_2x40_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-140-X-X-DV_2x40_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-149-01-X-DV-A-BL_2x49_P0.8mm_Pol27_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-149-01-X-DV-A-WT_2x49_P0.8mm_Pol27_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-149-01-X-DV-A_2x49_P0.8mm_Pol27_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-149-01-X-DV_2x49_P0.8mm_Pol27_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-149-X-X-DV-BL_2x49_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-149-X-X-DV_2x49_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-149-X-X-DV_2x49_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-150-01-X-DV-A-BL_2x50_P0.8mm_Pol27_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-150-01-X-DV-A-WT_2x50_P0.8mm_Pol27_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-150-01-X-DV-A_2x50_P0.8mm_Pol27_Socket_AlignmentPins @@ -6691,6 +6871,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-150-01-X-DV_2x50_P0.8mm_Pol27_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-150-03-X-DV-A-WT_2x50_P0.8mm_Pol27_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-150-03-X-DV-A_2x50_P0.8mm_Pol27_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-150-03-X-DV_2x50_P0.8mm_Pol27_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-150-X-X-DV-BL_2x50_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-150-X-X-DV_2x50_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-150-X-X-DV_2x50_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-160-01-X-DV-A-BL_2x60_P0.8mm_Pol32_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-160-01-X-DV-A-WT_2x60_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-160-01-X-DV-A_2x60_P0.8mm_Pol32_Socket_AlignmentPins @@ -6698,6 +6881,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-160-01-X-DV_2x60_P0.8mm_Pol32_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-160-03-X-DV-A-WT_2x60_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-160-03-X-DV-A_2x60_P0.8mm_Pol32_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-160-03-X-DV_2x60_P0.8mm_Pol32_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-160-X-X-DV-BL_2x60_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-160-X-X-DV_2x60_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-160-X-X-DV_2x60_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-170-01-X-DV-A-BL_2x70_P0.8mm_Pol32_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-170-01-X-DV-A-WT_2x70_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-170-01-X-DV-A_2x70_P0.8mm_Pol32_Socket_AlignmentPins @@ -6705,6 +6891,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-170-01-X-DV_2x70_P0.8mm_Pol32_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-170-03-X-DV-A-WT_2x70_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-170-03-X-DV-A_2x70_P0.8mm_Pol32_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-170-03-X-DV_2x70_P0.8mm_Pol32_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-170-X-X-DV-BL_2x70_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-170-X-X-DV_2x70_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-170-X-X-DV_2x70_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-180-01-X-DV-A-BL_2x80_P0.8mm_Pol32_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-180-01-X-DV-A-WT_2x80_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-180-01-X-DV-A_2x80_P0.8mm_Pol32_Socket_AlignmentPins @@ -6712,6 +6901,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-180-01-X-DV_2x80_P0.8mm_Pol32_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-180-03-X-DV-A-WT_2x80_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-180-03-X-DV-A_2x80_P0.8mm_Pol32_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-180-03-X-DV_2x80_P0.8mm_Pol32_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-180-X-X-DV-BL_2x80_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-180-X-X-DV_2x80_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-180-X-X-DV_2x80_P0.8mm_Wing_Edge Connector_Samtec_HSEC8:Samtec_HSEC8-190-01-X-DV-A-BL_2x90_P0.8mm_Pol32_Socket_WeldTabs_BoardLocks Connector_Samtec_HSEC8:Samtec_HSEC8-190-01-X-DV-A-WT_2x90_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-190-01-X-DV-A_2x90_P0.8mm_Pol32_Socket_AlignmentPins @@ -6719,6 +6911,9 @@ Connector_Samtec_HSEC8:Samtec_HSEC8-190-01-X-DV_2x90_P0.8mm_Pol32_Socket Connector_Samtec_HSEC8:Samtec_HSEC8-190-03-X-DV-A-WT_2x90_P0.8mm_Pol32_Socket_WeldTabs Connector_Samtec_HSEC8:Samtec_HSEC8-190-03-X-DV-A_2x90_P0.8mm_Pol32_Socket_AlignmentPins Connector_Samtec_HSEC8:Samtec_HSEC8-190-03-X-DV_2x90_P0.8mm_Pol32_Socket +Connector_Samtec_HSEC8:Samtec_HSEC8-190-X-X-DV-BL_2x90_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-190-X-X-DV_2x90_P0.8mm_Edge +Connector_Samtec_HSEC8:Samtec_HSEC8-190-X-X-DV_2x90_P0.8mm_Wing_Edge Connector_Samtec_MicroMate:Samtec_T1M-02-X-S-RA_1x02-1MP_P1.0mm_Terminal_Horizontal Connector_Samtec_MicroMate:Samtec_T1M-02-X-S-V_1x02-1MP_P1.0mm_Terminal_Vertical Connector_Samtec_MicroMate:Samtec_T1M-02-X-SH-L_1x02-1MP_P1.0mm_Terminal_Horizontal_Latch @@ -6795,6 +6990,42 @@ Connector_Samtec_MicroMate:Samtec_T1M-20-X-S-RA_1x20-1MP_P1.0mm_Terminal_Horizon Connector_Samtec_MicroMate:Samtec_T1M-20-X-S-V_1x20-1MP_P1.0mm_Terminal_Vertical Connector_Samtec_MicroMate:Samtec_T1M-20-X-SH-L_1x20-1MP_P1.0mm_Terminal_Horizontal_Latch Connector_Samtec_MicroMate:Samtec_T1M-20-X-SV-L_1x20-1MP_P1.0mm_Terminal_Vertical_Latch +Connector_Samtec_MicroPower:Samtec_UMPS-02-XX.X-X-V-S-W_1x02-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-02-XX.X-X-V-S_1x02_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-03-XX.X-X-V-S-W_1x03-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-03-XX.X-X-V-S_1x03_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-04-XX.X-X-V-S-W_1x04-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-04-XX.X-X-V-S_1x04_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-05-XX.X-X-V-S-W_1x05-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-05-XX.X-X-V-S_1x05_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-06-XX.X-X-V-S-W_1x06-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-06-XX.X-X-V-S_1x06_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-07-XX.X-X-V-S-W_1x07-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-07-XX.X-X-V-S_1x07_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-08-XX.X-X-V-S-W_1x08-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-08-XX.X-X-V-S_1x08_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-09-XX.X-X-V-S-W_1x09-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-09-XX.X-X-V-S_1x09_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPS-10-XX.X-X-V-S-W_1x10-1MP_P2.0mm_Socket_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPS-10-XX.X-X-V-S_1x10_P2.0mm_Socket +Connector_Samtec_MicroPower:Samtec_UMPT-02-XX.X-X-V-S-W_1x02-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-02-XX.X-X-V-S_1x02_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-03-XX.X-X-V-S-W_1x03-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-03-XX.X-X-V-S_1x03_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-04-XX.X-X-V-S-W_1x04-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-04-XX.X-X-V-S_1x04_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-05-XX.X-X-V-S-W_1x05-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-05-XX.X-X-V-S_1x05_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-06-XX.X-X-V-S-W_1x06-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-06-XX.X-X-V-S_1x06_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-07-XX.X-X-V-S-W_1x07-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-07-XX.X-X-V-S_1x07_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-08-XX.X-X-V-S-W_1x08-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-08-XX.X-X-V-S_1x08_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-09-XX.X-X-V-S-W_1x09-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-09-XX.X-X-V-S_1x09_P2.0mm_Terminal +Connector_Samtec_MicroPower:Samtec_UMPT-10-XX.X-X-V-S-W_1x10-1MP_P2.0mm_Terminal_WeldTab +Connector_Samtec_MicroPower:Samtec_UMPT-10-XX.X-X-V-S_1x10_P2.0mm_Terminal Connector_SATA_SAS:SAS-mini_TEConnectivity_1888174_Vertical Connector_SATA_SAS:SATA_Amphenol_10029364-001LF_Horizontal Connector_Stocko:Stocko_MKS_1651-6-0-202_1x2_P2.50mm_Vertical @@ -6888,12 +7119,15 @@ Connector_USB:USB3_A_Plug_Wuerth_692112030100_Horizontal Connector_USB:USB3_A_Receptacle_Wuerth_692122030100 Connector_USB:USB3_Micro-B_Connfly_DS1104-01 Connector_USB:USB_A_CNCTech_1001-011-01101_Horizontal -Connector_USB:USB_A_CONNFLY_DS1095-WNR0 +Connector_USB:USB_A_Connfly_DS1095 +Connector_USB:USB_A_Connfly_DS1098_Horizontal Connector_USB:USB_A_CUI_UJ2-ADH-TH_Horizontal_Stacked +Connector_USB:USB_A_Kycon_KUSBX-AS1N-B_Horizontal Connector_USB:USB_A_Molex_105057_Vertical Connector_USB:USB_A_Molex_48037-2200_Horizontal Connector_USB:USB_A_Molex_67643_Horizontal Connector_USB:USB_A_Receptacle_GCT_USB1046 +Connector_USB:USB_A_Receptacle_XKB_U231-091N-4BLRA00-S Connector_USB:USB_A_Stewart_SS-52100-001_Horizontal Connector_USB:USB_A_TE_292303-7_Horizontal Connector_USB:USB_A_Wuerth_614004134726_Horizontal @@ -6909,8 +7143,11 @@ Connector_USB:USB_C_Receptacle_Amphenol_12401548E4-2A Connector_USB:USB_C_Receptacle_Amphenol_12401548E4-2A_CircularHoles Connector_USB:USB_C_Receptacle_Amphenol_12401610E4-2A Connector_USB:USB_C_Receptacle_Amphenol_12401610E4-2A_CircularHoles +Connector_USB:USB_C_Receptacle_Amphenol_12401948E412A +Connector_USB:USB_C_Receptacle_Amphenol_124019772112A Connector_USB:USB_C_Receptacle_CNCTech_C-ARA1-AK51X Connector_USB:USB_C_Receptacle_G-Switch_GT-USB-7010ASV +Connector_USB:USB_C_Receptacle_G-Switch_GT-USB-7025 Connector_USB:USB_C_Receptacle_G-Switch_GT-USB-7051x Connector_USB:USB_C_Receptacle_GCT_USB4085 Connector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_Horizontal @@ -6921,6 +7158,7 @@ Connector_USB:USB_C_Receptacle_GCT_USB4125-xx-x_6P_TopMnt_Horizontal Connector_USB:USB_C_Receptacle_GCT_USB4135-GF-A_6P_TopMnt_Horizontal Connector_USB:USB_C_Receptacle_HCTL_HC-TYPE-C-16P-01A Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12 +Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-17 Connector_USB:USB_C_Receptacle_JAE_DX07S016JA1R1500 Connector_USB:USB_C_Receptacle_JAE_DX07S024WJ1R350 Connector_USB:USB_C_Receptacle_JAE_DX07S024WJ3R400 @@ -6932,6 +7170,7 @@ Connector_USB:USB_Micro-B_Amphenol_10103594-0001LF_Horizontal Connector_USB:USB_Micro-B_Amphenol_10104110_Horizontal Connector_USB:USB_Micro-B_Amphenol_10118193-0001LF_Horizontal Connector_USB:USB_Micro-B_Amphenol_10118193-0002LF_Horizontal +Connector_USB:USB_Micro-B_Amphenol_10118194-0001LF_Horizontal Connector_USB:USB_Micro-B_Amphenol_10118194_Horizontal Connector_USB:USB_Micro-B_GCT_USB3076-30-A Connector_USB:USB_Micro-B_Molex-105017-0001 @@ -6949,6 +7188,15 @@ Connector_USB:USB_Mini-B_Lumberg_2486_01_Horizontal Connector_USB:USB_Mini-B_Tensility_54-00023_Vertical Connector_USB:USB_Mini-B_Tensility_54-00023_Vertical_CircularHoles Connector_USB:USB_Mini-B_Wuerth_65100516121_Horizontal +Connector_Video:DVI-D_Molex_74320-4004_Horizontal +Connector_Video:DVI-I_Molex_74320-1004_Horizontal +Connector_Video:HDMI_A_Amphenol_10029449-x01xLF_Horizontal +Connector_Video:HDMI_A_Contact_Technology_HDMI-19APL2_Horizontal +Connector_Video:HDMI_A_Kycon_KDMIX-SL1-NS-WS-B15_VerticalRightAngle +Connector_Video:HDMI_A_Molex_208658-1001_Horizontal +Connector_Video:HDMI_Micro-D_Molex_46765-0x01 +Connector_Video:HDMI_Micro-D_Molex_46765-1x01 +Connector_Video:HDMI_Micro-D_Molex_46765-2x0x Connector_Wago:Wago_734-132_1x02_P3.50mm_Vertical Connector_Wago:Wago_734-133_1x03_P3.50mm_Vertical Connector_Wago:Wago_734-134_1x04_P3.50mm_Vertical @@ -7273,6 +7521,43 @@ Connector_Wire:SolderWire-2sqmm_1x06_P7.8mm_D2mm_OD3.9mm_Relief Connector_Wire:SolderWire-2sqmm_1x06_P7.8mm_D2mm_OD3.9mm_Relief2x Connector_Wire:SolderWirePad_1x01_SMD_1x2mm Connector_Wire:SolderWirePad_1x01_SMD_5x10mm +Connector_Wuerth:Wuerth_WR-PHD_610004243021_SMD_2x02_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610006243021_SMD_2x03_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610008243021_SMD_2x04_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610010243021_SMD_2x05_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610012243021_SMD_2x06_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610016243021_SMD_2x08_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610018243021_SMD_2x09_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610020243021_SMD_2x10_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610022243021_SMD_2x11_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610024243021_SMD_2x12_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610026243021_SMD_2x13_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610032243021_SMD_2x16_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_610034243021_SMD_2x17_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613004216921_Large_2x02_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61300425721_Standard_2x02_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613006216921_Large_2x03_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61300625721_Standard_2x03_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613008216921_Large_2x04_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61300825721_Standard_2x04_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613010216921_Large_2x05_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61301025721_Standard_2x05_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613012216921_Large_2x06_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61301225721_Standard_2x06_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613016216921_Large_2x08_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61301625721_Standard_2x08_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613018216921_Large_2x09_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613020216921_Large_2x10_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61302025721_Standard_2x10_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613022216921_Large_2x11_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613024216921_Large_2x12_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61302425721_Standard_2x12_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613026216921_Large_2x13_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61302625721_Standard_2x13_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613032216921_Large_2x16_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61303225721_Standard_2x16_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_613034216921_Large_2x17_P2.54mm_Vertical +Connector_Wuerth:Wuerth_WR-PHD_61303425721_Standard_2x17_P2.54mm_Vertical Connector_Wuerth:Wuerth_WR-WTB_64800211622_1x02_P1.50mm_Vertical Connector_Wuerth:Wuerth_WR-WTB_64800311622_1x03_P1.50mm_Vertical Connector_Wuerth:Wuerth_WR-WTB_64800411622_1x04_P1.50mm_Vertical @@ -7284,9 +7569,13 @@ Connector_Wuerth:Wuerth_WR-WTB_64800911622_1x09_P1.50mm_Vertical Connector_Wuerth:Wuerth_WR-WTB_64801011622_1x10_P1.50mm_Vertical Converter_ACDC:Converter_ACDC_CUI_PBO-3-Sxx_THT_Vertical Converter_ACDC:Converter_ACDC_Hahn_HS-400xx_THT -Converter_ACDC:Converter_ACDC_HiLink_HLK-10Mxx -Converter_ACDC:Converter_ACDC_HiLink_HLK-5Mxx -Converter_ACDC:Converter_ACDC_HiLink_HLK-PMxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-10Mxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-12MxxA +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-20Mxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-2Mxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-30Mxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-5Mxx +Converter_ACDC:Converter_ACDC_Hi-Link_HLK-PMxx Converter_ACDC:Converter_ACDC_MeanWell_IRM-02-xx_SMD Converter_ACDC:Converter_ACDC_MeanWell_IRM-02-xx_THT Converter_ACDC:Converter_ACDC_MeanWell_IRM-03-xx_SMD @@ -7295,12 +7584,18 @@ Converter_ACDC:Converter_ACDC_MeanWell_IRM-05-xx_THT Converter_ACDC:Converter_ACDC_MeanWell_IRM-10-xx_THT Converter_ACDC:Converter_ACDC_MeanWell_IRM-20-xx_THT Converter_ACDC:Converter_ACDC_MeanWell_IRM-60-xx_THT +Converter_ACDC:Converter_ACDC_MeanWell_MFM-10-xx_THT +Converter_ACDC:Converter_ACDC_MeanWell_MFM-15-xx_THT Converter_ACDC:Converter_ACDC_Murata_BAC05SxxDC_THT Converter_ACDC:Converter_ACDC_RECOM_RAC01-xxSGB_THT Converter_ACDC:Converter_ACDC_RECOM_RAC04-xxSGx_THT Converter_ACDC:Converter_ACDC_RECOM_RAC05-xxSK_THT Converter_ACDC:Converter_ACDC_Recom_RAC20-xxDK_THT Converter_ACDC:Converter_ACDC_Recom_RAC20-xxSK_THT +Converter_ACDC:Converter_ACDC_TRACO_TMF_051xx_THT +Converter_ACDC:Converter_ACDC_TRACO_TMF_101xx_THT +Converter_ACDC:Converter_ACDC_TRACO_TMF_201xx_THT +Converter_ACDC:Converter_ACDC_TRACO_TMF_301xx_THT Converter_ACDC:Converter_ACDC_TRACO_TMG-15_THT Converter_ACDC:Converter_ACDC_TRACO_TMLM-04_THT Converter_ACDC:Converter_ACDC_TRACO_TMLM-05_THT @@ -7308,6 +7603,7 @@ Converter_ACDC:Converter_ACDC_TRACO_TMLM-10-20_THT Converter_ACDC:Converter_ACDC_TRACO_TPP-15-1xx-D_THT Converter_ACDC:Converter_ACDC_Vigortronix_VTX-214-010-xxx_THT Converter_ACDC:Converter_ACDC_Vigortronix_VTX-214-015-1xx_THT +Converter_ACDC:Converter_ACDC_ZETTLER_ZPI03Sxx00WC_THT Converter_DCDC:Converter_DCDC_Artesyn_ATA_SMD Converter_DCDC:Converter_DCDC_Bothhand_CFUDxxxx_THT Converter_DCDC:Converter_DCDC_Bothhand_CFUSxxxxEH_THT @@ -7320,6 +7616,7 @@ Converter_DCDC:Converter_DCDC_Cyntec_MUN12AD01-SH Converter_DCDC:Converter_DCDC_Cyntec_MUN12AD03-SH Converter_DCDC:Converter_DCDC_MeanWell_NID30_THT Converter_DCDC:Converter_DCDC_MeanWell_NID60_THT +Converter_DCDC:Converter_DCDC_MeanWell_NSD10_THT Converter_DCDC:Converter_DCDC_Murata_CRE1xxxxxx3C_THT Converter_DCDC:Converter_DCDC_Murata_CRE1xxxxxxDC_THT Converter_DCDC:Converter_DCDC_Murata_CRE1xxxxxxSC_THT @@ -7359,14 +7656,21 @@ Converter_DCDC:Converter_DCDC_TRACO_TDU1-xxxx_THT Converter_DCDC:Converter_DCDC_TRACO_TEA1-xxxxE_THT Converter_DCDC:Converter_DCDC_TRACO_TEA1-xxxxHI_THT Converter_DCDC:Converter_DCDC_TRACO_TEA1-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_TEC3-24xxUI_THT Converter_DCDC:Converter_DCDC_TRACO_TEL12-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_TEN10-110xxWIRH_THT Converter_DCDC:Converter_DCDC_TRACO_TEN10-xxxx_Dual_THT Converter_DCDC:Converter_DCDC_TRACO_TEN10-xxxx_Single_THT Converter_DCDC:Converter_DCDC_TRACO_TEN10-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_TEN20-110xxWIRH_THT Converter_DCDC:Converter_DCDC_TRACO_TEN20-xxxx-N4_THT Converter_DCDC:Converter_DCDC_TRACO_TEN20-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_TEN40-110xxWIRH_THT +Converter_DCDC:Converter_DCDC_TRACO_THB10-xxxx_Dual_THT +Converter_DCDC:Converter_DCDC_TRACO_THB10-xxxx_Single_THT Converter_DCDC:Converter_DCDC_TRACO_THD_15-xxxxWIN_THT Converter_DCDC:Converter_DCDC_TRACO_THN30-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_THR40-72xxWI_THT Converter_DCDC:Converter_DCDC_TRACO_TMA-05xxD_12xxD_Dual_THT Converter_DCDC:Converter_DCDC_TRACO_TMA-05xxS_12xxS_Single_THT Converter_DCDC:Converter_DCDC_TRACO_TMA-15xxD_24xxD_Dual_THT @@ -7378,11 +7682,18 @@ Converter_DCDC:Converter_DCDC_TRACO_TMR-1-xxxx_Single_THT Converter_DCDC:Converter_DCDC_TRACO_TMR-1SM_SMD Converter_DCDC:Converter_DCDC_TRACO_TMR-2xxxxWI_THT Converter_DCDC:Converter_DCDC_TRACO_TMR-xxxx_THT +Converter_DCDC:Converter_DCDC_TRACO_TMR4-xxxxWI_THT Converter_DCDC:Converter_DCDC_TRACO_TMU3-05xx_12xx_THT Converter_DCDC:Converter_DCDC_TRACO_TMU3-24xx_THT +Converter_DCDC:Converter_DCDC_TRACO_TOS06-05SIL_THT +Converter_DCDC:Converter_DCDC_TRACO_TOS06-12SIL_THT +Converter_DCDC:Converter_DCDC_TRACO_TRA3-xxxx_THT Converter_DCDC:Converter_DCDC_TRACO_TRI1-xxxx_THT Converter_DCDC:Converter_DCDC_TRACO_TSR-1_THT +Converter_DCDC:Converter_DCDC_TRACO_TSR0.6-48xxWI_TSR0.6-48xxxWI_THT Converter_DCDC:Converter_DCDC_TRACO_TSR1-xxxxE_THT +Converter_DCDC:Converter_DCDC_TRACO_TSR2-24xxN_TSR2-24xxxN_THT +Converter_DCDC:Converter_DCDC_TRACO_TSR2-xxxx_THT Converter_DCDC:Converter_DCDC_XP_POWER-IA48xxD_THT Converter_DCDC:Converter_DCDC_XP_POWER-IA48xxS_THT Converter_DCDC:Converter_DCDC_XP_POWER-IAxxxxD_THT @@ -7465,6 +7776,7 @@ Crystal:Crystal_SMD_0603-2Pin_6.0x3.5mm Crystal:Crystal_SMD_0603-2Pin_6.0x3.5mm_HandSoldering Crystal:Crystal_SMD_0603-4Pin_6.0x3.5mm Crystal:Crystal_SMD_0603-4Pin_6.0x3.5mm_HandSoldering +Crystal:Crystal_SMD_1210-4Pin_1.2x1.0mm Crystal:Crystal_SMD_2012-2Pin_2.0x1.2mm Crystal:Crystal_SMD_2012-2Pin_2.0x1.2mm_HandSoldering Crystal:Crystal_SMD_2016-4Pin_2.0x1.6mm @@ -7641,6 +7953,7 @@ Diode_SMD:D_SMC-RM10_Universal_Handsoldering Diode_SMD:D_SMC Diode_SMD:D_SMC_Handsoldering Diode_SMD:D_SMF +Diode_SMD:D_SMP_DO-220AA Diode_SMD:D_SOD-110 Diode_SMD:D_SOD-123 Diode_SMD:D_SOD-123F @@ -7649,6 +7962,8 @@ Diode_SMD:D_SOD-323 Diode_SMD:D_SOD-323F Diode_SMD:D_SOD-323_HandSoldering Diode_SMD:D_SOD-523 +Diode_SMD:D_SOD-882 +Diode_SMD:D_SOD-882D Diode_SMD:D_SOD-923 Diode_SMD:D_TUMD2 Diode_SMD:Infineon_SG-WLL-2-3_0.58x0.28_P0.36mm @@ -7656,6 +7971,9 @@ Diode_SMD:Littelfuse_PolyZen-LS Diode_SMD:Nexperia_CFP3_SOD-123W Diode_SMD:Nexperia_DSN0603-2_0.6x0.3mm_P0.4mm Diode_SMD:Nexperia_DSN1608-2_1.6x0.8mm +Diode_SMD:OnSemi_751EP_SOIC-4_3.9x4.725mm_P2.54mm +Diode_SMD:ST_D_SMC +Diode_SMD:ST_QFN-2L_1.6x1.0mm Diode_SMD:Vishay_SMPA Diode_THT:Diode_Bridge_15.1x15.1x6.3mm_P10.9mm Diode_THT:Diode_Bridge_15.2x15.2x6.3mm_P10.9mm @@ -7788,6 +8106,7 @@ Display:EA_eDIPTFT57-XXX Display:EA_eDIPTFT70-ATC Display:EA_eDIPTFT70-XXX Display:EA_T123X-I2C +Display:ER-OLED0.42-1W_Folded Display:ERM19264 Display:HDSM-441B_HDSM-443B Display:HDSM-541B_HDSM-543B @@ -7802,6 +8121,7 @@ Display:HY1602E Display:LCD-016N002L Display:LM16255 Display:NHD-0420H1Z +Display:NHD-C0220BiZ-FSRGB Display:NHD-C0220BiZ Display:NHD-C12832A1Z-FSRGB Display:OLED-128O064D @@ -7873,6 +8193,7 @@ Filter:Filter_1109-5_1.1x0.9mm Filter:Filter_1411-5_1.4x1.1mm Filter:Filter_Bourns_SRF0905_6.0x9.2mm Filter:Filter_FILTERCON_1FPxx +Filter:Filter_KEMET_PZB300_24.0x12.5mm_P10.0mm Filter:Filter_Mini-Circuits_FV1206-1 Filter:Filter_Mini-Circuits_FV1206-4 Filter:Filter_Mini-Circuits_FV1206-5 @@ -8061,9 +8382,53 @@ Inductor_SMD:L_2512_6332Metric_Pad1.52x3.35mm_HandSolder Inductor_SMD:L_6.3x6.3_H3 Inductor_SMD:L_7.3x7.3_H3.5 Inductor_SMD:L_7.3x7.3_H4.5 +Inductor_SMD:L_Abracon_ASPI-0425 Inductor_SMD:L_Abracon_ASPI-0630LR Inductor_SMD:L_Abracon_ASPI-3012S Inductor_SMD:L_Abracon_ASPI-4030S +Inductor_SMD:L_Abracon_ASPIAIG-F4020 +Inductor_SMD:L_APV_ANR252010 +Inductor_SMD:L_APV_ANR252012 +Inductor_SMD:L_APV_ANR3010 +Inductor_SMD:L_APV_ANR3012 +Inductor_SMD:L_APV_ANR3015 +Inductor_SMD:L_APV_ANR4010 +Inductor_SMD:L_APV_ANR4012 +Inductor_SMD:L_APV_ANR4018 +Inductor_SMD:L_APV_ANR4020 +Inductor_SMD:L_APV_ANR4026 +Inductor_SMD:L_APV_ANR4030 +Inductor_SMD:L_APV_ANR5012 +Inductor_SMD:L_APV_ANR5020 +Inductor_SMD:L_APV_ANR5040 +Inductor_SMD:L_APV_ANR5045 +Inductor_SMD:L_APV_ANR6020 +Inductor_SMD:L_APV_ANR6028 +Inductor_SMD:L_APV_ANR6045 +Inductor_SMD:L_APV_ANR8040 +Inductor_SMD:L_APV_ANR8065 +Inductor_SMD:L_APV_APH0412 +Inductor_SMD:L_APV_APH0420 +Inductor_SMD:L_APV_APH0518 +Inductor_SMD:L_APV_APH0530 +Inductor_SMD:L_APV_APH0615 +Inductor_SMD:L_APV_APH0618 +Inductor_SMD:L_APV_APH0620 +Inductor_SMD:L_APV_APH0624 +Inductor_SMD:L_APV_APH0630 +Inductor_SMD:L_APV_APH0640 +Inductor_SMD:L_APV_APH0650 +Inductor_SMD:L_APV_APH0840 +Inductor_SMD:L_APV_APH0850 +Inductor_SMD:L_APV_APH1030 +Inductor_SMD:L_APV_APH1040 +Inductor_SMD:L_APV_APH1050 +Inductor_SMD:L_APV_APH1240 +Inductor_SMD:L_APV_APH1250 +Inductor_SMD:L_APV_APH1260 +Inductor_SMD:L_APV_APH1265 +Inductor_SMD:L_APV_APH1770 +Inductor_SMD:L_APV_APH2213 Inductor_SMD:L_AVX_LMLP07A7 Inductor_SMD:L_Bourns-SRN1060 Inductor_SMD:L_Bourns-SRN4018 @@ -8073,20 +8438,39 @@ Inductor_SMD:L_Bourns-SRR1005 Inductor_SMD:L_Bourns-SRU1028_10.0x10.0mm Inductor_SMD:L_Bourns-SRU8028_8.0x8.0mm Inductor_SMD:L_Bourns-SRU8043 +Inductor_SMD:L_Bourns_SDR0604 Inductor_SMD:L_Bourns_SDR1806 Inductor_SMD:L_Bourns_SRF1260 Inductor_SMD:L_Bourns_SRN6045TA Inductor_SMD:L_Bourns_SRN8040TA Inductor_SMD:L_Bourns_SRP1038C_10.0x10.0mm +Inductor_SMD:L_Bourns_SRP1050WA Inductor_SMD:L_Bourns_SRP1245A Inductor_SMD:L_Bourns_SRP1770TA_16.9x16.9mm Inductor_SMD:L_Bourns_SRP2313AA Inductor_SMD:L_Bourns_SRP5030T +Inductor_SMD:L_Bourns_SRP6060FA Inductor_SMD:L_Bourns_SRP7028A_7.3x6.6mm Inductor_SMD:L_Bourns_SRR1208_12.7x12.7mm Inductor_SMD:L_Bourns_SRR1210A Inductor_SMD:L_Bourns_SRR1260 Inductor_SMD:L_Bourns_SRU5016_5.2x5.2mm +Inductor_SMD:L_Cenker_CKCS201610 +Inductor_SMD:L_Cenker_CKCS252010 +Inductor_SMD:L_Cenker_CKCS252012 +Inductor_SMD:L_Cenker_CKCS3012 +Inductor_SMD:L_Cenker_CKCS3015 +Inductor_SMD:L_Cenker_CKCS4018 +Inductor_SMD:L_Cenker_CKCS4020 +Inductor_SMD:L_Cenker_CKCS4030 +Inductor_SMD:L_Cenker_CKCS5020 +Inductor_SMD:L_Cenker_CKCS5040 +Inductor_SMD:L_Cenker_CKCS6020 +Inductor_SMD:L_Cenker_CKCS6028 +Inductor_SMD:L_Cenker_CKCS6045 +Inductor_SMD:L_Cenker_CKCS8040 +Inductor_SMD:L_Cenker_CKCS8060 +Inductor_SMD:L_Cenker_CKCS8080 Inductor_SMD:L_Changjiang_FNR252010S Inductor_SMD:L_Changjiang_FNR252012S Inductor_SMD:L_Changjiang_FNR3010S @@ -8113,6 +8497,26 @@ Inductor_SMD:L_Changjiang_FNR6045S Inductor_SMD:L_Changjiang_FNR8040S Inductor_SMD:L_Changjiang_FNR8050S Inductor_SMD:L_Changjiang_FNR8065S +Inductor_SMD:L_Changjiang_FXL0412 +Inductor_SMD:L_Changjiang_FXL0420 +Inductor_SMD:L_Changjiang_FXL0518 +Inductor_SMD:L_Changjiang_FXL0530 +Inductor_SMD:L_Changjiang_FXL0615 +Inductor_SMD:L_Changjiang_FXL0618 +Inductor_SMD:L_Changjiang_FXL0624 +Inductor_SMD:L_Changjiang_FXL0630 +Inductor_SMD:L_Changjiang_FXL0640 +Inductor_SMD:L_Changjiang_FXL0650 +Inductor_SMD:L_Changjiang_FXL0840 +Inductor_SMD:L_Changjiang_FXL1030 +Inductor_SMD:L_Changjiang_FXL1040 +Inductor_SMD:L_Changjiang_FXL1050 +Inductor_SMD:L_Changjiang_FXL1340 +Inductor_SMD:L_Changjiang_FXL1350 +Inductor_SMD:L_Changjiang_FXL1360 +Inductor_SMD:L_Changjiang_FXL1365 +Inductor_SMD:L_Changjiang_FXL1770 +Inductor_SMD:L_Changjiang_FXL2213 Inductor_SMD:L_Chilisin_BMRA00040415 Inductor_SMD:L_Chilisin_BMRA00040420 Inductor_SMD:L_Chilisin_BMRA00050520 @@ -8135,10 +8539,47 @@ Inductor_SMD:L_Chilisin_BMRx00050512-B Inductor_SMD:L_Chilisin_BMRx00050515 Inductor_SMD:L_Chilisin_BMRx00060615 Inductor_SMD:L_Chilisin_BMRx00060630 +Inductor_SMD:L_Coilcraft_1515SQ-47N +Inductor_SMD:L_Coilcraft_1515SQ-68N +Inductor_SMD:L_Coilcraft_1515SQ-82N +Inductor_SMD:L_Coilcraft_2222SQ-111 +Inductor_SMD:L_Coilcraft_2222SQ-131 +Inductor_SMD:L_Coilcraft_2222SQ-161 +Inductor_SMD:L_Coilcraft_2222SQ-181 +Inductor_SMD:L_Coilcraft_2222SQ-221 +Inductor_SMD:L_Coilcraft_2222SQ-271 +Inductor_SMD:L_Coilcraft_2222SQ-301 +Inductor_SMD:L_Coilcraft_2222SQ-90N +Inductor_SMD:L_Coilcraft_2929SQ-331 +Inductor_SMD:L_Coilcraft_2929SQ-361 +Inductor_SMD:L_Coilcraft_2929SQ-391 +Inductor_SMD:L_Coilcraft_2929SQ-431 +Inductor_SMD:L_Coilcraft_2929SQ-501 Inductor_SMD:L_Coilcraft_LPS3010 Inductor_SMD:L_Coilcraft_LPS3314 Inductor_SMD:L_Coilcraft_LPS4018 +Inductor_SMD:L_Coilcraft_LPS4414 Inductor_SMD:L_Coilcraft_LPS5030 +Inductor_SMD:L_Coilcraft_MOS6020-XXX +Inductor_SMD:L_Coilcraft_MSS1038-XXX +Inductor_SMD:L_Coilcraft_MSS1038T-XXX +Inductor_SMD:L_Coilcraft_MSS1048-XXX +Inductor_SMD:L_Coilcraft_MSS1048T-XXX +Inductor_SMD:L_Coilcraft_MSS1210-XXX +Inductor_SMD:L_Coilcraft_MSS1210H-XXX +Inductor_SMD:L_Coilcraft_MSS1246-XXX +Inductor_SMD:L_Coilcraft_MSS1246H-XXX +Inductor_SMD:L_Coilcraft_MSS1246T-XXX +Inductor_SMD:L_Coilcraft_MSS1260-XXX +Inductor_SMD:L_Coilcraft_MSS1260H-XXX +Inductor_SMD:L_Coilcraft_MSS1260T-XXX +Inductor_SMD:L_Coilcraft_MSS1278-XXX +Inductor_SMD:L_Coilcraft_MSS1278H-XXX +Inductor_SMD:L_Coilcraft_MSS1278T-XXX +Inductor_SMD:L_Coilcraft_MSS1514V-XXX +Inductor_SMD:L_Coilcraft_MSS1583-XXX +Inductor_SMD:L_Coilcraft_MSS1812T-XXX +Inductor_SMD:L_Coilcraft_MSS7348-XXX Inductor_SMD:L_Coilcraft_XAL1010-XXX Inductor_SMD:L_Coilcraft_XAL1030-XXX Inductor_SMD:L_Coilcraft_XAL1060-XXX @@ -8223,6 +8664,8 @@ Inductor_SMD:L_Ferrocore_DLG-0703 Inductor_SMD:L_Ferrocore_DLG-0705 Inductor_SMD:L_Ferrocore_DLG-1004 Inductor_SMD:L_Ferrocore_DLG-1005 +Inductor_SMD:L_KOHERelec_MDA5030 +Inductor_SMD:L_KOHERelec_MDA7030 Inductor_SMD:L_Murata_DEM35xxC Inductor_SMD:L_Murata_DFE201610P Inductor_SMD:L_Murata_LQH2MCNxxxx02_2.0x1.6mm @@ -8264,8 +8707,12 @@ Inductor_SMD:L_Neosid_SMs85 Inductor_SMD:L_Neosid_SMs95_SMs95p Inductor_SMD:L_Pulse_P059x Inductor_SMD:L_Pulse_PA4320 +Inductor_SMD:L_Pulse_PA4332 +Inductor_SMD:L_Pulse_PA4340 +Inductor_SMD:L_Pulse_PA4341 Inductor_SMD:L_Pulse_PA4344 Inductor_SMD:L_Pulse_PA4349 +Inductor_SMD:L_Pulse_PA5402 Inductor_SMD:L_Sagami_CER1242B Inductor_SMD:L_Sagami_CER1257B Inductor_SMD:L_Sagami_CER1277B @@ -8273,6 +8720,7 @@ Inductor_SMD:L_Sagami_CWR1242C Inductor_SMD:L_Sagami_CWR1257C Inductor_SMD:L_Sagami_CWR1277C Inductor_SMD:L_SigTra_SC3316F +Inductor_SMD:L_SOREDE_SNR.1050_10x10x5mm Inductor_SMD:L_Sumida_CDMC6D28_7.25x6.5mm Inductor_SMD:L_Sumida_CR75 Inductor_SMD:L_Sunlord_MWSA0402S @@ -8364,6 +8812,13 @@ Inductor_SMD:L_Sunlord_SWPA8040S Inductor_SMD:L_Sunlord_SWRB1204S Inductor_SMD:L_Sunlord_SWRB1205S Inductor_SMD:L_Sunlord_SWRB1207S +Inductor_SMD:L_SXN_SMDRI124 +Inductor_SMD:L_SXN_SMDRI125 +Inductor_SMD:L_SXN_SMDRI127 +Inductor_SMD:L_SXN_SMDRI62 +Inductor_SMD:L_SXN_SMDRI64 +Inductor_SMD:L_SXN_SMDRI73 +Inductor_SMD:L_SXN_SMDRI74 Inductor_SMD:L_TaiTech_TMPC1265_13.5x12.5mm Inductor_SMD:L_Taiyo-Yuden_BK_Array_1206_3216Metric Inductor_SMD:L_Taiyo-Yuden_MD-1616 @@ -8632,6 +9087,7 @@ Inductor_THT:L_Radial_D12.5mm_P7.00mm_Fastron_09HCP Inductor_THT:L_Radial_D12.5mm_P9.00mm_Fastron_09HCP Inductor_THT:L_Radial_D13.5mm_P7.00mm_Fastron_09HCP Inductor_THT:L_Radial_D14.2mm_P10.00mm_Neosid_SD14 +Inductor_THT:L_Radial_D16.0mm_P10.00mm_Panasonic_15E-L Inductor_THT:L_Radial_D16.8mm_P11.43mm_Vishay_IHB-1 Inductor_THT:L_Radial_D16.8mm_P12.07mm_Vishay_IHB-1 Inductor_THT:L_Radial_D16.8mm_P12.70mm_Vishay_IHB-1 @@ -8822,14 +9278,18 @@ LED_SMD:LED_Cree-XQ LED_SMD:LED_Cree-XQ_HandSoldering LED_SMD:LED_CSP_Samsung_LH181B_2.36x2.36mm LED_SMD:LED_Dialight_591 +LED_SMD:LED_Everlight-SMD3528_3.5x2.8mm_67-21ST +LED_SMD:LED_Inolux_IN-P55TATRGB_PLCC6_5.0x5.5mm_P1.8mm LED_SMD:LED_Inolux_IN-PI554FCH_PLCC4_5.0x5.0mm_P3.2mm LED_SMD:LED_Kingbright_AAA3528ESGCT +LED_SMD:LED_Kingbright_APA1606_1.6x0.6mm_Horizontal LED_SMD:LED_Kingbright_APDA3020VBCD LED_SMD:LED_Kingbright_APFA3010_3x1.5mm_Horizontal LED_SMD:LED_Kingbright_APHBM2012_2x1.25mm LED_SMD:LED_Kingbright_KPA-3010_3x2x1mm LED_SMD:LED_Kingbright_KPBD-3224 LED_SMD:LED_LiteOn_LTST-C19HE1WT +LED_SMD:LED_LiteOn_LTST-C235KGKRKT LED_SMD:LED_LiteOn_LTST-C295K_1.6x0.8mm LED_SMD:LED_LiteOn_LTST-E563C_PLCC4_5.0x5.0mm_P3.2mm LED_SMD:LED_LiteOn_LTST-E563C_PLCC4_5.0x5.0mm_P3.2mm_HandSoldering @@ -8839,6 +9299,7 @@ LED_SMD:LED_Lumex_SML-LX0404SIUPGUSB LED_SMD:LED_Luminus_MP-3030-1100_3.0x3.0mm LED_SMD:LED_miniPLCC_2315 LED_SMD:LED_miniPLCC_2315_Handsoldering +LED_SMD:LED_OPSCO_SK6812_PLCC4_5.0x5.0mm_P3.1mm LED_SMD:LED_Osram_Lx_P47F_D2mm_ReverseMount LED_SMD:LED_PLCC-2_3.4x3.0mm_AK LED_SMD:LED_PLCC-2_3.4x3.0mm_KA @@ -8851,14 +9312,17 @@ LED_SMD:LED_RGB_5050-6 LED_SMD:LED_RGB_Cree-PLCC-6_6x5mm_P2.1mm LED_SMD:LED_RGB_Everlight_EASV3015RGBA0_Horizontal LED_SMD:LED_RGB_Getian_GT-P6PRGB4303 +LED_SMD:LED_RGB_Lumex_SML-LXT0805SIUGUBW LED_SMD:LED_RGB_PLCC-6 LED_SMD:LED_RGB_Wuerth-PLCC4_3.2x2.8mm_150141M173100 +LED_SMD:LED_RGB_Wuerth_150080M153000 LED_SMD:LED_ROHM_SMLVN6 LED_SMD:LED_SK6805_PLCC4_2.4x2.7mm_P1.3mm LED_SMD:LED_SK6812MINI_PLCC4_3.5x3.5mm_P1.75mm LED_SMD:LED_SK6812_EC15_1.5x1.5mm LED_SMD:LED_SK6812_PLCC4_5.0x5.0mm_P3.2mm LED_SMD:LED_WS2812B-2020_PLCC4_2.0x2.0mm +LED_SMD:LED_WS2812B-Mini_PLCC4_3.5x3.5mm LED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mm LED_SMD:LED_WS2812_PLCC6_5.0x5.0mm_P1.6mm LED_SMD:LED_Wurth_150044M155260 @@ -8925,7 +9389,6 @@ LED_THT:LED_D8.0mm LED_THT:LED_Oval_W5.2mm_H3.8mm LED_THT:LED_Rectangular_W3.0mm_H2.0mm LED_THT:LED_Rectangular_W3.9mm_H1.8mm -LED_THT:LED_Rectangular_W3.9mm_H1.8mm_FlatTop LED_THT:LED_Rectangular_W3.9mm_H1.9mm LED_THT:LED_Rectangular_W5.0mm_H2.0mm-3Pins LED_THT:LED_Rectangular_W5.0mm_H2.0mm @@ -8969,19 +9432,29 @@ Module:Arduino_UNO_R3_WithMountingHoles Module:BeagleBoard_PocketBeagle Module:Carambola2 Module:Electrosmith_Daisy_Seed +Module:Flipper_Zero_Angled +Module:Flipper_Zero_Straight +Module:Google_Coral_SMT_TPU_Module Module:Maple_Mini Module:Olimex_MOD-WIFI-ESP8266-DEV Module:Onion_Omega2+ Module:Onion_Omega2S Module:Pololu_Breakout-16_15.2x20.3mm +Module:RaspberryPi_Pico_Common_SMD +Module:RaspberryPi_Pico_Common_THT +Module:RaspberryPi_Pico_Common_Unspecified +Module:RaspberryPi_Pico_SMD +Module:RaspberryPi_Pico_SMD_HandSolder +Module:RaspberryPi_Pico_W_SMD +Module:RaspberryPi_Pico_W_SMD_HandSolder Module:Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles Module:Sipeed-M1 +Module:Sipeed-M1W Module:ST_Morpho_Connector_144_STLink Module:ST_Morpho_Connector_144_STLink_MountingHoles Module:Texas_EUK_R-PDSS-T7_THT Module:Texas_EUS_R-PDSS-T5_THT Module:Texas_EUW_R-PDSS-T7_THT -Module:WEMOS_D1_mini_light Motors:Vybronics_VZ30C1T8219732L MountingEquipment:DINRailAdapter_3xM3_PhoenixContact_1201578 MountingHole:MountingHole_2.1mm @@ -9150,6 +9623,7 @@ MountingHole:MountingHole_8.4mm_M8_Pad MountingHole:MountingHole_8.4mm_M8_Pad_TopBottom MountingHole:MountingHole_8.4mm_M8_Pad_TopOnly MountingHole:MountingHole_8.4mm_M8_Pad_Via +MountingHole:ToolingHole_1.152mm Mounting_Wuerth:Mounting_Wuerth_WA-SMSE-ExternalM3_H10mm_9771100360 Mounting_Wuerth:Mounting_Wuerth_WA-SMSE-ExternalM3_H11mm_9771110360 Mounting_Wuerth:Mounting_Wuerth_WA-SMSE-ExternalM3_H12mm_9771120360 @@ -9313,6 +9787,8 @@ Mounting_Wuerth:Mounting_Wuerth_WA-SMST-4.5mm_H6mm_9774060982 Mounting_Wuerth:Mounting_Wuerth_WA-SMST-4.5mm_H7mm_9774070982 Mounting_Wuerth:Mounting_Wuerth_WA-SMST-4.5mm_H8mm_9774080982 Mounting_Wuerth:Mounting_Wuerth_WA-SMST-4.5mm_H9mm_9774090982 +Mounting_Wuerth:Mounting_Wuerth_WP-SMRA-D3.3mm_L7mm_7466300_Horizontal +Mounting_Wuerth:Mounting_Wuerth_WP-SMRA-M3_L7mm_7466303_Horizontal NetTie:NetTie-2_SMD_Pad0.5mm NetTie:NetTie-2_SMD_Pad2.0mm NetTie:NetTie-2_THT_Pad0.3mm @@ -9325,34 +9801,20 @@ NetTie:NetTie-4_SMD_Pad0.5mm NetTie:NetTie-4_SMD_Pad2.0mm NetTie:NetTie-4_THT_Pad0.3mm NetTie:NetTie-4_THT_Pad1.0mm -Obsolete:Fiducial/Fiducial_1mm_Dia_2.54mm_Outer_CopperBottom -Obsolete:Fiducial/Fiducial_1mm_Dia_2.54mm_Outer_CopperTop -Obsolete:Fiducial/Fiducial_classic_big_CopperBottom_Type1 -Obsolete:Fiducial/Fiducial_classic_big_CopperBottom_Type2 -Obsolete:Fiducial/Fiducial_classic_big_CopperTop_Type1 -Obsolete:Fiducial/Fiducial_classic_big_CopperTop_Type2 -Obsolete:Fiducial/Fiducial_classic_big_SilkscreenTop_Type1 -Obsolete:Fiducial/Fiducial_classic_big_SilkscreenTop_Type2 -Obsolete:Fiducial/Fiducial_classic_Small_CopperBottom_Type1 -Obsolete:Fiducial/Fiducial_classic_Small_CopperBottom_Type2 -Obsolete:Fiducial/Fiducial_classic_Small_CopperTop_Type1 -Obsolete:Fiducial/Fiducial_classic_Small_CopperTop_Type2 -Obsolete:Fiducial/Fiducial_classic_Small_SilkscreenTop_Type1 -Obsolete:Fiducial/Fiducial_classic_Small_SilkscreenTop_Type2 -Obsolete:Fiducial/Fiducial_Modern_CopperBottom -Obsolete:Fiducial/Fiducial_Modern_CopperTop -Obsolete:Fiducial/Fiducial_Modern_SilkscreenTop OptoDevice:ADNS-9800 OptoDevice:AGILENT_HFBR-152x OptoDevice:AGILENT_HFBR-252x OptoDevice:AMS_TSL2550_SMD +OptoDevice:AMS_TSL25911FN OptoDevice:Broadcom_AFBR-16xxZ_Horizontal OptoDevice:Broadcom_AFBR-16xxZ_Tilted OptoDevice:Broadcom_AFBR-16xxZ_Vertical +OptoDevice:Broadcom_APDS-9160-003 OptoDevice:Broadcom_APDS-9301 OptoDevice:Broadcom_DFN-6_2x2mm_P0.65mm OptoDevice:Broadcom_LGA-8_2x2mm_P0.53mm OptoDevice:Broadcom_LGA-8_2x2mm_P0.5mm +OptoDevice:Everlight_IRM-H6xxT OptoDevice:Everlight_ITR1201SR10AR OptoDevice:Everlight_ITR8307 OptoDevice:Everlight_ITR8307F43 @@ -9415,6 +9877,7 @@ OptoDevice:Panasonic_APV-AQY_SSOP-4_4.45x2.65mm_P1.27mm OptoDevice:PerkinElmer_VTL5C OptoDevice:PerkinElmer_VTL5Cx2 OptoDevice:Renesas_DFN-6_1.5x1.6mm_P0.5mm +OptoDevice:Rohm_RPR-0720 OptoDevice:R_LDR_10x8.5mm_P7.6mm_Vertical OptoDevice:R_LDR_11x9.4mm_P8.2mm_Vertical OptoDevice:R_LDR_12x10.8mm_P9.0mm_Vertical @@ -9426,12 +9889,12 @@ OptoDevice:R_LDR_7x6mm_P5.1mm_Vertical OptoDevice:R_LDR_D13.8mm_P9.0mm_Vertical OptoDevice:R_LDR_D20mm_P17.5mm_Vertical OptoDevice:R_LDR_D6.4mm_P3.4mm_Vertical +OptoDevice:Sharp_GP2S700HCP OptoDevice:Sharp_GP2Y0A41SK0F OptoDevice:Sharp_IS471F OptoDevice:Sharp_IS485 OptoDevice:Siemens_SFH900 OptoDevice:ST_VL53L0X -OptoDevice:ST_VL53L1X OptoDevice:Toshiba_TORX170_TORX173_TORX193_TORX194 OptoDevice:Toshiba_TOTX170_TOTX173_TOTX193_TOTX194 OptoDevice:Vishay_CAST-3Pin @@ -9439,6 +9902,7 @@ OptoDevice:Vishay_CNY70 OptoDevice:Vishay_MINICAST-3Pin OptoDevice:Vishay_MINIMOLD-3Pin OptoDevice:Vishay_MOLD-3Pin +OptoDevice:Vishay_TCRT5000 Oscillator:Oscillator_DIP-14 Oscillator:Oscillator_DIP-14_LargePads Oscillator:Oscillator_DIP-8 @@ -9500,18 +9964,25 @@ Oscillator:Oscillator_SMD_SI570_SI571_Standard Oscillator:Oscillator_SMD_Silicon_Labs_LGA-6_2.5x3.2mm_P1.25mm Oscillator:Oscillator_SMD_SiTime_PQFD-6L_3.2x2.5mm Oscillator:Oscillator_SMD_SiTime_SiT9121-6Pin_3.2x2.5mm +Oscillator:Oscillator_SMD_SiT_PQFN-4Pin_2.0x1.6mm +Oscillator:Oscillator_SMD_SiT_PQFN-4Pin_2.5x2.0mm +Oscillator:Oscillator_SMD_SiT_PQFN-4Pin_3.2x2.5mm +Oscillator:Oscillator_SMD_SiT_PQFN-4Pin_5.0x3.2mm +Oscillator:Oscillator_SMD_SiT_PQFN-4Pin_7.0x5.0mm Oscillator:Oscillator_SMD_TCXO_G158 Oscillator:Oscillator_SMD_TXC_7C-4Pin_5.0x3.2mm Oscillator:Oscillator_SMD_TXC_7C-4Pin_5.0x3.2mm_HandSoldering +Package_BGA:Alliance_TFBGA-36_6x8mm_Layout6x8_P0.75mm Package_BGA:Alliance_TFBGA-54_8x8mm_Layout9x9_P0.8mm -Package_BGA:Analog_BGA-209_9.5x16mm_Layout11x19_P0.8mm_Ball0.5mm_Pad0.4mm -Package_BGA:Analog_BGA-28_4.0x6.25mm_Layout4x7_P0.8mm_Ball0.45mm_Pad0.4 -Package_BGA:Analog_BGA-49_6.25x6.25mm_Layout7x7_P0.8mm_Ball0.5mm_Pad0.4mm +Package_BGA:Analog_BGA-165_11.9x16mm_Layout11x15_P1.0mm +Package_BGA:Analog_BGA-209_9.5x16mm_Layout11x19_P0.8mm +Package_BGA:Analog_BGA-28_4x6.25mm_Layout4x7_P0.8mm +Package_BGA:Analog_BGA-49_6.25x6.25mm_Layout7x7_P0.8mm +Package_BGA:Analog_BGA-77_9x15mm_Layout7x11_P1.27mm Package_BGA:BGA-100_11.0x11.0mm_Layout10x10_P1.0mm_Ball0.5mm_Pad0.4mm_NSMD Package_BGA:BGA-100_6.0x6.0mm_Layout11x11_P0.5mm_Ball0.3mm_Pad0.25mm_NSMD Package_BGA:BGA-1023_33.0x33.0mm_Layout32x32_P1.0mm Package_BGA:BGA-1156_35.0x35.0mm_Layout34x34_P1.0mm -Package_BGA:BGA-121_12.0x12.0mm_Layout11x11_P1.0mm Package_BGA:BGA-121_9.0x9.0mm_Layout11x11_P0.8mm_Ball0.4mm_Pad0.35mm_NSMD Package_BGA:BGA-1295_37.5x37.5mm_Layout36x36_P1.0mm Package_BGA:BGA-132_12x18mm_Layout11x17_P1.0mm @@ -9521,13 +9992,14 @@ Package_BGA:BGA-152_14x18mm_Layout13x17_P0.5mm Package_BGA:BGA-153_8.0x8.0mm_Layout15x15_P0.5mm_Ball0.3mm_Pad0.25mm_NSMD Package_BGA:BGA-169_11.0x11.0mm_Layout13x13_P0.8mm_Ball0.5mm_Pad0.4mm_NSMD Package_BGA:BGA-16_1.92x1.92mm_Layout4x4_P0.5mm -Package_BGA:BGA-200_10.0x14.5mm_Layout12x22_P0.80x0.65mm +Package_BGA:BGA-196_15x15mm_Layout14x14_P1.0mm +Package_BGA:BGA-200_10x14.5mm_Layout12x22_P0.8x0.65mm Package_BGA:BGA-256_11.0x11.0mm_Layout20x20_P0.5mm_Ball0.3mm_Pad0.25mm_NSMD Package_BGA:BGA-256_14.0x14.0mm_Layout16x16_P0.8mm_Ball0.45mm_Pad0.32mm_NSMD Package_BGA:BGA-256_17.0x17.0mm_Layout16x16_P1.0mm_Ball0.5mm_Pad0.4mm_NSMD Package_BGA:BGA-25_6.35x6.35mm_Layout5x5_P1.27mm -Package_BGA:BGA-324_15.0x15.0mm_Layout18x18_P0.8mm_Ball0.45mm_Pad0.4mm_NSMD Package_BGA:BGA-324_15.0x15.0mm_Layout18x18_P0.8mm_Ball0.5mm_Pad0.4mm_NSMD +Package_BGA:BGA-324_15x15mm_Layout18x18_P0.8mm Package_BGA:BGA-324_19.0x19.0mm_Layout18x18_P1.0mm_Ball0.5mm_Pad0.4mm_NSMD Package_BGA:BGA-352_35.0x35.0mm_Layout26x26_P1.27mm Package_BGA:BGA-36_3.396x3.466mm_Layout6x6_P0.4mm_Ball0.25mm_Pad0.2mm_NSMD @@ -9535,7 +10007,7 @@ Package_BGA:BGA-400_21.0x21.0mm_Layout20x20_P1.0mm Package_BGA:BGA-484_23.0x23.0mm_Layout22x22_P1.0mm Package_BGA:BGA-48_8.0x9.0mm_Layout6x8_P0.8mm Package_BGA:BGA-529_19x19mm_Layout23x23_P0.8mm -Package_BGA:BGA-624_21.0x21.0mm_Layout25x25_P0.8mm +Package_BGA:BGA-624_21x21mm_Layout25x25_P0.8mm Package_BGA:BGA-625_21.0x21.0mm_Layout25x25_P0.8mm Package_BGA:BGA-64_9.0x9.0mm_Layout10x10_P0.8mm Package_BGA:BGA-672_27.0x27.0mm_Layout26x26_P1.0mm_Ball0.6mm_Pad0.5mm_NSMD @@ -9545,23 +10017,30 @@ Package_BGA:BGA-81_4.496x4.377mm_Layout9x9_P0.4mm_Ball0.25mm_Pad0.2mm_NSMD Package_BGA:BGA-90_8.0x13.0mm_Layout2x3x15_P0.8mm Package_BGA:BGA-96_9.0x13.0mm_Layout2x3x16_P0.8mm Package_BGA:BGA-9_1.6x1.6mm_Layout3x3_P0.5mm +Package_BGA:EPC_BGA-4_0.9x0.9mm_Layout2x2_P0.45mm Package_BGA:FB-BGA-484_23.0x23.0mm_Layout22x22_P1.0mm Package_BGA:FBGA-78_7.5x11mm_Layout2x3x13_P0.8mm Package_BGA:Fujitsu_WLP-15_2.28x3.092mm_Layout3x5_P0.4mm -Package_BGA:Infineon_LFBGA-292_17x17mm_Layout20x20_P0.8mm_Ball0.5mm_Pad0.35 -Package_BGA:Lattice_caBGA-381_17.0x17.0mm_Layout20x20_P0.8mm_Ball0.4mm_Pad0.4mm_NSMD -Package_BGA:Lattice_caBGA-381_17.0x17.0mm_Layout20x20_P0.8mm_Ball0.4mm_Pad0.6mm_SMD -Package_BGA:Lattice_caBGA-756_27.0x27.0mm_Layout32x32_P0.8mm +Package_BGA:Infineon_LFBGA-292_17x17mm_Layout20x20_P0.8mm +Package_BGA:Infineon_TFBGA-48_6x10mm_Layout6x8_P0.75mm +Package_BGA:Lattice_caBGA-381_17x17mm_Layout20x20_P0.8mm +Package_BGA:Lattice_caBGA-381_17x17mm_Layout20x20_P0.8mm_SMD +Package_BGA:Lattice_caBGA-756_27x27mm_Layout32x32_P0.8mm +Package_BGA:Lattice_iCE40_csBGA-132_8x8mm_Layout14x14_P0.5mm Package_BGA:LFBGA-100_10x10mm_Layout10x10_P0.8mm Package_BGA:LFBGA-144_10x10mm_Layout12x12_P0.8mm -Package_BGA:LFBGA-169_16x12mm_Layout28x14_P0.5mm_Ball0.3_Pad0.3mm_NSMD +Package_BGA:LFBGA-153_11.5x13mm_Layout14x14_P0.5mm +Package_BGA:LFBGA-169_12x16mm_Layout14x28_P0.5mm +Package_BGA:LFBGA-169_12x18mm_Layout14x28_P0.5mm +Package_BGA:LFBGA-169_14x18mm_Layout14x28_P0.5mm +Package_BGA:LFBGA-289_14x14mm_Layout17x17_P0.8mm Package_BGA:LFBGA-400_16x16mm_Layout20x20_P0.8mm Package_BGA:LFBGA-484_18x18mm_Layout22x22_P0.8mm Package_BGA:Linear_BGA-133_15.0x15.0mm_Layout12x12_P1.27mm -Package_BGA:MAPBGA_14x14mm_Layout17x17_P0.8mm -Package_BGA:MAPBGA_9x9mm_Layout17x17_P0.5mm +Package_BGA:MAPBGA-272_9x9mm_Layout17x17_P0.5mm +Package_BGA:MAPBGA-289_14x14mm_Layout17x17_P0.8mm Package_BGA:Maxim_WLP-12 -Package_BGA:Maxim_WLP-12_1.608x2.008mm_Layout4x3_P0.4mm_Ball0.27mm_Pad0.25mm_NSMD +Package_BGA:Maxim_WLP-12_2.008x1.608mm_Layout4x3_P0.4mm Package_BGA:Maxim_WLP-9_1.595x1.415_Layout3x3_P0.4mm_Ball0.27mm_Pad0.25mm_NSMD Package_BGA:Microchip_TFBGA-196_11x11mm_Layout14x14_P0.75mm_SMD Package_BGA:Micron_FBGA-78_7.5x10.6mm_Layout9x13_P0.8mm @@ -9570,26 +10049,32 @@ Package_BGA:Micron_FBGA-78_9x10.5mm_Layout9x13_P0.8mm Package_BGA:Micron_FBGA-96_7.5x13.5mm_Layout9x16_P0.8mm Package_BGA:Micron_FBGA-96_8x14mm_Layout9x16_P0.8mm Package_BGA:Micron_FBGA-96_9x14mm_Layout9x16_P0.8mm -Package_BGA:NXP_VFBGA-42_2.6x3mm_Layout6x7_P0.4mm_Ball0.25mm_Pad0.24mm +Package_BGA:NXP_VFBGA-42_2.6x3mm_Layout6x7_P0.4mm Package_BGA:ST_LFBGA-354_16x16mm_Layout19x19_P0.8mm Package_BGA:ST_LFBGA-448_18x18mm_Layout22x22_P0.8mm +Package_BGA:ST_TFBGA-169_7x7mm_Layout13x13_P0.5mm Package_BGA:ST_TFBGA-225_13x13mm_Layout15x15_P0.8mm Package_BGA:ST_TFBGA-257_10x10mm_Layout19x19_P0.5mmP0.65mm +Package_BGA:ST_TFBGA-320_11x11mm_Layout21x21_P0.5mm Package_BGA:ST_TFBGA-361_12x12mm_Layout23x23_P0.5mmP0.65mm Package_BGA:ST_UFBGA-121_6x6mm_Layout11x11_P0.5mm Package_BGA:ST_UFBGA-129_7x7mm_Layout13x13_P0.5mm +Package_BGA:ST_UFBGA-59_5x5mm_Layout8x8_P0.5mm Package_BGA:ST_UFBGA-73_5x5mm_Layout9x9_P0.5mm +Package_BGA:ST_UFBGA-81_5x5mm_Layout9x9_P0.5mm Package_BGA:ST_uTFBGA-36_3.6x3.6mm_Layout6x6_P0.5mm -Package_BGA:Texas_BGA-289_15.0x15.0mm_Layout17x17_P0.8mm_Ball0.5mm_Pad0.4mm +Package_BGA:Texas_BGA-289_15x15mm_Layout17x17_P0.8mm Package_BGA:Texas_DSBGA-10_1.36x1.86mm_Layout3x4_P0.5mm Package_BGA:Texas_DSBGA-12_1.36x1.86mm_Layout3x4_P0.5mm Package_BGA:Texas_DSBGA-16_2.39x2.39mm_Layout4x4_P0.5mm -Package_BGA:Texas_DSBGA-28_1.9x3.0mm_Layout4x7_P0.4mm +Package_BGA:Texas_DSBGA-28_1.9x3mm_Layout4x7_P0.4mm Package_BGA:Texas_DSBGA-49_3.33x3.488mm_Layout7x7_P0.4mm Package_BGA:Texas_DSBGA-5_0.822x1.116mm_Layout2x1x2_P0.4mm Package_BGA:Texas_DSBGA-5_0.8875x1.3875mm_Layout2x3_P0.5mm +Package_BGA:Texas_DSBGA-5_1.5855x1.6365mm_Layout3x2_P0.5mm Package_BGA:Texas_DSBGA-64_3.415x3.535mm_Layout8x8_P0.4mm Package_BGA:Texas_DSBGA-6_0.704x1.054mm_Layout2x3_P0.35mm +Package_BGA:Texas_DSBGA-6_0.757x1.01mm_Layout2x3_P0.35mm Package_BGA:Texas_DSBGA-6_0.855x1.255mm_Layout2x3_P0.4mm_LevelB Package_BGA:Texas_DSBGA-6_0.855x1.255mm_Layout2x3_P0.4mm_LevelC Package_BGA:Texas_DSBGA-6_0.95x1.488mm_Layout2x3_P0.4mm @@ -9599,18 +10084,30 @@ Package_BGA:Texas_DSBGA-8_0.9x1.9mm_Layout2x4_P0.5mm Package_BGA:Texas_DSBGA-8_1.43x1.41mm_Layout3x3_P0.5mm Package_BGA:Texas_DSBGA-8_1.5195x1.5195mm_Layout3x3_P0.5mm Package_BGA:Texas_DSBGA-9_1.4715x1.4715mm_Layout3x3_P0.5mm -Package_BGA:Texas_MicroStar_Junior_BGA-113_7.0x7.0mm_Layout12x12_P0.5mm +Package_BGA:Texas_DSBGA-9_1.62x1.58mm_Layout3x3_P0.5mm +Package_BGA:Texas_MicroStar_Junior_BGA-113_7x7mm_Layout12x12_P0.5mm Package_BGA:Texas_MicroStar_Junior_BGA-12_2.0x2.5mm_Layout4x3_P0.5mm Package_BGA:Texas_MicroStar_Junior_BGA-80_5.0x5.0mm_Layout9x9_P0.5mm +Package_BGA:Texas_PicoStar_BGA-4_0.758x0.758mm_Layout2x2_P0.4mm +Package_BGA:Texas_YFP0020_DSBGA-20_1.588x1.988mm_Layout4x5_P0.4mm Package_BGA:TFBGA-100_5.5x5.5mm_Layout10x10_P0.5mm Package_BGA:TFBGA-100_8x8mm_Layout10x10_P0.8mm Package_BGA:TFBGA-100_9.0x9.0mm_Layout10x10_P0.8mm Package_BGA:TFBGA-121_10x10mm_Layout11x11_P0.8mm +Package_BGA:TFBGA-169_9x9mm_Layout13x13_P0.65mm Package_BGA:TFBGA-216_13x13mm_Layout15x15_P0.8mm Package_BGA:TFBGA-225_10x10mm_Layout15x15_P0.65mm +Package_BGA:TFBGA-256_13x13mm_Layout16x16_P0.8mm Package_BGA:TFBGA-265_14x14mm_Layout17x17_P0.8mm +Package_BGA:TFBGA-289_9x9mm_Layout17x17_P0.5mm +Package_BGA:TFBGA-324_12x12mm_Layout18x18_P0.65mm Package_BGA:TFBGA-361_13x13mm_Layout19x19_P0.65mm +Package_BGA:TFBGA-48_6x10mm_Layout6x8_P0.75mm +Package_BGA:TFBGA-49_3x3mm_Layout7x7_P0.4mm +Package_BGA:TFBGA-576_16x16mm_Layout24x24_P0.65mm +Package_BGA:TFBGA-644_19x19mm_Layout28x28_P0.65mm Package_BGA:TFBGA-64_5x5mm_Layout8x8_P0.5mm +Package_BGA:TFBGA-81_5x5mm_Layout9x9_P0.5mm Package_BGA:UCBGA-36_2.5x2.5mm_Layout6x6_P0.4mm Package_BGA:UCBGA-49_3x3mm_Layout7x7_P0.4mm Package_BGA:UCBGA-81_4x4mm_Layout9x9_P0.4mm @@ -9626,11 +10123,11 @@ Package_BGA:UFBGA-32_4.0x4.0mm_Layout6x6_P0.5mm Package_BGA:UFBGA-64_5x5mm_Layout8x8_P0.5mm Package_BGA:VFBGA-100_7.0x7.0mm_Layout10x10_P0.65mm Package_BGA:VFBGA-49_5.0x5.0mm_Layout7x7_P0.65mm -Package_BGA:VFBGA-86_6x6mm_Layout10x10_P0.55mm_Ball0.25mm_Pad0.2mm -Package_BGA:WLP-4_0.73x0.73mm_Layout2x2_P0.35mm_Ball0.22mm_Pad0.2mm_NSMD +Package_BGA:VFBGA-86_6x6mm_Layout10x10_P0.55mm +Package_BGA:WLP-4_0.728x0.728mm_Layout2x2_P0.35mm Package_BGA:WLP-4_0.83x0.83mm_P0.4mm Package_BGA:WLP-4_0.86x0.86mm_P0.4mm -Package_BGA:WLP-9_1.448x1.468mm_Layout3x3_P0.4mm_Ball0.27mm_Pad0.25mm +Package_BGA:WLP-9_1.468x1.448mm_Layout3x3_P0.4mm Package_BGA:XBGA-121_10x10mm_Layout11x11_P0.8mm Package_BGA:XFBGA-121_8x8mm_Layout11x11_P0.65mm Package_BGA:XFBGA-36_3.5x3.5mm_Layout6x6_P0.5mm @@ -9681,9 +10178,15 @@ Package_CSP:Analog_LFCSP-16-1EP_4x4mm_P0.65mm_EP2.35x2.35mm Package_CSP:Analog_LFCSP-16-1EP_4x4mm_P0.65mm_EP2.35x2.35mm_ThermalVias Package_CSP:Analog_LFCSP-8-1EP_3x3mm_P0.5mm_EP1.53x1.85mm Package_CSP:Analog_LFCSP-UQ-10_1.3x1.6mm_P0.4mm +Package_CSP:Anpec_WLCSP-20_1.76x2.03mm_Layout4x5_P0.4mm +Package_CSP:Dialog_WLCSP-34_4.54x1.66mm_Layout17x4_P0.25x0.34mm +Package_CSP:DiodesInc_GEA20_WLCSP-20_1.7x2.1mm_Layout4x5_P0.4mm Package_CSP:Efinix_WLCSP-64_3.5353x3.3753mm_Layout8x8_P0.4mm +Package_CSP:Efinix_WLCSP-80_4.4567x3.5569mm_Layout10x8_P0.4mm +Package_CSP:LFCSP-10_2x2mm_P0.5mm Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.3x1.3mm Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.3x1.3mm_ThermalVias +Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.5x1.5mm Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.6x1.6mm Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.6x1.6mm_ThermalVias Package_CSP:LFCSP-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm @@ -9696,10 +10199,12 @@ Package_CSP:LFCSP-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm Package_CSP:LFCSP-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm_ThermalVias Package_CSP:LFCSP-16_3x3mm_P0.5mm Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.1x2.1mm +Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.1x2.1mm_ThermalVias Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.5x2.5mm Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.5x2.5mm_ThermalVias Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.6x2.6mm Package_CSP:LFCSP-20-1EP_4x4mm_P0.5mm_EP2.6x2.6mm_ThermalVias +Package_CSP:LFCSP-24-1EP_4x4mm_P0.5mm_EP0.5x0.5mm Package_CSP:LFCSP-24-1EP_4x4mm_P0.5mm_EP2.3x2.3mm Package_CSP:LFCSP-24-1EP_4x4mm_P0.5mm_EP2.3x2.3mm_ThermalVias Package_CSP:LFCSP-24-1EP_4x4mm_P0.5mm_EP2.5x2.5mm @@ -9721,6 +10226,8 @@ Package_CSP:LFCSP-40-1EP_6x6mm_P0.5mm_EP4.6x4.6mm Package_CSP:LFCSP-40-1EP_6x6mm_P0.5mm_EP4.6x4.6mm_ThermalVias Package_CSP:LFCSP-48-1EP_7x7mm_P0.5mm_EP4.1x4.1mm Package_CSP:LFCSP-48-1EP_7x7mm_P0.5mm_EP4.1x4.1mm_ThermalVias +Package_CSP:LFCSP-56-1EP_8x8mm_P0.5mm_EP6.6x6.6mm +Package_CSP:LFCSP-56-1EP_8x8mm_P0.5mm_EP6.6x6.6mm_ThermalVias Package_CSP:LFCSP-6-1EP_2x2mm_P0.65mm_EP1x1.6mm Package_CSP:LFCSP-64-1EP_9x9mm_P0.5mm_EP5.21x5.21mm Package_CSP:LFCSP-64-1EP_9x9mm_P0.5mm_EP5.21x5.21mm_ThermalVias @@ -9738,39 +10245,55 @@ Package_CSP:LFCSP-WD-10-1EP_3x3mm_P0.5mm_EP1.64x2.38mm Package_CSP:LFCSP-WD-10-1EP_3x3mm_P0.5mm_EP1.64x2.38mm_ThermalVias Package_CSP:LFCSP-WD-8-1EP_3x3mm_P0.65mm_EP1.6x2.44mm Package_CSP:LFCSP-WD-8-1EP_3x3mm_P0.65mm_EP1.6x2.44mm_ThermalVias -Package_CSP:Maxim_WLCSP-35_3.0x2.17mm_Layout7x5_P0.4mm_Ball0.27mm_Pad0.25mm -Package_CSP:Nexperia_WLCSP-15_6-3-6_2.37x1.17mm_Layout6x3_P0.4mm +Package_CSP:Macronix_WLCSP-12_2.02x2.09mm_Layout4x4_P0.5mm +Package_CSP:Maxim_WLCSP-35_2.998x2.168mm_Layout7x5_P0.4mm +Package_CSP:Nexperia_WLCSP-15_2.37x1.17mm_Layout6x3_P0.4mmP0.8mm +Package_CSP:OnSemi_ODCSP36_BGA-36_6.13x6.13mm_Layout6x6_P1.0mm +Package_CSP:OnSemi_ODCSP36_BGA-36_6.13x6.13mm_Layout6x6_P1.0mm_ManualAssembly +Package_CSP:OnSemi_ODCSP8_BGA-8_3.16x3.16mm_Layout3x3_P1.26mm +Package_CSP:OnSemi_ODCSP8_BGA-8_3.16x3.16mm_Layout3x3_P1.26mm_ManualAssembly Package_CSP:pSemi_CSP-16_1.64x2.04mm_P0.4mm Package_CSP:pSemi_CSP-16_1.64x2.04mm_P0.4mm_Pad0.18mm -Package_CSP:ST_WLCSP-100_4.40x4.38mm_Layout10x10_P0.4mm_Offcenter Package_CSP:ST_WLCSP-100_4.437x4.456mm_Layout10x10_P0.4mm +Package_CSP:ST_WLCSP-100_4.4x4.38mm_Layout10x10_P0.4mm_Offcenter Package_CSP:ST_WLCSP-100_Die422 Package_CSP:ST_WLCSP-100_Die446 Package_CSP:ST_WLCSP-100_Die452 Package_CSP:ST_WLCSP-100_Die461 +Package_CSP:ST_WLCSP-101_3.86x3.79mm_Layout11x19_P0.35mm_Stagger Package_CSP:ST_WLCSP-104_Die437 -Package_CSP:ST_WLCSP-115_3.73x4.15mm_P0.35mm_Stagger -Package_CSP:ST_WLCSP-115_4.63x4.15mm_P0.4mm_Stagger +Package_CSP:ST_WLCSP-115_3.73x4.15mm_Layout11x21_P0.35mm_Stagger +Package_CSP:ST_WLCSP-115_4.63x4.15mm_Layout21x11_P0.4mm_Stagger +Package_CSP:ST_WLCSP-12_1.7x1.42mm_Layout4x6_P0.35mm_Stagger Package_CSP:ST_WLCSP-132_4.57x4.37mm_Layout12x11_P0.35mm Package_CSP:ST_WLCSP-143_Die419 Package_CSP:ST_WLCSP-143_Die449 Package_CSP:ST_WLCSP-144_Die470 +Package_CSP:ST_WLCSP-150_5.38x5.47mm_Layout13x23_P0.4mm_Stagger Package_CSP:ST_WLCSP-156_4.96x4.64mm_Layout13x12_P0.35mm Package_CSP:ST_WLCSP-168_Die434 Package_CSP:ST_WLCSP-180_Die451 -Package_CSP:ST_WLCSP-18_1.86x2.14mm_P0.4mm_Stagger -Package_CSP:ST_WLCSP-20_1.94x2.40mm_Layout4x5_P0.4mm -Package_CSP:ST_WLCSP-25_2.30x2.48mm_Layout5x5_P0.4mm +Package_CSP:ST_WLCSP-18_1.86x2.14mm_Layout7x5_P0.4mm_Stagger +Package_CSP:ST_WLCSP-208_5.38x5.47mm_Layout26x16_P0.35mm_Stagger +Package_CSP:ST_WLCSP-208_5.8x5.6mm_Layout26x16_P0.35mm_Stagger +Package_CSP:ST_WLCSP-20_1.94x2.4mm_Layout4x5_P0.4mm +Package_CSP:ST_WLCSP-25_2.33x2.24mm_Layout5x5_P0.4mm +Package_CSP:ST_WLCSP-25_2.3x2.48mm_Layout5x5_P0.4mm Package_CSP:ST_WLCSP-25_Die425 Package_CSP:ST_WLCSP-25_Die444 Package_CSP:ST_WLCSP-25_Die457 +Package_CSP:ST_WLCSP-27_2.34x2.55mm_Layout9x6_P0.4mm_Stagger +Package_CSP:ST_WLCSP-27_2.55x2.34mm_P0.40mm_Stagger Package_CSP:ST_WLCSP-36_2.58x3.07mm_Layout6x6_P0.4mm Package_CSP:ST_WLCSP-36_Die417 Package_CSP:ST_WLCSP-36_Die440 Package_CSP:ST_WLCSP-36_Die445 Package_CSP:ST_WLCSP-36_Die458 +Package_CSP:ST_WLCSP-41_2.98x2.76mm_Layout13x7_P0.4mm_Stagger +Package_CSP:ST_WLCSP-42_2.82x2.93mm_P0.40mm_Stagger +Package_CSP:ST_WLCSP-42_2.93x2.82mm_Layout12x7_P0.4mm_Stagger Package_CSP:ST_WLCSP-49_3.15x3.13mm_Layout7x7_P0.4mm -Package_CSP:ST_WLCSP-49_3.30x3.38mm_Layout7x7_P0.4mm_Offcenter +Package_CSP:ST_WLCSP-49_3.3x3.38mm_Layout7x7_P0.4mm_Offcenter Package_CSP:ST_WLCSP-49_Die423 Package_CSP:ST_WLCSP-49_Die431 Package_CSP:ST_WLCSP-49_Die433 @@ -9779,7 +10302,8 @@ Package_CSP:ST_WLCSP-49_Die438 Package_CSP:ST_WLCSP-49_Die439 Package_CSP:ST_WLCSP-49_Die447 Package_CSP:ST_WLCSP-49_Die448 -Package_CSP:ST_WLCSP-52_3.09x3.15mm_P0.4mm_Stagger +Package_CSP:ST_WLCSP-52_3.09x3.15mm_Layout13x8_P0.4mm_Stagger +Package_CSP:ST_WLCSP-56_3.38x3.38mm_Layout14x8_P0.4mm_Stagger Package_CSP:ST_WLCSP-63_Die427 Package_CSP:ST_WLCSP-64_3.56x3.52mm_Layout8x8_P0.4mm Package_CSP:ST_WLCSP-64_Die414 @@ -9791,33 +10315,45 @@ Package_CSP:ST_WLCSP-64_Die442 Package_CSP:ST_WLCSP-64_Die462 Package_CSP:ST_WLCSP-66_Die411 Package_CSP:ST_WLCSP-66_Die432 +Package_CSP:ST_WLCSP-72_3.38x3.38mm_Layout16x9_P0.35mm_Stagger Package_CSP:ST_WLCSP-72_Die415 +Package_CSP:ST_WLCSP-80_3.5x3.27mm_Layout10x16_P0.35mm_Stagger_Offcenter Package_CSP:ST_WLCSP-81_4.02x4.27mm_Layout9x9_P0.4mm Package_CSP:ST_WLCSP-81_4.36x4.07mm_Layout9x9_P0.4mm Package_CSP:ST_WLCSP-81_Die415 Package_CSP:ST_WLCSP-81_Die421 Package_CSP:ST_WLCSP-81_Die463 -Package_CSP:ST_WLCSP-90_4.20x3.95mm_P0.4mm_Stagger +Package_CSP:ST_WLCSP-90_4.2x3.95mm_Layout18x10_P0.4mm_Stagger Package_CSP:ST_WLCSP-90_Die413 -Package_CSP:WLCSP-12_1.403x1.555mm_P0.4mm_Stagger +Package_CSP:ST_WLCSP-99_4.42x3.77mm_Layout11x9_P0.35mm +Package_CSP:WLCSP-12_1.403x1.555mm_Layout6x4_P0.4mm_Stagger Package_CSP:WLCSP-12_1.56x1.56mm_P0.4mm -Package_CSP:WLCSP-16_1.409x1.409mm_P0.35mm -Package_CSP:WLCSP-16_2.225x2.17mm_P0.5mm +Package_CSP:WLCSP-16_1.409x1.409mm_Layout4x4_P0.35mm +Package_CSP:WLCSP-16_2.225x2.17mm_Layout4x4_P0.5mm Package_CSP:WLCSP-16_4x4_B2.17x2.32mm_P0.5mm Package_CSP:WLCSP-20_1.934x2.434mm_Layout4x5_P0.4mm Package_CSP:WLCSP-20_1.994x1.609mm_Layout5x4_P0.4mm Package_CSP:WLCSP-20_1.994x1.94mm_Layout4x5_P0.4mm Package_CSP:WLCSP-36_2.374x2.459mm_Layout6x6_P0.35mm Package_CSP:WLCSP-36_2.82x2.67mm_Layout6x6_P0.4mm -Package_CSP:WLCSP-4-X1-WLB0909-4_0.89x0.89mm_P0.5mm -Package_CSP:WLCSP-4_0.64x0.64mm_P0.35mm +Package_CSP:WLCSP-4_0.64x0.64mm_Layout2x2_P0.35mm +Package_CSP:WLCSP-4_0.89x0.89mm_Layout2x2_P0.5mm Package_CSP:WLCSP-56_3.170x3.444mm_Layout7x8_P0.4mm Package_CSP:WLCSP-6_1.4x1.0mm_P0.4mm Package_CSP:WLCSP-81_4.41x3.76mm_P0.4mm -Package_CSP:WLCSP-8_1.551x2.284mm_P0.5mm +Package_CSP:WLCSP-8_1.551x2.284mm_Layout2x4_P0.5mm Package_CSP:WLCSP-8_1.58x1.63x0.35mm_Layout3x5_P0.35x0.4mm_Ball0.25mm_Pad0.25mm_NSMD +Package_CSP:WLCSP-9_1.21x1.22mm_Layout3x3_P0.4mm Package_DFN_QFN:AMS_QFN-4-1EP_2x2mm_P0.95mm_EP0.7x1.6mm +Package_DFN_QFN:Analog_QFN-28-36-2EP_5x6mm_P0.5mm +Package_DFN_QFN:AO_AOZ666xDI_DFN-8-1EP_3x3mm_P0.65mm_EP1.25x2.7mm Package_DFN_QFN:AO_DFN-8-1EP_5.55x5.2mm_P1.27mm_EP4.12x4.6mm +Package_DFN_QFN:ArtInChip_QFN-100-1EP_12x12mm_P0.4mm_EP7.4x7.4mm +Package_DFN_QFN:ArtInChip_QFN-100-1EP_12x12mm_P0.4mm_EP7.4x7.4mm_ThermalVias +Package_DFN_QFN:ArtInChip_QFN-68-1EP_7x7mm_P0.35mm_EP5.49x5.49mm +Package_DFN_QFN:ArtInChip_QFN-68-1EP_7x7mm_P0.35mm_EP5.49x5.49mm_ThermalVias +Package_DFN_QFN:ArtInChip_QFN-88-1EP_10x10mm_P0.4mm_EP6.74x6.74mm +Package_DFN_QFN:ArtInChip_QFN-88-1EP_10x10mm_P0.4mm_EP6.74x6.74mm_ThermalVias Package_DFN_QFN:Cypress_QFN-56-1EP_8x8mm_P0.5mm_EP6.22x6.22mm_ThermalVias Package_DFN_QFN:DFN-10-1EP_2.6x2.6mm_P0.5mm_EP1.3x2.2mm Package_DFN_QFN:DFN-10-1EP_2.6x2.6mm_P0.5mm_EP1.3x2.2mm_ThermalVias @@ -9831,8 +10367,8 @@ Package_DFN_QFN:DFN-10-1EP_3x3mm_P0.5mm_EP1.75x2.7mm Package_DFN_QFN:DFN-10-1EP_3x3mm_P0.5mm_EP1.7x2.5mm Package_DFN_QFN:DFN-10_2x2mm_P0.4mm Package_DFN_QFN:DFN-12-1EP_2x3mm_P0.45mm_EP0.64x2.4mm -Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.45mm_EP1.66x2.38mm -Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.5mm_EP1.4x2.55mm +Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.45mm_EP1.65x2.38mm +Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.45mm_EP1.65x2.38mm_ThermalVias Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.5mm_EP1.6x2.5mm Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.5mm_EP1.6x2.5mm_ThermalVias Package_DFN_QFN:DFN-12-1EP_3x3mm_P0.5mm_EP2.05x2.86mm @@ -9843,7 +10379,6 @@ Package_DFN_QFN:DFN-14-1EP_3x3mm_P0.4mm_EP1.78x2.35mm Package_DFN_QFN:DFN-14-1EP_3x4.5mm_P0.65mm_EP1.65x4.25mm Package_DFN_QFN:DFN-14-1EP_3x4.5mm_P0.65mm_EP1.65x4.25mm_ThermalVias Package_DFN_QFN:DFN-14-1EP_3x4mm_P0.5mm_EP1.7x3.3mm -Package_DFN_QFN:DFN-14-1EP_4x4mm_P0.5mm_EP2.86x3.6mm Package_DFN_QFN:DFN-14_1.35x3.5mm_P0.5mm Package_DFN_QFN:DFN-16-1EP_3x4mm_P0.45mm_EP1.7x3.3mm Package_DFN_QFN:DFN-16-1EP_3x5mm_P0.5mm_EP1.66x4.4mm @@ -9856,36 +10391,44 @@ Package_DFN_QFN:DFN-22-1EP_5x6mm_P0.5mm_EP3.14x4.3mm Package_DFN_QFN:DFN-24-1EP_4x7mm_P0.5mm_EP2.64x6.44mm Package_DFN_QFN:DFN-32-1EP_4x7mm_P0.4mm_EP2.64x6.44mm Package_DFN_QFN:DFN-44-1EP_5x8.9mm_P0.4mm_EP3.7x8.4mm +Package_DFN_QFN:DFN-4_5x7mm_P5.08mm Package_DFN_QFN:DFN-6-1EP_1.2x1.2mm_P0.4mm_EP0.3x0.94mm_PullBack Package_DFN_QFN:DFN-6-1EP_2x1.6mm_P0.5mm_EP1.15x1.3mm Package_DFN_QFN:DFN-6-1EP_2x1.8mm_P0.5mm_EP1.2x1.6mm Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.5mm_EP0.61x1.42mm Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.5mm_EP0.6x1.37mm +Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.5mm_EP0.7x1.6mm Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.65mm_EP1.01x1.7mm Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.65mm_EP1x1.6mm Package_DFN_QFN:DFN-6-1EP_3x2mm_P0.5mm_EP1.65x1.35mm Package_DFN_QFN:DFN-6-1EP_3x3mm_P0.95mm_EP1.7x2.6mm Package_DFN_QFN:DFN-6-1EP_3x3mm_P1mm_EP1.5x2.4mm Package_DFN_QFN:DFN-6_1.3x1.2mm_P0.4mm -Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.45mm_EP0.64x1.38mm +Package_DFN_QFN:DFN-6_1.6x1.3mm_P0.4mm +Package_DFN_QFN:DFN-8-1EP_1.5x1.5mm_P0.4mm_EP0.7x1.2mm +Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.45mm_EP0.64x1.37mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.6x1.2mm -Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.7x1.3mm +Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.86x1.55mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.8x1.6mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.3mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.5mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.6mm +Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.7mm Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP1.05x1.75mm -Package_DFN_QFN:DFN-8-1EP_2x3mm_P0.5mm_EP0.56x2.15mm Package_DFN_QFN:DFN-8-1EP_2x3mm_P0.5mm_EP0.61x2.2mm Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.45mm_EP1.66x1.36mm Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.5mm_EP1.36x1.46mm Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.5mm_EP1.3x1.5mm Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.5mm_EP1.75x1.45mm Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.5mm_EP1.7x1.4mm +Package_DFN_QFN:DFN-8-1EP_3x2mm_P0.5mm_EP1.7x1.6mm Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.5mm_EP1.65x2.38mm Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.5mm_EP1.65x2.38mm_ThermalVias Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.5mm_EP1.66x2.38mm +Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.5mm_EP1.7x2.4mm +Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.5mm_EP1.7x2.4mm_ThermalVias Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.65mm_EP1.55x2.4mm +Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.65mm_EP1.5x2.25mm Package_DFN_QFN:DFN-8-1EP_3x3mm_P0.65mm_EP1.7x2.05mm Package_DFN_QFN:DFN-8-1EP_4x4mm_P0.8mm_EP2.39x2.21mm Package_DFN_QFN:DFN-8-1EP_4x4mm_P0.8mm_EP2.3x3.24mm @@ -9900,6 +10443,9 @@ Package_DFN_QFN:DHVQFN-20-1EP_2.5x4.5mm_P0.5mm_EP1x3mm Package_DFN_QFN:Diodes_DFN1006-3 Package_DFN_QFN:Diodes_UDFN-10_1.0x2.5mm_P0.5mm Package_DFN_QFN:Diodes_UDFN2020-6_Type-F +Package_DFN_QFN:Diodes_UDFN3810-9_TYPE_B +Package_DFN_QFN:Diodes_ZL32_TQFN-32-1EP_3x6mm_P0.4mm_EP1.25x3.5mm +Package_DFN_QFN:EPC_QFN-13-3EP_3.5x5mm_P0.5mm Package_DFN_QFN:HVQFN-16-1EP_3x3mm_P0.5mm_EP1.5x1.5mm Package_DFN_QFN:HVQFN-24-1EP_4x4mm_P0.5mm_EP2.1x2.1mm Package_DFN_QFN:HVQFN-24-1EP_4x4mm_P0.5mm_EP2.5x2.5mm @@ -9910,6 +10456,8 @@ Package_DFN_QFN:HVQFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mm Package_DFN_QFN:HVQFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mm_ThermalVias Package_DFN_QFN:HVQFN-40-1EP_6x6mm_P0.5mm_EP4.1x4.1mm Package_DFN_QFN:HVQFN-40-1EP_6x6mm_P0.5mm_EP4.1x4.1mm_ThermalVias +Package_DFN_QFN:HXQFN-16-1EP_3x3mm_P0.5mm_EP1.85x1.85mm +Package_DFN_QFN:HXQFN-16-1EP_3x3mm_P0.5mm_EP1.85x1.85mm_ThermalVias Package_DFN_QFN:Infineon_MLPQ-16-14-1EP_4x4mm_P0.5mm Package_DFN_QFN:Infineon_MLPQ-40-32-1EP_7x7mm_P0.5mm Package_DFN_QFN:Infineon_MLPQ-48-1EP_7x7mm_P0.5mm_EP5.15x5.15mm @@ -9921,6 +10469,9 @@ Package_DFN_QFN:Linear_UGK52_QFN-46-52 Package_DFN_QFN:LQFN-10-1EP_2x2mm_P0.5mm_EP0.7x0.7mm Package_DFN_QFN:LQFN-12-1EP_2x2mm_P0.5mm_EP0.7x0.7mm Package_DFN_QFN:LQFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm +Package_DFN_QFN:Maxim_FC2QFN-14_2.5x2.5mm_P0.5mm +Package_DFN_QFN:Maxim_TDFN-12-1EP_3x3mm_P0.5mm_EP1.7x2.5mm +Package_DFN_QFN:Maxim_TDFN-12-1EP_3x3mm_P0.5mm_EP1.7x2.5mm_ThermalVias Package_DFN_QFN:Maxim_TDFN-6-1EP_3x3mm_P0.95mm_EP1.5x2.3mm Package_DFN_QFN:Micrel_MLF-8-1EP_2x2mm_P0.5mm_EP0.6x1.2mm Package_DFN_QFN:Micrel_MLF-8-1EP_2x2mm_P0.5mm_EP0.6x1.2mm_ThermalVias @@ -9939,12 +10490,15 @@ Package_DFN_QFN:MLF-6-1EP_1.6x1.6mm_P0.5mm_EP0.5x1.26mm Package_DFN_QFN:MLF-8-1EP_3x3mm_P0.65mm_EP1.55x2.3mm Package_DFN_QFN:MLF-8-1EP_3x3mm_P0.65mm_EP1.55x2.3mm_ThermalVias Package_DFN_QFN:MLPQ-16-1EP_4x4mm_P0.65mm_EP2.8x2.8mm +Package_DFN_QFN:MPS_QFN-12_2x2mm_P0.4mm Package_DFN_QFN:Nordic_AQFN-73-1EP_7x7mm_P0.5mm Package_DFN_QFN:Nordic_AQFN-94-1EP_7x7mm_P0.4mm Package_DFN_QFN:NXP_LQFN-48-1EP_7x7mm_P0.5mm_EP3.5x3.5mm_16xMask0.45x0.45 Package_DFN_QFN:NXP_LQFN-48-1EP_7x7mm_P0.5mm_EP3.5x3.5mm_16xMask0.45x0.45_ThermalVias +Package_DFN_QFN:OnSemi_DFN-14-1EP_4x4mm_P0.5mm_EP2.7x3.4mm Package_DFN_QFN:OnSemi_DFN-8_2x2mm_P0.5mm Package_DFN_QFN:OnSemi_SIP-38-6EP-9x7mm_P0.65mm_EP1.2x1.2mm +Package_DFN_QFN:OnSemi_UDFN-16-1EP_1.35x3.3mm_P0.4mm_EP0.4x2.8mm Package_DFN_QFN:OnSemi_UDFN-8_1.2x1.8mm_P0.4mm Package_DFN_QFN:OnSemi_VCT-28_3.5x3.5mm_P0.4mm Package_DFN_QFN:OnSemi_XDFN-10_1.35x2.2mm_P0.4mm @@ -9957,8 +10511,11 @@ Package_DFN_QFN:QFN-12-1EP_3x3mm_P0.5mm_EP1.65x1.65mm Package_DFN_QFN:QFN-12-1EP_3x3mm_P0.5mm_EP1.65x1.65mm_ThermalVias Package_DFN_QFN:QFN-12-1EP_3x3mm_P0.5mm_EP1.6x1.6mm Package_DFN_QFN:QFN-12-1EP_3x3mm_P0.5mm_EP1.6x1.6mm_ThermalVias +Package_DFN_QFN:QFN-16-1EP_1.8x2.6mm_P0.4mm_EP0.7x1.5mm +Package_DFN_QFN:QFN-16-1EP_1.8x2.6mm_P0.4mm_EP0.7x1.5mm_ThermalVias Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.45x1.45mm Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.45x1.45mm_ThermalVias +Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.675x1.675mm Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.75x1.75mm Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.75x1.75mm_ThermalVias Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm @@ -10003,6 +10560,7 @@ Package_DFN_QFN:QFN-24-1EP_3x4mm_P0.4mm_EP1.65x2.65mm Package_DFN_QFN:QFN-24-1EP_3x4mm_P0.4mm_EP1.65x2.65mm_ThermalVias Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.15x2.15mm Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.15x2.15mm_ThermalVias +Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.5x2.5mm Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.65x2.65mm Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.65x2.65mm_ThermalVias Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.6x2.6mm @@ -10029,14 +10587,22 @@ Package_DFN_QFN:QFN-28-1EP_3x6mm_P0.5mm_EP1.7x4.75mm Package_DFN_QFN:QFN-28-1EP_3x6mm_P0.5mm_EP1.7x4.75mm_ThermalVias Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.45mm_EP2.4x2.4mm Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.45mm_EP2.4x2.4mm_ThermalVias +Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.45mm_EP2.6x2.6mm Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.3x2.3mm Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.3x2.3mm_ThermalVias Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.4x2.4mm Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.4x2.4mm_ThermalVias Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.6x2.6mm Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.6x2.6mm_ThermalVias +Package_DFN_QFN:QFN-28-1EP_4x4mm_P0.4mm_EP2.7x2.7mm Package_DFN_QFN:QFN-28-1EP_4x5mm_P0.5mm_EP2.65x3.65mm Package_DFN_QFN:QFN-28-1EP_4x5mm_P0.5mm_EP2.65x3.65mm_ThermalVias +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP2.7x2.7mm +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP2.7x2.7mm_ThermalVias +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.1x3.1mm +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.1x3.1mm_ThermalVias +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.25x3.25mm +Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.25x3.25mm_ThermalVias Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mm Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mm_ThermalVias Package_DFN_QFN:QFN-28-1EP_5x5mm_P0.5mm_EP3.75x3.75mm @@ -10120,6 +10686,8 @@ Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.45x5.45mm Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.45x5.45mm_ThermalVias Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm_ThermalVias +Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.7x5.7mm +Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.7x5.7mm_ThermalVias Package_DFN_QFN:QFN-48-1EP_8x8mm_P0.5mm_EP6.2x6.2mm Package_DFN_QFN:QFN-48-1EP_8x8mm_P0.5mm_EP6.2x6.2mm_ThermalVias Package_DFN_QFN:QFN-52-1EP_7x8mm_P0.5mm_EP5.41x6.45mm @@ -10141,6 +10709,8 @@ Package_DFN_QFN:QFN-56-1EP_8x8mm_P0.5mm_EP5.9x5.9mm Package_DFN_QFN:QFN-56-1EP_8x8mm_P0.5mm_EP5.9x5.9mm_ThermalVias Package_DFN_QFN:QFN-56-1EP_8x8mm_P0.5mm_EP6.1x6.1mm Package_DFN_QFN:QFN-56-1EP_8x8mm_P0.5mm_EP6.1x6.1mm_ThermalVias +Package_DFN_QFN:QFN-60-1EP_7x7mm_P0.4mm_EP3.4x3.4mm +Package_DFN_QFN:QFN-60-1EP_7x7mm_P0.4mm_EP3.4x3.4mm_ThermalVias Package_DFN_QFN:QFN-64-1EP_8x8mm_P0.4mm_EP6.5x6.5mm Package_DFN_QFN:QFN-64-1EP_8x8mm_P0.4mm_EP6.5x6.5mm_ThermalVias Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP3.4x3.4mm @@ -10159,6 +10729,8 @@ Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.45x5.45mm Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.45x5.45mm_ThermalVias Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.4x5.4mm Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.4x5.4mm_ThermalVias +Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.7x5.7mm +Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP5.7x5.7mm_ThermalVias Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP6x6mm Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP6x6mm_ThermalVias Package_DFN_QFN:QFN-64-1EP_9x9mm_P0.5mm_EP7.15x7.15mm @@ -10181,10 +10753,15 @@ Package_DFN_QFN:QFN-76-1EP_9x9mm_P0.4mm_EP3.8x3.8mm Package_DFN_QFN:QFN-76-1EP_9x9mm_P0.4mm_EP3.8x3.8mm_ThermalVias Package_DFN_QFN:QFN-76-1EP_9x9mm_P0.4mm_EP5.81x6.31mm Package_DFN_QFN:QFN-76-1EP_9x9mm_P0.4mm_EP5.81x6.31mm_ThermalVias +Package_DFN_QFN:QFN-80-1EP_10x10mm_P0.4mm_EP3.4x3.4mm +Package_DFN_QFN:QFN-80-1EP_10x10mm_P0.4mm_EP3.4x3.4mm_ThermalVias Package_DFN_QFN:Qorvo_DFN-8-1EP_2x2mm_P0.5mm +Package_DFN_QFN:Qorvo_TQFN66-48-1EP_6x6mm_P0.4mm_EP4.2x4.2mm +Package_DFN_QFN:Qorvo_TQFN66-48-1EP_6x6mm_P0.4mm_EP4.2x4.2mm_ThermalVias Package_DFN_QFN:ROHM_DFN0604-3 Package_DFN_QFN:SiliconLabs_QFN-20-1EP_3x3mm_P0.5mm_EP1.8x1.8mm Package_DFN_QFN:SiliconLabs_QFN-20-1EP_3x3mm_P0.5mm_EP1.8x1.8mm_ThermalVias +Package_DFN_QFN:ST_UFDFPN-12-1EP_3x3mm_P0.5mm_EP1.4x2.55mm Package_DFN_QFN:ST_UFQFPN-20_3x3mm_P0.5mm Package_DFN_QFN:ST_UQFN-6L_1.5x1.7mm_P0.5mm Package_DFN_QFN:TDFN-10-1EP_2x3mm_P0.5mm_EP0.9x2mm @@ -10206,71 +10783,86 @@ Package_DFN_QFN:Texas_B3QFN-14-1EP_5x5.5mm_P0.65mm Package_DFN_QFN:Texas_B3QFN-14-1EP_5x5.5mm_P0.65mm_ThermalVia Package_DFN_QFN:Texas_DRB0008A Package_DFN_QFN:Texas_MOF0009A +Package_DFN_QFN:Texas_PicoStar_DFN-3_0.69x0.60mm Package_DFN_QFN:Texas_QFN-41_10x16mm Package_DFN_QFN:Texas_R-PUQFN-N10 Package_DFN_QFN:Texas_R-PUQFN-N12 -Package_DFN_QFN:Texas_R-PWQFN-N28_EP2.1x3.1mm -Package_DFN_QFN:Texas_R-PWQFN-N28_EP2.1x3.1mm_ThermalVias -Package_DFN_QFN:Texas_RGE0024C_EP2.1x2.1mm -Package_DFN_QFN:Texas_RGE0024C_EP2.1x2.1mm_ThermalVias -Package_DFN_QFN:Texas_RGE0024H_EP2.7x2.7mm -Package_DFN_QFN:Texas_RGE0024H_EP2.7x2.7mm_ThermalVias -Package_DFN_QFN:Texas_RGV_S-PVQFN-N16_EP2.1x2.1mm -Package_DFN_QFN:Texas_RGV_S-PVQFN-N16_EP2.1x2.1mm_ThermalVias +Package_DFN_QFN:Texas_REF0038A_WQFN-38-2EP_6x4mm_P0.4 +Package_DFN_QFN:Texas_RGC0064B_VQFN-64-1EP_9x9mm_P0.5mm_EP4.25x4.25mm +Package_DFN_QFN:Texas_RGC0064B_VQFN-64-1EP_9x9mm_P0.5mm_EP4.25x4.25mm_ThermalVias +Package_DFN_QFN:Texas_RGE0024C_VQFN-24-1EP_4x4mm_P0.5mm_EP2.1x2.1mm +Package_DFN_QFN:Texas_RGE0024C_VQFN-24-1EP_4x4mm_P0.5mm_EP2.1x2.1mm_ThermalVias +Package_DFN_QFN:Texas_RGE0024H_VQFN-24-1EP_4x4mm_P0.5mm_EP2.7x2.7mm +Package_DFN_QFN:Texas_RGE0024H_VQFN-24-1EP_4x4mm_P0.5mm_EP2.7x2.7mm_ThermalVias +Package_DFN_QFN:Texas_RGP0020D_VQFN-20-1EP_4x4mm_P0.5mm_EP2.7x2.7mm +Package_DFN_QFN:Texas_RGP0020D_VQFN-20-1EP_4x4mm_P0.5mm_EP2.7x2.7mm_ThermalVias +Package_DFN_QFN:Texas_RGP0020H_VQFN-20-1EP_4x4mm_P0.5mm_EP2.4x2.4mm +Package_DFN_QFN:Texas_RGP0020H_VQFN-20-1EP_4x4mm_P0.5mm_EP2.4x2.4mm_ThermalVias +Package_DFN_QFN:Texas_RGV0016A_VQFN-16-1EP_4x4mm_P0.65mm_EP2.1x2.1mm +Package_DFN_QFN:Texas_RGV0016A_VQFN-16-1EP_4x4mm_P0.65mm_EP2.1x2.1mm_ThermalVias +Package_DFN_QFN:Texas_RGW0020A_VQFN-20-1EP_5x5mm_P0.65mm_EP3.15x3.15mm +Package_DFN_QFN:Texas_RGW0020A_VQFN-20-1EP_5x5mm_P0.65mm_EP3.15x3.15mm_ThermalVias Package_DFN_QFN:Texas_RGY_R-PVQFN-N16_EP2.05x2.55mm Package_DFN_QFN:Texas_RGY_R-PVQFN-N16_EP2.05x2.55mm_ThermalVias Package_DFN_QFN:Texas_RGY_R-PVQFN-N20_EP2.05x3.05mm Package_DFN_QFN:Texas_RGY_R-PVQFN-N20_EP2.05x3.05mm_ThermalVias Package_DFN_QFN:Texas_RGY_R-PVQFN-N24_EP2.05x3.1mm Package_DFN_QFN:Texas_RGY_R-PVQFN-N24_EP2.05x3.1mm_ThermalVias +Package_DFN_QFN:Texas_RGZ0048A_VQFN-48-1EP_7x7mm_P0.5mm_EP5.15x5.15mm +Package_DFN_QFN:Texas_RGZ0048A_VQFN-48-1EP_7x7mm_P0.5mm_EP5.15x5.15mm_ThermalVias +Package_DFN_QFN:Texas_RHA0040B_VQFN-40-1EP_6x6mm_P0.5mm_EP4.15x4.15mm +Package_DFN_QFN:Texas_RHA0040B_VQFN-40-1EP_6x6mm_P0.5mm_EP4.15x4.15mm_ThermalVias +Package_DFN_QFN:Texas_RHA0040D_VQFN-40-1EP_6x6mm_P0.5mm_EP2.9x2.9mm +Package_DFN_QFN:Texas_RHA0040D_VQFN-40-1EP_6x6mm_P0.5mm_EP2.9x2.9mm_ThermalVias +Package_DFN_QFN:Texas_RHA0040E_VQFN-40-1EP_6x6mm_P0.5mm_EP3.52x2.62mm +Package_DFN_QFN:Texas_RHA0040E_VQFN-40-1EP_6x6mm_P0.5mm_EP3.52x2.62mm_ThermalVias +Package_DFN_QFN:Texas_RHA_VQFN-40-1EP_6x6mm_P0.5mm_EP4.6x4.6mm +Package_DFN_QFN:Texas_RHA_VQFN-40-1EP_6x6mm_P0.5mm_EP4.6x4.6mm_ThermalVias +Package_DFN_QFN:Texas_RHB0032E_VQFN-32-1EP_5x5mm_P0.5mm_EP3.45x3.45mm +Package_DFN_QFN:Texas_RHB0032E_VQFN-32-1EP_5x5mm_P0.5mm_EP3.45x3.45mm_ThermalVias +Package_DFN_QFN:Texas_RHB0032M_VQFN-32-1EP_5x5mm_P0.5mm_EP2.1x2.1mm +Package_DFN_QFN:Texas_RHB0032M_VQFN-32-1EP_5x5mm_P0.5mm_EP2.1x2.1mm_ThermalVias +Package_DFN_QFN:Texas_RHH0036C_VQFN-36-1EP_6x6mm_P0.5mm_EP4.4x4.4mm +Package_DFN_QFN:Texas_RHH0036C_VQFN-36-1EP_6x6mm_P0.5mm_EP4.4x4.4mm_ThermalVias Package_DFN_QFN:Texas_RJE0020A_VQFN-20-1EP_3x3mm_P0.45mm_EP0.675x0.76mm Package_DFN_QFN:Texas_RJE0020A_VQFN-20-1EP_3x3mm_P0.45mm_EP0.675x0.76mm_ThermalVias +Package_DFN_QFN:Texas_RMG0012A_WQFN-12_1.8x1.8mm_P0.4mm +Package_DFN_QFN:Texas_RMQ0024A_WQFN-24-1EP_3x3mm_P0.4mm_EP1.9x1.9mm +Package_DFN_QFN:Texas_RMQ0024A_WQFN-24-1EP_3x3mm_P0.4mm_EP1.9x1.9mm_ThermalVias Package_DFN_QFN:Texas_RNN0018A -Package_DFN_QFN:Texas_RUM0016A_EP2.6x2.6mm -Package_DFN_QFN:Texas_RUM0016A_EP2.6x2.6mm_ThermalVias +Package_DFN_QFN:Texas_RNP0030B_WQFN-30-1EP_4x6mm_P0.5mm_EP1.8x4.5mm +Package_DFN_QFN:Texas_RNP0030B_WQFN-30-1EP_4x6mm_P0.5mm_EP1.8x4.5mm_ThermalVias +Package_DFN_QFN:Texas_RPU0010A_VQFN-HR-10_2x2mm_P0.5mm +Package_DFN_QFN:Texas_RSA_VQFN-16-1EP_4x4mm_P0.65mm_EP2.7x2.7mm +Package_DFN_QFN:Texas_RSA_VQFN-16-1EP_4x4mm_P0.65mm_EP2.7x2.7mm_ThermalVias +Package_DFN_QFN:Texas_RSN_WQFN-32-1EP_4x4mm_P0.4mm_EP2.8x2.8mm +Package_DFN_QFN:Texas_RSN_WQFN-32-1EP_4x4mm_P0.4mm_EP2.8x2.8mm_ThermalVias +Package_DFN_QFN:Texas_RSW0010A_UQFN-10_1.4x1.8mm_P0.4mm +Package_DFN_QFN:Texas_RTE0016D_WQFN-16-1EP_3x3mm_P0.5mm_EP0.8x0.8mm +Package_DFN_QFN:Texas_RTE0016D_WQFN-16-1EP_3x3mm_P0.5mm_EP0.8x0.8mm_ThermalVias +Package_DFN_QFN:Texas_RTE_WQFN-16-1EP_3x3mm_P0.5mm_EP1.2x0.8mm +Package_DFN_QFN:Texas_RTE_WQFN-16-1EP_3x3mm_P0.5mm_EP1.2x0.8mm_ThermalVias +Package_DFN_QFN:Texas_RTW_WQFN-24-1EP_4x4mm_P0.5mm_EP2.7x2.7mm +Package_DFN_QFN:Texas_RTW_WQFN-24-1EP_4x4mm_P0.5mm_EP2.7x2.7mm_ThermalVias +Package_DFN_QFN:Texas_RTY_WQFN-16-1EP_4x4mm_P0.65mm_EP2.1x2.1mm +Package_DFN_QFN:Texas_RTY_WQFN-16-1EP_4x4mm_P0.65mm_EP2.1x2.1mm_ThermalVias +Package_DFN_QFN:Texas_RUM0016A_WQFN-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm +Package_DFN_QFN:Texas_RUM0016A_WQFN-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm_ThermalVias +Package_DFN_QFN:Texas_RUN0010A_WQFN-10_2x2mm_P0.5mm +Package_DFN_QFN:Texas_RVA_VQFN-16-1EP_3.5x3.5mm_P0.5mm_EP2.14x2.14mm +Package_DFN_QFN:Texas_RVA_VQFN-16-1EP_3.5x3.5mm_P0.5mm_EP2.14x2.14mm_ThermalVias +Package_DFN_QFN:Texas_RVE0028A_VQFN-28-1EP_3.5x4.5mm_P0.4mm_EP2.1x3.1mm +Package_DFN_QFN:Texas_RVE0028A_VQFN-28-1EP_3.5x4.5mm_P0.4mm_EP2.1x3.1mm_ThermalVias Package_DFN_QFN:Texas_RWH0032A Package_DFN_QFN:Texas_RWH0032A_ThermalVias +Package_DFN_QFN:Texas_RWU0007A_VQFN-7_2x2mm_P0.5mm Package_DFN_QFN:Texas_S-PDSO-N10_EP1.2x2mm Package_DFN_QFN:Texas_S-PDSO-N10_EP1.2x2mm_ThermalVias Package_DFN_QFN:Texas_S-PVQFN-N14 Package_DFN_QFN:Texas_S-PVQFN-N14_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N16_EP2.7x2.7mm -Package_DFN_QFN:Texas_S-PVQFN-N16_EP2.7x2.7mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N20_EP2.4x2.4mm -Package_DFN_QFN:Texas_S-PVQFN-N20_EP2.4x2.4mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N20_EP2.7x2.7mm -Package_DFN_QFN:Texas_S-PVQFN-N20_EP2.7x2.7mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N20_EP3.15x3.15mm -Package_DFN_QFN:Texas_S-PVQFN-N20_EP3.15x3.15mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N24_EP2.1x2.1mm -Package_DFN_QFN:Texas_S-PVQFN-N24_EP2.1x2.1mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N32_EP3.45x3.45mm -Package_DFN_QFN:Texas_S-PVQFN-N32_EP3.45x3.45mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N36_EP4.4x4.4mm -Package_DFN_QFN:Texas_S-PVQFN-N36_EP4.4x4.4mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N40_EP2.9x2.9mm -Package_DFN_QFN:Texas_S-PVQFN-N40_EP2.9x2.9mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N40_EP3.52x2.62mm -Package_DFN_QFN:Texas_S-PVQFN-N40_EP3.52x2.62mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N40_EP4.15x4.15mm -Package_DFN_QFN:Texas_S-PVQFN-N40_EP4.15x4.15mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N40_EP4.6x4.6mm -Package_DFN_QFN:Texas_S-PVQFN-N40_EP4.6x4.6mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N48_EP5.15x5.15mm -Package_DFN_QFN:Texas_S-PVQFN-N48_EP5.15x5.15mm_ThermalVias -Package_DFN_QFN:Texas_S-PVQFN-N64_EP4.25x4.25mm -Package_DFN_QFN:Texas_S-PVQFN-N64_EP4.25x4.25mm_ThermalVias Package_DFN_QFN:Texas_S-PWQFN-N100_EP5.5x5.5mm Package_DFN_QFN:Texas_S-PWQFN-N100_EP5.5x5.5mm_ThermalVias -Package_DFN_QFN:Texas_S-PWQFN-N16_EP1.2x0.8mm -Package_DFN_QFN:Texas_S-PWQFN-N16_EP1.2x0.8mm_ThermalVias -Package_DFN_QFN:Texas_S-PWQFN-N16_EP2.1x2.1mm -Package_DFN_QFN:Texas_S-PWQFN-N16_EP2.1x2.1mm_ThermalVias Package_DFN_QFN:Texas_S-PWQFN-N20 -Package_DFN_QFN:Texas_S-PWQFN-N24_EP2.7x2.7mm -Package_DFN_QFN:Texas_S-PWQFN-N24_EP2.7x2.7mm_ThermalVias -Package_DFN_QFN:Texas_S-PWQFN-N32_EP2.8x2.8mm -Package_DFN_QFN:Texas_S-PWQFN-N32_EP2.8x2.8mm_ThermalVias Package_DFN_QFN:Texas_S-PX2QFN-14 Package_DFN_QFN:Texas_UQFN-10_1.5x2mm_P0.5mm Package_DFN_QFN:Texas_VQFN-HR-12_2x2.5mm_P0.5mm @@ -10278,11 +10870,11 @@ Package_DFN_QFN:Texas_VQFN-HR-12_2x2.5mm_P0.5mm_ThermalVias Package_DFN_QFN:Texas_VQFN-HR-20_3x2.5mm_P0.5mm_RQQ0011A Package_DFN_QFN:Texas_VQFN-RHL-20 Package_DFN_QFN:Texas_VQFN-RHL-20_ThermalVias -Package_DFN_QFN:Texas_VSON-HR-8_1.5x2mm_P0.5mm -Package_DFN_QFN:Texas_WQFN-10_2x2mm_P0.5mm +Package_DFN_QFN:Texas_VQFN-RNR0011A-11 Package_DFN_QFN:Texas_WQFN-MR-100_3x3-DapStencil Package_DFN_QFN:Texas_WQFN-MR-100_ThermalVias_3x3-DapStencil Package_DFN_QFN:Texas_X2QFN-12_1.6x1.6mm_P0.4mm +Package_DFN_QFN:Texas_X2QFN-RUE-12_1.4x2mm_P0.4mm Package_DFN_QFN:TQFN-16-1EP_3x3mm_P0.5mm_EP1.23x1.23mm Package_DFN_QFN:TQFN-16-1EP_3x3mm_P0.5mm_EP1.23x1.23mm_ThermalVias Package_DFN_QFN:TQFN-16-1EP_3x3mm_P0.5mm_EP1.6x1.6mm @@ -10318,8 +10910,11 @@ Package_DFN_QFN:TQFN-32-1EP_5x5mm_P0.5mm_EP3.4x3.4mm Package_DFN_QFN:TQFN-32-1EP_5x5mm_P0.5mm_EP3.4x3.4mm_ThermalVias Package_DFN_QFN:TQFN-40-1EP_5x5mm_P0.4mm_EP3.5x3.5mm Package_DFN_QFN:TQFN-40-1EP_5x5mm_P0.4mm_EP3.5x3.5mm_ThermalVias +Package_DFN_QFN:TQFN-44-1EP_7x7mm_P0.5mm_EP4.7x4.7mm +Package_DFN_QFN:TQFN-44-1EP_7x7mm_P0.5mm_EP4.7x4.7mm_ThermalVias Package_DFN_QFN:TQFN-48-1EP_7x7mm_P0.5mm_EP5.1x5.1mm Package_DFN_QFN:TQFN-48-1EP_7x7mm_P0.5mm_EP5.1x5.1mm_ThermalVias +Package_DFN_QFN:UDC-QFN-20-4EP_3x4mm_P0.5mm_EP0.41x0.25mm Package_DFN_QFN:UDFN-10_1.35x2.6mm_P0.5mm Package_DFN_QFN:UDFN-4-1EP_1x1mm_P0.65mm_EP0.48x0.48mm Package_DFN_QFN:UDFN-9_1.0x3.8mm_P0.5mm @@ -10332,6 +10927,9 @@ Package_DFN_QFN:UQFN-16-1EP_3x3mm_P0.5mm_EP1.75x1.75mm Package_DFN_QFN:UQFN-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm Package_DFN_QFN:UQFN-16-1EP_4x4mm_P0.65mm_EP2.6x2.6mm_ThermalVias Package_DFN_QFN:UQFN-16-1EP_4x4mm_P0.65mm_EP2.7x2.7mm +Package_DFN_QFN:UQFN-16_1.8x2.6mm_P0.4mm +Package_DFN_QFN:UQFN-20-1EP_3x3mm_P0.4mm_EP1.7x1.7mm +Package_DFN_QFN:UQFN-20-1EP_3x3mm_P0.4mm_EP1.7x1.7mm_ThermalVias Package_DFN_QFN:UQFN-20-1EP_3x3mm_P0.4mm_EP1.85x1.85mm Package_DFN_QFN:UQFN-20-1EP_3x3mm_P0.4mm_EP1.85x1.85mm_ThermalVias Package_DFN_QFN:UQFN-20-1EP_4x4mm_P0.5mm_EP2.8x2.8mm @@ -10348,6 +10946,10 @@ Package_DFN_QFN:UQFN-48-1EP_6x6mm_P0.4mm_EP4.62x4.62mm_ThermalVias Package_DFN_QFN:VDFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.7mm Package_DFN_QFN:Vishay_PowerPAK_MLP44-24L Package_DFN_QFN:Vishay_PowerPAK_MLP44-24L_ThermalVias +Package_DFN_QFN:VQFN-100-1EP_12x12mm_P0.4mm_EP8x8mm +Package_DFN_QFN:VQFN-100-1EP_12x12mm_P0.4mm_EP8x8mm_ThermalVias +Package_DFN_QFN:VQFN-12-1EP_4x4mm_P0.8mm_EP2.1x2.1mm +Package_DFN_QFN:VQFN-12-1EP_4x4mm_P0.8mm_EP2.1x2.1mm_ThermalVias Package_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.1x1.1mm Package_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.1x1.1mm_ThermalVias Package_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.45x1.45mm @@ -10370,12 +10972,20 @@ Package_DFN_QFN:VQFN-28-1EP_4x4mm_P0.45mm_EP2.4x2.4mm Package_DFN_QFN:VQFN-28-1EP_4x4mm_P0.45mm_EP2.4x2.4mm_ThermalVias Package_DFN_QFN:VQFN-28-1EP_4x5mm_P0.5mm_EP2.55x3.55mm Package_DFN_QFN:VQFN-28-1EP_4x5mm_P0.5mm_EP2.55x3.55mm_ThermalVias +Package_DFN_QFN:VQFN-28-1EP_5x5mm_P0.5mm_EP3.25x3.25mm +Package_DFN_QFN:VQFN-28-1EP_5x5mm_P0.5mm_EP3.25x3.25mm_ThermalVias +Package_DFN_QFN:VQFN-32-1EP_4x4mm_P0.4mm_EP2.8x2.8mm +Package_DFN_QFN:VQFN-32-1EP_4x4mm_P0.4mm_EP2.8x2.8mm_ThermalVias Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.15x3.15mm Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.15x3.15mm_ThermalVias Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mm Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mm_ThermalVias Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.5x3.5mm Package_DFN_QFN:VQFN-32-1EP_5x5mm_P0.5mm_EP3.5x3.5mm_ThermalVias +Package_DFN_QFN:VQFN-40-1EP_5x5mm_P0.4mm_EP3.5x3.5mm +Package_DFN_QFN:VQFN-40-1EP_5x5mm_P0.4mm_EP3.5x3.5mm_ThermalVias +Package_DFN_QFN:VQFN-40-1EP_5x5mm_P0.4mm_EP3.6x3.6mm +Package_DFN_QFN:VQFN-40-1EP_5x5mm_P0.4mm_EP3.6x3.6mm_ThermalVias Package_DFN_QFN:VQFN-46-1EP_5x6mm_P0.4mm_EP2.8x3.8mm Package_DFN_QFN:VQFN-46-1EP_5x6mm_P0.4mm_EP2.8x3.8mm_ThermalVias Package_DFN_QFN:VQFN-48-1EP_6x6mm_P0.4mm_EP4.1x4.1mm @@ -10389,6 +10999,7 @@ Package_DFN_QFN:VQFN-64-1EP_9x9mm_P0.5mm_EP5.4x5.4mm_ThermalVias Package_DFN_QFN:VQFN-64-1EP_9x9mm_P0.5mm_EP7.15x7.15mm Package_DFN_QFN:VQFN-64-1EP_9x9mm_P0.5mm_EP7.15x7.15mm_ThermalVias Package_DFN_QFN:W-PDFN-8-1EP_6x5mm_P1.27mm_EP3x3mm +Package_DFN_QFN:WCH_QFN-16-1EP_3x3mm_P0.5mm_EP1.8x1.8mm Package_DFN_QFN:WDFN-10-1EP_3x3mm_P0.5mm_EP1.8x2.5mm Package_DFN_QFN:WDFN-10-1EP_3x3mm_P0.5mm_EP1.8x2.5mm_ThermalVias Package_DFN_QFN:WDFN-12-1EP_3x3mm_P0.45mm_EP1.7x2.5mm @@ -10399,7 +11010,10 @@ Package_DFN_QFN:WDFN-8-1EP_3x2mm_P0.5mm_EP1.3x1.4mm Package_DFN_QFN:WDFN-8-1EP_4x3mm_P0.65mm_EP2.4x1.8mm Package_DFN_QFN:WDFN-8-1EP_4x3mm_P0.65mm_EP2.4x1.8mm_ThermalVias Package_DFN_QFN:WDFN-8-1EP_6x5mm_P1.27mm_EP3.4x4mm +Package_DFN_QFN:WDFN-8-1EP_8x6mm_P1.27mm_EP6x4.8mm +Package_DFN_QFN:WDFN-8-1EP_8x6mm_P1.27mm_EP6x4.8mm_ThermalVias Package_DFN_QFN:WDFN-8_2x2mm_P0.5mm +Package_DFN_QFN:WFDFPN-8-1EP_3x2mm_P0.5mm_EP1.25x1.35mm Package_DFN_QFN:WQFN-14-1EP_2.5x2.5mm_P0.5mm_EP1.45x1.45mm Package_DFN_QFN:WQFN-14-1EP_2.5x2.5mm_P0.5mm_EP1.45x1.45mm_ThermalVias Package_DFN_QFN:WQFN-16-1EP_3x3mm_P0.5mm_EP1.68x1.68mm @@ -10420,6 +11034,38 @@ Package_DFN_QFN:WQFN-24-1EP_4x4mm_P0.5mm_EP2.6x2.6mm_ThermalVias Package_DFN_QFN:WQFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mm Package_DFN_QFN:WQFN-42-1EP_3.5x9mm_P0.5mm_EP2.05x7.55mm Package_DFN_QFN:WQFN-42-1EP_3.5x9mm_P0.5mm_EP2.05x7.55mm_ThermalVias +Package_DIP:CERDIP-14_W7.62mm_SideBrazed +Package_DIP:CERDIP-14_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-14_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-14_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-16_W7.62mm_SideBrazed +Package_DIP:CERDIP-16_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-16_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-16_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-18_W7.62mm_SideBrazed +Package_DIP:CERDIP-18_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-18_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-18_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-20_W7.62mm_SideBrazed +Package_DIP:CERDIP-20_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-20_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-20_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-22_W7.62mm_SideBrazed +Package_DIP:CERDIP-22_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-22_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-22_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-24_W7.62mm_SideBrazed +Package_DIP:CERDIP-24_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-24_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-24_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-28_W7.62mm_SideBrazed +Package_DIP:CERDIP-28_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-28_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-28_W7.62mm_SideBrazed_Socket +Package_DIP:CERDIP-8_W7.62mm_SideBrazed +Package_DIP:CERDIP-8_W7.62mm_SideBrazed_LongPads +Package_DIP:CERDIP-8_W7.62mm_SideBrazed_LongPads_Socket +Package_DIP:CERDIP-8_W7.62mm_SideBrazed_Socket Package_DIP:DIP-10_W10.16mm Package_DIP:DIP-10_W10.16mm_LongPads Package_DIP:DIP-10_W7.62mm @@ -10476,6 +11122,11 @@ Package_DIP:DIP-22_W7.62mm_SMDSocket_SmallPads Package_DIP:DIP-22_W7.62mm_Socket Package_DIP:DIP-22_W7.62mm_Socket_LongPads Package_DIP:DIP-22_W8.89mm_SMDSocket_LongPads +Package_DIP:DIP-24_18.0mmx34.29mm_W15.24mm +Package_DIP:DIP-24_18.0mmx34.29mm_W15.24mm_LongPads +Package_DIP:DIP-24_18.0mmx34.29mm_W15.24mm_SMDSocket_SmallPads +Package_DIP:DIP-24_18.0mmx34.29mm_W15.24mm_Socket +Package_DIP:DIP-24_18.0mmx34.29mm_W15.24mm_Socket_LongPads Package_DIP:DIP-24_W10.16mm Package_DIP:DIP-24_W10.16mm_LongPads Package_DIP:DIP-24_W10.16mm_SMDSocket_SmallPads @@ -10593,6 +11244,8 @@ Package_DIP:DIP-8_W7.62mm_Socket Package_DIP:DIP-8_W7.62mm_Socket_LongPads Package_DIP:DIP-8_W8.89mm_SMDSocket_LongPads Package_DIP:Fairchild_LSOP-8 +Package_DIP:IXYS_Flatpak-8_6.3x9.7mm_P2.54mm +Package_DIP:IXYS_SMD-8_6.3x9.7mm_P2.54mm Package_DIP:PowerIntegrations_eDIP-12B Package_DIP:PowerIntegrations_PDIP-8B Package_DIP:PowerIntegrations_PDIP-8C @@ -10685,6 +11338,7 @@ Package_DirectFET:DirectFET_SH Package_DirectFET:DirectFET_SJ Package_DirectFET:DirectFET_SQ Package_DirectFET:DirectFET_ST +Package_LCC:Analog_LCC-8_5x5mm_P1.27mm Package_LCC:PLCC-20 Package_LCC:PLCC-20_SMD-Socket Package_LCC:PLCC-20_THT-Socket @@ -10731,9 +11385,11 @@ Package_LGA:LGA-8_8x6.2mm_P1.27mm Package_LGA:LGA-8_8x6mm_P1.27mm Package_LGA:Linear_LGA-133_15.0x15.0mm_Layout12x12_P1.27mm Package_LGA:MPS_LGA-18-10EP_12x12mm_P3.3mm +Package_LGA:Nordic_nRF9160-SIxx_LGA-102-59EP_16.0x10.5mm_P0.5mm Package_LGA:NXP_LGA-8_3x5mm_P1.25mm_H1.1mm Package_LGA:NXP_LGA-8_3x5mm_P1.25mm_H1.2mm -Package_LGA:Rohm_MLGA010V020A_LGA-10_2x2mm_P0.45mm_LayoutBorder_3x2y +Package_LGA:Rohm_MLGA010V020A_LGA-10_2x2mm_P0.45mm_LayoutBorder2x3y +Package_LGA:ST_CCLGA-7L_2.8x2.8mm_P1.15mm_H1.95mm Package_LGA:ST_HLGA-10_2.5x2.5mm_P0.6mm_LayoutBorder3x2y Package_LGA:ST_HLGA-10_2x2mm_P0.5mm_LayoutBorder3x2y Package_LGA:Texas_SIL0008D_MicroSiP-8-1EP_2.8x3mm_P0.65mm_EP1.1x1.9mm @@ -10756,6 +11412,8 @@ Package_QFP:HTQFP-64-1EP_10x10mm_P0.5mm_EP8x8mm_Mask4.4x4.4mm_ThermalVias Package_QFP:LQFP-100_14x14mm_P0.5mm Package_QFP:LQFP-128_14x14mm_P0.4mm Package_QFP:LQFP-128_14x20mm_P0.5mm +Package_QFP:LQFP-144-1EP_20x20mm_P0.5mm_EP6.5x6.5mm +Package_QFP:LQFP-144-1EP_20x20mm_P0.5mm_EP6.5x6.5mm_ThermalVias Package_QFP:LQFP-144_20x20mm_P0.5mm Package_QFP:LQFP-160_24x24mm_P0.5mm Package_QFP:LQFP-176_20x20mm_P0.4mm @@ -10783,6 +11441,7 @@ Package_QFP:LQFP-64_7x7mm_P0.4mm Package_QFP:LQFP-80_10x10mm_P0.4mm Package_QFP:LQFP-80_12x12mm_P0.5mm Package_QFP:LQFP-80_14x14mm_P0.65mm +Package_QFP:Microchip_PQFP-44_10x10mm_P0.8mm Package_QFP:MQFP-44_10x10mm_P0.8mm Package_QFP:PQFP-100_14x20mm_P0.65mm Package_QFP:PQFP-112_20x20mm_P0.65mm @@ -10790,11 +11449,13 @@ Package_QFP:PQFP-132_24x24mm_P0.635mm Package_QFP:PQFP-132_24x24mm_P0.635mm_i386 Package_QFP:PQFP-144_28x28mm_P0.65mm Package_QFP:PQFP-160_28x28mm_P0.65mm +Package_QFP:PQFP-168_28x28mm_P0.65mm Package_QFP:PQFP-208_28x28mm_P0.5mm Package_QFP:PQFP-240_32.1x32.1mm_P0.5mm Package_QFP:PQFP-256_28x28mm_P0.4mm Package_QFP:PQFP-32_5x5mm_P0.5mm Package_QFP:PQFP-44_10x10mm_P0.8mm +Package_QFP:PQFP-64_14x14mm_P0.8mm Package_QFP:PQFP-80_14x20mm_P0.8mm Package_QFP:Texas_PHP0048E_HTQFP-48-1EP_7x7mm_P0.5mm_EP6.5x6.5mm_Mask3.62x3.62mm Package_QFP:Texas_PHP0048E_HTQFP-48-1EP_7x7mm_P0.5mm_EP6.5x6.5mm_Mask3.62x3.62mm_ThermalVias @@ -10817,6 +11478,8 @@ Package_QFP:TQFP-48-1EP_7x7mm_P0.5mm_EP5x5mm_ThermalVias Package_QFP:TQFP-48_7x7mm_P0.5mm Package_QFP:TQFP-52-1EP_10x10mm_P0.65mm_EP6.5x6.5mm Package_QFP:TQFP-52-1EP_10x10mm_P0.65mm_EP6.5x6.5mm_ThermalVias +Package_QFP:TQFP-64-1EP_10x10mm_P0.5mm_EP5.305x5.305mm +Package_QFP:TQFP-64-1EP_10x10mm_P0.5mm_EP5.305x5.305mm_ThermalVias Package_QFP:TQFP-64-1EP_10x10mm_P0.5mm_EP8x8mm Package_QFP:TQFP-64_10x10mm_P0.5mm Package_QFP:TQFP-64_14x14mm_P0.8mm @@ -10844,6 +11507,9 @@ Package_SIP:SIP9_Housing_BigPads Package_SIP:SLA704XM Package_SIP:STK672-040-E Package_SIP:STK672-080-E +Package_SO:Analog_MSOP-12-16-1EP_3x4.039mm_P0.5mm_EP1.651x2.845mm +Package_SO:Analog_MSOP-12-16-1EP_3x4.039mm_P0.5mm_EP1.651x2.845mm_ThermalVias +Package_SO:Analog_MSOP-12-16_3x4.039mm_P0.5mm Package_SO:Diodes_PSOP-8 Package_SO:Diodes_SO-8EP Package_SO:ETSSOP-20-1EP_4.4x6.5mm_P0.65mm_EP3x4.2mm @@ -10893,8 +11559,14 @@ Package_SO:HTSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.5mm_Mask2.4x6.17mm_ThermalVia Package_SO:HTSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.5mm_ThermalVias Package_SO:HTSSOP-32-1EP_6.1x11mm_P0.65mm_EP5.2x11mm_Mask4.11x4.36mm Package_SO:HTSSOP-32-1EP_6.1x11mm_P0.65mm_EP5.2x11mm_Mask4.11x4.36mm_ThermalVias +Package_SO:HTSSOP-38-1EP_4.4x9.7mm_P0.5mm_EP1.5x3.3mm +Package_SO:HTSSOP-38-1EP_4.4x9.7mm_P0.5mm_EP1.5x3.3mm_ThermalVias +Package_SO:HTSSOP-38-1EP_4.4x9.7mm_P0.5mm_EP2.74x4.75mm +Package_SO:HTSSOP-38-1EP_4.4x9.7mm_P0.5mm_EP2.74x4.75mm_ThermalVias Package_SO:HTSSOP-38-1EP_6.1x12.5mm_P0.65mm_EP5.2x12.5mm_Mask3.39x6.35mm Package_SO:HTSSOP-38-1EP_6.1x12.5mm_P0.65mm_EP5.2x12.5mm_Mask3.39x6.35mm_ThermalVias +Package_SO:HTSSOP-44-1EP_6.1x14mm_P0.635mm_EP5.2x14mm_Mask4.31x8.26mm +Package_SO:HTSSOP-44-1EP_6.1x14mm_P0.635mm_EP5.2x14mm_Mask4.31x8.26mm_ThermalVias Package_SO:HTSSOP-44_6.1x14mm_P0.635mm_TopEP4.14x7.01mm Package_SO:HTSSOP-56-1EP_6.1x14mm_P0.5mm_EP3.61x6.35mm Package_SO:HVSSOP-10-1EP_3x3mm_P0.5mm_EP1.57x1.88mm @@ -10912,12 +11584,15 @@ Package_SO:Infineon_PG-DSO-20-85 Package_SO:Infineon_PG-DSO-20-85_ThermalVias Package_SO:Infineon_PG-DSO-20-87 Package_SO:Infineon_PG-DSO-20-U03_7.5x12.8mm +Package_SO:Infineon_PG-DSO-8-24_4x5mm Package_SO:Infineon_PG-DSO-8-27_3.9x4.9mm_EP2.65x3mm Package_SO:Infineon_PG-DSO-8-27_3.9x4.9mm_EP2.65x3mm_ThermalVias Package_SO:Infineon_PG-DSO-8-43 +Package_SO:Infineon_PG-DSO-8-59_7.5x6.3mm Package_SO:Infineon_PG-TSDSO-14-22 -Package_SO:Linear_MSOP-12-16-1EP_3x4mm_P0.5mm -Package_SO:Linear_MSOP-12-16_3x4mm_P0.5mm +Package_SO:Infineon_SOIC-20W_7.6x12.8mm_P1.27mm +Package_SO:Linear_HTSSOP-31-38-1EP_4.4x9.7mm_P0.5mm_EP2.74x4.75mm +Package_SO:Linear_HTSSOP-31-38-1EP_4.4x9.7mm_P0.5mm_EP2.74x4.75mm_ThermalVias Package_SO:MFSOP6-4_4.4x3.6mm_P1.27mm Package_SO:MFSOP6-5_4.4x3.6mm_P1.27mm Package_SO:MSOP-10-1EP_3x3mm_P0.5mm_EP1.68x1.88mm @@ -10927,18 +11602,12 @@ Package_SO:MSOP-10-1EP_3x3mm_P0.5mm_EP1.73x1.98mm_ThermalVias Package_SO:MSOP-10-1EP_3x3mm_P0.5mm_EP2.2x3.1mm_Mask1.83x1.89mm Package_SO:MSOP-10-1EP_3x3mm_P0.5mm_EP2.2x3.1mm_Mask1.83x1.89mm_ThermalVias Package_SO:MSOP-10_3x3mm_P0.5mm -Package_SO:MSOP-12-16-1EP_3x4mm_P0.5mm_EP1.65x2.85mm -Package_SO:MSOP-12-16-1EP_3x4mm_P0.5mm_EP1.65x2.85mm_ThermalVias -Package_SO:MSOP-12-16_3x4mm_P0.5mm -Package_SO:MSOP-12-1EP_3x4mm_P0.65mm_EP1.65x2.85mm -Package_SO:MSOP-12-1EP_3x4mm_P0.65mm_EP1.65x2.85mm_ThermalVias -Package_SO:MSOP-12_3x4mm_P0.65mm +Package_SO:MSOP-12-1EP_3x4.039mm_P0.65mm_EP1.651x2.845mm +Package_SO:MSOP-12-1EP_3x4.039mm_P0.65mm_EP1.651x2.845mm_ThermalVias +Package_SO:MSOP-12_3x4.039mm_P0.65mm Package_SO:MSOP-16-1EP_3x4.039mm_P0.5mm_EP1.651x2.845mm Package_SO:MSOP-16-1EP_3x4.039mm_P0.5mm_EP1.651x2.845mm_ThermalVias -Package_SO:MSOP-16-1EP_3x4mm_P0.5mm_EP1.65x2.85mm -Package_SO:MSOP-16-1EP_3x4mm_P0.5mm_EP1.65x2.85mm_ThermalVias Package_SO:MSOP-16_3x4.039mm_P0.5mm -Package_SO:MSOP-16_3x4mm_P0.5mm Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP1.5x1.8mm Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP1.5x1.8mm_ThermalVias Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP1.68x1.88mm @@ -10950,6 +11619,8 @@ Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP1.95x2.15mm_ThermalVias Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP2.5x3mm_Mask1.73x2.36mm Package_SO:MSOP-8-1EP_3x3mm_P0.65mm_EP2.5x3mm_Mask1.73x2.36mm_ThermalVias Package_SO:MSOP-8_3x3mm_P0.65mm +Package_SO:NXP_HTSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.2x3.4mm +Package_SO:NXP_HTSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.2x3.4mm_ThermalVias Package_SO:OnSemi_Micro8 Package_SO:ONSemi_SO-8FL_488AA Package_SO:PowerIntegrations_eSOP-12B @@ -10959,11 +11630,14 @@ Package_SO:PowerIntegrations_SO-8C Package_SO:PowerPAK_SO-8L_Single Package_SO:PowerPAK_SO-8_Dual Package_SO:PowerPAK_SO-8_Single +Package_SO:PowerSSO-16-1EP_3.9x4.9mm_P0.5mm_EP2.5x3.61mm +Package_SO:PowerSSO-16-1EP_3.9x4.9mm_P0.5mm_EP2.5x3.61mm_ThermalVias Package_SO:PSOP-44_16.9x27.17mm_P1.27mm Package_SO:QSOP-16_3.9x4.9mm_P0.635mm Package_SO:QSOP-20_3.9x8.7mm_P0.635mm Package_SO:QSOP-24_3.9x8.7mm_P0.635mm -Package_SO:SC-74-6_1.5x2.9mm_P0.95mm +Package_SO:QSOP-28_3.9x9.9mm_P0.635mm +Package_SO:Renesas_SOP-32_11.4x20.75mm_P1.27mm Package_SO:SO-14_3.9x8.65mm_P1.27mm Package_SO:SO-14_5.3x10.2mm_P1.27mm Package_SO:SO-16_3.9x9.9mm_P1.27mm @@ -10978,11 +11652,12 @@ Package_SO:SO-4_4.4x3.6mm_P2.54mm Package_SO:SO-4_4.4x3.9mm_P2.54mm Package_SO:SO-4_4.4x4.3mm_P2.54mm Package_SO:SO-4_7.6x3.6mm_P2.54mm +Package_SO:SO-5-6_4.55x3.7mm_P1.27mm Package_SO:SO-5_4.4x3.6mm_P1.27mm Package_SO:SO-6L_10x3.84mm_P1.27mm Package_SO:SO-6_4.4x3.6mm_P1.27mm Package_SO:SO-8_3.9x4.9mm_P1.27mm -Package_SO:SO-8_5.3x6.2mm_P1.27mm +Package_SO:SOIC-10_3.9x4.9mm_P1mm Package_SO:SOIC-14-16_3.9x9.9mm_P1.27mm Package_SO:SOIC-14W_7.5x9mm_P1.27mm Package_SO:SOIC-14_3.9x8.7mm_P1.27mm @@ -10998,6 +11673,7 @@ Package_SO:SOIC-20W_7.5x15.4mm_P1.27mm Package_SO:SOIC-24W_7.5x15.4mm_P1.27mm Package_SO:SOIC-28W_7.5x17.9mm_P1.27mm Package_SO:SOIC-28W_7.5x18.7mm_P1.27mm +Package_SO:SOIC-32_7.518x20.777mm_P1.27mm Package_SO:SOIC-4_4.55x2.6mm_P1.27mm Package_SO:SOIC-4_4.55x3.7mm_P2.54mm Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.29x3mm @@ -11013,36 +11689,49 @@ Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.62x3.51mm_ThermalVias Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.95x4.9mm_Mask2.71x3.4mm Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.95x4.9mm_Mask2.71x3.4mm_ThermalVias Package_SO:SOIC-8-N7_3.9x4.9mm_P1.27mm -Package_SO:SOIC-8W_5.3x5.3mm_P1.27mm Package_SO:SOIC-8_3.9x4.9mm_P1.27mm -Package_SO:SOIC-8_5.23x5.23mm_P1.27mm -Package_SO:SOIC-8_5.275x5.275mm_P1.27mm +Package_SO:SOIC-8_5.3x5.3mm_P1.27mm +Package_SO:SOIC-8_5.3x6.2mm_P1.27mm Package_SO:SOIC-8_7.5x5.85mm_P1.27mm -Package_SO:SOJ-36_10.16x23.49mm_P1.27mm +Package_SO:SOJ-24_7.62x15.875mm_P1.27mm +Package_SO:SOJ-28_10.16x18.415mm_P1.27mm +Package_SO:SOJ-28_7.62x18.415mm_P1.27mm +Package_SO:SOJ-32_10.16x20.955mm_P1.27mm +Package_SO:SOJ-32_7.62x20.955mm_P1.27mm +Package_SO:SOJ-36_10.16x23.495mm_P1.27mm +Package_SO:SOJ-44_10.16x28.575mm_P1.27mm Package_SO:SOP-16_3.9x9.9mm_P1.27mm Package_SO:SOP-16_4.4x10.4mm_P1.27mm Package_SO:SOP-16_4.55x10.3mm_P1.27mm +Package_SO:SOP-18_7.495x11.515mm_P1.27mm Package_SO:SOP-18_7x12.5mm_P1.27mm Package_SO:SOP-20_7.5x12.8mm_P1.27mm Package_SO:SOP-24_7.5x15.4mm_P1.27mm +Package_SO:SOP-28_8.4x18.16mm_P1.27mm +Package_SO:SOP-32_11.305x20.495mm_P1.27mm +Package_SO:SOP-44_12.6x28.5mm_P1.27mm +Package_SO:SOP-44_13.3x28.2mm_P1.27mm Package_SO:SOP-4_3.8x4.1mm_P2.54mm Package_SO:SOP-4_4.4x2.6mm_P1.27mm +Package_SO:SOP-4_7.5x4.1mm_P2.54mm Package_SO:SOP-8-1EP_4.57x4.57mm_P1.27mm_EP4.57x4.45mm Package_SO:SOP-8-1EP_4.57x4.57mm_P1.27mm_EP4.57x4.45mm_ThermalVias Package_SO:SOP-8_3.76x4.96mm_P1.27mm Package_SO:SOP-8_3.9x4.9mm_P1.27mm -Package_SO:SOP-8_5.28x5.23mm_P1.27mm Package_SO:SOP-8_6.605x9.655mm_P2.54mm Package_SO:SOP-8_6.62x9.15mm_P2.54mm Package_SO:SSO-4_6.7x5.1mm_P2.54mm_Clearance8mm Package_SO:SSO-6_6.8x4.6mm_P1.27mm_Clearance7mm Package_SO:SSO-6_6.8x4.6mm_P1.27mm_Clearance8mm Package_SO:SSO-7-8_6.4x9.78mm_P2.54mm +Package_SO:SSO-8-7_6.4x9.7mm_P2.54mm Package_SO:SSO-8_13.6x6.3mm_P1.27mm_Clearance14.2mm Package_SO:SSO-8_6.7x9.8mm_P2.54mm_Clearance8mm Package_SO:SSO-8_6.8x5.9mm_P1.27mm_Clearance7mm Package_SO:SSO-8_6.8x5.9mm_P1.27mm_Clearance8mm Package_SO:SSO-8_9.6x6.3mm_P1.27mm_Clearance10.5mm +Package_SO:SSOP-10-1EP_3.9x4.9mm_P1mm_EP2.1x3.3mm +Package_SO:SSOP-10-1EP_3.9x4.9mm_P1mm_EP2.1x3.3mm_ThermalVias Package_SO:SSOP-10_3.9x4.9mm_P1.00mm Package_SO:SSOP-14_5.3x6.2mm_P0.65mm Package_SO:SSOP-16_3.9x4.9mm_P0.635mm @@ -11056,10 +11745,10 @@ Package_SO:SSOP-24_3.9x8.7mm_P0.635mm Package_SO:SSOP-24_5.3x8.2mm_P0.65mm Package_SO:SSOP-28_3.9x9.9mm_P0.635mm Package_SO:SSOP-28_5.3x10.2mm_P0.65mm -Package_SO:SSOP-32_11.305x20.495mm_P1.27mm Package_SO:SSOP-44_5.3x12.8mm_P0.5mm Package_SO:SSOP-48_5.3x12.8mm_P0.5mm Package_SO:SSOP-48_7.5x15.9mm_P0.635mm +Package_SO:SSOP-4_4.4x2.6mm_P1.27mm Package_SO:SSOP-56_7.5x18.5mm_P0.635mm Package_SO:SSOP-8_2.95x2.8mm_P0.65mm Package_SO:SSOP-8_3.95x5.21x3.27mm_P1.27mm @@ -11073,13 +11762,25 @@ Package_SO:ST_PowerSSO-24_SlugUp Package_SO:ST_PowerSSO-36_SlugDown Package_SO:ST_PowerSSO-36_SlugDown_ThermalVias Package_SO:ST_PowerSSO-36_SlugUp +Package_SO:Texas_DAD0032A_HTSSOP-32_6.1x11mm_P0.65mm_TopEP3.71x3.81mm +Package_SO:Texas_DGN0008B_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x3mm_Mask1.88x1.98mm +Package_SO:Texas_DGN0008B_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x3mm_Mask1.88x1.98mm_ThermalVias +Package_SO:Texas_DGN0008D_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x2.94mm_Mask1.57x1.89mm +Package_SO:Texas_DGN0008D_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x2.94mm_Mask1.57x1.89mm_ThermalVias +Package_SO:Texas_DGN0008G_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x2.94mm_Mask1.846x2.15mm +Package_SO:Texas_DGN0008G_VSSOP-8-1EP_3x3mm_P0.65mm_EP2x2.94mm_Mask1.846x2.15mm_ThermalVias +Package_SO:Texas_DKD0036A_HSSOP-36_11x15.9mm_P0.65mm_TopEP5.85x12.65mm +Package_SO:Texas_DYY0016A_TSOT-23-16_4.2x2.0mm_P0.5mm Package_SO:Texas_HSOP-8-1EP_3.9x4.9mm_P1.27mm Package_SO:Texas_HSOP-8-1EP_3.9x4.9mm_P1.27mm_ThermalVias Package_SO:Texas_HTSOP-8-1EP_3.9x4.9mm_P1.27mm_EP2.95x4.9mm_Mask2.4x3.1mm_ThermalVias +Package_SO:Texas_PW0020A_TSSOP-20_4.4x6.5mm_P0.65mm Package_SO:Texas_PWP0020A +Package_SO:Texas_PWP0028V_TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.7mm_Mask2.94x5.62mm +Package_SO:Texas_PWP0028V_TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.7mm_Mask2.94x5.62mm_ThermalVias Package_SO:Texas_R-PDSO-G8_EP2.95x4.9mm_Mask2.4x3.1mm Package_SO:Texas_R-PDSO-G8_EP2.95x4.9mm_Mask2.4x3.1mm_ThermalVias -Package_SO:Texas_R-PDSO-N5 +Package_SO:Texas_S-PDSO-G8_3x3mm_P0.65mm Package_SO:TI_SO-PowerPAD-8 Package_SO:TI_SO-PowerPAD-8_ThermalVias Package_SO:TSOP-5_1.65x3.05mm_P0.95mm @@ -11107,6 +11808,7 @@ Package_SO:TSOP-I-56_14.4x14mm_P0.5mm Package_SO:TSOP-I-56_16.4x14mm_P0.5mm Package_SO:TSOP-I-56_18.4x14mm_P0.5mm Package_SO:TSOP-II-32_21.0x10.2mm_P1.27mm +Package_SO:TSOP-II-40-44_10.16x18.37mm_P0.8mm Package_SO:TSOP-II-44_10.16x18.41mm_P0.8mm Package_SO:TSOP-II-54_22.2x10.16mm_P0.8mm Package_SO:TSSOP-100_6.1x20.8mm_P0.4mm @@ -11128,8 +11830,13 @@ Package_SO:TSSOP-24_4.4x5mm_P0.4mm Package_SO:TSSOP-24_4.4x6.5mm_P0.5mm Package_SO:TSSOP-24_4.4x7.8mm_P0.65mm Package_SO:TSSOP-24_6.1x7.8mm_P0.65mm -Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.74x4.75mm +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.74x4.75mm_ThermalVias Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.85x6.7mm +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.05x7.56mm +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.05x7.56mm_ThermalVias +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.7mm_Mask3.1x4.05mm +Package_SO:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP3.4x9.7mm_Mask3.1x4.05mm_ThermalVias Package_SO:TSSOP-28_4.4x7.8mm_P0.5mm Package_SO:TSSOP-28_4.4x9.7mm_P0.65mm Package_SO:TSSOP-28_6.1x7.8mm_P0.5mm @@ -11184,11 +11891,11 @@ Package_SO:VSO-40_7.6x15.4mm_P0.762mm Package_SO:VSO-56_11.1x21.5mm_P0.75mm Package_SO:VSSOP-10_3x3mm_P0.5mm Package_SO:VSSOP-8_2.3x2mm_P0.5mm -Package_SO:VSSOP-8_2.4x2.1mm_P0.5mm -Package_SO:VSSOP-8_3.0x3.0mm_P0.65mm +Package_SO:VSSOP-8_3x3mm_P0.65mm Package_SO:Zetex_SM8 Package_SON:Diodes_PowerDI3333-8 Package_SON:Diodes_PowerDI3333-8_UXC_3.3x3.3mm_P0.65mm +Package_SON:EPSON_CE-USON-10_USON-10_3.2x2.5mm_P0.7mm Package_SON:Fairchild_DualPower33-6_3x3mm Package_SON:Fairchild_MicroPak-6_1.0x1.45mm_P0.5mm Package_SON:Fairchild_MicroPak2-6_1.0x1.0mm_P0.35mm @@ -11201,6 +11908,7 @@ Package_SON:Infineon_PG-TISON-8-2 Package_SON:Infineon_PG-TISON-8-3 Package_SON:Infineon_PG-TISON-8-4 Package_SON:Infineon_PG-TISON-8-5 +Package_SON:MicroCrystal_C7_SON-8_1.5x3.2mm_P0.9mm Package_SON:Nexperia_HUSON-12_USON-12-1EP_1.35x2.5mm_P0.4mm_EP0.4x2mm Package_SON:Nexperia_HUSON-16_USON-16-1EP_1.35x3.3mm_P0.4mm_EP0.4x2.8mm Package_SON:Nexperia_HUSON-8_USON-8-1EP_1.35x1.7mm_P0.4mm_EP0.4x1.2mm @@ -11208,11 +11916,15 @@ Package_SON:NXP_XSON-16 Package_SON:ROHM_VML0806 Package_SON:RTC_SMD_MicroCrystal_C3_2.5x3.7mm Package_SON:SON-8-1EP_3x2mm_P0.5mm_EP1.4x1.6mm +Package_SON:ST_PowerFLAT-6L_5x6mm_P1.27mm +Package_SON:ST_PowerFLAT_HV-5_8x8mm +Package_SON:ST_PowerFLAT_HV-8_5x6mm Package_SON:Texas_DPY0002A_0.6x1mm_P0.65mm Package_SON:Texas_DQK Package_SON:Texas_DQX002A Package_SON:Texas_DRC0010J Package_SON:Texas_DRC0010J_ThermalVias +Package_SON:Texas_DRX_WSON-10_2.5x2.5mm_P0.5mm Package_SON:Texas_DSC0010J Package_SON:Texas_DSC0010J_ThermalVias Package_SON:Texas_PWSON-N6 @@ -11227,7 +11939,9 @@ Package_SON:Texas_S-PVSON-N8_ThermalVias Package_SON:Texas_S-PWSON-N10 Package_SON:Texas_S-PWSON-N10_ThermalVias Package_SON:Texas_S-PWSON-N8_EP1.2x2mm +Package_SON:Texas_S-PWSON-N8_EP1.2x2mm_ThermalVias Package_SON:Texas_USON-6_1x1.45mm_P0.5mm_SMD +Package_SON:Texas_VSON-HR-8_1.5x2mm_P0.5mm Package_SON:Texas_X2SON-4_1x1mm_P0.65mm Package_SON:Texas_X2SON-5_0.8x0.8mm_P0.48mm Package_SON:Texas_X2SON-5_0.8x0.8mm_P0.48mm_RoutingVia @@ -11237,18 +11951,27 @@ Package_SON:VSON-10-1EP_3x3mm_P0.5mm_EP1.2x2mm Package_SON:VSON-10-1EP_3x3mm_P0.5mm_EP1.2x2mm_ThermalVias Package_SON:VSON-10-1EP_3x3mm_P0.5mm_EP1.65x2.4mm Package_SON:VSON-10-1EP_3x3mm_P0.5mm_EP1.65x2.4mm_ThermalVias +Package_SON:VSON-14-1EP_3x4.45mm_P0.65mm_EP1.6x4.2mm +Package_SON:VSON-14-1EP_3x4.45mm_P0.65mm_EP1.6x4.2mm_ThermalVias Package_SON:VSON-8-1EP_3x3mm_P0.65mm_EP1.65x2.4mm Package_SON:VSON-8-1EP_3x3mm_P0.65mm_EP1.65x2.4mm_ThermalVias +Package_SON:VSON-8-1EP_3x3mm_P0.65mm_EP1.6x2.4mm Package_SON:VSON-8_1.5x2mm_P0.5mm Package_SON:VSON-8_3.3x3.3mm_P0.65mm_NexFET Package_SON:VSONP-8-1EP_5x6_P1.27mm +Package_SON:Winbond_USON-8-1EP_3x2mm_P0.5mm_EP0.2x1.6mm +Package_SON:Winbond_USON-8-2EP_3x4mm_P0.8mm_EP0.2x0.8mm Package_SON:WSON-10-1EP_2.5x2.5mm_P0.5mm_EP1.2x2mm Package_SON:WSON-10-1EP_2.5x2.5mm_P0.5mm_EP1.2x2mm_ThermalVias Package_SON:WSON-10-1EP_2x3mm_P0.5mm_EP0.84x2.4mm Package_SON:WSON-10-1EP_2x3mm_P0.5mm_EP0.84x2.4mm_ThermalVias Package_SON:WSON-10-1EP_4x3mm_P0.5mm_EP2.2x2mm +Package_SON:WSON-10-1EP_4x4mm_P0.8mm_EP2.6x3mm +Package_SON:WSON-10-1EP_4x4mm_P0.8mm_EP2.6x3mm_ThermalVias Package_SON:WSON-12-1EP_3x2mm_P0.5mm_EP1x2.65 Package_SON:WSON-12-1EP_3x2mm_P0.5mm_EP1x2.65_ThermalVias +Package_SON:WSON-12-1EP_3x3mm_P0.5mm_EP1.5x2.5mm +Package_SON:WSON-12-1EP_3x3mm_P0.5mm_EP1.5x2.5mm_ThermalVias Package_SON:WSON-12-1EP_4x4mm_P0.5mm_EP2.6x3mm Package_SON:WSON-12-1EP_4x4mm_P0.5mm_EP2.6x3mm_ThermalVias Package_SON:WSON-14-1EP_4.0x4.0mm_P0.5mm_EP2.6x2.6mm @@ -11294,16 +12017,20 @@ Package_TO_SOT_SMD:Infineon_PG-TO-220-7Lead_TabPin8 Package_TO_SOT_SMD:Infineon_PG-TSFP-3-1 Package_TO_SOT_SMD:LFPAK33 Package_TO_SOT_SMD:LFPAK56 +Package_TO_SOT_SMD:LFPAK88 Package_TO_SOT_SMD:Nexperia_CFP15_SOT-1289 Package_TO_SOT_SMD:OnSemi_ECH8 Package_TO_SOT_SMD:PowerMacro_M234_NoHole Package_TO_SOT_SMD:PowerMacro_M234_WithHole Package_TO_SOT_SMD:PQFN_8x8 Package_TO_SOT_SMD:Rohm_HRP7 +Package_TO_SOT_SMD:ROHM_SOT-457_ClockwisePinNumbering Package_TO_SOT_SMD:SC-59 Package_TO_SOT_SMD:SC-59_Handsoldering Package_TO_SOT_SMD:SC-70-8 Package_TO_SOT_SMD:SC-70-8_Handsoldering +Package_TO_SOT_SMD:SC-74-6_1.55x2.9mm_P0.95mm +Package_TO_SOT_SMD:SC-74A-5_1.55x2.9mm_P0.95mm Package_TO_SOT_SMD:SC-82AA Package_TO_SOT_SMD:SC-82AA_Handsoldering Package_TO_SOT_SMD:SC-82AB @@ -11457,12 +12184,12 @@ Package_TO_SOT_THT:TO-218-3_Vertical Package_TO_SOT_THT:TO-220-11_P3.4x2.54mm_StaggerEven_Lead5.84mm_TabDown Package_TO_SOT_THT:TO-220-11_P3.4x2.54mm_StaggerOdd_Lead5.84mm_TabDown Package_TO_SOT_THT:TO-220-11_P3.4x5.08mm_StaggerEven_Lead4.58mm_Vertical -Package_TO_SOT_THT:TO-220-11_P3.4x5.08mm_StaggerOdd_Lead4.85mm_Vertical +Package_TO_SOT_THT:TO-220-11_P3.4x5.08mm_StaggerOdd_Lead4.58mm_Vertical Package_TO_SOT_THT:TO-220-11_P3.4x5.08mm_StaggerOdd_Lead8.45mm_TabDown -Package_TO_SOT_THT:TO-220-15_P2.54x2.54mm_StaggerEven_Lead4.58mm_Vertical Package_TO_SOT_THT:TO-220-15_P2.54x2.54mm_StaggerEven_Lead5.84mm_TabDown -Package_TO_SOT_THT:TO-220-15_P2.54x2.54mm_StaggerOdd_Lead4.58mm_Vertical Package_TO_SOT_THT:TO-220-15_P2.54x2.54mm_StaggerOdd_Lead5.84mm_TabDown +Package_TO_SOT_THT:TO-220-15_P2.54x5.08mm_StaggerEven_Lead4.58mm_Vertical +Package_TO_SOT_THT:TO-220-15_P2.54x5.08mm_StaggerOdd_Lead4.58mm_Vertical Package_TO_SOT_THT:TO-220-2_Horizontal_TabDown Package_TO_SOT_THT:TO-220-2_Horizontal_TabUp Package_TO_SOT_THT:TO-220-2_Vertical @@ -11471,10 +12198,10 @@ Package_TO_SOT_THT:TO-220-3_Horizontal_TabUp Package_TO_SOT_THT:TO-220-3_Vertical Package_TO_SOT_THT:TO-220-4_Horizontal_TabDown Package_TO_SOT_THT:TO-220-4_Horizontal_TabUp -Package_TO_SOT_THT:TO-220-4_P5.08x2.54mm_StaggerEven_Lead3.8mm_Vertical -Package_TO_SOT_THT:TO-220-4_P5.08x2.54mm_StaggerEven_Lead5.84mm_TabDown -Package_TO_SOT_THT:TO-220-4_P5.08x2.54mm_StaggerOdd_Lead3.8mm_Vertical -Package_TO_SOT_THT:TO-220-4_P5.08x2.54mm_StaggerOdd_Lead5.84mm_TabDown +Package_TO_SOT_THT:TO-220-4_P5.08x3.7mm_StaggerEven_Lead3.8mm_Vertical +Package_TO_SOT_THT:TO-220-4_P5.08x3.7mm_StaggerOdd_Lead3.8mm_Vertical +Package_TO_SOT_THT:TO-220-4_P5.08x3.8mm_StaggerEven_Lead5.85mm_TabDown +Package_TO_SOT_THT:TO-220-4_P5.08x3.8mm_StaggerOdd_Lead5.85mm_TabDown Package_TO_SOT_THT:TO-220-4_Vertical Package_TO_SOT_THT:TO-220-5_Horizontal_TabDown Package_TO_SOT_THT:TO-220-5_Horizontal_TabUp @@ -11487,6 +12214,8 @@ Package_TO_SOT_THT:TO-220-7_P2.54x3.7mm_StaggerEven_Lead3.8mm_Vertical Package_TO_SOT_THT:TO-220-7_P2.54x3.7mm_StaggerOdd_Lead3.8mm_Vertical Package_TO_SOT_THT:TO-220-7_P2.54x3.8mm_StaggerEven_Lead5.85mm_TabDown Package_TO_SOT_THT:TO-220-7_P2.54x3.8mm_StaggerOdd_Lead5.85mm_TabDown +Package_TO_SOT_THT:TO-220-7_P2.54x5.08mm_StaggerOdd_Lead3.08mm_Vertical +Package_TO_SOT_THT:TO-220-7_P2.54x5.1mm_StaggerOdd_Lead8.025mm_TabDown Package_TO_SOT_THT:TO-220-8_Vertical Package_TO_SOT_THT:TO-220-9_P1.94x3.7mm_StaggerEven_Lead3.8mm_Vertical Package_TO_SOT_THT:TO-220-9_P1.94x3.7mm_StaggerOdd_Lead3.8mm_Vertical @@ -11703,6 +12432,7 @@ Potentiometer_THT:Potentiometer_Alps_RK09L_Single_Vertical Potentiometer_THT:Potentiometer_Alps_RK09Y11_Single_Horizontal Potentiometer_THT:Potentiometer_Alps_RK163_Dual_Horizontal Potentiometer_THT:Potentiometer_Alps_RK163_Single_Horizontal +Potentiometer_THT:Potentiometer_Bourns_20P_Horizontal Potentiometer_THT:Potentiometer_Bourns_3005_Horizontal Potentiometer_THT:Potentiometer_Bourns_3006P_Horizontal Potentiometer_THT:Potentiometer_Bourns_3006W_Horizontal @@ -11732,7 +12462,7 @@ Potentiometer_THT:Potentiometer_Bourns_3339W_Horizontal Potentiometer_THT:Potentiometer_Bourns_3386C_Horizontal Potentiometer_THT:Potentiometer_Bourns_3386F_Vertical Potentiometer_THT:Potentiometer_Bourns_3386P_Vertical -Potentiometer_THT:Potentiometer_Bourns_3386W_Vertical +Potentiometer_THT:Potentiometer_Bourns_3386W_Horizontal Potentiometer_THT:Potentiometer_Bourns_3386X_Horizontal Potentiometer_THT:Potentiometer_Bourns_PTA1543_Single_Slide Potentiometer_THT:Potentiometer_Bourns_PTA2043_Single_Slide @@ -11741,6 +12471,7 @@ Potentiometer_THT:Potentiometer_Bourns_PTA4543_Single_Slide Potentiometer_THT:Potentiometer_Bourns_PTA6043_Single_Slide Potentiometer_THT:Potentiometer_Bourns_PTV09A-1_Single_Vertical Potentiometer_THT:Potentiometer_Bourns_PTV09A-2_Single_Horizontal +Potentiometer_THT:Potentiometer_Bourns_PTV112-4_Dual_Vertical Potentiometer_THT:Potentiometer_Omeg_PC16BU_Horizontal Potentiometer_THT:Potentiometer_Omeg_PC16BU_Vertical Potentiometer_THT:Potentiometer_Piher_PC-16_Dual_Horizontal @@ -11782,6 +12513,8 @@ Potentiometer_THT:Potentiometer_Vishay_T7-YA_Single_Vertical Potentiometer_THT:Potentiometer_Vishay_T73XW_Horizontal Potentiometer_THT:Potentiometer_Vishay_T73XX_Horizontal Potentiometer_THT:Potentiometer_Vishay_T73YP_Vertical +Potentiometer_THT:Potentiometer_Vishay_T93XA_Horizontal +Potentiometer_THT:Potentiometer_Vishay_T93YA_Vertical Relay_SMD:Relay_2P2T_10x6mm_TE_IMxxG Relay_SMD:Relay_DPDT_AXICOM_IMSeries_JLeg Relay_SMD:Relay_DPDT_FRT5_SMD @@ -11806,19 +12539,24 @@ Relay_SMD:Relay_SPDT_AXICOM_HF3Series_75ohms_Pitch1.27mm Relay_THT:Relay_1-Form-A_Schrack-RYII_RM5mm Relay_THT:Relay_1-Form-B_Schrack-RYII_RM5mm Relay_THT:Relay_1-Form-C_Schrack-RYII_RM3.2mm -Relay_THT:Relay_1P1T_NO_10x24x18.8mm_Panasonic_ADW11xxxxW_THT Relay_THT:Relay_3PST_COTO_3650 Relay_THT:Relay_3PST_COTO_3660 Relay_THT:Relay_DPDT_AXICOM_IMSeries_Pitch3.2mm Relay_THT:Relay_DPDT_AXICOM_IMSeries_Pitch5.08mm Relay_THT:Relay_DPDT_Finder_30.22 Relay_THT:Relay_DPDT_Finder_40.52 +Relay_THT:Relay_DPDT_Finder_40.62 Relay_THT:Relay_DPDT_FRT5 Relay_THT:Relay_DPDT_Fujitsu_FTR-F1C -Relay_THT:Relay_DPDT_Kemet_EC2 -Relay_THT:Relay_DPDT_Kemet_EC2_DoubleCoil +Relay_THT:Relay_DPDT_Hongfa_HF115F-2Z-x4 +Relay_THT:Relay_DPDT_Kemet_EC2_NJ +Relay_THT:Relay_DPDT_Kemet_EC2_NJ_DoubleCoil +Relay_THT:Relay_DPDT_Kemet_EC2_NU +Relay_THT:Relay_DPDT_Kemet_EC2_NU_DoubleCoil Relay_THT:Relay_DPDT_Omron_G2RL-2 Relay_THT:Relay_DPDT_Omron_G5V-2 +Relay_THT:Relay_DPDT_Omron_G6A +Relay_THT:Relay_DPDT_Omron_G6AK Relay_THT:Relay_DPDT_Omron_G6H-2 Relay_THT:Relay_DPDT_Omron_G6K-2P-Y Relay_THT:Relay_DPDT_Omron_G6K-2P @@ -11831,7 +12569,11 @@ Relay_THT:Relay_DPST_COTO_3602 Relay_THT:Relay_DPST_Fujitsu_FTR-F1A Relay_THT:Relay_DPST_Omron_G2RL-2A Relay_THT:Relay_DPST_Schrack-RT2-FormA_RM5mm +Relay_THT:Relay_NCR_HHG1D-1 +Relay_THT:Relay_Socket_3PDT_Omron_PLE11-0 +Relay_THT:Relay_Socket_4PDT_Omron_PY14-02 Relay_THT:Relay_Socket_DPDT_Finder_96.12 +Relay_THT:Relay_Socket_DPDT_Omron_PLE08-0 Relay_THT:Relay_SPDT_Finder_32.21-x000 Relay_THT:Relay_SPDT_Finder_34.51_Horizontal Relay_THT:Relay_SPDT_Finder_34.51_Vertical @@ -11840,8 +12582,13 @@ Relay_THT:Relay_SPDT_Finder_40.11 Relay_THT:Relay_SPDT_Finder_40.31 Relay_THT:Relay_SPDT_Finder_40.41 Relay_THT:Relay_SPDT_Finder_40.51 +Relay_THT:Relay_SPDT_Finder_40.61 Relay_THT:Relay_SPDT_Fujitsu_FTR-LYCA005x_FormC_Vertical Relay_THT:Relay_SPDT_HJR-4102 +Relay_THT:Relay_SPDT_Hongfa_HF3F-L-xx-1ZL1T +Relay_THT:Relay_SPDT_Hongfa_HF3F-L-xx-1ZL2T-R +Relay_THT:Relay_SPDT_Hongfa_HF3F-L-xx-1ZL2T +Relay_THT:Relay_SPDT_Hongfa_JQC-3FF_0XX-1Z Relay_THT:Relay_SPDT_HsinDa_Y14 Relay_THT:Relay_SPDT_Omron-G5LE-1 Relay_THT:Relay_SPDT_Omron-G5Q-1 @@ -11850,6 +12597,9 @@ Relay_THT:Relay_SPDT_Omron_G2RL-1 Relay_THT:Relay_SPDT_Omron_G5V-1 Relay_THT:Relay_SPDT_Omron_G6E Relay_THT:Relay_SPDT_Omron_G6EK +Relay_THT:Relay_SPDT_Panasonic_DR-L +Relay_THT:Relay_SPDT_Panasonic_DR-L2 +Relay_THT:Relay_SPDT_Panasonic_DR Relay_THT:Relay_SPDT_Panasonic_JW1_FormC Relay_THT:Relay_SPDT_PotterBrumfield_T9AP5D52_12V30A Relay_THT:Relay_SPDT_RAYEX-L90 @@ -11864,9 +12614,16 @@ Relay_THT:Relay_SPDT_Schrack-RT1-FormC_RM5mm Relay_THT:Relay_SPDT_StandexMeder_SIL_Form1C Relay_THT:Relay_SPST-NO_Fujitsu_FTR-LYAA005x_FormA_Vertical Relay_THT:Relay_SPST_Finder_32.21-x300 +Relay_THT:Relay_SPST_Hongfa_HF3F-L-xx-1HL1T +Relay_THT:Relay_SPST_Hongfa_HF3F-L-xx-1HL2T-R +Relay_THT:Relay_SPST_Hongfa_HF3F-L-xx-1HL2T +Relay_THT:Relay_SPST_Hongfa_JQC-3FF_0XX-1H Relay_THT:Relay_SPST_Omron-G5Q-1A Relay_THT:Relay_SPST_Omron_G2RL-1A-E Relay_THT:Relay_SPST_Omron_G2RL-1A +Relay_THT:Relay_SPST_Omron_G5NB +Relay_THT:Relay_SPST_Omron_G5PZ +Relay_THT:Relay_SPST_Panasonic_ADW11 Relay_THT:Relay_SPST_Panasonic_ALFG_FormA Relay_THT:Relay_SPST_Panasonic_ALFG_FormA_CircularHoles Relay_THT:Relay_SPST_Panasonic_JW1_FormA @@ -11890,9 +12647,11 @@ Relay_THT:Relay_SPST_StandexMeder_SIL_Form1A Relay_THT:Relay_SPST_StandexMeder_SIL_Form1B Relay_THT:Relay_SPST_TE_PCH-1xxx2M Relay_THT:Relay_SPST_TE_PCN-1xxD3MHZ +Relay_THT:Relay_SPST_Zettler-AZSR131 Relay_THT:Relay_StandexMeder_DIP_HighProfile Relay_THT:Relay_StandexMeder_DIP_LowProfile Relay_THT:Relay_StandexMeder_UMS +Relay_THT:Relay_Tyco_V23072_Sealed Resistor_SMD:R_01005_0402Metric Resistor_SMD:R_01005_0402Metric_Pad0.57x0.30mm_HandSolder Resistor_SMD:R_0201_0603Metric @@ -11945,6 +12704,7 @@ Resistor_SMD:R_Cat16-8 Resistor_SMD:R_MELF_MMB-0207 Resistor_SMD:R_MicroMELF_MMU-0102 Resistor_SMD:R_MiniMELF_MMA-0204 +Resistor_SMD:R_Shunt_Isabellenhuette_BVR4026 Resistor_SMD:R_Shunt_Ohmite_LVK12 Resistor_SMD:R_Shunt_Ohmite_LVK20 Resistor_SMD:R_Shunt_Ohmite_LVK24 @@ -12066,10 +12826,12 @@ RF_Antenna:Abracon_PRO-OB-440 RF_Antenna:Abracon_PRO-OB-471 RF_Antenna:Antenova_SR4G013_GPS RF_Antenna:Astrocast_AST50127-00 +RF_Antenna:AVX_M620720 RF_Antenna:Coilcraft_MA5532-AE_RFID RF_Antenna:Johanson_2450AT18x100 RF_Antenna:Johanson_2450AT43F0100 RF_Antenna:Molex_47948-0001_2.4Ghz +RF_Antenna:NiceRF_SW868-TH13_868Mhz RF_Antenna:Pulse_W3000 RF_Antenna:Pulse_W3011 RF_Antenna:Texas_SWRA117D_2.4GHz_Left @@ -12083,8 +12845,11 @@ RF_Converter:Balun_Johanson_1.6x0.8mm RF_Converter:Balun_Johanson_5400BL15B050E RF_Converter:RF_Attenuator_Susumu_PAT1220 RF_GPS:Linx_RXM-GPS +RF_GPS:OriginGPS_ORG1510 RF_GPS:Quectel_L70-R +RF_GPS:Quectel_L76 RF_GPS:Quectel_L80-R +RF_GPS:Quectel_L96 RF_GPS:Sierra_XA11X0 RF_GPS:Sierra_XM11X0 RF_GPS:SIM28ML @@ -12094,14 +12859,18 @@ RF_GPS:ublox_NEO RF_GPS:ublox_SAM-M8Q RF_GPS:ublox_SAM-M8Q_HandSolder RF_GPS:ublox_ZED +RF_GPS:ublox_ZOE_M8 RF_GSM:Quectel_BC66 RF_GSM:Quectel_BC95 +RF_GSM:Quectel_BG95 RF_GSM:Quectel_BG96 RF_GSM:Quectel_M95 RF_GSM:SIMCom_SIM800C RF_GSM:SIMCom_SIM900 +RF_GSM:Telit_SE150A4 RF_GSM:Telit_xL865 -RF_GSM:ublox_SARA-G3_LGA-96 +RF_GSM:ublox_LENA-R8_LGA-100 +RF_GSM:ublox_SARA_LGA-96 RF_Mini-Circuits:Mini-Circuits_BK377 RF_Mini-Circuits:Mini-Circuits_BK377_LandPatternPL-005 RF_Mini-Circuits:Mini-Circuits_CD541_H2.08mm @@ -12145,16 +12914,23 @@ RF_Module:Digi_XBee_SMT RF_Module:DWM1000 RF_Module:E18-MS1-PCB RF_Module:E73-2G4M04S +RF_Module:ESP-01 RF_Module:ESP-07 RF_Module:ESP-12E RF_Module:ESP-WROOM-02 +RF_Module:ESP32-C3-DevKitM-1 +RF_Module:ESP32-C3-WROOM-02 +RF_Module:ESP32-C3-WROOM-02U +RF_Module:ESP32-C6-MINI-1 RF_Module:ESP32-S2-MINI-1 RF_Module:ESP32-S2-MINI-1U RF_Module:ESP32-S2-WROVER RF_Module:ESP32-S3-WROOM-1 RF_Module:ESP32-S3-WROOM-1U +RF_Module:ESP32-S3-WROOM-2 RF_Module:ESP32-WROOM-32 RF_Module:ESP32-WROOM-32D +RF_Module:ESP32-WROOM-32E RF_Module:ESP32-WROOM-32U RF_Module:ESP32-WROOM-32UE RF_Module:Garmin_M8-35_9.8x14.0mm_Layout6x6_P1.5mm @@ -12164,7 +12940,9 @@ RF_Module:HOPERF_RFM9XW_SMD RF_Module:HOPERF_RFM9XW_THT RF_Module:IQRF_TRx2DA_KON-SIM-01 RF_Module:IQRF_TRx2D_KON-SIM-01 +RF_Module:Jadak_Thingmagic_M6e-Nano RF_Module:Laird_BL652 +RF_Module:MCU_Seeed_ESP32C3 RF_Module:Microchip_BM83 RF_Module:Microchip_RN4871 RF_Module:MOD-nRF8001 @@ -12173,17 +12951,22 @@ RF_Module:MonoWireless_TWE-L-WX RF_Module:NINA-B111 RF_Module:nRF24L01_Breakout RF_Module:Particle_P1 +RF_Module:RAK3172 RF_Module:RAK4200 RF_Module:RAK811 +RF_Module:Raytac_MDBT42Q RF_Module:Raytac_MDBT50Q RF_Module:RFDigital_RFD77101 RF_Module:RN2483 RF_Module:RN42 RF_Module:RN42N +RF_Module:ST-SiP-LGA-86-11x7.3mm RF_Module:ST_SPBTLE RF_Module:Taiyo-Yuden_EYSGJNZWY RF_Module:TD1205 RF_Module:TD1208 +RF_Module:WEMOS_C3_mini +RF_Module:WEMOS_D1_mini_light RF_Module:ZETA-433-SO_SMD RF_Module:ZETA-433-SO_THT RF_Shielding:Laird_Technologies_97-2002_25.40x25.40mm @@ -12219,6 +13002,7 @@ RF_Shielding:Wuerth_36503605_60x60mm RF_WiFi:USR-C322 Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm_CircularMountingHoles +Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm_MountingHoles Rotary_Encoder:RotaryEncoder_Alps_EC11E_Vertical_H20mm Rotary_Encoder:RotaryEncoder_Alps_EC11E_Vertical_H20mm_CircularMountingHoles Rotary_Encoder:RotaryEncoder_Alps_EC12E-Switch_Vertical_H20mm @@ -12229,8 +13013,16 @@ Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEC09-2xxxF-Nxxxx Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEC09-2xxxF-Sxxxx Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEC12R-2x17F-Nxxxx Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEC12R-2x17F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x16F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x18F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x21F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x25S-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x26F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Horizontal_PEL12D-2x31F-Sxxxx Rotary_Encoder:RotaryEncoder_Bourns_Vertical_PEC12R-3x17F-Nxxxx Rotary_Encoder:RotaryEncoder_Bourns_Vertical_PEC12R-3x17F-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Vertical_PEL12D-4x25S-Sxxxx +Rotary_Encoder:RotaryEncoder_Bourns_Vertical_PEL12D-4xxxF-Sxxxx Sensor:Aosong_DHT11_5.5x12.0_P2.54mm Sensor:ASAIR_AM2302_P2.54mm_Lead2.75mm_TabDown Sensor:ASAIR_AM2302_P2.54mm_Vertical @@ -12244,6 +13036,7 @@ Sensor:Sensirion_SCD4x-1EP_10.1x10.1mm_P1.25mm_EP4.8x4.8mm Sensor:Sensortech_MiCS_5x7mm_P1.25mm Sensor:SHT1x Sensor:SPEC_110-xxx_SMD-10Pin_20x20mm_P4.0mm +Sensor:TGS-5141 Sensor:Winson_GM-402B_5x5mm_P1.27mm Sensor_Audio:CUI_CMC-4013-SMT Sensor_Audio:Infineon_PG-LLGA-5-1 @@ -12252,6 +13045,7 @@ Sensor_Audio:InvenSense_ICS-43434-6_3.5x2.65mm Sensor_Audio:Knowles_LGA-5_3.5x2.65mm Sensor_Audio:Knowles_LGA-6_4.72x3.76mm Sensor_Audio:Knowles_SPH0645LM4H-6_3.5x2.65mm +Sensor_Audio:POM-2244P-C3310-2-R Sensor_Audio:ST_HLGA-6_3.76x4.72mm_P1.65mm Sensor_Current:AKM_CQ_7 Sensor_Current:AKM_CQ_7S @@ -12286,8 +13080,10 @@ Sensor_Current:LEM_HX15-P-SP2 Sensor_Current:LEM_HX20-P-SP2 Sensor_Current:LEM_HX25-P-SP2 Sensor_Current:LEM_HX50-P-SP2 +Sensor_Current:LEM_LA25-NP Sensor_Current:LEM_LA25-P Sensor_Current:LEM_LTSR-NP +Sensor_Distance:AMS_OLGA12 Sensor_Distance:ST_VL53L1x Sensor_Humidity:Sensirion_DFN-4-1EP_2x2mm_P1mm_EP0.7x1.6mm Sensor_Humidity:Sensirion_DFN-4_1.5x1.5mm_P0.8mm_SHT4x_NoCentralPad @@ -12297,6 +13093,7 @@ Sensor_Motion:InvenSense_QFN-24_3x3mm_P0.4mm Sensor_Motion:InvenSense_QFN-24_3x3mm_P0.4mm_NoMask Sensor_Motion:InvenSense_QFN-24_4x4mm_P0.5mm Sensor_Motion:InvenSense_QFN-24_4x4mm_P0.5mm_NoMask +Sensor_Pressure:CFSensor_XGZP6859D_7x7mm Sensor_Pressure:CFSensor_XGZP6897x Sensor_Pressure:CFSensor_XGZP6899x Sensor_Pressure:Freescale_98ARH99066A @@ -12421,8 +13218,9 @@ Symbol:RoHS-Logo_30mm_SilkScreen Symbol:RoHS-Logo_40mm_SilkScreen Symbol:RoHS-Logo_6mm_SilkScreen Symbol:RoHS-Logo_8mm_SilkScreen -Symbol:Symbol_Attention_CopperTop_Big -Symbol:Symbol_Attention_CopperTop_Small +Symbol:Smolhaj_Scale_0.1 +Symbol:Symbol_Attention_Triangle_17x15mm_Copper +Symbol:Symbol_Attention_Triangle_8x7mm_Copper Symbol:Symbol_Barrel_Polarity Symbol:Symbol_CC-Attribution_CopperTop_Big Symbol:Symbol_CC-Attribution_CopperTop_Small @@ -12439,19 +13237,19 @@ Symbol:Symbol_CreativeCommons_CopperTop_Type1_Big Symbol:Symbol_CreativeCommons_CopperTop_Type2_Big Symbol:Symbol_CreativeCommons_CopperTop_Type2_Small Symbol:Symbol_CreativeCommons_SilkScreenTop_Type2_Big -Symbol:Symbol_Danger_CopperTop_Big -Symbol:Symbol_Danger_CopperTop_Small +Symbol:Symbol_Danger_18x16mm_Copper +Symbol:Symbol_Danger_8x8mm_Copper Symbol:Symbol_ESD-Logo-Text_CopperTop Symbol:Symbol_ESD-Logo_CopperTop Symbol:Symbol_GNU-GPL_CopperTop_Big Symbol:Symbol_GNU-GPL_CopperTop_Small Symbol:Symbol_GNU-Logo_CopperTop Symbol:Symbol_GNU-Logo_SilkscreenTop -Symbol:Symbol_HighVoltage_Type1_CopperTop_Big -Symbol:Symbol_Highvoltage_Type1_CopperTop_Small -Symbol:Symbol_HighVoltage_Type2_CopperTop_Big -Symbol:Symbol_Highvoltage_Type2_CopperTop_Small -Symbol:Symbol_HighVoltage_Type2_CopperTop_VerySmall +Symbol:Symbol_HighVoltage_NoTriangle_2x5mm_Copper +Symbol:Symbol_HighVoltage_NoTriangle_6x15mm_Copper +Symbol:Symbol_HighVoltage_Triangle_17x15mm_Copper +Symbol:Symbol_HighVoltage_Triangle_6x6mm_Copper +Symbol:Symbol_HighVoltage_Triangle_8x7mm_Copper Symbol:UKCA-Logo_12x12mm_SilkScreen Symbol:UKCA-Logo_20x20mm_SilkScreen Symbol:UKCA-Logo_30x30mm_SilkScreen @@ -12472,7 +13270,54 @@ TerminalBlock:TerminalBlock_bornier-3_P5.08mm TerminalBlock:TerminalBlock_bornier-4_P5.08mm TerminalBlock:TerminalBlock_bornier-5_P5.08mm TerminalBlock:TerminalBlock_bornier-6_P5.08mm +TerminalBlock:TerminalBlock_bornier-8_P5.08mm +TerminalBlock:TerminalBlock_Degson_DG246-3.81-03P +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-02P_1x02_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-03P_1x03_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-04P_1x04_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-05P_1x05_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-06P_1x06_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-07P_1x07_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-08P_1x08_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-09P_1x09_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-10P_1x10_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-11P_1x11_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-12P_1x12_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-13P_1x13_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-14P_1x14_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-15P_1x15_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-16P_1x16_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-17P_1x17_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-18P_1x18_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-19P_1x19_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-20P_1x20_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-21P_1x21_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-22P_1x22_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-23P_1x23_P5.00mm +TerminalBlock:TerminalBlock_MaiXu_MX126-5.0-24P_1x24_P5.00mm TerminalBlock:TerminalBlock_Wuerth_691311400102_P7.62mm +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-10P_1x10_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-11P_1x11_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-12P_1x12_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-13P_1x13_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-14P_1x14_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-15P_1x15_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-16P_1x16_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-17P_1x17_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-18P_1x18_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-19P_1x19_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-20P_1x20_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-21P_1x21_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-22P_1x22_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-23P_1x23_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-2P_1x02_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-3P_1x03_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-4P_1x04_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-5P_1x05_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-6P_1x06_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-7P_1x07_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-8P_1x08_P2.54mm_Horizontal +TerminalBlock:TerminalBlock_Xinya_XY308-2.54-9P_1x09_P2.54mm_Horizontal TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x02_P3.50mm_Horizontal TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x02_P3.50mm_Vertical TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x03_P3.50mm_Horizontal @@ -12501,6 +13346,29 @@ TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x14_P3.50mm_Horizontal TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x14_P3.50mm_Vertical TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x15_P3.50mm_Horizontal TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x15_P3.50mm_Vertical +TerminalBlock_Altech:Altech_AK100_1x02_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x03_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x04_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x05_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x06_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x07_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x08_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x09_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x10_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x11_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x12_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x13_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x14_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x15_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x16_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x17_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x18_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x19_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x20_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x21_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x22_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x23_P5.00mm +TerminalBlock_Altech:Altech_AK100_1x24_P5.00mm TerminalBlock_Altech:Altech_AK300_1x02_P5.00mm_45-Degree TerminalBlock_Altech:Altech_AK300_1x03_P5.00mm_45-Degree TerminalBlock_Altech:Altech_AK300_1x04_P5.00mm_45-Degree @@ -12524,6 +13392,29 @@ TerminalBlock_Altech:Altech_AK300_1x21_P5.00mm_45-Degree TerminalBlock_Altech:Altech_AK300_1x22_P5.00mm_45-Degree TerminalBlock_Altech:Altech_AK300_1x23_P5.00mm_45-Degree TerminalBlock_Altech:Altech_AK300_1x24_P5.00mm_45-Degree +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-02_1x02_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-03_1x03_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-04_1x04_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-05_1x05_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-06_1x06_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-07_1x07_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-08_1x08_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-09_1x09_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-10_1x10_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-11_1x11_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-12_1x12_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-13_1x13_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-14_1x14_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-15_1x15_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-16_1x16_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-17_1x17_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-18_1x18_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-19_1x19_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-20_1x20_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-21_1x21_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-22_1x22_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-23_1x23_P5.08mm_Horizontal +TerminalBlock_CUI:TerminalBlock_CUI_TB007-508-24_1x24_P5.08mm_Horizontal TerminalBlock_Dinkle:TerminalBlock_Dinkle_DT-55-B01X-02_P10.00mm TerminalBlock_Dinkle:TerminalBlock_Dinkle_DT-55-B01X-03_P10.00mm TerminalBlock_Dinkle:TerminalBlock_Dinkle_DT-55-B01X-04_P10.00mm @@ -12817,7 +13708,9 @@ TerminalBlock_RND:TerminalBlock_RND_205-00238_1x08_P5.08mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00239_1x09_P5.08mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00240_1x10_P5.08mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00241_1x02_P10.16mm_Horizontal +TerminalBlock_RND:TerminalBlock_RND_205-00241_1x11_P5.08mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00242_1x03_P10.16mm_Horizontal +TerminalBlock_RND:TerminalBlock_RND_205-00242_1x12_P5.08mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00243_1x04_P10.16mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00244_1x05_P10.16mm_Horizontal TerminalBlock_RND:TerminalBlock_RND_205-00245_1x06_P10.16mm_Horizontal @@ -12871,6 +13764,16 @@ TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-6_1x06_P2.54mm_Horizontal TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-7_1x07_P2.54mm_Horizontal TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-8_1x08_P2.54mm_Horizontal TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-9_1x09_P2.54mm_Horizontal +TerminalBlock_WAGO:TerminalBlock_WAGO_233-502_2x02_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-503_2x03_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-504_2x04_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-505_2x05_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-506_2x06_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-507_2x07_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-508_2x08_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-509_2x09_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-510_2x10_P2.54mm +TerminalBlock_WAGO:TerminalBlock_WAGO_233-512_2x12_P2.54mm TerminalBlock_WAGO:TerminalBlock_WAGO_236-101_1x01_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-102_1x02_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-103_1x03_P5.00mm_45Degree @@ -12880,8 +13783,12 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-106_1x06_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-107_1x07_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-108_1x08_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-109_1x09_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-110_1x10_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-111_1x11_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-112_1x12_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-113_1x13_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-114_1x14_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-115_1x15_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-116_1x16_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-124_1x24_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-136_1x36_P5.00mm_45Degree @@ -12895,7 +13802,12 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-206_1x06_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-207_1x07_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-208_1x08_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-209_1x09_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-210_1x10_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-211_1x11_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-212_1x12_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-213_1x13_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-214_1x14_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-215_1x15_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-216_1x16_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-224_1x24_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-301_1x01_P10.00mm_45Degree @@ -12904,9 +13816,15 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-303_1x03_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-304_1x04_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-305_1x05_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-306_1x06_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-307_1x07_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-308_1x08_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-309_1x09_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-310_1x10_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-311_1x11_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-312_1x12_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-313_1x13_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-314_1x14_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-315_1x15_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-316_1x16_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-324_1x24_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-401_1x01_P5.00mm_45Degree @@ -12918,8 +13836,12 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-406_1x06_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-407_1x07_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-408_1x08_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-409_1x09_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-410_1x10_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-411_1x11_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-412_1x12_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-413_1x13_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-414_1x14_P5.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-415_1x15_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-416_1x16_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-424_1x24_P5.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-436_1x36_P5.00mm_45Degree @@ -12933,7 +13855,12 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-506_1x06_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-507_1x07_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-508_1x08_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-509_1x09_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-510_1x10_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-511_1x11_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-512_1x12_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-513_1x13_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-514_1x14_P7.50mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-515_1x15_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-516_1x16_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-524_1x24_P7.50mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-601_1x01_P10.00mm_45Degree @@ -12942,9 +13869,15 @@ TerminalBlock_WAGO:TerminalBlock_WAGO_236-603_1x03_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-604_1x04_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-605_1x05_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-606_1x06_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-607_1x07_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-608_1x08_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-609_1x09_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-610_1x10_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-611_1x11_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-612_1x12_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-613_1x13_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-614_1x14_P10.00mm_45Degree +TerminalBlock_WAGO:TerminalBlock_WAGO_236-615_1x15_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-616_1x16_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_236-624_1x24_P10.00mm_45Degree TerminalBlock_WAGO:TerminalBlock_WAGO_804-101_1x01_P5.00mm_45Degree @@ -13005,8 +13938,8 @@ TestPoint:TestPoint_Bridge_Pitch7.62mm_Drill1.3mm TestPoint:TestPoint_Keystone_5000-5004_Miniature TestPoint:TestPoint_Keystone_5005-5009_Compact TestPoint:TestPoint_Keystone_5010-5014_Multipurpose -TestPoint:TestPoint_Keystone_5015_Micro-Minature -TestPoint:TestPoint_Keystone_5019_Minature +TestPoint:TestPoint_Keystone_5015_Micro_Mini +TestPoint:TestPoint_Keystone_5019_Miniature TestPoint:TestPoint_Loop_D1.80mm_Drill1.0mm_Beaded TestPoint:TestPoint_Loop_D2.50mm_Drill1.0mm TestPoint:TestPoint_Loop_D2.50mm_Drill1.0mm_LowProfile @@ -13062,6 +13995,7 @@ Transformer_SMD:Transformer_Coilcraft_CST1 Transformer_SMD:Transformer_Coilcraft_CST2 Transformer_SMD:Transformer_Coilcraft_CST2010 Transformer_SMD:Transformer_CurrentSense_8.4x7.2mm +Transformer_SMD:Transformer_ED8_4-Lead_10.5x8mm_P5mm Transformer_SMD:Transformer_Ethernet_Bel_S558-5999-T7-F Transformer_SMD:Transformer_Ethernet_Bourns_PT61017PEL Transformer_SMD:Transformer_Ethernet_Bourns_PT61020EL @@ -13143,12 +14077,19 @@ Transformer_THT:Transformer_Toroid_Tapped_Horizontal_D10.5mm_Amidon-T37 Transformer_THT:Transformer_Toroid_Tapped_Horizontal_D12.5mm_Amidon-T44 Transformer_THT:Transformer_Toroid_Tapped_Horizontal_D14.0mm_Amidon-T50 Transformer_THT:Transformer_Toroid_Tapped_Horizontal_D9.0mm_Amidon-T30 +Transformer_THT:Transformer_Triad_VPP16-310 Transformer_THT:Transformer_Wuerth_750343373 Transformer_THT:Transformer_Wuerth_760871131 +Transformer_THT:Transformer_Zeming_ZMCT103C +Transformer_THT:Transformer_Zeming_ZMPT101K Transistor_Power:GaN_Systems_GaNPX-3_5x6.6mm_Drain2.93x0.6mm Transistor_Power:GaN_Systems_GaNPX-3_5x6.6mm_Drain3.76x0.6mm Transistor_Power:GaN_Systems_GaNPX-4_7x8.4mm Transistor_Power_Module:Infineon_AG-ECONO2 +Transistor_Power_Module:Infineon_AG-ECONO3 +Transistor_Power_Module:Infineon_AG-ECONO3B +Transistor_Power_Module:Infineon_EasyPACK-1B +Transistor_Power_Module:Infineon_EasyPACK-1B_PressFIT Transistor_Power_Module:Infineon_EasyPIM-1B Transistor_Power_Module:Infineon_EasyPIM-2B Transistor_Power_Module:Littelfuse_Package_H_XBN2MM diff --git a/public/kicad/symbols.txt b/public/kicad/symbols.txt index 4a0999b7..1cee1692 100644 --- a/public/kicad/symbols.txt +++ b/public/kicad/symbols.txt @@ -1,6 +1,6 @@ # This file contains all the KiCad symbols available in the official library # Generated by symbols.sh -# on Sun Dec 3 22:09:24 CET 2023 +# on Sun Feb 16 21:42:01 CET 2025 4xxx:14528 4xxx:14529 4xxx:14538 @@ -31,6 +31,7 @@ 4xxx:4052 4xxx:4053 4xxx:4056 +4xxx:4060 4xxx:4066 4xxx:4069 4xxx:4070 @@ -48,7 +49,9 @@ 4xxx:4528 4xxx:4538 4xxx:4543 +4xxx:CD4033B 4xxx:HEF4093B +4xxx:HEF4094B 4xxx_IEEE:4001 4xxx_IEEE:4002 4xxx_IEEE:4006 @@ -103,6 +106,7 @@ 4xxx_IEEE:4051 4xxx_IEEE:4052 4xxx_IEEE:4053 +4xxx_IEEE:4060 4xxx_IEEE:4066 4xxx_IEEE:4068 4xxx_IEEE:4069 @@ -307,29 +311,56 @@ 74xGxx:74LVC3G17 74xGxx:74LVC3G34 74xGxx:74LVC3GU04 +74xGxx:Inverter_Schmitt_Dual 74xGxx:NC7SVU04P5X 74xGxx:NC7SZ125M5X 74xGxx:NC7SZ125P5X +74xGxx:SN74LVC1G00DBV +74xGxx:SN74LVC1G00DCK +74xGxx:SN74LVC1G00DRL +74xGxx:SN74LVC1G125DBV +74xGxx:SN74LVC1G125DCK +74xGxx:SN74LVC1G125DRL 74xGxx:SN74LVC1G14DBV 74xGxx:SN74LVC1G14DRL +74xGxx:SN74LVC2G14DBV +74xGxx:TC7PZ14FU 74xx:7400 74xx:7402 74xx:74469 +74xx:7454 74xx:74AHC04 74xx:74AHC240 74xx:74AHC244 74xx:74AHC273 74xx:74AHC373 74xx:74AHC374 +74xx:74AHC541 74xx:74AHC595 74xx:74AHCT04 74xx:74AHCT123 +74xx:74AHCT125 74xx:74AHCT240 74xx:74AHCT244 74xx:74AHCT273 74xx:74AHCT373 74xx:74AHCT374 +74xx:74AHCT541 74xx:74AHCT595 +74xx:74ALVC164245 +74xx:74CB3Q16210DGG +74xx:74CB3Q16210DGV +74xx:74CB3Q16210DL +74xx:74CB3T16210DGG +74xx:74CB3T16210DGV +74xx:74CBT16210CDGG +74xx:74CBT16210CDGV +74xx:74CBT16210CDL +74xx:74CBT3861 +74xx:74CBTD16210DGG +74xx:74CBTD16210DGV +74xx:74CBTD16210DL +74xx:74CBTD3861 74xx:74CBTLV16212 74xx:74CBTLV3257 74xx:74CBTLV3861 @@ -342,6 +373,9 @@ 74xx:74HC14 74xx:74HC164 74xx:74HC165 +74xx:74HC173 +74xx:74HC192 +74xx:74HC193 74xx:74HC237 74xx:74HC238 74xx:74HC240 @@ -352,13 +386,16 @@ 74xx:74HC374 74xx:74HC4024 74xx:74HC4051 +74xx:74HC4060 74xx:74HC590 74xx:74HC590A +74xx:74HC594 74xx:74HC595 74xx:74HC596 74xx:74HC688 74xx:74HC7014 74xx:74HC74 +74xx:74HC85 74xx:74HC86 74xx:74HCT00 74xx:74HCT02 @@ -367,6 +404,8 @@ 74xx:74HCT137 74xx:74HCT138 74xx:74HCT164 +74xx:74HCT173 +74xx:74HCT193 74xx:74HCT237 74xx:74HCT238 74xx:74HCT240 @@ -380,6 +419,8 @@ 74xx:74HCT595 74xx:74HCT596 74xx:74HCT688 +74xx:74HCT74 +74xx:74HCT85 74xx:74LCX07 74xx:74LS00 74xx:74LS01 @@ -472,6 +513,7 @@ 74xx:74LS26 74xx:74LS27 74xx:74LS273 +74xx:74LS279 74xx:74LS28 74xx:74LS280 74xx:74LS283 @@ -514,9 +556,9 @@ 74xx:74LS48 74xx:74LS49 74xx:74LS51 -74xx:74LS54 74xx:74LS540 74xx:74LS541 +74xx:74LS54N 74xx:74LS55 74xx:74LS573 74xx:74LS574 @@ -549,6 +591,8 @@ 74xx:CD74HC4067SM 74xx:MC74LCX16245DT 74xx:MM74C923 +74xx:SN74ALVC164245DGG +74xx:SN74ALVC164245DL 74xx:SN74AVC16827DGGR 74xx:SN74CB3Q3384ADBQ 74xx:SN74CB3Q3384APW @@ -782,8 +826,10 @@ Amplifier_Audio:MA12070 Amplifier_Audio:MA12070P Amplifier_Audio:MAX9701xTG Amplifier_Audio:MAX9715xTE+ +Amplifier_Audio:MAX9744 Amplifier_Audio:MAX9814 Amplifier_Audio:MAX98306xDT +Amplifier_Audio:MAX98396EWB+ Amplifier_Audio:MAX9850xTI Amplifier_Audio:OPA1622 Amplifier_Audio:PAM8301 @@ -791,6 +837,7 @@ Amplifier_Audio:PAM8302AAD Amplifier_Audio:PAM8302AAS Amplifier_Audio:PAM8302AAY Amplifier_Audio:PAM8403D +Amplifier_Audio:PAM8406D Amplifier_Audio:SSM2017P Amplifier_Audio:SSM2018 Amplifier_Audio:SSM2120 @@ -839,8 +886,14 @@ Amplifier_Audio:THAT2181 Amplifier_Audio:TPA3251 Amplifier_Audio:TPA6110A2DGN Amplifier_Audio:TPA6132A2RTE +Amplifier_Audio:TPA6203A1DGN +Amplifier_Audio:TPA6203A1DRB Amplifier_Buffer:BUF602xD Amplifier_Buffer:BUF602xDBV +Amplifier_Buffer:BUF634AxD +Amplifier_Buffer:BUF634AxDDA +Amplifier_Buffer:BUF634AxDRB +Amplifier_Buffer:BUF634U Amplifier_Buffer:EL2001CN Amplifier_Buffer:LH0002H Amplifier_Buffer:LM6321H @@ -873,7 +926,12 @@ Amplifier_Current:INA180A1 Amplifier_Current:INA180A2 Amplifier_Current:INA180A3 Amplifier_Current:INA180A4 +Amplifier_Current:INA180B1 +Amplifier_Current:INA180B2 +Amplifier_Current:INA180B3 +Amplifier_Current:INA180B4 Amplifier_Current:INA181 +Amplifier_Current:INA185 Amplifier_Current:INA193 Amplifier_Current:INA194 Amplifier_Current:INA195 @@ -881,6 +939,12 @@ Amplifier_Current:INA196 Amplifier_Current:INA197 Amplifier_Current:INA198 Amplifier_Current:INA199xxDCK +Amplifier_Current:INA200D +Amplifier_Current:INA200DGK +Amplifier_Current:INA201D +Amplifier_Current:INA201DGK +Amplifier_Current:INA202D +Amplifier_Current:INA202DGK Amplifier_Current:INA225 Amplifier_Current:INA240A1D Amplifier_Current:INA240A1PW @@ -890,12 +954,61 @@ Amplifier_Current:INA240A3D Amplifier_Current:INA240A3PW Amplifier_Current:INA240A4D Amplifier_Current:INA240A4PW +Amplifier_Current:INA241A1xD +Amplifier_Current:INA241A1xDDF +Amplifier_Current:INA241A1xDGK +Amplifier_Current:INA241A2xD +Amplifier_Current:INA241A2xDDF +Amplifier_Current:INA241A2xDGK +Amplifier_Current:INA241A3xD +Amplifier_Current:INA241A3xDDF +Amplifier_Current:INA241A3xDGK +Amplifier_Current:INA241A4xD +Amplifier_Current:INA241A4xDDF +Amplifier_Current:INA241A4xDGK +Amplifier_Current:INA241A5xD +Amplifier_Current:INA241A5xDDF +Amplifier_Current:INA241A5xDGK +Amplifier_Current:INA241B1xD +Amplifier_Current:INA241B1xDDF +Amplifier_Current:INA241B1xDGK +Amplifier_Current:INA241B2xD +Amplifier_Current:INA241B2xDDF +Amplifier_Current:INA241B2xDGK +Amplifier_Current:INA241B3xD +Amplifier_Current:INA241B3xDDF +Amplifier_Current:INA241B3xDGK +Amplifier_Current:INA241B4xD +Amplifier_Current:INA241B4xDDF +Amplifier_Current:INA241B4xDGK +Amplifier_Current:INA241B5xD +Amplifier_Current:INA241B5xDDF +Amplifier_Current:INA241B5xDGK Amplifier_Current:INA253 +Amplifier_Current:INA281A1 +Amplifier_Current:INA281A2 +Amplifier_Current:INA281A3 +Amplifier_Current:INA281A4 +Amplifier_Current:INA281A5 Amplifier_Current:INA282 Amplifier_Current:INA283 Amplifier_Current:INA284 Amplifier_Current:INA285 Amplifier_Current:INA286 +Amplifier_Current:INA293A1 +Amplifier_Current:INA293A2 +Amplifier_Current:INA293A3 +Amplifier_Current:INA293A4 +Amplifier_Current:INA293A5 +Amplifier_Current:INA293B1 +Amplifier_Current:INA293B2 +Amplifier_Current:INA293B3 +Amplifier_Current:INA293B4 +Amplifier_Current:INA293B5 +Amplifier_Current:INA4180A1 +Amplifier_Current:INA4180A2 +Amplifier_Current:INA4180A3 +Amplifier_Current:INA4180A4 Amplifier_Current:LMP8640 Amplifier_Current:LT6106 Amplifier_Current:LTC6102HVxDD @@ -931,15 +1044,21 @@ Amplifier_Difference:AD8207 Amplifier_Difference:AD8276 Amplifier_Difference:AD8475ACPZ Amplifier_Difference:AD8475xRMZ +Amplifier_Difference:ADA4938-1 Amplifier_Difference:ADA4940-1xCP Amplifier_Difference:ADA4940-2 Amplifier_Difference:AMC1100DWV +Amplifier_Difference:AMC1200BDWV +Amplifier_Difference:AMC1300BDWV Amplifier_Difference:AMC1300DWV Amplifier_Difference:INA105KP Amplifier_Difference:INA105KU Amplifier_Difference:LM733CH Amplifier_Difference:LM733CN Amplifier_Difference:LM733H +Amplifier_Difference:LTC1992-x-xMS8 +Amplifier_Difference:THS4521ID +Amplifier_Difference:THS4521IDGK Amplifier_Difference:THS4551xRGT Amplifier_Instrumentation:AD620 Amplifier_Instrumentation:AD623 @@ -954,6 +1073,7 @@ Amplifier_Instrumentation:AD623BNZ Amplifier_Instrumentation:AD623BR Amplifier_Instrumentation:AD623BRZ Amplifier_Instrumentation:AD8230 +Amplifier_Instrumentation:AD8231 Amplifier_Instrumentation:AD8236 Amplifier_Instrumentation:AD8236ARMZ Amplifier_Instrumentation:AD8421 @@ -975,14 +1095,20 @@ Amplifier_Instrumentation:INA326 Amplifier_Instrumentation:INA327 Amplifier_Instrumentation:INA333xxDGK Amplifier_Instrumentation:INA333xxDRG +Amplifier_Instrumentation:INA849D +Amplifier_Instrumentation:INA849DGK Amplifier_Instrumentation:LTC1100xN8 Amplifier_Instrumentation:LTC1100xSW Amplifier_Operational:AD797 Amplifier_Operational:AD8001AN Amplifier_Operational:AD8001AR Amplifier_Operational:AD8015 +Amplifier_Operational:AD8021AR +Amplifier_Operational:AD8021ARM Amplifier_Operational:AD817 Amplifier_Operational:AD8603 +Amplifier_Operational:AD8606ARM +Amplifier_Operational:AD8606ARZ Amplifier_Operational:AD8610xR Amplifier_Operational:AD8610xRM Amplifier_Operational:AD8620 @@ -994,6 +1120,13 @@ Amplifier_Operational:ADA4075-2 Amplifier_Operational:ADA4077-1xR Amplifier_Operational:ADA4077-1xRM Amplifier_Operational:ADA4084-4xCP +Amplifier_Operational:ADA4099-1xUJ +Amplifier_Operational:ADA4099-2xCP +Amplifier_Operational:ADA4099-2xR +Amplifier_Operational:ADA4099-2xRM +Amplifier_Operational:ADA4522-1 +Amplifier_Operational:ADA4522-2 +Amplifier_Operational:ADA4522-4 Amplifier_Operational:ADA4530-1 Amplifier_Operational:ADA4610-1xR Amplifier_Operational:ADA4610-1xRJ @@ -1004,10 +1137,15 @@ Amplifier_Operational:ADA4610-4xCP Amplifier_Operational:ADA4610-4xR Amplifier_Operational:ADA4622-2xCP Amplifier_Operational:ADA4622-4xCP +Amplifier_Operational:ADA4625-1ARDZ +Amplifier_Operational:ADA4625-2ARDZ Amplifier_Operational:ADA4807-1 Amplifier_Operational:ADA4807-2ACP Amplifier_Operational:ADA4807-2ARM -Amplifier_Operational:ADA4807-4 +Amplifier_Operational:ADA4807-4ARUZ +Amplifier_Operational:ADA4817-1ACP +Amplifier_Operational:ADA4817-1ARD +Amplifier_Operational:ADA4817-2ACP Amplifier_Operational:ADA4841-1YRJ Amplifier_Operational:ADA4870ARRZ Amplifier_Operational:ADA4898-1YRDZ @@ -1059,6 +1197,7 @@ Amplifier_Operational:LM7171xIM Amplifier_Operational:LM7171xIN Amplifier_Operational:LM7332 Amplifier_Operational:LM741 +Amplifier_Operational:LM8261 Amplifier_Operational:LMC6062 Amplifier_Operational:LMC6082 Amplifier_Operational:LMC6482 @@ -1070,10 +1209,12 @@ Amplifier_Operational:LMH6609MF Amplifier_Operational:LMH6611 Amplifier_Operational:LMH6702MA Amplifier_Operational:LMH6702MF +Amplifier_Operational:LMH6733 Amplifier_Operational:LMV321 Amplifier_Operational:LMV324 Amplifier_Operational:LMV358 Amplifier_Operational:LMV601 +Amplifier_Operational:LOG114AxRGV Amplifier_Operational:LPV811DBV Amplifier_Operational:LPV812DGK Amplifier_Operational:LT1012 @@ -1148,9 +1289,7 @@ Amplifier_Operational:MCP6L02x-xMS Amplifier_Operational:MCP6L02x-xSN Amplifier_Operational:MCP6L04-xST Amplifier_Operational:MCP6L04x-xSL -Amplifier_Operational:MCP6L91RT-EMS Amplifier_Operational:MCP6L91RT-EOT -Amplifier_Operational:MCP6L91RT-ESN Amplifier_Operational:MCP6L91T-EOT Amplifier_Operational:MCP6L92 Amplifier_Operational:MCP6L94 @@ -1187,11 +1326,17 @@ Amplifier_Operational:OP249GS Amplifier_Operational:OP275 Amplifier_Operational:OP279 Amplifier_Operational:OP77 +Amplifier_Operational:OPA121KM +Amplifier_Operational:OPA121KP +Amplifier_Operational:OPA121KU Amplifier_Operational:OPA134 Amplifier_Operational:OPA1602 Amplifier_Operational:OPA1604 Amplifier_Operational:OPA1612AxD Amplifier_Operational:OPA1641 +Amplifier_Operational:OPA1655D +Amplifier_Operational:OPA1655DBV +Amplifier_Operational:OPA1656ID Amplifier_Operational:OPA1678 Amplifier_Operational:OPA1679 Amplifier_Operational:OPA1692xD @@ -1222,10 +1367,18 @@ Amplifier_Operational:OPA2356xxDGK Amplifier_Operational:OPA2376xxD Amplifier_Operational:OPA2376xxDGK Amplifier_Operational:OPA2376xxYZD +Amplifier_Operational:OPA2604AP Amplifier_Operational:OPA2691 Amplifier_Operational:OPA2691-14 Amplifier_Operational:OPA2695xD Amplifier_Operational:OPA2695xRGT +Amplifier_Operational:OPA2890ID +Amplifier_Operational:OPA2890IDGS +Amplifier_Operational:OPA2994xD +Amplifier_Operational:OPA310SxDBV +Amplifier_Operational:OPA310SxDCK +Amplifier_Operational:OPA310xDBV +Amplifier_Operational:OPA310xDCK Amplifier_Operational:OPA330xxD Amplifier_Operational:OPA330xxDBV Amplifier_Operational:OPA330xxDCK @@ -1259,6 +1412,11 @@ Amplifier_Operational:OPA551U Amplifier_Operational:OPA552P Amplifier_Operational:OPA552U Amplifier_Operational:OPA569DWP +Amplifier_Operational:OPA690xD +Amplifier_Operational:OPA690xDBV +Amplifier_Operational:OPA810xD +Amplifier_Operational:OPA810xDBV +Amplifier_Operational:OPA810xDCK Amplifier_Operational:OPA818xDRG Amplifier_Operational:OPA842xD Amplifier_Operational:OPA842xDBV @@ -1295,6 +1453,20 @@ Amplifier_Operational:TLC272 Amplifier_Operational:TLC274 Amplifier_Operational:TLC277 Amplifier_Operational:TLC279 +Amplifier_Operational:TLC27M2xD +Amplifier_Operational:TLC27M2xPS +Amplifier_Operational:TLC27M2xPW +Amplifier_Operational:TLC27M7xD +Amplifier_Operational:TLC27M7xPS +Amplifier_Operational:TLE2141ACD +Amplifier_Operational:TLE2141ACP +Amplifier_Operational:TLE2141AID +Amplifier_Operational:TLE2141AIP +Amplifier_Operational:TLE2141CD +Amplifier_Operational:TLE2141CP +Amplifier_Operational:TLE2141ID +Amplifier_Operational:TLE2141IP +Amplifier_Operational:TLE2141MD Amplifier_Operational:TLV172IDCK Amplifier_Operational:TLV2371D Amplifier_Operational:TLV2371DBV @@ -1305,10 +1477,12 @@ Amplifier_Operational:TLV9001IDCK Amplifier_Operational:TLV9004xRUCR Amplifier_Operational:TLV9061xDBV Amplifier_Operational:TLV9061xDCK +Amplifier_Operational:TLV9061xDPW Amplifier_Operational:TLV9062 Amplifier_Operational:TLV9062xD Amplifier_Operational:TLV9062xDSG Amplifier_Operational:TLV9064 +Amplifier_Operational:TLV9064xRTE Amplifier_Operational:TLV9301xDBV Amplifier_Operational:TLV9301xDCK Amplifier_Operational:TLV9302xD @@ -1328,6 +1502,8 @@ Amplifier_Operational:TSV912IDT Amplifier_Operational:TSV912IQ2T Amplifier_Operational:TSV912IST Amplifier_Operational:TSV914 +Amplifier_Operational:TSV991AILT +Amplifier_Operational:TSV991AIQ1T Amplifier_Operational:TSV994 Amplifier_Video:AD813 Amplifier_Video:MAX453 @@ -1342,16 +1518,31 @@ Analog:LF398H Analog:LF398_DIP8 Analog:LF398_SOIC14 Analog:LF398_SOIC8 +Analog:LM231N +Analog:LM331N +Analog:LTC1966 +Analog:LTC1967 +Analog:LTC1968 Analog:MLX90314xDF Analog:MLX90320xFR Analog:MPY634KP Analog:MPY634KU Analog:PGA112 Analog:PGA113 +Analog_ADC:AD40xxBCPZ +Analog_ADC:AD40xxBRMZ +Analog_ADC:AD574A Analog_ADC:AD6644 Analog_ADC:AD6645 Analog_ADC:AD7171 Analog_ADC:AD7298 +Analog_ADC:AD7321 +Analog_ADC:AD7322 +Analog_ADC:AD7323 +Analog_ADC:AD7324 +Analog_ADC:AD7327 +Analog_ADC:AD7328 +Analog_ADC:AD7329 Analog_ADC:AD7606 Analog_ADC:AD7606-4 Analog_ADC:AD7606-6 @@ -1360,6 +1551,7 @@ Analog_ADC:AD7682BCP Analog_ADC:AD7689xCP Analog_ADC:AD7699BCP Analog_ADC:AD7722 +Analog_ADC:AD7745 Analog_ADC:AD7746 Analog_ADC:AD7794 Analog_ADC:AD7795 @@ -1375,6 +1567,7 @@ Analog_ADC:ADC101C021CIMK Analog_ADC:ADC101C021CIMM Analog_ADC:ADC1173 Analog_ADC:ADC121C021CIMM +Analog_ADC:ADC1283 Analog_ADC:ADC128D818 Analog_ADC:ADS1013IDGS Analog_ADC:ADS1014IDGS @@ -1392,6 +1585,7 @@ Analog_ADC:ADS1232IPW Analog_ADC:ADS1234IPW Analog_ADC:ADS1243 Analog_ADC:ADS1251 +Analog_ADC:ADS127L01IPBS Analog_ADC:ADS1298xPAG Analog_ADC:ADS7029 Analog_ADC:ADS7039 @@ -1482,21 +1676,22 @@ Analog_ADC:MCP3201 Analog_ADC:MCP3202 Analog_ADC:MCP3204 Analog_ADC:MCP3208 +Analog_ADC:MCP3221 Analog_ADC:MCP3301 Analog_ADC:MCP3421A0T-ECH -Analog_ADC:MCP3422 -Analog_ADC:MCP3423 -Analog_ADC:MCP3424 -Analog_ADC:MCP3425A0T-ECH -Analog_ADC:MCP3425A1T-ECH -Analog_ADC:MCP3425A2T-ECH -Analog_ADC:MCP3425A3T-ECH -Analog_ADC:MCP3426-xMC -Analog_ADC:MCP3426-xMS -Analog_ADC:MCP3426-xSN -Analog_ADC:MCP3427-xMF -Analog_ADC:MCP3427-xUN -Analog_ADC:MCP3428 +Analog_ADC:MCP3422Axx-xMS +Analog_ADC:MCP3422Axx-xSN +Analog_ADC:MCP3423x-xUN +Analog_ADC:MCP3424x-xSL +Analog_ADC:MCP3424x-xST +Analog_ADC:MCP3425Axx-xCH +Analog_ADC:MCP3426Axx-xMC +Analog_ADC:MCP3426Axx-xMS +Analog_ADC:MCP3426Axx-xSN +Analog_ADC:MCP3427x-xMF +Analog_ADC:MCP3427x-xUN +Analog_ADC:MCP3428x-xSL +Analog_ADC:MCP3428x-xST Analog_ADC:MCP3550-50-EMS Analog_ADC:MCP3550-60-ESN Analog_ADC:MCP3551-EMS @@ -1516,6 +1711,7 @@ Analog_DAC:AD5689BRUZ Analog_DAC:AD5689RxCPZ Analog_DAC:AD5689RxRUZ Analog_DAC:AD5691RxRM +Analog_DAC:AD5692RxRM Analog_DAC:AD5693RxRM Analog_DAC:AD5697RBCPZ Analog_DAC:AD5697RBRUZ @@ -1562,27 +1758,46 @@ Analog_DAC:AD9106BCP Analog_DAC:AD9142 Analog_DAC:AD9744 Analog_DAC:ADS7830 +Analog_DAC:CS434x-xZZ Analog_DAC:DAC08 Analog_DAC:DAC0808_DIP Analog_DAC:DAC0808_SOIC Analog_DAC:DAC081C081CIMK +Analog_DAC:DAC1006LCN +Analog_DAC:DAC1006LCWM +Analog_DAC:DAC1007LCN +Analog_DAC:DAC1008LCN Analog_DAC:DAC101C081CIMK Analog_DAC:DAC121C081CIMK Analog_DAC:DAC1220E Analog_DAC:DAC5311xDCK Analog_DAC:DAC5578xPW Analog_DAC:DAC5578xRGE +Analog_DAC:DAC60502 +Analog_DAC:DAC60504 Analog_DAC:DAC6311xDCK Analog_DAC:DAC6578xPW Analog_DAC:DAC6578xRGE +Analog_DAC:DAC70502 +Analog_DAC:DAC70504 Analog_DAC:DAC7311xDCK Analog_DAC:DAC7513_DCN Analog_DAC:DAC7565 Analog_DAC:DAC7578xPW Analog_DAC:DAC7578xRGE Analog_DAC:DAC7750xRHA +Analog_DAC:DAC80502 +Analog_DAC:DAC80504 Analog_DAC:DAC8165 +Analog_DAC:DAC8501E +Analog_DAC:DAC8531E +Analog_DAC:DAC8531IDRB +Analog_DAC:DAC8550IxDGK +Analog_DAC:DAC8551IxDGK +Analog_DAC:DAC8552 +Analog_DAC:DAC8560IxDGK Analog_DAC:DAC8565 +Analog_DAC:DAC8571IDGK Analog_DAC:DAC8750xRHA Analog_DAC:LTC1257 Analog_DAC:LTC1446 @@ -1655,6 +1870,7 @@ Analog_Switch:ADG729 Analog_Switch:ADG733BRQ Analog_Switch:ADG733BRU Analog_Switch:ADG734 +Analog_Switch:ADG758CPZ Analog_Switch:ADG824BCP Analog_Switch:ADG884xCP Analog_Switch:ADG884xRM @@ -1714,7 +1930,9 @@ Analog_Switch:DG9421DV Analog_Switch:DG9422DV Analog_Switch:FSA3157L6X Analog_Switch:FSA3157P6X +Analog_Switch:HEF4066BT Analog_Switch:HI524 +Analog_Switch:MAX14662 Analog_Switch:MAX14759 Analog_Switch:MAX14761 Analog_Switch:MAX14778 @@ -1749,20 +1967,30 @@ Analog_Switch:MAX40200ANS Analog_Switch:MAX40200AUK Analog_Switch:NC7SB3157L6X Analog_Switch:NC7SB3157P6X +Analog_Switch:NX3L4051HR +Analog_Switch:NX3L4051PW Analog_Switch:SN74CBT3253 +Analog_Switch:TMUX1101DBV +Analog_Switch:TMUX1101DCK +Analog_Switch:TMUX1102DBV +Analog_Switch:TMUX1102DCK Analog_Switch:TMUX1108PW -Analog_Switch:TS3A24159DGSR -Analog_Switch:TS3A24159DRCR -Analog_Switch:TS3A24159YZPR +Analog_Switch:TMUX154EDGS +Analog_Switch:TMUX154ERSW +Analog_Switch:TS3A24159DGS +Analog_Switch:TS3A24159DRC +Analog_Switch:TS3A24159YZP Analog_Switch:TS3A27518EPW Analog_Switch:TS3A27518ERTW Analog_Switch:TS3A5017RGY +Analog_Switch:TS3A5017RSV +Analog_Switch:TS3A5223RSW Analog_Switch:TS3DS10224RUK Analog_Switch:TS3L501ERUA Analog_Switch:TS5A23159DGS Analog_Switch:TS5A23159RSE Analog_Switch:TS5A3159ADBVR -Analog_Switch:TS5A3159ADCKR +Analog_Switch:TS5A3159ADCK Analog_Switch:TS5A3159AYZPR Analog_Switch:TS5A3159DBV Analog_Switch:TS5A3159DCK @@ -1820,13 +2048,18 @@ Audio:ISD2575S Audio:ISD2590E Audio:ISD2590P Audio:ISD2590S +Audio:MAX98357A +Audio:MAX98357B Audio:MN3005 Audio:MN3007 Audio:MN3207 Audio:MSGEQ7 +Audio:PCM1754DBQ +Audio:PCM1780 Audio:PCM1792A Audio:PCM1794A Audio:PCM2902 +Audio:PCM3060 Audio:PCM5100 Audio:PCM5100A Audio:PCM5101 @@ -1835,16 +2068,22 @@ Audio:PCM5102 Audio:PCM5102A Audio:PCM5121PW Audio:PCM5122PW +Audio:PGA2310PA +Audio:PGA2310UA +Audio:PGA2500 Audio:PGA4311 Audio:PT2258 Audio:PT2258-S Audio:PT2399 Audio:RD5106A Audio:RD5107A +Audio:RE46C317 +Audio:RE46C318 Audio:SAD1024 Audio:SAD512 Audio:SGTL5000XNAA3 Audio:SGTL5000XNLA3 +Audio:SPN1001 Audio:SRC4392xPFB Audio:SSI2144 Audio:SSI2164 @@ -1873,8 +2112,10 @@ Battery_Management:ADP5091 Battery_Management:ADP5092 Battery_Management:AP9101CK Battery_Management:AP9101CK6 +Battery_Management:APW7261 Battery_Management:AS8506C Battery_Management:BQ2003 +Battery_Management:BQ21040DBV Battery_Management:BQ24004 Battery_Management:BQ24005 Battery_Management:BQ24006 @@ -1889,10 +2130,16 @@ Battery_Management:BQ24090DGQ Battery_Management:BQ24133RGY Battery_Management:BQ24166RGE Battery_Management:BQ24167RGE +Battery_Management:BQ24610 +Battery_Management:BQ24617 +Battery_Management:BQ24650 Battery_Management:BQ2501x +Battery_Management:BQ25040 +Battery_Management:BQ25173DSG Battery_Management:BQ25504 Battery_Management:BQ25570 Battery_Management:BQ25601 +Battery_Management:BQ25886RGE Battery_Management:BQ25887 Battery_Management:BQ25895RTW Battery_Management:BQ27441-G1 @@ -1914,10 +2161,12 @@ Battery_Management:BQ76940DBT Battery_Management:BQ78350DBT Battery_Management:BQ78350DBT-R1 Battery_Management:DS2745U +Battery_Management:DW01A Battery_Management:LC709203FQH-01TWG Battery_Management:LC709203FQH-02TWG Battery_Management:LC709203FQH-03TWG Battery_Management:LC709203FQH-04TWG +Battery_Management:LGS5500EP Battery_Management:LP3947 Battery_Management:LT3652EDD Battery_Management:LT3652EMSE @@ -1925,6 +2174,7 @@ Battery_Management:LT3652IDD Battery_Management:LT3652IMSE Battery_Management:LTC2942 Battery_Management:LTC2942-1 +Battery_Management:LTC2959 Battery_Management:LTC3553 Battery_Management:LTC3555 Battery_Management:LTC3555-1 @@ -1943,6 +2193,7 @@ Battery_Management:LTC4055 Battery_Management:LTC4055-1 Battery_Management:LTC4060EDHC Battery_Management:LTC4060EFE +Battery_Management:LTC4067EDE Battery_Management:LTC4156 Battery_Management:LTC6803-2 Battery_Management:LTC6803-4 @@ -1971,13 +2222,21 @@ Battery_Management:MCP73811T-420I-OT Battery_Management:MCP73811T-435I-OT Battery_Management:MCP73812T-420I-OT Battery_Management:MCP73812T-435I-OT +Battery_Management:MCP73831-2-MC Battery_Management:MCP73831-2-OT +Battery_Management:MCP73831-3-MC Battery_Management:MCP73831-3-OT +Battery_Management:MCP73831-4-MC Battery_Management:MCP73831-4-OT +Battery_Management:MCP73831-5-MC Battery_Management:MCP73831-5-OT +Battery_Management:MCP73832-2-MC Battery_Management:MCP73832-2-OT +Battery_Management:MCP73832-3-MC Battery_Management:MCP73832-3-OT +Battery_Management:MCP73832-4-MC Battery_Management:MCP73832-4-OT +Battery_Management:MCP73832-5-MC Battery_Management:MCP73832-5-OT Battery_Management:MCP73833-xxx-MF Battery_Management:MCP73833-xxx-UN @@ -1992,6 +2251,10 @@ Battery_Management:MCP73871-3CA Battery_Management:MCP73871-3CC Battery_Management:MCP73871-4CA Battery_Management:MCP73871-4CC +Battery_Management:SLM6800 +Battery_Management:TP4056-42-ESOP8 +Battery_Management:TP4057 +Buffer:CDCV304 Buffer:PI6C5946002ZH Comparator:AD8561 Comparator:ADCMP350 @@ -2048,8 +2311,12 @@ Comparator:MIC845L Comparator:MIC845N Comparator:TL3116 Comparator:TL331 +Comparator:TLV3501AID +Comparator:TLV3501AIDBV Comparator:TLV7031DBV Comparator:TLV7041DBV +Comparator:TLV7041DCK +Comparator:TLV7041SDCK Connector:4P2C Connector:4P2C_Shielded Connector:4P4C @@ -2176,42 +2443,86 @@ Connector:Conn_01x39_Pin Connector:Conn_01x39_Socket Connector:Conn_01x40_Pin Connector:Conn_01x40_Socket +Connector:Conn_01x41_Pin +Connector:Conn_01x41_Socket +Connector:Conn_01x42_Pin +Connector:Conn_01x42_Socket +Connector:Conn_01x43_Pin +Connector:Conn_01x43_Socket +Connector:Conn_01x44_Pin +Connector:Conn_01x44_Socket +Connector:Conn_01x45_Pin +Connector:Conn_01x45_Socket +Connector:Conn_01x46_Pin +Connector:Conn_01x46_Socket +Connector:Conn_01x47_Pin +Connector:Conn_01x47_Socket +Connector:Conn_01x48_Pin +Connector:Conn_01x48_Socket +Connector:Conn_01x49_Pin +Connector:Conn_01x49_Socket +Connector:Conn_01x50_Pin +Connector:Conn_01x50_Socket +Connector:Conn_01x51_Pin +Connector:Conn_01x51_Socket +Connector:Conn_01x52_Pin +Connector:Conn_01x52_Socket +Connector:Conn_01x53_Pin +Connector:Conn_01x53_Socket +Connector:Conn_01x54_Pin +Connector:Conn_01x54_Socket +Connector:Conn_01x55_Pin +Connector:Conn_01x55_Socket +Connector:Conn_01x56_Pin +Connector:Conn_01x56_Socket +Connector:Conn_01x57_Pin +Connector:Conn_01x57_Socket +Connector:Conn_01x58_Pin +Connector:Conn_01x58_Socket +Connector:Conn_01x59_Pin +Connector:Conn_01x59_Socket +Connector:Conn_01x60_Pin +Connector:Conn_01x60_Socket Connector:Conn_15X4 +Connector:Conn_ARM_Cortex_Debug_ETM_20 Connector:Conn_ARM_JTAG_SWD_10 Connector:Conn_ARM_JTAG_SWD_20 Connector:Conn_ARM_SWD_TagConnect_TC2030 Connector:Conn_ARM_SWD_TagConnect_TC2030-NL Connector:Conn_Coaxial Connector:Conn_Coaxial_Power +Connector:Conn_Coaxial_Small Connector:Conn_Coaxial_x2 Connector:Conn_Coaxial_x2_Isolated Connector:Conn_PIC_ICSP_ICD +Connector:Conn_Plug_2P +Connector:Conn_Plug_3P_Protected +Connector:Conn_Receptacle_2P +Connector:Conn_Receptacle_3P_Protected Connector:Conn_ST_STDC14 +Connector:Conn_Shielded_Pair Connector:Conn_Triaxial -Connector:Conn_WallPlug -Connector:Conn_WallPlug_Earth -Connector:Conn_WallSocket -Connector:Conn_WallSocket_Earth -Connector:DA15_Plug -Connector:DA15_Plug_MountingHoles -Connector:DA15_Receptacle -Connector:DA15_Receptacle_MountingHoles -Connector:DB25_Plug -Connector:DB25_Plug_MountingHoles -Connector:DB25_Receptacle -Connector:DB25_Receptacle_MountingHoles -Connector:DC37_Plug -Connector:DC37_Plug_MountingHoles -Connector:DC37_Receptacle -Connector:DC37_Receptacle_MountingHoles -Connector:DE15_Plug_HighDensity -Connector:DE15_Plug_HighDensity_MountingHoles -Connector:DE15_Receptacle_HighDensity -Connector:DE15_Receptacle_HighDensity_MountingHoles -Connector:DE9_Plug -Connector:DE9_Plug_MountingHoles -Connector:DE9_Receptacle -Connector:DE9_Receptacle_MountingHoles +Connector:Conn_Triaxial_Same_Side +Connector:DA15_Pins +Connector:DA15_Pins_MountingHoles +Connector:DA15_Socket +Connector:DA15_Socket_MountingHoles +Connector:DB25_Pins +Connector:DB25_Pins_MountingHoles +Connector:DB25_Socket +Connector:DB25_Socket_MountingHoles +Connector:DC37_Pins +Connector:DC37_Pins_MountingHoles +Connector:DC37_Socket +Connector:DC37_Socket_MountingHoles +Connector:DE15_Pins_HighDensity +Connector:DE15_Pins_HighDensity_MountingHoles +Connector:DE15_Socket_HighDensity +Connector:DE15_Socket_HighDensity_MountingHoles +Connector:DE9_Pins +Connector:DE9_Pins_MountingHoles +Connector:DE9_Socket +Connector:DE9_Socket_MountingHoles Connector:DIN-3 Connector:DIN-4 Connector:DIN-5 @@ -2245,6 +2556,8 @@ Connector:DIN41612_02x32_AB Connector:DIN41612_02x32_AC Connector:DIN41612_02x32_AE Connector:DIN41612_02x32_ZB +Connector:DVI-D_Dual_Link +Connector:DVI-I_Dual_Link Connector:ExpressCard Connector:HDMI_A Connector:HDMI_A_1.4 @@ -2253,6 +2566,16 @@ Connector:HDMI_C_1.3 Connector:HDMI_C_1.4 Connector:HDMI_D_1.4 Connector:HDMI_E +Connector:IEC61076-2_M8_A-coding_01x03_Plug_Shielded +Connector:IEC61076-2_M8_A-coding_01x03_Receptacle_Shielded +Connector:IEC61076-2_M8_A-coding_01x04_Plug_Shielded +Connector:IEC61076-2_M8_A-coding_01x04_Receptacle_Shielded +Connector:IEC_60320_C13_Plug +Connector:IEC_60320_C14_Receptacle +Connector:IEC_60320_C5_Plug +Connector:IEC_60320_C6_Receptacle +Connector:IEC_60320_C7_Plug +Connector:IEC_60320_C8_Receptacle Connector:IEEE1394a Connector:JAE_SIM_Card_SF72S006 Connector:Jack-DC @@ -2310,8 +2633,10 @@ Connector:RJ45_Bel_V895-1001-AW Connector:RJ45_Halo_HFJ11-x2450E-LxxRL Connector:RJ45_Halo_HFJ11-x2450ERL Connector:RJ45_Halo_HFJ11-x2450HRL +Connector:RJ45_Hanrun_HR911105A_Horizontal Connector:RJ45_JK00177 Connector:RJ45_JK0654219 +Connector:RJ45_Kycon_G7LX-A88S7-BP-GY Connector:RJ45_LED Connector:RJ45_LED_Shielded Connector:RJ45_LED_Shielded_x2 @@ -2320,6 +2645,7 @@ Connector:RJ45_RB1-125B8G1A Connector:RJ45_Shielded Connector:RJ45_Wuerth_74980111211 Connector:RJ45_Wuerth_7499010121A +Connector:RJ45_Wuerth_7499010211A Connector:RJ45_Wuerth_7499151120 Connector:RJ48 Connector:RJ48_Shielded @@ -2329,9 +2655,10 @@ Connector:RJ61 Connector:RJ61_Shielded Connector:RJ9 Connector:RJ9_Shielded -Connector:Raspberry_Pi_2_3 +Connector:Raspberry_Pi_4 Connector:SCART-F -Connector:SD_Card +Connector:SD_Card_Device +Connector:SD_Card_Receptacle Connector:SIM_Card Connector:SIM_Card_Shielded Connector:SODIMM-200 @@ -2358,6 +2685,9 @@ Connector:Screw_Terminal_01x17 Connector:Screw_Terminal_01x18 Connector:Screw_Terminal_01x19 Connector:Screw_Terminal_01x20 +Connector:TC2030 +Connector:TC2050 +Connector:TC2070 Connector:TestPoint Connector:TestPoint_2Pole Connector:TestPoint_Alt @@ -2378,8 +2708,10 @@ Connector:USB_B_Mini Connector:USB_C_Plug Connector:USB_C_Plug_USB2.0 Connector:USB_C_Receptacle +Connector:USB_C_Receptacle_PowerOnly_24P Connector:USB_C_Receptacle_PowerOnly_6P -Connector:USB_C_Receptacle_USB2.0 +Connector:USB_C_Receptacle_USB2.0_14P +Connector:USB_C_Receptacle_USB2.0_16P Connector:USB_OTG Connector_Audio:AudioJack2 Connector_Audio:AudioJack2_Dual_Ground_Switch @@ -2654,6 +2986,26 @@ Connector_Generic:Conn_01x37 Connector_Generic:Conn_01x38 Connector_Generic:Conn_01x39 Connector_Generic:Conn_01x40 +Connector_Generic:Conn_01x41 +Connector_Generic:Conn_01x42 +Connector_Generic:Conn_01x43 +Connector_Generic:Conn_01x44 +Connector_Generic:Conn_01x45 +Connector_Generic:Conn_01x46 +Connector_Generic:Conn_01x47 +Connector_Generic:Conn_01x48 +Connector_Generic:Conn_01x49 +Connector_Generic:Conn_01x50 +Connector_Generic:Conn_01x51 +Connector_Generic:Conn_01x52 +Connector_Generic:Conn_01x53 +Connector_Generic:Conn_01x54 +Connector_Generic:Conn_01x55 +Connector_Generic:Conn_01x56 +Connector_Generic:Conn_01x57 +Connector_Generic:Conn_01x58 +Connector_Generic:Conn_01x59 +Connector_Generic:Conn_01x60 Connector_Generic:Conn_02x01 Connector_Generic:Conn_02x01_Row_Letter_First Connector_Generic:Conn_02x01_Row_Letter_Last @@ -2852,6 +3204,46 @@ Connector_Generic:Conn_02x40_Odd_Even Connector_Generic:Conn_02x40_Row_Letter_First Connector_Generic:Conn_02x40_Row_Letter_Last Connector_Generic:Conn_02x40_Top_Bottom +Connector_Generic:Conn_02x41_Row_Letter_First +Connector_Generic:Conn_02x41_Row_Letter_Last +Connector_Generic:Conn_02x42_Row_Letter_First +Connector_Generic:Conn_02x42_Row_Letter_Last +Connector_Generic:Conn_02x43_Row_Letter_First +Connector_Generic:Conn_02x43_Row_Letter_Last +Connector_Generic:Conn_02x44_Row_Letter_First +Connector_Generic:Conn_02x44_Row_Letter_Last +Connector_Generic:Conn_02x45_Row_Letter_First +Connector_Generic:Conn_02x45_Row_Letter_Last +Connector_Generic:Conn_02x46_Row_Letter_First +Connector_Generic:Conn_02x46_Row_Letter_Last +Connector_Generic:Conn_02x47_Row_Letter_First +Connector_Generic:Conn_02x47_Row_Letter_Last +Connector_Generic:Conn_02x48_Row_Letter_First +Connector_Generic:Conn_02x48_Row_Letter_Last +Connector_Generic:Conn_02x49_Row_Letter_First +Connector_Generic:Conn_02x49_Row_Letter_Last +Connector_Generic:Conn_02x50_Row_Letter_First +Connector_Generic:Conn_02x50_Row_Letter_Last +Connector_Generic:Conn_02x51_Row_Letter_First +Connector_Generic:Conn_02x51_Row_Letter_Last +Connector_Generic:Conn_02x52_Row_Letter_First +Connector_Generic:Conn_02x52_Row_Letter_Last +Connector_Generic:Conn_02x53_Row_Letter_First +Connector_Generic:Conn_02x53_Row_Letter_Last +Connector_Generic:Conn_02x54_Row_Letter_First +Connector_Generic:Conn_02x54_Row_Letter_Last +Connector_Generic:Conn_02x55_Row_Letter_First +Connector_Generic:Conn_02x55_Row_Letter_Last +Connector_Generic:Conn_02x56_Row_Letter_First +Connector_Generic:Conn_02x56_Row_Letter_Last +Connector_Generic:Conn_02x57_Row_Letter_First +Connector_Generic:Conn_02x57_Row_Letter_Last +Connector_Generic:Conn_02x58_Row_Letter_First +Connector_Generic:Conn_02x58_Row_Letter_Last +Connector_Generic:Conn_02x59_Row_Letter_First +Connector_Generic:Conn_02x59_Row_Letter_Last +Connector_Generic:Conn_02x60_Row_Letter_First +Connector_Generic:Conn_02x60_Row_Letter_Last Connector_Generic:Conn_2Rows-05Pins Connector_Generic:Conn_2Rows-07Pins Connector_Generic:Conn_2Rows-09Pins @@ -2928,6 +3320,26 @@ Connector_Generic_MountingPin:Conn_01x37_MountingPin Connector_Generic_MountingPin:Conn_01x38_MountingPin Connector_Generic_MountingPin:Conn_01x39_MountingPin Connector_Generic_MountingPin:Conn_01x40_MountingPin +Connector_Generic_MountingPin:Conn_01x41_MountingPin +Connector_Generic_MountingPin:Conn_01x42_MountingPin +Connector_Generic_MountingPin:Conn_01x43_MountingPin +Connector_Generic_MountingPin:Conn_01x44_MountingPin +Connector_Generic_MountingPin:Conn_01x45_MountingPin +Connector_Generic_MountingPin:Conn_01x46_MountingPin +Connector_Generic_MountingPin:Conn_01x47_MountingPin +Connector_Generic_MountingPin:Conn_01x48_MountingPin +Connector_Generic_MountingPin:Conn_01x49_MountingPin +Connector_Generic_MountingPin:Conn_01x50_MountingPin +Connector_Generic_MountingPin:Conn_01x51_MountingPin +Connector_Generic_MountingPin:Conn_01x52_MountingPin +Connector_Generic_MountingPin:Conn_01x53_MountingPin +Connector_Generic_MountingPin:Conn_01x54_MountingPin +Connector_Generic_MountingPin:Conn_01x55_MountingPin +Connector_Generic_MountingPin:Conn_01x56_MountingPin +Connector_Generic_MountingPin:Conn_01x57_MountingPin +Connector_Generic_MountingPin:Conn_01x58_MountingPin +Connector_Generic_MountingPin:Conn_01x59_MountingPin +Connector_Generic_MountingPin:Conn_01x60_MountingPin Connector_Generic_MountingPin:Conn_02x01_MountingPin Connector_Generic_MountingPin:Conn_02x01_Row_Letter_First_MountingPin Connector_Generic_MountingPin:Conn_02x01_Row_Letter_Last_MountingPin @@ -3126,6 +3538,46 @@ Connector_Generic_MountingPin:Conn_02x40_Odd_Even_MountingPin Connector_Generic_MountingPin:Conn_02x40_Row_Letter_First_MountingPin Connector_Generic_MountingPin:Conn_02x40_Row_Letter_Last_MountingPin Connector_Generic_MountingPin:Conn_02x40_Top_Bottom_MountingPin +Connector_Generic_MountingPin:Conn_02x41_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x41_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x42_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x42_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x43_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x43_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x44_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x44_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x45_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x45_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x46_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x46_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x47_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x47_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x48_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x48_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x49_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x49_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x50_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x50_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x51_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x51_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x52_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x52_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x53_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x53_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x54_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x54_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x55_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x55_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x56_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x56_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x57_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x57_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x58_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x58_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x59_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x59_Row_Letter_Last_MountingPin +Connector_Generic_MountingPin:Conn_02x60_Row_Letter_First_MountingPin +Connector_Generic_MountingPin:Conn_02x60_Row_Letter_Last_MountingPin Connector_Generic_MountingPin:Conn_2Rows-05Pins_MountingPin Connector_Generic_MountingPin:Conn_2Rows-07Pins_MountingPin Connector_Generic_MountingPin:Conn_2Rows-09Pins_MountingPin @@ -3202,6 +3654,26 @@ Connector_Generic_Shielded:Conn_01x37_Shielded Connector_Generic_Shielded:Conn_01x38_Shielded Connector_Generic_Shielded:Conn_01x39_Shielded Connector_Generic_Shielded:Conn_01x40_Shielded +Connector_Generic_Shielded:Conn_01x41_Shielded +Connector_Generic_Shielded:Conn_01x42_Shielded +Connector_Generic_Shielded:Conn_01x43_Shielded +Connector_Generic_Shielded:Conn_01x44_Shielded +Connector_Generic_Shielded:Conn_01x45_Shielded +Connector_Generic_Shielded:Conn_01x46_Shielded +Connector_Generic_Shielded:Conn_01x47_Shielded +Connector_Generic_Shielded:Conn_01x48_Shielded +Connector_Generic_Shielded:Conn_01x49_Shielded +Connector_Generic_Shielded:Conn_01x50_Shielded +Connector_Generic_Shielded:Conn_01x51_Shielded +Connector_Generic_Shielded:Conn_01x52_Shielded +Connector_Generic_Shielded:Conn_01x53_Shielded +Connector_Generic_Shielded:Conn_01x54_Shielded +Connector_Generic_Shielded:Conn_01x55_Shielded +Connector_Generic_Shielded:Conn_01x56_Shielded +Connector_Generic_Shielded:Conn_01x57_Shielded +Connector_Generic_Shielded:Conn_01x58_Shielded +Connector_Generic_Shielded:Conn_01x59_Shielded +Connector_Generic_Shielded:Conn_01x60_Shielded Connector_Generic_Shielded:Conn_02x01_Row_Letter_First_Shielded Connector_Generic_Shielded:Conn_02x01_Row_Letter_Last_Shielded Connector_Generic_Shielded:Conn_02x01_Shielded @@ -3400,6 +3872,47 @@ Connector_Generic_Shielded:Conn_02x40_Odd_Even_Shielded Connector_Generic_Shielded:Conn_02x40_Row_Letter_First_Shielded Connector_Generic_Shielded:Conn_02x40_Row_Letter_Last_Shielded Connector_Generic_Shielded:Conn_02x40_Top_Bottom_Shielded +Connector_Generic_Shielded:Conn_02x40_Top_Bottom_Shielded_1 +Connector_Generic_Shielded:Conn_02x41_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x41_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x42_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x42_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x43_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x43_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x44_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x44_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x45_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x45_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x46_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x46_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x47_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x47_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x48_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x48_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x49_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x49_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x50_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x50_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x51_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x51_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x52_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x52_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x53_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x53_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x54_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x54_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x55_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x55_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x56_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x56_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x57_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x57_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x58_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x58_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x59_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x59_Row_Letter_Last_Shielded +Connector_Generic_Shielded:Conn_02x60_Row_Letter_First_Shielded +Connector_Generic_Shielded:Conn_02x60_Row_Letter_Last_Shielded Connector_Generic_Shielded:Conn_2Rows-05Pins_Shielded Connector_Generic_Shielded:Conn_2Rows-07Pins_Shielded Connector_Generic_Shielded:Conn_2Rows-09Pins_Shielded @@ -3443,6 +3956,33 @@ Converter_ACDC:HLK-10M09 Converter_ACDC:HLK-10M12 Converter_ACDC:HLK-10M15 Converter_ACDC:HLK-10M24 +Converter_ACDC:HLK-12M03A +Converter_ACDC:HLK-12M05A +Converter_ACDC:HLK-12M09A +Converter_ACDC:HLK-12M12A +Converter_ACDC:HLK-12M15A +Converter_ACDC:HLK-12M24A +Converter_ACDC:HLK-20M05 +Converter_ACDC:HLK-20M09 +Converter_ACDC:HLK-20M12 +Converter_ACDC:HLK-20M15 +Converter_ACDC:HLK-20M24 +Converter_ACDC:HLK-2M03 +Converter_ACDC:HLK-2M05 +Converter_ACDC:HLK-2M09 +Converter_ACDC:HLK-2M12 +Converter_ACDC:HLK-2M15 +Converter_ACDC:HLK-2M24 +Converter_ACDC:HLK-30M05 +Converter_ACDC:HLK-30M05C +Converter_ACDC:HLK-30M09 +Converter_ACDC:HLK-30M09C +Converter_ACDC:HLK-30M12 +Converter_ACDC:HLK-30M12C +Converter_ACDC:HLK-30M15 +Converter_ACDC:HLK-30M15C +Converter_ACDC:HLK-30M24 +Converter_ACDC:HLK-30M24C Converter_ACDC:HLK-5M03 Converter_ACDC:HLK-5M05 Converter_ACDC:HLK-5M09 @@ -3451,7 +3991,9 @@ Converter_ACDC:HLK-5M15 Converter_ACDC:HLK-5M24 Converter_ACDC:HLK-PM01 Converter_ACDC:HLK-PM03 +Converter_ACDC:HLK-PM09 Converter_ACDC:HLK-PM12 +Converter_ACDC:HLK-PM15 Converter_ACDC:HLK-PM24 Converter_ACDC:HS-40003 Converter_ACDC:HS-40005 @@ -3504,6 +4046,16 @@ Converter_ACDC:IRM-60-15 Converter_ACDC:IRM-60-24 Converter_ACDC:IRM-60-48 Converter_ACDC:IRM-60-5 +Converter_ACDC:MFM-10-12 +Converter_ACDC:MFM-10-15 +Converter_ACDC:MFM-10-24 +Converter_ACDC:MFM-10-3.3 +Converter_ACDC:MFM-10-5 +Converter_ACDC:MFM-15-12 +Converter_ACDC:MFM-15-15 +Converter_ACDC:MFM-15-24 +Converter_ACDC:MFM-15-3.3 +Converter_ACDC:MFM-15-5 Converter_ACDC:PBO-3-S12 Converter_ACDC:PBO-3-S15 Converter_ACDC:PBO-3-S24 @@ -3541,6 +4093,22 @@ Converter_ACDC:RAC20-15DK Converter_ACDC:RAC20-15SK Converter_ACDC:RAC20-24SK Converter_ACDC:RAC20-48SK +Converter_ACDC:TMF05105 +Converter_ACDC:TMF05112 +Converter_ACDC:TMF05115 +Converter_ACDC:TMF05124 +Converter_ACDC:TMF10105 +Converter_ACDC:TMF10112 +Converter_ACDC:TMF10115 +Converter_ACDC:TMF10124 +Converter_ACDC:TMF20105 +Converter_ACDC:TMF20112 +Converter_ACDC:TMF20115 +Converter_ACDC:TMF20124 +Converter_ACDC:TMF30105 +Converter_ACDC:TMF30112 +Converter_ACDC:TMF30115 +Converter_ACDC:TMF30124 Converter_ACDC:TMLM04103 Converter_ACDC:TMLM04105 Converter_ACDC:TMLM04109 @@ -3610,6 +4178,7 @@ Converter_DCDC:ATA00F18S-L Converter_DCDC:ATA00F36S-L Converter_DCDC:ATA00H18S-L Converter_DCDC:ATA00H36S-L +Converter_DCDC:Ag9905LP Converter_DCDC:BD8314NUV Converter_DCDC:IA0305D Converter_DCDC:IA0305S @@ -4045,12 +4614,16 @@ Converter_DCDC:MGJ2D242005SC Converter_DCDC:MGJ3T05150505MC Converter_DCDC:MGJ3T12150505MC Converter_DCDC:MGJ3T24150505MC +Converter_DCDC:MYRGPxx0060x21RC +Converter_DCDC:MYRGPxx0060x21RF Converter_DCDC:NCS1S1203SC Converter_DCDC:NCS1S1205SC Converter_DCDC:NCS1S1212SC Converter_DCDC:NCS1S2403SC Converter_DCDC:NCS1S2405SC Converter_DCDC:NCS1S2412SC +Converter_DCDC:NSD10-xxDyy +Converter_DCDC:NSD10-xxSyy Converter_DCDC:OKI-78SR-12_1.0-W36-C Converter_DCDC:OKI-78SR-12_1.0-W36H-C Converter_DCDC:OKI-78SR-3.3_1.5-W36-C @@ -4119,6 +4692,15 @@ Converter_DCDC:TBA2-2423 Converter_DCDC:TC7662AxPA Converter_DCDC:TC7662Bx0A Converter_DCDC:TC7662BxPA +Converter_DCDC:TDU1-0511 +Converter_DCDC:TDU1-0512 +Converter_DCDC:TDU1-0513 +Converter_DCDC:TDU1-1211 +Converter_DCDC:TDU1-1212 +Converter_DCDC:TDU1-1213 +Converter_DCDC:TDU1-2411 +Converter_DCDC:TDU1-2412 +Converter_DCDC:TDU1-2413 Converter_DCDC:TEA1-0505 Converter_DCDC:TEA1-0505E Converter_DCDC:TEA1-0505HI @@ -4140,6 +4722,58 @@ Converter_DCDC:TEC2-4812WI Converter_DCDC:TEC2-4813WI Converter_DCDC:TEC2-4815WI Converter_DCDC:TEC2-4819WI +Converter_DCDC:TEC3-2410UI +Converter_DCDC:TEC3-2411UI +Converter_DCDC:TEC3-2412UI +Converter_DCDC:TEC3-2413UI +Converter_DCDC:TEC3-2421UI +Converter_DCDC:TEC3-2422UI +Converter_DCDC:TEC3-2423UI +Converter_DCDC:TEL12-1211 +Converter_DCDC:TEL12-1212 +Converter_DCDC:TEL12-1213 +Converter_DCDC:TEL12-1215 +Converter_DCDC:TEL12-1222 +Converter_DCDC:TEL12-1223 +Converter_DCDC:TEL12-2411 +Converter_DCDC:TEL12-2411WI +Converter_DCDC:TEL12-2412 +Converter_DCDC:TEL12-2412WI +Converter_DCDC:TEL12-2413 +Converter_DCDC:TEL12-2413WI +Converter_DCDC:TEL12-2415 +Converter_DCDC:TEL12-2415WI +Converter_DCDC:TEL12-2422 +Converter_DCDC:TEL12-2422WI +Converter_DCDC:TEL12-2423 +Converter_DCDC:TEL12-2423WI +Converter_DCDC:TEL12-4811 +Converter_DCDC:TEL12-4811WI +Converter_DCDC:TEL12-4812 +Converter_DCDC:TEL12-4812WI +Converter_DCDC:TEL12-4813 +Converter_DCDC:TEL12-4813WI +Converter_DCDC:TEL12-4815 +Converter_DCDC:TEL12-4815WI +Converter_DCDC:TEL12-4822 +Converter_DCDC:TEL12-4822WI +Converter_DCDC:TEL12-4823 +Converter_DCDC:TEL12-4823WI +Converter_DCDC:TEN10-11010WIRH +Converter_DCDC:TEN10-11011WIRH +Converter_DCDC:TEN10-11012WIRH +Converter_DCDC:TEN10-11013WIRH +Converter_DCDC:TEN10-11015WIRH +Converter_DCDC:TEN10-11021WIRH +Converter_DCDC:TEN10-11022WIRH +Converter_DCDC:TEN10-11023WIRH +Converter_DCDC:TEN20-11011WIRH +Converter_DCDC:TEN20-11012WIRH +Converter_DCDC:TEN20-11013WIRH +Converter_DCDC:TEN20-11015WIRH +Converter_DCDC:TEN20-11021WIRH +Converter_DCDC:TEN20-11022WIRH +Converter_DCDC:TEN20-11023WIRH Converter_DCDC:TEN20-2410WIN Converter_DCDC:TEN20-2411WIN Converter_DCDC:TEN20-2412WIN @@ -4154,6 +4788,47 @@ Converter_DCDC:TEN20-4813WIN Converter_DCDC:TEN20-4821WIN Converter_DCDC:TEN20-4822WIN Converter_DCDC:TEN20-4823WIN +Converter_DCDC:TEN3-11010WIRH +Converter_DCDC:TEN3-11011WIRH +Converter_DCDC:TEN3-11012WIRH +Converter_DCDC:TEN3-11013WIRH +Converter_DCDC:TEN3-11015WIRH +Converter_DCDC:TEN3-11021WIRH +Converter_DCDC:TEN3-11022WIRH +Converter_DCDC:TEN3-11023WIRH +Converter_DCDC:TEN40-11011WIRH +Converter_DCDC:TEN40-11012WIRH +Converter_DCDC:TEN40-11013WIRH +Converter_DCDC:TEN40-11015WIRH +Converter_DCDC:TEN40-11022WIRH +Converter_DCDC:TEN40-11023WIRH +Converter_DCDC:TEN6-11010WIRH +Converter_DCDC:TEN6-11011WIRH +Converter_DCDC:TEN6-11012WIRH +Converter_DCDC:TEN6-11013WIRH +Converter_DCDC:TEN6-11015WIRH +Converter_DCDC:TEN6-11021WIRH +Converter_DCDC:TEN6-11022WIRH +Converter_DCDC:TEN6-11023WIRH +Converter_DCDC:THB10-1211 +Converter_DCDC:THB10-1212 +Converter_DCDC:THB10-1222 +Converter_DCDC:THB10-1223 +Converter_DCDC:THB10-2411 +Converter_DCDC:THB10-2412 +Converter_DCDC:THB10-2422 +Converter_DCDC:THB10-2423 +Converter_DCDC:THB10-4811 +Converter_DCDC:THB10-4812 +Converter_DCDC:THB10-4822 +Converter_DCDC:THB10-4823 +Converter_DCDC:THR40-7211WI +Converter_DCDC:THR40-7212WI +Converter_DCDC:THR40-7213WI +Converter_DCDC:THR40-72154WI +Converter_DCDC:THR40-7215WI +Converter_DCDC:THR40-7222WI +Converter_DCDC:THR40-7223WI Converter_DCDC:TMA-0505D Converter_DCDC:TMA-0505S Converter_DCDC:TMA-0512D @@ -4178,6 +4853,21 @@ Converter_DCDC:TMA-2412D Converter_DCDC:TMA-2412S Converter_DCDC:TMA-2415D Converter_DCDC:TMA-2415S +Converter_DCDC:TME-0303S +Converter_DCDC:TME-0305S +Converter_DCDC:TME-0503S +Converter_DCDC:TME-0505S +Converter_DCDC:TME-0509S +Converter_DCDC:TME-0512S +Converter_DCDC:TME-0515S +Converter_DCDC:TME-1205S +Converter_DCDC:TME-1209S +Converter_DCDC:TME-1212S +Converter_DCDC:TME-1215S +Converter_DCDC:TME-2405S +Converter_DCDC:TME-2409S +Converter_DCDC:TME-2412S +Converter_DCDC:TME-2415S Converter_DCDC:TMR-0510 Converter_DCDC:TMR-0511 Converter_DCDC:TMR-0512 @@ -4198,6 +4888,18 @@ Converter_DCDC:TMR2-4810WI Converter_DCDC:TMR2-4811WI Converter_DCDC:TMR2-4812WI Converter_DCDC:TMR2-4813WI +Converter_DCDC:TMR4-2411WI +Converter_DCDC:TMR4-2412WI +Converter_DCDC:TMR4-2413WI +Converter_DCDC:TMR4-2415WI +Converter_DCDC:TMR4-2422WI +Converter_DCDC:TMR4-2423WI +Converter_DCDC:TMR4-4811WI +Converter_DCDC:TMR4-4812WI +Converter_DCDC:TMR4-4813WI +Converter_DCDC:TMR4-4815WI +Converter_DCDC:TMR4-4822WI +Converter_DCDC:TMR4-4823WI Converter_DCDC:TMU3-0511 Converter_DCDC:TMU3-0512 Converter_DCDC:TMU3-0513 @@ -4207,9 +4909,25 @@ Converter_DCDC:TMU3-1213 Converter_DCDC:TMU3-2411 Converter_DCDC:TMU3-2412 Converter_DCDC:TMU3-2413 +Converter_DCDC:TPS43060RTE +Converter_DCDC:TPS54240DGQ +Converter_DCDC:TPS54240DRC +Converter_DCDC:TPS61022 Converter_DCDC:TPSM53602RDA Converter_DCDC:TPSM53603RDA Converter_DCDC:TPSM53604RDA +Converter_DCDC:TRA3-0511 +Converter_DCDC:TRA3-0512 +Converter_DCDC:TRA3-0513 +Converter_DCDC:TRA3-0519 +Converter_DCDC:TRA3-1211 +Converter_DCDC:TRA3-1212 +Converter_DCDC:TRA3-1213 +Converter_DCDC:TRA3-1219 +Converter_DCDC:TRA3-2411 +Converter_DCDC:TRA3-2412 +Converter_DCDC:TRA3-2413 +Converter_DCDC:TRA3-2419 Converter_DCDC:TRI1-0511 Converter_DCDC:TRI1-0512 Converter_DCDC:TRI1-0513 @@ -4252,6 +4970,7 @@ CPLD_Microchip:ATF1504AS-xAx44 CPLD_Microchip:ATF1504ASL-xAx44 CPLD_Microchip:ATF1504ASV-xAx44 CPLD_Microchip:ATF1504ASVL-xAx44 +CPLD_Renesas:SLG46826G CPLD_Xilinx:XC7336 CPLD_Xilinx:XC95108PC84 CPLD_Xilinx:XC95108PQ100 @@ -4324,6 +5043,11 @@ Device:Buzzer Device:C Device:C_45deg Device:C_Feedthrough +Device:C_Network04 +Device:C_Network05 +Device:C_Network06 +Device:C_Network07 +Device:C_Network08 Device:C_Polarized Device:C_Polarized_Series_2C Device:C_Polarized_Small @@ -4366,8 +5090,8 @@ Device:D_Bridge_-A+A Device:D_Bridge_-AA+ Device:D_Capacitance Device:D_Capacitance_Filled -Device:D_Constant_Current -Device:D_Constant_Current_Small +Device:D_Current-regulator +Device:D_Current-regulator_Small Device:D_Dual_CommonAnode_AKK Device:D_Dual_CommonAnode_AKK_Parallel Device:D_Dual_CommonAnode_AKK_Split @@ -4472,6 +5196,8 @@ Device:D_TVS_Dual_AAC Device:D_TVS_Dual_ACA Device:D_TVS_Dual_CAA Device:D_TVS_Filled +Device:D_TVS_Small +Device:D_TVS_Small_Filled Device:D_TemperatureDependent Device:D_TemperatureDependent_Filled Device:D_Tunnel @@ -4511,6 +5237,9 @@ Device:Filter_EMI_CommonMode Device:Filter_EMI_LCL Device:Filter_EMI_LL Device:Filter_EMI_LLL +Device:Filter_EMI_LLLL +Device:Filter_EMI_LLLL_15263748 +Device:Filter_EMI_LLL_162534 Device:Filter_EMI_LL_1423 Device:FrequencyCounter Device:Fuse @@ -4649,24 +5378,6 @@ Device:Oscilloscope Device:PeltierElement Device:Polyfuse Device:Polyfuse_Small -Device:Q_Dual_NMOS_G1S2G2D2S1D1 -Device:Q_Dual_NMOS_S1G1D2S2G2D1 -Device:Q_Dual_NMOS_S1G1S2G2D2D2D1D1 -Device:Q_Dual_NPN_C2C1E1E2 -Device:Q_Dual_NPN_NPN_BRT_E1B1C2E2B2C1 -Device:Q_Dual_NPN_NPN_C2E2C1E1B1B2 -Device:Q_Dual_NPN_NPN_E1B1C2E2B2C1 -Device:Q_Dual_NPN_PNP_BRT_E1B1C2E2B2C1 -Device:Q_Dual_NPN_PNP_E1B1C2E2B2C1 -Device:Q_Dual_PMOS_G1S2G2D2S1D1 -Device:Q_Dual_PMOS_S1G1D2S2G2D1 -Device:Q_Dual_PMOS_S1G1S2G2D2D2D1D1 -Device:Q_Dual_PNP_C2C1E1E2 -Device:Q_Dual_PNP_NPN_BRT_E1B1C2E2B2C1 -Device:Q_Dual_PNP_PNP_BRT_E1B1C2E2B2C1 -Device:Q_Dual_PNP_PNP_C1B1B2C2E2E1 -Device:Q_Dual_PNP_PNP_C2E2C1E1B1B2 -Device:Q_Dual_PNP_PNP_E1B1C2E2B2C1 Device:Q_NIGBT_CEG Device:Q_NIGBT_CGE Device:Q_NIGBT_ECG @@ -4681,38 +5392,13 @@ Device:Q_NJFET_GDS Device:Q_NJFET_GSD Device:Q_NJFET_SDG Device:Q_NJFET_SGD -Device:Q_NMOS_DGS -Device:Q_NMOS_DSG -Device:Q_NMOS_Depletion_DGS -Device:Q_NMOS_Depletion_DSG -Device:Q_NMOS_Depletion_GDS -Device:Q_NMOS_Depletion_GSD -Device:Q_NMOS_Depletion_SDG -Device:Q_NMOS_Depletion_SGD -Device:Q_NMOS_GDS -Device:Q_NMOS_GDSD -Device:Q_NMOS_GSD -Device:Q_NMOS_SDG -Device:Q_NMOS_SDGD -Device:Q_NMOS_SGD -Device:Q_NPN_BCE -Device:Q_NPN_BCEC -Device:Q_NPN_BEC -Device:Q_NPN_BEC_BRT -Device:Q_NPN_CBE -Device:Q_NPN_CEB -Device:Q_NPN_Darlington_BCE -Device:Q_NPN_Darlington_BCEC -Device:Q_NPN_Darlington_BEC -Device:Q_NPN_Darlington_CBE -Device:Q_NPN_Darlington_CEB -Device:Q_NPN_Darlington_EBC -Device:Q_NPN_Darlington_ECB -Device:Q_NPN_Darlington_ECBC -Device:Q_NPN_EBC -Device:Q_NPN_ECB -Device:Q_NPN_ECBC -Device:Q_NPN_ECB_BRT +Device:Q_NMOS +Device:Q_NMOS_Depletion +Device:Q_NPN +Device:Q_NPN_BRT +Device:Q_NPN_BRT_No_R2 +Device:Q_NPN_CurrentMirror +Device:Q_NPN_Darlington Device:Q_NUJT_BEB Device:Q_PJFET_DGS Device:Q_PJFET_DSG @@ -4720,32 +5406,13 @@ Device:Q_PJFET_GDS Device:Q_PJFET_GSD Device:Q_PJFET_SDG Device:Q_PJFET_SGD -Device:Q_PMOS_DGS -Device:Q_PMOS_DSG -Device:Q_PMOS_GDS -Device:Q_PMOS_GDSD -Device:Q_PMOS_GSD -Device:Q_PMOS_SDG -Device:Q_PMOS_SDGD -Device:Q_PMOS_SGD -Device:Q_PNP_BCE -Device:Q_PNP_BCEC -Device:Q_PNP_BEC -Device:Q_PNP_BEC_BRT -Device:Q_PNP_CBE -Device:Q_PNP_CEB -Device:Q_PNP_Darlington_BCE -Device:Q_PNP_Darlington_BCEC -Device:Q_PNP_Darlington_BEC -Device:Q_PNP_Darlington_CBE -Device:Q_PNP_Darlington_CEB -Device:Q_PNP_Darlington_EBC -Device:Q_PNP_Darlington_ECB -Device:Q_PNP_Darlington_ECBC -Device:Q_PNP_EBC -Device:Q_PNP_ECB -Device:Q_PNP_ECBC -Device:Q_PNP_ECB_BRT +Device:Q_PMOS +Device:Q_PMOS_Depletion +Device:Q_PNP +Device:Q_PNP_BRT +Device:Q_PNP_BRT_No_R2 +Device:Q_PNP_CurrentMirror +Device:Q_PNP_Darlington Device:Q_PUJT_BEB Device:Q_Photo_NPN Device:Q_Photo_NPN_CBE @@ -4758,12 +5425,7 @@ Device:Q_SCR_GAK Device:Q_SCR_GKA Device:Q_SCR_KAG Device:Q_SCR_KGA -Device:Q_TRIAC_A1A2G -Device:Q_TRIAC_A1GA2 -Device:Q_TRIAC_A2A1G -Device:Q_TRIAC_A2GA1 -Device:Q_TRIAC_GA1A2 -Device:Q_TRIAC_GA2A1 +Device:Q_Triac Device:R Device:RFShield_OnePiece Device:RFShield_TwoPieces @@ -4846,6 +5508,7 @@ Device:R_Pack11_Split Device:R_Photo Device:R_Potentiometer Device:R_Potentiometer_Dual +Device:R_Potentiometer_Dual_MountingPin Device:R_Potentiometer_Dual_Separate Device:R_Potentiometer_MountingPin Device:R_Potentiometer_Small @@ -4864,6 +5527,7 @@ Device:Resonator Device:Resonator_Small Device:RotaryEncoder Device:RotaryEncoder_Switch +Device:RotaryEncoder_Switch_MP Device:Solar_Cell Device:Solar_Cells Device:SparkGap @@ -4899,6 +5563,8 @@ Device:Voltmeter_AC Device:Voltmeter_DC Diode:1.5KExxA Diode:1.5KExxCA +Diode:1.5SMCxxA +Diode:1.5SMCxxCA Diode:1N4001 Diode:1N4002 Diode:1N4003 @@ -4917,6 +5583,11 @@ Diode:1N4448W Diode:1N4448WS Diode:1N4448WT Diode:1N47xxA +Diode:1N4933 +Diode:1N4934 +Diode:1N4935 +Diode:1N4936 +Diode:1N4937 Diode:1N53xxB Diode:1N5400 Diode:1N5401 @@ -4938,6 +5609,7 @@ Diode:1N5819WS Diode:1N5820 Diode:1N5821 Diode:1N5822 +Diode:1N5908 Diode:1N6263 Diode:1N62xxA Diode:1N62xxCA @@ -5005,6 +5677,7 @@ Diode:BAT54C Diode:BAT54CW Diode:BAT54J Diode:BAT54S +Diode:BAT54SDW Diode:BAT54SW Diode:BAT54W Diode:BAT60A @@ -5216,6 +5889,9 @@ Diode:ESD131-B1-W0201 Diode:ESD5Zxx Diode:ESD9B3.3ST5G Diode:ESD9B5.0ST5G +Diode:ESH2PB +Diode:ESH2PC +Diode:ESH2PD Diode:HN2D02FU Diode:IDDD04G65C6 Diode:IDDD06G65C6 @@ -5242,6 +5918,7 @@ Diode:MBR340 Diode:MBR735 Diode:MBR745 Diode:MBRA340 +Diode:MBRS340 Diode:MCL4148 Diode:MCL4448 Diode:MM3Zxx @@ -5353,6 +6030,16 @@ Diode:PMEG6045ETP Diode:PMEG60T10ELR Diode:PMEG60T20ELR Diode:PMEG60T30ELR +Diode:PTVS10VZ1USK +Diode:PTVS12VZ1USK +Diode:PTVS15VZ1USK +Diode:PTVS18VZ1USK +Diode:PTVS20VZ1USK +Diode:PTVS22VZ1USK +Diode:PTVS26VZ1USK +Diode:PTVS5V0Z1USK +Diode:PTVS5V0Z1USKP +Diode:PTVS7V5Z1USK Diode:Panasonic_MA5J002E Diode:RF01VM2S Diode:Rohm_UMN1N @@ -5371,6 +6058,12 @@ Diode:SD12_SOD323 Diode:SD15_SOD323 Diode:SD24_SOD323 Diode:SD36_SOD323 +Diode:SM15T36A +Diode:SM15T36CA +Diode:SM15T6V8A +Diode:SM15T6V8CA +Diode:SM15T7V5A +Diode:SM15T7V5CA Diode:SM2000 Diode:SM4001 Diode:SM4002 @@ -5379,9 +6072,15 @@ Diode:SM4004 Diode:SM4005 Diode:SM4006 Diode:SM4007 +Diode:SM5059 +Diode:SM5060 +Diode:SM5061 +Diode:SM5062 +Diode:SM5063 Diode:SM513 Diode:SM516 Diode:SM518 +Diode:SM5908 Diode:SM6T100A Diode:SM6T10A Diode:SM6T12A @@ -5546,6 +6245,33 @@ Diode:SMF8V0A Diode:SMF8V5A Diode:SMF9V0A Diode:SMZxxx +Diode:SS110 +Diode:SS1150 +Diode:SS12 +Diode:SS1200 +Diode:SS13 +Diode:SS14 +Diode:SS15 +Diode:SS16 +Diode:SS18 +Diode:SS210 +Diode:SS2150 +Diode:SS22 +Diode:SS2200 +Diode:SS23 +Diode:SS24 +Diode:SS25 +Diode:SS26 +Diode:SS28 +Diode:SS310 +Diode:SS3150 +Diode:SS32 +Diode:SS3200 +Diode:SS33 +Diode:SS34 +Diode:SS35 +Diode:SS36 +Diode:SS38 Diode:STBR3008WY Diode:STBR3012WY Diode:STBR6008WY @@ -5636,13 +6362,20 @@ Diode_Bridge:B80C5000-3x00A Diode_Bridge:B80C800DM Diode_Bridge:B80R Diode_Bridge:DF005M +Diode_Bridge:DF005S Diode_Bridge:DF01M +Diode_Bridge:DF01S Diode_Bridge:DF01S1 Diode_Bridge:DF02M +Diode_Bridge:DF02S Diode_Bridge:DF04M +Diode_Bridge:DF04S Diode_Bridge:DF06M +Diode_Bridge:DF06S Diode_Bridge:DF08M +Diode_Bridge:DF08S Diode_Bridge:DF10M +Diode_Bridge:DF10S Diode_Bridge:DMA40U1800GU Diode_Bridge:DNA40U2200GU Diode_Bridge:GBU4A @@ -5795,8 +6528,8 @@ Diode_Bridge:W04G Diode_Bridge:W06G Diode_Bridge:W08G Diode_Bridge:W10G -Diode_Laser:PL450B Diode_Laser:PL520 +Diode_Laser:PLT5_450B Diode_Laser:PLT5_488 Diode_Laser:PLT5_510 Diode_Laser:SPL_PL90 @@ -5903,6 +6636,7 @@ Display_Character:MAN73A Display_Character:MAN74A Display_Character:NHD-0420H1Z Display_Character:NHD-C0220BIZ +Display_Character:NHD-C0220BIZ-FSRGB Display_Character:RC1602A Display_Character:RC1602A-GHW-ESX Display_Character:SA15-11EWA @@ -5988,9 +6722,16 @@ Driver_FET:ACPL-P343 Driver_FET:ACPL-W343 Driver_FET:AN34092B Driver_FET:BSP75N +Driver_FET:BSP76 +Driver_FET:BTS4140N Driver_FET:EL7202CN +Driver_FET:EL7202CS Driver_FET:EL7212CN +Driver_FET:EL7212CS Driver_FET:EL7222CN +Driver_FET:EL7222CS +Driver_FET:FAN3111C +Driver_FET:FAN3111E Driver_FET:FAN3268 Driver_FET:FAN3278 Driver_FET:FAN7371 @@ -6117,6 +6858,9 @@ Driver_FET:ITS711L1 Driver_FET:ITS716G Driver_FET:ITS724G Driver_FET:L6491 +Driver_FET:LF2190N +Driver_FET:LM2105D +Driver_FET:LM2105DSG Driver_FET:LM5109AMA Driver_FET:LM5109ASD Driver_FET:LM5109BMA @@ -6164,6 +6908,9 @@ Driver_FET:STGAP2SCM Driver_FET:STGAP2SM Driver_FET:TC4421 Driver_FET:TC4422 +Driver_FET:TC4426xOA +Driver_FET:TC4427xOA +Driver_FET:TC4428xOA Driver_FET:TLP250 Driver_FET:UCC21520ADW Driver_FET:UCC21520DW @@ -6179,7 +6926,12 @@ Driver_Haptic:DRV2510-Q1 Driver_Haptic:DRV2605LDGS Driver_LED:AL8860MP Driver_LED:AL8860WT +Driver_LED:AP3019AKTR +Driver_LED:AP3019AKTTR Driver_LED:BCR430UW6 +Driver_LED:CH455G +Driver_LED:CH455H +Driver_LED:CH455K Driver_LED:CL220K4-G Driver_LED:CL220N5-G Driver_LED:DIO5661CD6 @@ -6202,6 +6954,7 @@ Driver_LED:IS31FL3216A Driver_LED:IS31FL3218-GR Driver_LED:IS31FL3218-QF Driver_LED:IS31FL3236-TQ +Driver_LED:IS31FL3236A-TQ Driver_LED:IS31FL3731-QF Driver_LED:IS31FL3731-SA Driver_LED:IS31FL3733-QF @@ -6209,6 +6962,9 @@ Driver_LED:IS31FL3733-TQ Driver_LED:IS31FL3736 Driver_LED:IS31FL3737 Driver_LED:IS31LT3360 +Driver_LED:KTD2026 +Driver_LED:KTD2027 +Driver_LED:KTD2061xxUAC Driver_LED:LED1642GWPTR Driver_LED:LED1642GWQTR Driver_LED:LED1642GWTTR @@ -6217,6 +6973,7 @@ Driver_LED:LED5000 Driver_LED:LM3914N Driver_LED:LM3914V Driver_LED:LP5036 +Driver_LED:LP8868XQDMT Driver_LED:LT3465 Driver_LED:LT3465A Driver_LED:LT3755xMSE @@ -6238,22 +6995,38 @@ Driver_LED:MAX7221xRG Driver_LED:MAX7221xWG Driver_LED:MBI5252GFN Driver_LED:MBI5252GP +Driver_LED:MC14495P Driver_LED:MCP1643xMS Driver_LED:MCP1662-xOT +Driver_LED:MP3362GJ Driver_LED:MPQ2483DQ +Driver_LED:MPQ3362GJ-AEC1 Driver_LED:NCP5623DTBR2G Driver_LED:NCR401U Driver_LED:PCA9531PW Driver_LED:PCA9635 Driver_LED:PCA9685BS Driver_LED:PCA9685PW +Driver_LED:PCA9745BTW +Driver_LED:RCD-24 Driver_LED:ST1CC40DR Driver_LED:ST1CC40PUR -Driver_LED:STP08CP05 +Driver_LED:STP08CP05B +Driver_LED:STP08CP05M +Driver_LED:STP08CP05T Driver_LED:STP08CP05XT -Driver_LED:STP16CP05 +Driver_LED:STP16CP05M +Driver_LED:STP16CP05P +Driver_LED:STP16CP05T Driver_LED:STP16CP05XT +Driver_LED:STP16CPC26M +Driver_LED:STP16CPC26P +Driver_LED:STP16CPC26T +Driver_LED:STP16CPC26X +Driver_LED:TCA6507RUE Driver_LED:TLC59108xPW +Driver_LED:TLC5916 +Driver_LED:TLC5917 Driver_LED:TLC5940NT Driver_LED:TLC5940PWP Driver_LED:TLC5947DAP @@ -6266,15 +7039,21 @@ Driver_LED:TLC5957RTQ Driver_LED:TLC5971PWP Driver_LED:TLC5971RGE Driver_LED:TLC5973 +Driver_LED:TPS61165DBV Driver_LED:TPS92692PWP Driver_LED:WS2811 +Driver_LED:iC-HTG Driver_Motor:A4950E Driver_Motor:A4950K Driver_Motor:A4952_LY Driver_Motor:A4953_LJ Driver_Motor:A4954 Driver_Motor:AMT49413 +Driver_Motor:DRV8212P Driver_Motor:DRV8308 +Driver_Motor:DRV8412 +Driver_Motor:DRV8432 +Driver_Motor:DRV8461SPWP Driver_Motor:DRV8662 Driver_Motor:DRV8711 Driver_Motor:DRV8800PWP @@ -6295,6 +7074,10 @@ Driver_Motor:DRV8848 Driver_Motor:DRV8870DDA Driver_Motor:DRV8871DDA Driver_Motor:DRV8872DDA +Driver_Motor:EMC2301-x-ACZL +Driver_Motor:EMC2302-x-AIZL +Driver_Motor:EMC2303-x-KP +Driver_Motor:EMC2305-x-AP Driver_Motor:L293 Driver_Motor:L293D Driver_Motor:L293E @@ -6303,6 +7086,11 @@ Driver_Motor:L298HN Driver_Motor:L298N Driver_Motor:L298P Driver_Motor:LMD18200 +Driver_Motor:MAX22201 +Driver_Motor:MAX22202 +Driver_Motor:MAX22207 +Driver_Motor:MP6536DU +Driver_Motor:PAC5527QM Driver_Motor:PG001M Driver_Motor:Pololu_Breakout_A4988 Driver_Motor:Pololu_Breakout_DRV8825 @@ -6324,13 +7112,19 @@ Driver_Motor:STSPIN230 Driver_Motor:STSPIN233 Driver_Motor:STSPIN240 Driver_Motor:TB6612FNG +Driver_Motor:TC78H670FTG Driver_Motor:TMC2041-LA Driver_Motor:TMC2100-LA Driver_Motor:TMC2100-TA Driver_Motor:TMC2130-LA Driver_Motor:TMC2130-TA Driver_Motor:TMC2160 +Driver_Motor:TMC2202-WA +Driver_Motor:TMC2208-LA +Driver_Motor:TMC2224-LA +Driver_Motor:TMC2226-SA Driver_Motor:TMC262 +Driver_Motor:TMC2660 Driver_Motor:TMC5130A-TA Driver_Motor:TMC5160A-TA Driver_Motor:VNH2SP30 @@ -6373,6 +7167,11 @@ DSP_Motorola:DSP56301 DSP_Texas:TMS320LF2406PZ Fiber_Optic:AFBR-1624Z Fiber_Optic:AFBR-2624Z +Filter:0603USB-142 +Filter:0603USB-222 +Filter:0603USB-251 +Filter:0603USB-601 +Filter:0603USB-951 Filter:0850BM14E0016 Filter:0900FM15K0039 Filter:1FP41-4R @@ -6387,12 +7186,26 @@ Filter:1FP65-0R Filter:1FP65-1R Filter:B39162B8813P810 Filter:BNX025 +Filter:Choke_CommonMode_FerriteCore_1234 +Filter:Choke_CommonMode_FerriteCore_1243 +Filter:Choke_CommonMode_FerriteCore_1324 +Filter:Choke_CommonMode_FerriteCore_1342 +Filter:Choke_CommonMode_FerriteCore_1423 +Filter:Choke_CommonMode_PulseElectronics_PH9455x105NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x155NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x156NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x205NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x356NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x405NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x705NL +Filter:Choke_CommonMode_PulseElectronics_PH9455x826NL Filter:Choke_Schaffner_RN102-0.3-02-12M Filter:Choke_Schaffner_RN102-0.3-02-22M Filter:Choke_Schaffner_RN102-0.6-02-4M4 Filter:Choke_Schaffner_RN102-1-02-3M0 Filter:Choke_Schaffner_RN102-1.5-02-1M6 Filter:Choke_Schaffner_RN102-2-02-1M1 +Filter:Choke_Wurth_WE-CNSW_744232090 Filter:FN405-0.5-02 Filter:FN405-1-02 Filter:FN405-10-02 @@ -6410,6 +7223,12 @@ Filter:FN406B-6-02 Filter:FN406B-8.4-02 Filter:LTC1562xG-2 Filter:LTC1562xxG +Filter:P300PL104M275xC222 +Filter:P300PL104M275xC332 +Filter:P300PL104M275xC472 +Filter:P300PL154M275xC222 +Filter:P300PL154M275xC332 +Filter:P300PL154M275xC472 Filter:SAFFA1G58KA0F0A Filter:SAFFA1G96FN0F0A Filter:SAFFA2G14FA0F0A @@ -6749,6 +7568,7 @@ Interface:AD9851 Interface:AD9910 Interface:AD9912 Interface:AD9951 +Interface:AD9954 Interface:AM26LS31CD Interface:AM26LS31CDB Interface:AM26LS31CN @@ -6807,6 +7627,8 @@ Interface:PCA9615DP Interface:PCI9030-PQFP176 Interface:S5933_PQ160 Interface:SI9986 +Interface:SLB9660xT +Interface:SLB9665xT Interface:SN65LVDS047D Interface:SN65LVDS047PW Interface:SN65LVDS1D @@ -6841,7 +7663,10 @@ Interface:Z8420 Interface:Z84C20 Interface_CAN_LIN:ADM3053 Interface_CAN_LIN:ADM3057ExRW +Interface_CAN_LIN:CA-IF1042LVS +Interface_CAN_LIN:ISO1044BD Interface_CAN_LIN:ISO1050DUB +Interface_CAN_LIN:ISOW1044 Interface_CAN_LIN:LTC2875-DD Interface_CAN_LIN:LTC2875-S8 Interface_CAN_LIN:MCP2021A-xxxxMD @@ -6860,6 +7685,9 @@ Interface_CAN_LIN:MCP2515-xSO Interface_CAN_LIN:MCP2515-xST Interface_CAN_LIN:MCP2517FD-xJHA Interface_CAN_LIN:MCP2517FD-xSL +Interface_CAN_LIN:MCP251863T-E-9PX +Interface_CAN_LIN:MCP251863T-H-SS +Interface_CAN_LIN:MCP2518FD-xQBB Interface_CAN_LIN:MCP2542FDxMF Interface_CAN_LIN:MCP2542WFDxMF Interface_CAN_LIN:MCP2551-I-P @@ -6903,6 +7731,8 @@ Interface_CAN_LIN:TCAN334 Interface_CAN_LIN:TCAN334G Interface_CAN_LIN:TCAN337 Interface_CAN_LIN:TCAN337G +Interface_CAN_LIN:TCAN4550RGY +Interface_CAN_LIN:TCAN4551RGYRQ1 Interface_CAN_LIN:TJA1021T Interface_CAN_LIN:TJA1021TK Interface_CAN_LIN:TJA1029T @@ -6948,6 +7778,8 @@ Interface_Ethernet:LAN7500-ABJZ Interface_Ethernet:LAN8710A Interface_Ethernet:LAN8720A Interface_Ethernet:LAN8742A +Interface_Ethernet:LAN9303 +Interface_Ethernet:LAN9303i Interface_Ethernet:LAN9512 Interface_Ethernet:LAN9512i Interface_Ethernet:LAN9513 @@ -6957,13 +7789,23 @@ Interface_Ethernet:LAN9514i Interface_Ethernet:RTL8211EG-VB-CG Interface_Ethernet:VSC8541XMV-0x Interface_Ethernet:W5100 +Interface_Ethernet:W5100S-L +Interface_Ethernet:W5100S-Q Interface_Ethernet:W5500 +Interface_Ethernet:W6100-L +Interface_Ethernet:W6100-Q Interface_Ethernet:WGI210AT Interface_Expansion:AS1115-BQFT Interface_Expansion:AS1115-BSST +Interface_Expansion:AW9523B Interface_Expansion:LTC4314xGN Interface_Expansion:LTC4314xUDC +Interface_Expansion:LTC4316xDD Interface_Expansion:LTC4317 +Interface_Expansion:MAX31910xUI +Interface_Expansion:MAX31911xUI +Interface_Expansion:MAX31912xUI +Interface_Expansion:MAX31913xUI Interface_Expansion:MAX7325AEG+ Interface_Expansion:MCP23008-xML Interface_Expansion:MCP23008-xP @@ -6978,6 +7820,7 @@ Interface_Expansion:MCP23S17_SO Interface_Expansion:MCP23S17_SP Interface_Expansion:MCP23S17_SS Interface_Expansion:P82B96 +Interface_Expansion:PCA9506BS Interface_Expansion:PCA9516 Interface_Expansion:PCA9536D Interface_Expansion:PCA9536DP @@ -6997,12 +7840,17 @@ Interface_Expansion:PCA9555PW Interface_Expansion:PCA9557BS Interface_Expansion:PCA9557D Interface_Expansion:PCA9557PW +Interface_Expansion:PCA9847PW +Interface_Expansion:PCAL6416AHF Interface_Expansion:PCAL6416APW Interface_Expansion:PCAL6534EV -Interface_Expansion:PCF8574 -Interface_Expansion:PCF8574A +Interface_Expansion:PCF8574AP +Interface_Expansion:PCF8574AT Interface_Expansion:PCF8574ATS +Interface_Expansion:PCF8574P +Interface_Expansion:PCF8574T Interface_Expansion:PCF8574TS +Interface_Expansion:PCF8575DBR Interface_Expansion:PCF8584 Interface_Expansion:PCF8591 Interface_Expansion:STMPE1600 @@ -7027,6 +7875,10 @@ Interface_Expansion:TCA9555PWR Interface_Expansion:TCA9555RGER Interface_Expansion:TCA9555RTWR Interface_Expansion:TPIC6595 +Interface_Expansion:XRA1201IG24 +Interface_Expansion:XRA1201IL24 +Interface_Expansion:XRA1201PIG24 +Interface_Expansion:XRA1201PIL24 Interface_HDMI:ADV7611 Interface_HDMI:TPD12S520DBT Interface_HID:JoyWarrior24A10L @@ -7050,6 +7902,7 @@ Interface_LineDriver:UA9638CDR Interface_LineDriver:UA9638CDRG4 Interface_LineDriver:UA9638CP Interface_LineDriver:UA9638CPE4 +Interface_Optical:IRM-H6xxT Interface_Optical:IS471F Interface_Optical:IS485 Interface_Optical:IS486 @@ -7102,6 +7955,13 @@ Interface_UART:8250 Interface_UART:8252 Interface_UART:ADM101E Interface_UART:ADM1491EBR +Interface_UART:ADM205 +Interface_UART:ADM206 +Interface_UART:ADM207 +Interface_UART:ADM208 +Interface_UART:ADM209 +Interface_UART:ADM211 +Interface_UART:ADM213 Interface_UART:ADM222 Interface_UART:ADM232A Interface_UART:ADM242 @@ -7126,6 +7986,9 @@ Interface_UART:GD75232DW Interface_UART:GD75232N Interface_UART:GD75232PW Interface_UART:ICL3232 +Interface_UART:ISL3172E +Interface_UART:ISL3175E +Interface_UART:ISL3178E Interface_UART:ISL3280ExHZ Interface_UART:ISL3281ExHZ Interface_UART:ISL3282ExRHZ @@ -7178,6 +8041,8 @@ Interface_UART:MAX1487E Interface_UART:MAX202 Interface_UART:MAX232 Interface_UART:MAX232I +Interface_UART:MAX238xNG+ +Interface_UART:MAX238xWG+ Interface_UART:MAX3051 Interface_UART:MAX3072E Interface_UART:MAX3075E @@ -7233,20 +8098,37 @@ Interface_UART:SP3485CN Interface_UART:SP3485CP Interface_UART:SP3485EN Interface_UART:SP3485EP -Interface_UART:ST485EBDR +Interface_UART:SSP3085 +Interface_UART:ST202ExD +Interface_UART:ST232ExD +Interface_UART:ST485E Interface_UART:THVD1400D Interface_UART:THVD1420D +Interface_UART:THVD1450D +Interface_UART:THVD1450DR Interface_UART:THVD1451D +Interface_UART:THVD1500 +Interface_UART:THVD8000 Interface_UART:Z8530 Interface_USB:ADUM3160 Interface_USB:ADUM4160 +Interface_USB:AP33771 Interface_USB:BQ24392 +Interface_USB:CH224K +Interface_USB:CH236D +Interface_USB:CH246D Interface_USB:CH330N +Interface_USB:CH334R Interface_USB:CH340C Interface_USB:CH340E Interface_USB:CH340G +Interface_USB:CH340K +Interface_USB:CH340N Interface_USB:CH340T Interface_USB:CH340X +Interface_USB:CH343G +Interface_USB:CH343P +Interface_USB:CH344Q Interface_USB:CH9102F Interface_USB:CP2102N-Axx-xQFN20 Interface_USB:CP2102N-Axx-xQFN24 @@ -7263,6 +8145,10 @@ Interface_USB:CY7C65213A-28PVXI Interface_USB:CY7C65213A-32LTXI Interface_USB:CY7C65215-32LTXI Interface_USB:CY7C65215A-32LTXI +Interface_USB:CYPD3171-24LQXQ +Interface_USB:CYPD3174-16SXQ +Interface_USB:CYPD3174-24LQXQ +Interface_USB:CYPD3175-24LQXQ Interface_USB:CYPD3177-24LQ Interface_USB:FE1.1s Interface_USB:FSUSB30MUX @@ -7284,6 +8170,7 @@ Interface_USB:FT231XS Interface_USB:FT232BM Interface_USB:FT232H Interface_USB:FT232RL +Interface_USB:FT234XD Interface_USB:FT240XQ Interface_USB:FT240XS Interface_USB:FT245BM @@ -7294,6 +8181,7 @@ Interface_USB:FUSB302B01MPX Interface_USB:FUSB302B10MPX Interface_USB:FUSB302B11MPX Interface_USB:FUSB302BMPX +Interface_USB:FUSB303BTMX Interface_USB:FUSB307BMPX Interface_USB:IP2721 Interface_USB:MA8601 @@ -7312,6 +8200,7 @@ Interface_USB:MCP2221AxML Interface_USB:MCP2221AxP Interface_USB:MCP2221AxSL Interface_USB:MCP2221AxST +Interface_USB:MP5034GJ Interface_USB:STULPI01A Interface_USB:STULPI01B Interface_USB:STUSB4500QTR @@ -7323,6 +8212,11 @@ Interface_USB:TPS2514 Interface_USB:TPS2514A Interface_USB:TPS2560 Interface_USB:TPS2561 +Interface_USB:TPS25730D +Interface_USB:TS3USB30EDGSR +Interface_USB:TS3USB30ERSWR +Interface_USB:TS3USBCA410 +Interface_USB:TS3USBCA420 Interface_USB:TUSB2036 Interface_USB:TUSB320 Interface_USB:TUSB320I @@ -7331,6 +8225,8 @@ Interface_USB:TUSB322I Interface_USB:TUSB4041I Interface_USB:TUSB7340 Interface_USB:TUSB8041 +Interface_USB:UPD720202K8-7x1-BAA +Interface_USB:USB2504 Interface_USB:USB2514B_Bi Interface_USB:USB3250-ABZJ Interface_USB:USB3300-EZK @@ -7340,6 +8236,7 @@ Interface_USB:USB3346 Interface_USB:USB3347 Interface_USB:USB3740B-AI2 Interface_USB:USB3740B-AI9 +Interface_USB:XR21B1424 Isolator:4N25 Isolator:4N26 Isolator:4N27 @@ -7374,6 +8271,7 @@ Isolator:ADuM120N Isolator:ADuM121N Isolator:ADuM1250 Isolator:ADuM1281 +Isolator:ADuM1300xRW Isolator:ADuM1400xRW Isolator:ADuM1401xRW Isolator:ADuM1402xRW @@ -7387,6 +8285,7 @@ Isolator:ADuM263N Isolator:ADuM3151 Isolator:ADuM3152 Isolator:ADuM3153 +Isolator:ADuM5211 Isolator:ADuM5401 Isolator:ADuM5402 Isolator:ADuM5403 @@ -7458,6 +8357,10 @@ Isolator:ISO1541 Isolator:ISO1642DWR Isolator:ISO1643DWR Isolator:ISO1644DWR +Isolator:ISO6731 +Isolator:ISO6740 +Isolator:ISO6741 +Isolator:ISO6742 Isolator:ISO7320C Isolator:ISO7320FC Isolator:ISO7321C @@ -7488,6 +8391,11 @@ Isolator:ISO7763DBQ Isolator:ISO7763DW Isolator:ISO7763FDBQ Isolator:ISO7763FDW +Isolator:ISOW7740 +Isolator:ISOW7741 +Isolator:ISOW7742 +Isolator:ISOW7743 +Isolator:ISOW7744 Isolator:LTV-247 Isolator:LTV-352T Isolator:LTV-354T @@ -7510,6 +8418,11 @@ Isolator:LTV-847S Isolator:MAX14850AEE+ Isolator:MAX14850ASE+ Isolator:MID400 +Isolator:MOCD207M +Isolator:MOCD208M +Isolator:MOCD211M +Isolator:MOCD213M +Isolator:MOCD217M Isolator:NSL-32 Isolator:PC3H4 Isolator:PC3H4A @@ -7599,6 +8512,66 @@ Isolator:Si8645BB-B-IS1 Isolator:Si8645BB-B-IU Isolator:Si8645BC-B-IS1 Isolator:Si8645BD-B-IS +Isolator:Si8660BA-AS1 +Isolator:Si8660BA-B-IS1 +Isolator:Si8660BB-AS1 +Isolator:Si8660BB-AU +Isolator:Si8660BB-B-IS1 +Isolator:Si8660BB-B-IU +Isolator:Si8660BC-AS1 +Isolator:Si8660BC-B-IS1 +Isolator:Si8660BD-AS +Isolator:Si8660BD-B-IS +Isolator:Si8660EB-AU +Isolator:Si8660EB-B-IU +Isolator:Si8660EC-AS1 +Isolator:Si8660EC-B-IS1 +Isolator:Si8660ED-AS +Isolator:Si8660ED-B-IS +Isolator:Si8661BB-AS1 +Isolator:Si8661BB-AU +Isolator:Si8661BB-B-IS1 +Isolator:Si8661BB-B-IU +Isolator:Si8661BC-AS1 +Isolator:Si8661BC-B-IS1 +Isolator:Si8661BD-AS +Isolator:Si8661BD-AS2 +Isolator:Si8661BD-B-IS +Isolator:Si8661BD-B-IS2 +Isolator:Si8661EB-AU +Isolator:Si8661EB-B-IU +Isolator:Si8661EC-AS1 +Isolator:Si8661EC-B-IS1 +Isolator:Si8661ED-AS +Isolator:Si8661ED-B-IS +Isolator:Si8662BB-AS1 +Isolator:Si8662BB-AU +Isolator:Si8662BB-B-IS1 +Isolator:Si8662BB-B-IU +Isolator:Si8662BC-AS1 +Isolator:Si8662BC-B-IS1 +Isolator:Si8662BD-AS +Isolator:Si8662BD-B-IS +Isolator:Si8662EB-AU +Isolator:Si8662EB-B-IU +Isolator:Si8662EC-AS1 +Isolator:Si8662EC-B-IS1 +Isolator:Si8662ED-AS +Isolator:Si8662ED-B-IS +Isolator:Si8663BB-AS1 +Isolator:Si8663BB-AU +Isolator:Si8663BB-B-IS1 +Isolator:Si8663BB-B-IU +Isolator:Si8663BC-AS1 +Isolator:Si8663BC-B-IS1 +Isolator:Si8663BD-AS +Isolator:Si8663BD-B-IS +Isolator:Si8663EB-AU +Isolator:Si8663EB-B-IU +Isolator:Si8663EC-AS1 +Isolator:Si8663EC-B-IS1 +Isolator:Si8663ED-AS +Isolator:Si8663ED-B-IS Isolator:TCMT1100 Isolator:TCMT1101 Isolator:TCMT1102 @@ -7623,6 +8596,7 @@ Isolator:TLP184 Isolator:TLP184xSE Isolator:TLP185 Isolator:TLP185xSE +Isolator:TLP2310 Isolator:TLP2703 Isolator:TLP2745 Isolator:TLP2748 @@ -7634,6 +8608,10 @@ Isolator:TLP290 Isolator:TLP290-4 Isolator:TLP291 Isolator:TLP291-4 +Isolator:TLP292 +Isolator:TLP292-4 +Isolator:TLP293 +Isolator:TLP293-4 Isolator:TLP3021 Isolator:TLP3022 Isolator:TLP3023 @@ -7663,6 +8641,8 @@ Isolator:VO615A-6 Isolator:VO615A-7 Isolator:VO615A-8 Isolator:VO615A-9 +Isolator:VOA300 +Isolator:VOS618A Isolator:VTL5C Isolator:VTL5Cx2 Isolator:π120U30 @@ -7673,9 +8653,15 @@ Isolator_Analog:ACPL-C79B Isolator_Analog:ACPL-C870 Isolator_Analog:ACPL-C87A Isolator_Analog:ACPL-C87B +Isolator_Analog:AMC3330 Isolator_Analog:IL300 +Isolator_Analog:LOC112 +Isolator_Analog:LOC112P +Isolator_Analog:LOC112S Jumper:Jumper_2_Bridged Jumper:Jumper_2_Open +Jumper:Jumper_2_Small_Bridged +Jumper:Jumper_2_Small_Open Jumper:Jumper_3_Bridged12 Jumper:Jumper_3_Open Jumper:SolderJumper_2_Bridged @@ -7693,6 +8679,7 @@ LED:ASMT-YTB7-0AA02 LED:ASMT-YTC2-0AA02 LED:CLS6B-FKW LED:CLV1L-FKB +LED:CLX6F-FKC LED:CQY99 LED:HDSP-4830 LED:HDSP-4830_2 @@ -7709,6 +8696,7 @@ LED:HLCP-J100_2 LED:IR204A LED:IR26-21C_L110_TR8 LED:IRL81A +LED:Inolux_IN-P55TATRGB LED:Inolux_IN-PI554FCH LED:Inolux_IN-PI556FCH LED:LD271 @@ -7717,6 +8705,8 @@ LED:LED_Cree_XHP50_12V LED:LED_Cree_XHP50_6V LED:LED_Cree_XHP70_12V LED:LED_Cree_XHP70_6V +LED:LTST-C235KGKRKT +LED:LiteOn_LTST-E563C LED:NeoPixel_THT LED:QLS6A-FKW LED:QLS6B-FKW @@ -7734,6 +8724,7 @@ LED:SMLVN6RGB LED:TSAL4400 LED:WS2812 LED:WS2812B +LED:WS2812B-2020 LED:WS2812S LED:WS2813 LED:WS2822S @@ -7747,13 +8738,23 @@ Logic_LevelTranslator:NLSV2T244MU Logic_LevelTranslator:SN74AUP1T34DCK Logic_LevelTranslator:SN74AVC4T245PW Logic_LevelTranslator:SN74AVC8T245PW +Logic_LevelTranslator:SN74LV1T125DBV +Logic_LevelTranslator:SN74LV1T125DCK Logic_LevelTranslator:SN74LV1T34DBV Logic_LevelTranslator:SN74LV1T34DCK Logic_LevelTranslator:SN74LVC1T45DBV Logic_LevelTranslator:SN74LVC1T45DCK Logic_LevelTranslator:SN74LVC1T45DRL +Logic_LevelTranslator:SN74LVC245APW Logic_LevelTranslator:SN74LVC2T45DCUR Logic_LevelTranslator:SN74LVC2T45YZP +Logic_LevelTranslator:SN74LVC8T245 +Logic_LevelTranslator:TCA9517ADGK +Logic_LevelTranslator:TCA9517D +Logic_LevelTranslator:TXB0101DBV +Logic_LevelTranslator:TXB0101DCK +Logic_LevelTranslator:TXB0101DRL +Logic_LevelTranslator:TXB0101YZP Logic_LevelTranslator:TXB0102DCT Logic_LevelTranslator:TXB0102DCU Logic_LevelTranslator:TXB0102YZP @@ -7763,7 +8764,11 @@ Logic_LevelTranslator:TXB0104RGY Logic_LevelTranslator:TXB0104RUT Logic_LevelTranslator:TXB0104YZT Logic_LevelTranslator:TXB0104ZXU +Logic_LevelTranslator:TXB0106PW +Logic_LevelTranslator:TXB0106RGY Logic_LevelTranslator:TXB0108DQSR +Logic_LevelTranslator:TXB0108PW +Logic_LevelTranslator:TXB0108RGY Logic_LevelTranslator:TXB0304RUT Logic_LevelTranslator:TXBN0304RUT Logic_LevelTranslator:TXS0101DBV @@ -7774,15 +8779,21 @@ Logic_LevelTranslator:TXS0102DCT Logic_LevelTranslator:TXS0102DCU Logic_LevelTranslator:TXS0102DQE Logic_LevelTranslator:TXS0102YZP +Logic_LevelTranslator:TXS0104ED +Logic_LevelTranslator:TXS0104EPW Logic_LevelTranslator:TXS0108EPW +Logic_LevelTranslator:TXS02612RTW Logic_Programmable:GAL16V8 Logic_Programmable:PAL16L8 Logic_Programmable:PAL20 Logic_Programmable:PAL20L8 Logic_Programmable:PAL20RS10 Logic_Programmable:PAL24 +Logic_Programmable:PEEL22CV10AP +Logic_Programmable:PEEL22CV10AS MCU_AnalogDevices:ADUC816 MCU_AnalogDevices:MAX32660GTP +MCU_AnalogDevices:MAX32670GTL MCU_Cypress:CY7C68013A-56LTX MCU_Cypress:CY7C68013A-56PVX MCU_Cypress:CY7C68014A-56LTX @@ -7821,6 +8832,10 @@ MCU_Cypress:CYBL10563-68FNXIT MCU_Cypress:CYBL10x6x-56LQxx MCU_Dialog:DA14691 MCU_Dialog:DA14695 +MCU_Espressif:ESP32-C3 +MCU_Espressif:ESP32-PICO-D4 +MCU_Espressif:ESP32-S2 +MCU_Espressif:ESP32-S3 MCU_Espressif:ESP8266EX MCU_Intel:80186 MCU_Intel:80188 @@ -7848,6 +8863,11 @@ MCU_Intel:IA186XLPLC68IR2 MCU_Intel:IA188XLPLC68IR2 MCU_Intel:M80C186 MCU_Intel:M80C186XL +MCU_Intel:P8031AH +MCU_Intel:P8051AH +MCU_Intel:P8052AH +MCU_Intel:P8751BH +MCU_Intel:P8752BH MCU_Microchip_8051:AT89C2051-12P MCU_Microchip_8051:AT89C2051-12S MCU_Microchip_8051:AT89C2051-24P @@ -7860,6 +8880,9 @@ MCU_Microchip_8051:AT89S2051-24P MCU_Microchip_8051:AT89S2051-24S MCU_Microchip_8051:AT89S4051-24P MCU_Microchip_8051:AT89S4051-24S +MCU_Microchip_8051:AT89x51xxA +MCU_Microchip_8051:AT89x51xxJ +MCU_Microchip_8051:AT89x51xxP MCU_Microchip_ATmega:ATmega128-16A MCU_Microchip_ATmega:ATmega128-16M MCU_Microchip_ATmega:ATmega1280-16A @@ -8616,120 +9639,120 @@ MCU_Microchip_PIC10:PIC10F320-IP MCU_Microchip_PIC10:PIC10F322-IMC MCU_Microchip_PIC10:PIC10F322-IOT MCU_Microchip_PIC10:PIC10F322-IP -MCU_Microchip_PIC12:PIC12C508-IJW -MCU_Microchip_PIC12:PIC12C508-IP -MCU_Microchip_PIC12:PIC12C508-ISM -MCU_Microchip_PIC12:PIC12C508A-IJW -MCU_Microchip_PIC12:PIC12C508A-IP -MCU_Microchip_PIC12:PIC12C508A-ISM -MCU_Microchip_PIC12:PIC12C508A-ISN -MCU_Microchip_PIC12:PIC12C509-IJW -MCU_Microchip_PIC12:PIC12C509-IP -MCU_Microchip_PIC12:PIC12C509-ISM -MCU_Microchip_PIC12:PIC12C509A-IJW -MCU_Microchip_PIC12:PIC12C509A-IP -MCU_Microchip_PIC12:PIC12C509A-ISM -MCU_Microchip_PIC12:PIC12C509A-ISN -MCU_Microchip_PIC12:PIC12C671-IJW -MCU_Microchip_PIC12:PIC12C671-IP -MCU_Microchip_PIC12:PIC12C671-ISN -MCU_Microchip_PIC12:PIC12C672-IJW -MCU_Microchip_PIC12:PIC12C672-IP -MCU_Microchip_PIC12:PIC12C672-ISN -MCU_Microchip_PIC12:PIC12CE518-IJW -MCU_Microchip_PIC12:PIC12CE518-IP -MCU_Microchip_PIC12:PIC12CE518-ISM -MCU_Microchip_PIC12:PIC12CE518-ISN -MCU_Microchip_PIC12:PIC12CE519-IJW -MCU_Microchip_PIC12:PIC12CE519-IP -MCU_Microchip_PIC12:PIC12CE519-ISM -MCU_Microchip_PIC12:PIC12CE519-ISN -MCU_Microchip_PIC12:PIC12CE673-IJW -MCU_Microchip_PIC12:PIC12CE673-IP -MCU_Microchip_PIC12:PIC12CE674-IJW -MCU_Microchip_PIC12:PIC12CE674-IP -MCU_Microchip_PIC12:PIC12CR509A-IP -MCU_Microchip_PIC12:PIC12CR509A-ISM -MCU_Microchip_PIC12:PIC12CR509A-ISN -MCU_Microchip_PIC12:PIC12F1501-IMC -MCU_Microchip_PIC12:PIC12F1501-IMS -MCU_Microchip_PIC12:PIC12F1501-IP -MCU_Microchip_PIC12:PIC12F1501-ISN -MCU_Microchip_PIC12:PIC12F1822-IMC -MCU_Microchip_PIC12:PIC12F1822-IP -MCU_Microchip_PIC12:PIC12F1822-ISN -MCU_Microchip_PIC12:PIC12F1840-IMC -MCU_Microchip_PIC12:PIC12F1840-IP -MCU_Microchip_PIC12:PIC12F1840-ISN -MCU_Microchip_PIC12:PIC12F508-IMC -MCU_Microchip_PIC12:PIC12F508-IMS -MCU_Microchip_PIC12:PIC12F508-IP -MCU_Microchip_PIC12:PIC12F508-ISN -MCU_Microchip_PIC12:PIC12F509-IMC -MCU_Microchip_PIC12:PIC12F509-IMS -MCU_Microchip_PIC12:PIC12F509-IP -MCU_Microchip_PIC12:PIC12F509-ISN -MCU_Microchip_PIC12:PIC12F510-IMC -MCU_Microchip_PIC12:PIC12F510-IMS -MCU_Microchip_PIC12:PIC12F510-IP -MCU_Microchip_PIC12:PIC12F510-ISN -MCU_Microchip_PIC12:PIC12F519-IMC -MCU_Microchip_PIC12:PIC12F519-IMS -MCU_Microchip_PIC12:PIC12F519-IP -MCU_Microchip_PIC12:PIC12F519-ISN -MCU_Microchip_PIC12:PIC12F609-IMC -MCU_Microchip_PIC12:PIC12F609-IMS -MCU_Microchip_PIC12:PIC12F609-IP -MCU_Microchip_PIC12:PIC12F609-ISN -MCU_Microchip_PIC12:PIC12F615-IMC -MCU_Microchip_PIC12:PIC12F615-IMS -MCU_Microchip_PIC12:PIC12F615-IP -MCU_Microchip_PIC12:PIC12F615-ISN -MCU_Microchip_PIC12:PIC12F617-IMC -MCU_Microchip_PIC12:PIC12F617-IMS -MCU_Microchip_PIC12:PIC12F617-IP -MCU_Microchip_PIC12:PIC12F617-ISN -MCU_Microchip_PIC12:PIC12F629-IMC -MCU_Microchip_PIC12:PIC12F629-IMS -MCU_Microchip_PIC12:PIC12F629-IP -MCU_Microchip_PIC12:PIC12F629-ISN -MCU_Microchip_PIC12:PIC12F635-IMC -MCU_Microchip_PIC12:PIC12F635-IMS -MCU_Microchip_PIC12:PIC12F635-IP -MCU_Microchip_PIC12:PIC12F635-ISN -MCU_Microchip_PIC12:PIC12F675-IMC -MCU_Microchip_PIC12:PIC12F675-IMS -MCU_Microchip_PIC12:PIC12F675-IP -MCU_Microchip_PIC12:PIC12F675-ISN -MCU_Microchip_PIC12:PIC12F683-IMC -MCU_Microchip_PIC12:PIC12F683-IMS -MCU_Microchip_PIC12:PIC12F683-IP -MCU_Microchip_PIC12:PIC12F683-ISN -MCU_Microchip_PIC12:PIC12F752-IMC -MCU_Microchip_PIC12:PIC12F752-IP -MCU_Microchip_PIC12:PIC12F752-ISN -MCU_Microchip_PIC12:PIC12HV609-IMC -MCU_Microchip_PIC12:PIC12HV609-IMS -MCU_Microchip_PIC12:PIC12HV609-IP -MCU_Microchip_PIC12:PIC12HV609-ISN -MCU_Microchip_PIC12:PIC12HV615-IMC -MCU_Microchip_PIC12:PIC12HV615-IMS -MCU_Microchip_PIC12:PIC12HV615-IP -MCU_Microchip_PIC12:PIC12HV615-ISN -MCU_Microchip_PIC12:PIC12HV752-IMC -MCU_Microchip_PIC12:PIC12HV752-IP -MCU_Microchip_PIC12:PIC12HV752-ISN -MCU_Microchip_PIC12:PIC12LF1501-IMC -MCU_Microchip_PIC12:PIC12LF1501-IMS -MCU_Microchip_PIC12:PIC12LF1501-IP -MCU_Microchip_PIC12:PIC12LF1501-ISN -MCU_Microchip_PIC12:PIC12LF1822-IMC -MCU_Microchip_PIC12:PIC12LF1822-IP -MCU_Microchip_PIC12:PIC12LF1822-ISN -MCU_Microchip_PIC12:PIC12LF1840-IMC -MCU_Microchip_PIC12:PIC12LF1840-IP -MCU_Microchip_PIC12:PIC12LF1840-ISN -MCU_Microchip_PIC12:PIC12LF1840T48-IST +MCU_Microchip_PIC12:PIC12C508-xJW +MCU_Microchip_PIC12:PIC12C508-xP +MCU_Microchip_PIC12:PIC12C508-xSM +MCU_Microchip_PIC12:PIC12C508A-xJW +MCU_Microchip_PIC12:PIC12C508A-xP +MCU_Microchip_PIC12:PIC12C508A-xSM +MCU_Microchip_PIC12:PIC12C508A-xSN +MCU_Microchip_PIC12:PIC12C509-xJW +MCU_Microchip_PIC12:PIC12C509-xP +MCU_Microchip_PIC12:PIC12C509-xSM +MCU_Microchip_PIC12:PIC12C509A-xJW +MCU_Microchip_PIC12:PIC12C509A-xP +MCU_Microchip_PIC12:PIC12C509A-xSM +MCU_Microchip_PIC12:PIC12C509A-xSN +MCU_Microchip_PIC12:PIC12C671-xJW +MCU_Microchip_PIC12:PIC12C671-xP +MCU_Microchip_PIC12:PIC12C671-xSN +MCU_Microchip_PIC12:PIC12C672-xJW +MCU_Microchip_PIC12:PIC12C672-xP +MCU_Microchip_PIC12:PIC12C672-xSN +MCU_Microchip_PIC12:PIC12CE518-xJW +MCU_Microchip_PIC12:PIC12CE518-xP +MCU_Microchip_PIC12:PIC12CE518-xSM +MCU_Microchip_PIC12:PIC12CE518-xSN +MCU_Microchip_PIC12:PIC12CE519-xJW +MCU_Microchip_PIC12:PIC12CE519-xP +MCU_Microchip_PIC12:PIC12CE519-xSM +MCU_Microchip_PIC12:PIC12CE519-xSN +MCU_Microchip_PIC12:PIC12CE673-xJW +MCU_Microchip_PIC12:PIC12CE673-xP +MCU_Microchip_PIC12:PIC12CE674-xJW +MCU_Microchip_PIC12:PIC12CE674-xP +MCU_Microchip_PIC12:PIC12CR509A-xP +MCU_Microchip_PIC12:PIC12CR509A-xSM +MCU_Microchip_PIC12:PIC12CR509A-xSN +MCU_Microchip_PIC12:PIC12F1501-xMC +MCU_Microchip_PIC12:PIC12F1501-xMS +MCU_Microchip_PIC12:PIC12F1501-xP +MCU_Microchip_PIC12:PIC12F1501-xSN +MCU_Microchip_PIC12:PIC12F1822-xMC +MCU_Microchip_PIC12:PIC12F1822-xP +MCU_Microchip_PIC12:PIC12F1822-xSN +MCU_Microchip_PIC12:PIC12F1840-xMC +MCU_Microchip_PIC12:PIC12F1840-xP +MCU_Microchip_PIC12:PIC12F1840-xSN +MCU_Microchip_PIC12:PIC12F508-xMC +MCU_Microchip_PIC12:PIC12F508-xMS +MCU_Microchip_PIC12:PIC12F508-xP +MCU_Microchip_PIC12:PIC12F508-xSN +MCU_Microchip_PIC12:PIC12F509-xMC +MCU_Microchip_PIC12:PIC12F509-xMS +MCU_Microchip_PIC12:PIC12F509-xP +MCU_Microchip_PIC12:PIC12F509-xSN +MCU_Microchip_PIC12:PIC12F510-xMC +MCU_Microchip_PIC12:PIC12F510-xMS +MCU_Microchip_PIC12:PIC12F510-xP +MCU_Microchip_PIC12:PIC12F510-xSN +MCU_Microchip_PIC12:PIC12F519-xMC +MCU_Microchip_PIC12:PIC12F519-xMS +MCU_Microchip_PIC12:PIC12F519-xP +MCU_Microchip_PIC12:PIC12F519-xSN +MCU_Microchip_PIC12:PIC12F609-xMC +MCU_Microchip_PIC12:PIC12F609-xMS +MCU_Microchip_PIC12:PIC12F609-xP +MCU_Microchip_PIC12:PIC12F609-xSN +MCU_Microchip_PIC12:PIC12F615-xMC +MCU_Microchip_PIC12:PIC12F615-xMS +MCU_Microchip_PIC12:PIC12F615-xP +MCU_Microchip_PIC12:PIC12F615-xSN +MCU_Microchip_PIC12:PIC12F617-xMC +MCU_Microchip_PIC12:PIC12F617-xMS +MCU_Microchip_PIC12:PIC12F617-xP +MCU_Microchip_PIC12:PIC12F617-xSN +MCU_Microchip_PIC12:PIC12F629-xMC +MCU_Microchip_PIC12:PIC12F629-xMS +MCU_Microchip_PIC12:PIC12F629-xP +MCU_Microchip_PIC12:PIC12F629-xSN +MCU_Microchip_PIC12:PIC12F635-xMC +MCU_Microchip_PIC12:PIC12F635-xMS +MCU_Microchip_PIC12:PIC12F635-xP +MCU_Microchip_PIC12:PIC12F635-xSN +MCU_Microchip_PIC12:PIC12F675-xMC +MCU_Microchip_PIC12:PIC12F675-xMS +MCU_Microchip_PIC12:PIC12F675-xP +MCU_Microchip_PIC12:PIC12F675-xSN +MCU_Microchip_PIC12:PIC12F683-xMC +MCU_Microchip_PIC12:PIC12F683-xMS +MCU_Microchip_PIC12:PIC12F683-xP +MCU_Microchip_PIC12:PIC12F683-xSN +MCU_Microchip_PIC12:PIC12F752-xMC +MCU_Microchip_PIC12:PIC12F752-xP +MCU_Microchip_PIC12:PIC12F752-xSN +MCU_Microchip_PIC12:PIC12HV609-xMC +MCU_Microchip_PIC12:PIC12HV609-xMS +MCU_Microchip_PIC12:PIC12HV609-xP +MCU_Microchip_PIC12:PIC12HV609-xSN +MCU_Microchip_PIC12:PIC12HV615-xMC +MCU_Microchip_PIC12:PIC12HV615-xMS +MCU_Microchip_PIC12:PIC12HV615-xP +MCU_Microchip_PIC12:PIC12HV615-xSN +MCU_Microchip_PIC12:PIC12HV752-xMC +MCU_Microchip_PIC12:PIC12HV752-xP +MCU_Microchip_PIC12:PIC12HV752-xSN +MCU_Microchip_PIC12:PIC12LF1501-xMC +MCU_Microchip_PIC12:PIC12LF1501-xMS +MCU_Microchip_PIC12:PIC12LF1501-xP +MCU_Microchip_PIC12:PIC12LF1501-xSN +MCU_Microchip_PIC12:PIC12LF1822-xMC +MCU_Microchip_PIC12:PIC12LF1822-xP +MCU_Microchip_PIC12:PIC12LF1822-xSN +MCU_Microchip_PIC12:PIC12LF1840-xMC +MCU_Microchip_PIC12:PIC12LF1840-xP +MCU_Microchip_PIC12:PIC12LF1840-xSN +MCU_Microchip_PIC12:PIC12LF1840T48-xST MCU_Microchip_PIC16:PIC16C505-IP MCU_Microchip_PIC16:PIC16C505-ISL MCU_Microchip_PIC16:PIC16C505-IST @@ -8790,6 +9813,7 @@ MCU_Microchip_PIC16:PIC16F1526-IMR MCU_Microchip_PIC16:PIC16F1526-IPT MCU_Microchip_PIC16:PIC16F1527-IMR MCU_Microchip_PIC16:PIC16F1527-IPT +MCU_Microchip_PIC16:PIC16F15323-xSL MCU_Microchip_PIC16:PIC16F15356-xML MCU_Microchip_PIC16:PIC16F15356-xMV MCU_Microchip_PIC16:PIC16F15356-xSO @@ -9325,7 +10349,9 @@ MCU_Module:Adafruit_Feather_M0_Wifi MCU_Module:Adafruit_Feather_WICED_Wifi MCU_Module:Adafruit_HUZZAH_ESP8266_breakout MCU_Module:Arduino_Leonardo +MCU_Module:Arduino_Nano_ESP32 MCU_Module:Arduino_Nano_Every +MCU_Module:Arduino_Nano_RP2040_Connect MCU_Module:Arduino_Nano_v2.x MCU_Module:Arduino_Nano_v3.x MCU_Module:Arduino_UNO_R2 @@ -9334,6 +10360,7 @@ MCU_Module:CHIP MCU_Module:CHIP-PRO MCU_Module:Carambola2 MCU_Module:Electrosmith_Daisy_Seed_Rev4 +MCU_Module:Google_Coral MCU_Module:Maple_Mini MCU_Module:NUCLEO144-F207ZG MCU_Module:NUCLEO144-F412ZG @@ -9349,6 +10376,7 @@ MCU_Module:NUCLEO144-H743ZI MCU_Module:NUCLEO64-F411RE MCU_Module:OPOS6UL MCU_Module:OPOS6UL_NANO +MCU_Module:Olimex_MOD-WIFI-ESP8266-DEV MCU_Module:Omega2+ MCU_Module:Omega2S MCU_Module:Omega2S+ @@ -9358,19 +10386,29 @@ MCU_Module:RaspberryPi-CM3 MCU_Module:RaspberryPi-CM3+ MCU_Module:RaspberryPi-CM3+L MCU_Module:RaspberryPi-CM3-L +MCU_Module:RaspberryPi_Pico +MCU_Module:RaspberryPi_Pico_Debug +MCU_Module:RaspberryPi_Pico_Extensive +MCU_Module:RaspberryPi_Pico_W +MCU_Module:RaspberryPi_Pico_W_Debug +MCU_Module:RaspberryPi_Pico_W_Extensive MCU_Module:Sipeed-M1 +MCU_Module:Sipeed-M1W MCU_Module:VisionSOM-6UL MCU_Module:VisionSOM-6ULL MCU_Module:VisionSOM-RT MCU_Module:VisionSOM-STM32MP1 -MCU_Module:WeMos_D1_mini MCU_Nordic:nRF51x22-QFxx MCU_Nordic:nRF52810-QCxx MCU_Nordic:nRF52810-QFxx MCU_Nordic:nRF52811-QCxx MCU_Nordic:nRF52820-QDxx MCU_Nordic:nRF52832-QFxx +MCU_Nordic:nRF52833_QDxx +MCU_Nordic:nRF52833_QIxx MCU_Nordic:nRF52840 +MCU_Nordic:nRF5340-QKxx +MCU_Nordic:nRF9160-SIxA MCU_NXP_ColdFire:MCF5211CAE66 MCU_NXP_ColdFire:MCF5212CAE66 MCU_NXP_ColdFire:MCF5213-LQFP100 @@ -9846,11 +10884,14 @@ MCU_NXP_S08:MC9S08SV8CLC MCU_Parallax:P8X32A-D40 MCU_Parallax:P8X32A-M44 MCU_Parallax:P8X32A-Q44 +MCU_Puya:PY32F002AF15P MCU_RaspberryPi:RP2040 MCU_Renesas_Synergy_S1:R7FS12878xA01CFL MCU_SiFive:FE310-G000 MCU_SiFive:FE310-G002 MCU_SiFive:FU540-C000 +MCU_SiliconLabs:C8051F320-GQ +MCU_SiliconLabs:C8051F321-GM MCU_SiliconLabs:C8051F380-GQ MCU_SiliconLabs:C8051F381-GM MCU_SiliconLabs:C8051F381-GQ @@ -9870,6 +10911,14 @@ MCU_SiliconLabs:EFM32HG108F32G-C-QFN24 MCU_SiliconLabs:EFM32HG108F64G-C-QFN24 MCU_SiliconLabs:EFM32HG308F32G-C-QFN24 MCU_SiliconLabs:EFM32HG308F64G-C-QFN24 +MCU_SiliconLabs:EFM32ZG108F16-B-QFN24 +MCU_SiliconLabs:EFM32ZG108F32-B-QFN24 +MCU_SiliconLabs:EFM32ZG108F4-B-QFN24 +MCU_SiliconLabs:EFM32ZG108F8-B-QFN24 +MCU_SiliconLabs:EFM32ZG110F16-B-QFN24 +MCU_SiliconLabs:EFM32ZG110F32-B-QFN24 +MCU_SiliconLabs:EFM32ZG110F4-B-QFN24 +MCU_SiliconLabs:EFM32ZG110F8-B-QFN24 MCU_SiliconLabs:EFM8BB10F2A-A-QFN20 MCU_SiliconLabs:EFM8BB10F2G-A-QFN20 MCU_SiliconLabs:EFM8BB10F2I-A-QFN20 @@ -9888,12 +10937,17 @@ MCU_SiliconLabs:EFM8LB12F64E-C-QFP32 MCU_SiliconLabs:EFM8UB30F40G-A-QFN20 MCU_SiliconLabs:EFM8UB31F40G-A-QFN24 MCU_SiliconLabs:EFM8UB31F40G-A-QSOP24 +MCU_SiliconLabs:EFR32xG23xxxxF512xM48 MCU_STC:IAP15W205S-35x-SOP16 MCU_STC:IRC15W207S-35x-SOP16 MCU_STC:STC15W201S-35x-SOP16 MCU_STC:STC15W202S-35x-SOP16 MCU_STC:STC15W203S-35x-SOP16 MCU_STC:STC15W204S-35x-SOP16 +MCU_STC:STC8G1K04-38I-TSSOP20 +MCU_STC:STC8G1K08-38I-TSSOP20 +MCU_STC:STC8G1K08A-36I-DFN8 +MCU_STC:STC8G1K17-38I-TSSOP20 MCU_ST_STM32C0:STM32C011D6Yx MCU_ST_STM32C0:STM32C011F4Px MCU_ST_STM32C0:STM32C011F4Ux @@ -9922,6 +10976,35 @@ MCU_ST_STM32C0:STM32C031K6Tx MCU_ST_STM32C0:STM32C031K6Ux MCU_ST_STM32C0:STM32C031K_4-6_Tx MCU_ST_STM32C0:STM32C031K_4-6_Ux +MCU_ST_STM32C0:STM32C071C8Tx +MCU_ST_STM32C0:STM32C071C8TxN +MCU_ST_STM32C0:STM32C071C8Ux +MCU_ST_STM32C0:STM32C071C8UxN +MCU_ST_STM32C0:STM32C071CBTx +MCU_ST_STM32C0:STM32C071CBTxN +MCU_ST_STM32C0:STM32C071CBUx +MCU_ST_STM32C0:STM32C071CBUxN +MCU_ST_STM32C0:STM32C071F8Px +MCU_ST_STM32C0:STM32C071F8PxN +MCU_ST_STM32C0:STM32C071FBPx +MCU_ST_STM32C0:STM32C071FBPxN +MCU_ST_STM32C0:STM32C071G8Ux +MCU_ST_STM32C0:STM32C071G8UxN +MCU_ST_STM32C0:STM32C071GBUx +MCU_ST_STM32C0:STM32C071GBUxN +MCU_ST_STM32C0:STM32C071K8Tx +MCU_ST_STM32C0:STM32C071K8TxN +MCU_ST_STM32C0:STM32C071K8Ux +MCU_ST_STM32C0:STM32C071K8UxN +MCU_ST_STM32C0:STM32C071KBTx +MCU_ST_STM32C0:STM32C071KBTxN +MCU_ST_STM32C0:STM32C071KBUx +MCU_ST_STM32C0:STM32C071KBUxN +MCU_ST_STM32C0:STM32C071R8Tx +MCU_ST_STM32C0:STM32C071R8TxN +MCU_ST_STM32C0:STM32C071RBIxN +MCU_ST_STM32C0:STM32C071RBTx +MCU_ST_STM32C0:STM32C071RBTxN MCU_ST_STM32F0:STM32F030C6Tx MCU_ST_STM32F0:STM32F030C8Tx MCU_ST_STM32F0:STM32F030CCTx @@ -10854,6 +11937,7 @@ MCU_ST_STM32F7:STM32F767VIHx MCU_ST_STM32F7:STM32F767VITx MCU_ST_STM32F7:STM32F767ZGTx MCU_ST_STM32F7:STM32F767ZITx +MCU_ST_STM32F7:STM32F768AIYx MCU_ST_STM32F7:STM32F769AGYx MCU_ST_STM32F7:STM32F769AIYx MCU_ST_STM32F7:STM32F769A_G-I_Yx @@ -10978,41 +12062,17 @@ MCU_ST_STM32G0:STM32G061K_6-8_Ux MCU_ST_STM32G0:STM32G070CBTx MCU_ST_STM32G0:STM32G070KBTx MCU_ST_STM32G0:STM32G070RBTx -MCU_ST_STM32G0:STM32G071C6Tx -MCU_ST_STM32G0:STM32G071C6Ux -MCU_ST_STM32G0:STM32G071C8Tx -MCU_ST_STM32G0:STM32G071C8Ux -MCU_ST_STM32G0:STM32G071CBTx -MCU_ST_STM32G0:STM32G071CBUx -MCU_ST_STM32G0:STM32G071C_6-8-B_Tx -MCU_ST_STM32G0:STM32G071C_6-8-B_Ux MCU_ST_STM32G0:STM32G071EBYx -MCU_ST_STM32G0:STM32G071G6Ux -MCU_ST_STM32G0:STM32G071G8Ux MCU_ST_STM32G0:STM32G071G8UxN -MCU_ST_STM32G0:STM32G071GBUx MCU_ST_STM32G0:STM32G071GBUxN -MCU_ST_STM32G0:STM32G071G_6-8-B_Ux MCU_ST_STM32G0:STM32G071G_8-B_UxN -MCU_ST_STM32G0:STM32G071K6Tx -MCU_ST_STM32G0:STM32G071K6Ux -MCU_ST_STM32G0:STM32G071K8Tx MCU_ST_STM32G0:STM32G071K8TxN -MCU_ST_STM32G0:STM32G071K8Ux MCU_ST_STM32G0:STM32G071K8UxN -MCU_ST_STM32G0:STM32G071KBTx MCU_ST_STM32G0:STM32G071KBTxN -MCU_ST_STM32G0:STM32G071KBUx MCU_ST_STM32G0:STM32G071KBUxN -MCU_ST_STM32G0:STM32G071K_6-8-B_Tx -MCU_ST_STM32G0:STM32G071K_6-8-B_Ux MCU_ST_STM32G0:STM32G071K_8-B_TxN MCU_ST_STM32G0:STM32G071K_8-B_UxN -MCU_ST_STM32G0:STM32G071R6Tx -MCU_ST_STM32G0:STM32G071R8Tx MCU_ST_STM32G0:STM32G071RBIx -MCU_ST_STM32G0:STM32G071RBTx -MCU_ST_STM32G0:STM32G071R_6-8-B_Tx MCU_ST_STM32G0:STM32G081CBTx MCU_ST_STM32G0:STM32G081CBUx MCU_ST_STM32G0:STM32G081EBYx @@ -11133,6 +12193,7 @@ MCU_ST_STM32G4:STM32G431C6Ux MCU_ST_STM32G4:STM32G431C8Tx MCU_ST_STM32G4:STM32G431C8Ux MCU_ST_STM32G4:STM32G431CBTx +MCU_ST_STM32G4:STM32G431CBTxZ MCU_ST_STM32G4:STM32G431CBUx MCU_ST_STM32G4:STM32G431CBYx MCU_ST_STM32G4:STM32G431C_6-8-B_Tx @@ -11155,6 +12216,7 @@ MCU_ST_STM32G4:STM32G431R8Ix MCU_ST_STM32G4:STM32G431R8Tx MCU_ST_STM32G4:STM32G431RBIx MCU_ST_STM32G4:STM32G431RBTx +MCU_ST_STM32G4:STM32G431RBTxZ MCU_ST_STM32G4:STM32G431R_6-8-B_Ix MCU_ST_STM32G4:STM32G431R_6-8-B_Tx MCU_ST_STM32G4:STM32G431V6Tx @@ -11190,10 +12252,12 @@ MCU_ST_STM32G4:STM32G473P_B-C-E_Ix MCU_ST_STM32G4:STM32G473QBTx MCU_ST_STM32G4:STM32G473QCTx MCU_ST_STM32G4:STM32G473QETx +MCU_ST_STM32G4:STM32G473QETxZ MCU_ST_STM32G4:STM32G473Q_B-C-E_Tx MCU_ST_STM32G4:STM32G473RBTx MCU_ST_STM32G4:STM32G473RCTx MCU_ST_STM32G4:STM32G473RETx +MCU_ST_STM32G4:STM32G473RETxZ MCU_ST_STM32G4:STM32G473R_B-C-E_Tx MCU_ST_STM32G4:STM32G473VBHx MCU_ST_STM32G4:STM32G473VBTx @@ -11273,6 +12337,7 @@ MCU_ST_STM32G4:STM32G491RCIx MCU_ST_STM32G4:STM32G491RCTx MCU_ST_STM32G4:STM32G491REIx MCU_ST_STM32G4:STM32G491RETx +MCU_ST_STM32G4:STM32G491RETxZ MCU_ST_STM32G4:STM32G491REYx MCU_ST_STM32G4:STM32G491R_C-E_Ix MCU_ST_STM32G4:STM32G491R_C-E_Tx @@ -11288,6 +12353,79 @@ MCU_ST_STM32G4:STM32G4A1REIx MCU_ST_STM32G4:STM32G4A1RETx MCU_ST_STM32G4:STM32G4A1REYx MCU_ST_STM32G4:STM32G4A1VETx +MCU_ST_STM32H5:STM32H503CBTx +MCU_ST_STM32H5:STM32H503CBUx +MCU_ST_STM32H5:STM32H503EBYx +MCU_ST_STM32H5:STM32H503KBUx +MCU_ST_STM32H5:STM32H503RBTx +MCU_ST_STM32H5:STM32H523CCTx +MCU_ST_STM32H5:STM32H523CCUx +MCU_ST_STM32H5:STM32H523CETx +MCU_ST_STM32H5:STM32H523CEUx +MCU_ST_STM32H5:STM32H523RCTx +MCU_ST_STM32H5:STM32H523RETx +MCU_ST_STM32H5:STM32H523VCIx +MCU_ST_STM32H5:STM32H523VCTx +MCU_ST_STM32H5:STM32H523VEIx +MCU_ST_STM32H5:STM32H523VETx +MCU_ST_STM32H5:STM32H523ZCJx +MCU_ST_STM32H5:STM32H523ZCTx +MCU_ST_STM32H5:STM32H523ZEJx +MCU_ST_STM32H5:STM32H523ZETx +MCU_ST_STM32H5:STM32H533CETx +MCU_ST_STM32H5:STM32H533CEUx +MCU_ST_STM32H5:STM32H533RETx +MCU_ST_STM32H5:STM32H533VEIx +MCU_ST_STM32H5:STM32H533VETx +MCU_ST_STM32H5:STM32H533ZEJx +MCU_ST_STM32H5:STM32H533ZETx +MCU_ST_STM32H5:STM32H562AGIx +MCU_ST_STM32H5:STM32H562AIIx +MCU_ST_STM32H5:STM32H562IGKx +MCU_ST_STM32H5:STM32H562IGTx +MCU_ST_STM32H5:STM32H562IIKx +MCU_ST_STM32H5:STM32H562IITx +MCU_ST_STM32H5:STM32H562RGTx +MCU_ST_STM32H5:STM32H562RGVx +MCU_ST_STM32H5:STM32H562RITx +MCU_ST_STM32H5:STM32H562RIVx +MCU_ST_STM32H5:STM32H562VGTx +MCU_ST_STM32H5:STM32H562VITx +MCU_ST_STM32H5:STM32H562ZGTx +MCU_ST_STM32H5:STM32H562ZITx +MCU_ST_STM32H5:STM32H563AGIx +MCU_ST_STM32H5:STM32H563AIIx +MCU_ST_STM32H5:STM32H563AIIxQ +MCU_ST_STM32H5:STM32H563IGKx +MCU_ST_STM32H5:STM32H563IGTx +MCU_ST_STM32H5:STM32H563IIKx +MCU_ST_STM32H5:STM32H563IIKxQ +MCU_ST_STM32H5:STM32H563IITx +MCU_ST_STM32H5:STM32H563IITxQ +MCU_ST_STM32H5:STM32H563MIYxQ +MCU_ST_STM32H5:STM32H563RGTx +MCU_ST_STM32H5:STM32H563RGVx +MCU_ST_STM32H5:STM32H563RITx +MCU_ST_STM32H5:STM32H563RIVx +MCU_ST_STM32H5:STM32H563VGTx +MCU_ST_STM32H5:STM32H563VITx +MCU_ST_STM32H5:STM32H563VITxQ +MCU_ST_STM32H5:STM32H563ZGTx +MCU_ST_STM32H5:STM32H563ZITx +MCU_ST_STM32H5:STM32H563ZITxQ +MCU_ST_STM32H5:STM32H573AIIx +MCU_ST_STM32H5:STM32H573AIIxQ +MCU_ST_STM32H5:STM32H573IIKx +MCU_ST_STM32H5:STM32H573IIKxQ +MCU_ST_STM32H5:STM32H573IITx +MCU_ST_STM32H5:STM32H573IITxQ +MCU_ST_STM32H5:STM32H573MIYxQ +MCU_ST_STM32H5:STM32H573RITx +MCU_ST_STM32H5:STM32H573RIVx +MCU_ST_STM32H5:STM32H573VITx +MCU_ST_STM32H5:STM32H573VITxQ +MCU_ST_STM32H5:STM32H573ZITx +MCU_ST_STM32H5:STM32H573ZITxQ MCU_ST_STM32H7:STM32H723VEHx MCU_ST_STM32H7:STM32H723VETx MCU_ST_STM32H7:STM32H723VGHx @@ -11479,6 +12617,40 @@ MCU_ST_STM32H7:STM32H7B3VITx MCU_ST_STM32H7:STM32H7B3VITxQ MCU_ST_STM32H7:STM32H7B3ZITx MCU_ST_STM32H7:STM32H7B3ZITxQ +MCU_ST_STM32H7:STM32H7R3A8Ix +MCU_ST_STM32H7:STM32H7R3I8Kx +MCU_ST_STM32H7:STM32H7R3I8Tx +MCU_ST_STM32H7:STM32H7R3L8Hx +MCU_ST_STM32H7:STM32H7R3L8HxH +MCU_ST_STM32H7:STM32H7R3R8Vx +MCU_ST_STM32H7:STM32H7R3V8Hx +MCU_ST_STM32H7:STM32H7R3V8Tx +MCU_ST_STM32H7:STM32H7R3V8Yx +MCU_ST_STM32H7:STM32H7R3Z8Jx +MCU_ST_STM32H7:STM32H7R3Z8Tx +MCU_ST_STM32H7:STM32H7R7A8Ix +MCU_ST_STM32H7:STM32H7R7I8Kx +MCU_ST_STM32H7:STM32H7R7I8Tx +MCU_ST_STM32H7:STM32H7R7L8Hx +MCU_ST_STM32H7:STM32H7R7L8HxH +MCU_ST_STM32H7:STM32H7R7Z8Jx +MCU_ST_STM32H7:STM32H7S3A8Ix +MCU_ST_STM32H7:STM32H7S3I8Kx +MCU_ST_STM32H7:STM32H7S3I8Tx +MCU_ST_STM32H7:STM32H7S3L8Hx +MCU_ST_STM32H7:STM32H7S3L8HxH +MCU_ST_STM32H7:STM32H7S3R8Vx +MCU_ST_STM32H7:STM32H7S3V8Hx +MCU_ST_STM32H7:STM32H7S3V8Tx +MCU_ST_STM32H7:STM32H7S3V8Yx +MCU_ST_STM32H7:STM32H7S3Z8Jx +MCU_ST_STM32H7:STM32H7S3Z8Tx +MCU_ST_STM32H7:STM32H7S7A8Ix +MCU_ST_STM32H7:STM32H7S7I8Kx +MCU_ST_STM32H7:STM32H7S7I8Tx +MCU_ST_STM32H7:STM32H7S7L8Hx +MCU_ST_STM32H7:STM32H7S7L8HxH +MCU_ST_STM32H7:STM32H7S7Z8Jx MCU_ST_STM32L0:STM32L010C6Tx MCU_ST_STM32L0:STM32L010F4Px MCU_ST_STM32L0:STM32L010K4Tx @@ -12054,6 +13226,7 @@ MCU_ST_STM32L4:STM32L476R_C-E-G_Tx MCU_ST_STM32L4:STM32L476VCTx MCU_ST_STM32L4:STM32L476VETx MCU_ST_STM32L4:STM32L476VGTx +MCU_ST_STM32L4:STM32L476VGYxP MCU_ST_STM32L4:STM32L476V_C-E-G_Tx MCU_ST_STM32L4:STM32L476ZETx MCU_ST_STM32L4:STM32L476ZGJx @@ -12245,6 +13418,42 @@ MCU_ST_STM32L5:STM32L562VETx MCU_ST_STM32L5:STM32L562VETxQ MCU_ST_STM32L5:STM32L562ZETx MCU_ST_STM32L5:STM32L562ZETxQ +MCU_ST_STM32MP1:STM32MP131AAEx +MCU_ST_STM32MP1:STM32MP131AAFx +MCU_ST_STM32MP1:STM32MP131AAGx +MCU_ST_STM32MP1:STM32MP131CAEx +MCU_ST_STM32MP1:STM32MP131CAFx +MCU_ST_STM32MP1:STM32MP131CAGx +MCU_ST_STM32MP1:STM32MP131DAEx +MCU_ST_STM32MP1:STM32MP131DAFx +MCU_ST_STM32MP1:STM32MP131DAGx +MCU_ST_STM32MP1:STM32MP131FAEx +MCU_ST_STM32MP1:STM32MP131FAFx +MCU_ST_STM32MP1:STM32MP131FAGx +MCU_ST_STM32MP1:STM32MP133AAEx +MCU_ST_STM32MP1:STM32MP133AAFx +MCU_ST_STM32MP1:STM32MP133AAGx +MCU_ST_STM32MP1:STM32MP133CAEx +MCU_ST_STM32MP1:STM32MP133CAFx +MCU_ST_STM32MP1:STM32MP133CAGx +MCU_ST_STM32MP1:STM32MP133DAEx +MCU_ST_STM32MP1:STM32MP133DAFx +MCU_ST_STM32MP1:STM32MP133DAGx +MCU_ST_STM32MP1:STM32MP133FAEx +MCU_ST_STM32MP1:STM32MP133FAFx +MCU_ST_STM32MP1:STM32MP133FAGx +MCU_ST_STM32MP1:STM32MP135AAEx +MCU_ST_STM32MP1:STM32MP135AAFx +MCU_ST_STM32MP1:STM32MP135AAGx +MCU_ST_STM32MP1:STM32MP135CAEx +MCU_ST_STM32MP1:STM32MP135CAFx +MCU_ST_STM32MP1:STM32MP135CAGx +MCU_ST_STM32MP1:STM32MP135DAEx +MCU_ST_STM32MP1:STM32MP135DAFx +MCU_ST_STM32MP1:STM32MP135DAGx +MCU_ST_STM32MP1:STM32MP135FAEx +MCU_ST_STM32MP1:STM32MP135FAFx +MCU_ST_STM32MP1:STM32MP135FAGx MCU_ST_STM32MP1:STM32MP151AAAx MCU_ST_STM32MP1:STM32MP151AABx MCU_ST_STM32MP1:STM32MP151AACx @@ -12293,6 +13502,103 @@ MCU_ST_STM32MP1:STM32MP157FAAx MCU_ST_STM32MP1:STM32MP157FABx MCU_ST_STM32MP1:STM32MP157FACx MCU_ST_STM32MP1:STM32MP157FADx +MCU_ST_STM32U0:STM32U031C6Tx +MCU_ST_STM32U0:STM32U031C6Ux +MCU_ST_STM32U0:STM32U031C8Tx +MCU_ST_STM32U0:STM32U031C8Ux +MCU_ST_STM32U0:STM32U031F4Px +MCU_ST_STM32U0:STM32U031F6Px +MCU_ST_STM32U0:STM32U031F8Px +MCU_ST_STM32U0:STM32U031G6Yx +MCU_ST_STM32U0:STM32U031G8Yx +MCU_ST_STM32U0:STM32U031K4Ux +MCU_ST_STM32U0:STM32U031K6Ux +MCU_ST_STM32U0:STM32U031K8Ux +MCU_ST_STM32U0:STM32U031R6Ix +MCU_ST_STM32U0:STM32U031R6Tx +MCU_ST_STM32U0:STM32U031R8Ix +MCU_ST_STM32U0:STM32U031R8Tx +MCU_ST_STM32U0:STM32U073C8Tx +MCU_ST_STM32U0:STM32U073C8Ux +MCU_ST_STM32U0:STM32U073CBTx +MCU_ST_STM32U0:STM32U073CBUx +MCU_ST_STM32U0:STM32U073CCTx +MCU_ST_STM32U0:STM32U073CCUx +MCU_ST_STM32U0:STM32U073H8Yx +MCU_ST_STM32U0:STM32U073HBYx +MCU_ST_STM32U0:STM32U073HCYx +MCU_ST_STM32U0:STM32U073K8Ux +MCU_ST_STM32U0:STM32U073KBUx +MCU_ST_STM32U0:STM32U073KCUx +MCU_ST_STM32U0:STM32U073M8Ix +MCU_ST_STM32U0:STM32U073M8Tx +MCU_ST_STM32U0:STM32U073MBIx +MCU_ST_STM32U0:STM32U073MBTx +MCU_ST_STM32U0:STM32U073MCIx +MCU_ST_STM32U0:STM32U073MCTx +MCU_ST_STM32U0:STM32U073R8Ix +MCU_ST_STM32U0:STM32U073R8Tx +MCU_ST_STM32U0:STM32U073RBIx +MCU_ST_STM32U0:STM32U073RBTx +MCU_ST_STM32U0:STM32U073RCIx +MCU_ST_STM32U0:STM32U073RCTx +MCU_ST_STM32U0:STM32U083CCTx +MCU_ST_STM32U0:STM32U083CCUx +MCU_ST_STM32U0:STM32U083HCYx +MCU_ST_STM32U0:STM32U083KCUx +MCU_ST_STM32U0:STM32U083MCIx +MCU_ST_STM32U0:STM32U083MCTx +MCU_ST_STM32U0:STM32U083RCIx +MCU_ST_STM32U0:STM32U083RCTx +MCU_ST_STM32U5:STM32U535CBTx +MCU_ST_STM32U5:STM32U535CBTxQ +MCU_ST_STM32U5:STM32U535CBUx +MCU_ST_STM32U5:STM32U535CBUxQ +MCU_ST_STM32U5:STM32U535CCTx +MCU_ST_STM32U5:STM32U535CCTxQ +MCU_ST_STM32U5:STM32U535CCUx +MCU_ST_STM32U5:STM32U535CCUxQ +MCU_ST_STM32U5:STM32U535CETx +MCU_ST_STM32U5:STM32U535CETxQ +MCU_ST_STM32U5:STM32U535CEUx +MCU_ST_STM32U5:STM32U535CEUxQ +MCU_ST_STM32U5:STM32U535JEYxQ +MCU_ST_STM32U5:STM32U535NCYxQ +MCU_ST_STM32U5:STM32U535NEYxQ +MCU_ST_STM32U5:STM32U535RBIx +MCU_ST_STM32U5:STM32U535RBIxQ +MCU_ST_STM32U5:STM32U535RBTx +MCU_ST_STM32U5:STM32U535RBTxQ +MCU_ST_STM32U5:STM32U535RCIx +MCU_ST_STM32U5:STM32U535RCIxQ +MCU_ST_STM32U5:STM32U535RCTx +MCU_ST_STM32U5:STM32U535RCTxQ +MCU_ST_STM32U5:STM32U535REIx +MCU_ST_STM32U5:STM32U535REIxQ +MCU_ST_STM32U5:STM32U535RETx +MCU_ST_STM32U5:STM32U535RETxQ +MCU_ST_STM32U5:STM32U535VCIx +MCU_ST_STM32U5:STM32U535VCIxQ +MCU_ST_STM32U5:STM32U535VCTx +MCU_ST_STM32U5:STM32U535VCTxQ +MCU_ST_STM32U5:STM32U535VEIx +MCU_ST_STM32U5:STM32U535VEIxQ +MCU_ST_STM32U5:STM32U535VETx +MCU_ST_STM32U5:STM32U535VETxQ +MCU_ST_STM32U5:STM32U545CETx +MCU_ST_STM32U5:STM32U545CETxQ +MCU_ST_STM32U5:STM32U545CEUx +MCU_ST_STM32U5:STM32U545CEUxQ +MCU_ST_STM32U5:STM32U545JEYxQ +MCU_ST_STM32U5:STM32U545NEYxQ +MCU_ST_STM32U5:STM32U545REIx +MCU_ST_STM32U5:STM32U545REIxQ +MCU_ST_STM32U5:STM32U545RETx +MCU_ST_STM32U5:STM32U545RETxQ +MCU_ST_STM32U5:STM32U545VEIx +MCU_ST_STM32U5:STM32U545VEIxQ +MCU_ST_STM32U5:STM32U545VETx +MCU_ST_STM32U5:STM32U545VETxQ MCU_ST_STM32U5:STM32U575AGIx MCU_ST_STM32U5:STM32U575AGIxQ MCU_ST_STM32U5:STM32U575AIIx @@ -12338,6 +13644,78 @@ MCU_ST_STM32U5:STM32U585VITx MCU_ST_STM32U5:STM32U585VITxQ MCU_ST_STM32U5:STM32U585ZITx MCU_ST_STM32U5:STM32U585ZITxQ +MCU_ST_STM32U5:STM32U595AIHx +MCU_ST_STM32U5:STM32U595AIHxQ +MCU_ST_STM32U5:STM32U595AJHx +MCU_ST_STM32U5:STM32U595AJHxQ +MCU_ST_STM32U5:STM32U595QIIx +MCU_ST_STM32U5:STM32U595QIIxQ +MCU_ST_STM32U5:STM32U595QJIx +MCU_ST_STM32U5:STM32U595QJIxQ +MCU_ST_STM32U5:STM32U595RITx +MCU_ST_STM32U5:STM32U595RITxQ +MCU_ST_STM32U5:STM32U595RJTx +MCU_ST_STM32U5:STM32U595RJTxQ +MCU_ST_STM32U5:STM32U595VITx +MCU_ST_STM32U5:STM32U595VITxQ +MCU_ST_STM32U5:STM32U595VJTx +MCU_ST_STM32U5:STM32U595VJTxQ +MCU_ST_STM32U5:STM32U595ZITx +MCU_ST_STM32U5:STM32U595ZITxQ +MCU_ST_STM32U5:STM32U595ZIYxQ +MCU_ST_STM32U5:STM32U595ZJTx +MCU_ST_STM32U5:STM32U595ZJTxQ +MCU_ST_STM32U5:STM32U595ZJYxQ +MCU_ST_STM32U5:STM32U599BJYxQ +MCU_ST_STM32U5:STM32U599NIHxQ +MCU_ST_STM32U5:STM32U599NJHxQ +MCU_ST_STM32U5:STM32U599VITxQ +MCU_ST_STM32U5:STM32U599VJTx +MCU_ST_STM32U5:STM32U599VJTxQ +MCU_ST_STM32U5:STM32U599ZITxQ +MCU_ST_STM32U5:STM32U599ZIYxQ +MCU_ST_STM32U5:STM32U599ZJTxQ +MCU_ST_STM32U5:STM32U599ZJYxQ +MCU_ST_STM32U5:STM32U5A5AJHx +MCU_ST_STM32U5:STM32U5A5AJHxQ +MCU_ST_STM32U5:STM32U5A5QIIxQ +MCU_ST_STM32U5:STM32U5A5QJIx +MCU_ST_STM32U5:STM32U5A5QJIxQ +MCU_ST_STM32U5:STM32U5A5RJTx +MCU_ST_STM32U5:STM32U5A5RJTxQ +MCU_ST_STM32U5:STM32U5A5VJTx +MCU_ST_STM32U5:STM32U5A5VJTxQ +MCU_ST_STM32U5:STM32U5A5ZJTx +MCU_ST_STM32U5:STM32U5A5ZJTxQ +MCU_ST_STM32U5:STM32U5A5ZJYxQ +MCU_ST_STM32U5:STM32U5A9BJYxQ +MCU_ST_STM32U5:STM32U5A9NJHxQ +MCU_ST_STM32U5:STM32U5A9VJTxQ +MCU_ST_STM32U5:STM32U5A9ZJTxQ +MCU_ST_STM32U5:STM32U5A9ZJYxQ +MCU_ST_STM32U5:STM32U5F7VITx +MCU_ST_STM32U5:STM32U5F7VITxQ +MCU_ST_STM32U5:STM32U5F7VJTx +MCU_ST_STM32U5:STM32U5F7VJTxQ +MCU_ST_STM32U5:STM32U5F9BJYxQ +MCU_ST_STM32U5:STM32U5F9NJHxQ +MCU_ST_STM32U5:STM32U5F9VITxQ +MCU_ST_STM32U5:STM32U5F9VJTxQ +MCU_ST_STM32U5:STM32U5F9ZIJxQ +MCU_ST_STM32U5:STM32U5F9ZITxQ +MCU_ST_STM32U5:STM32U5F9ZJJxQ +MCU_ST_STM32U5:STM32U5F9ZJTxQ +MCU_ST_STM32U5:STM32U5G7VJTx +MCU_ST_STM32U5:STM32U5G7VJTxQ +MCU_ST_STM32U5:STM32U5G9BJYxQ +MCU_ST_STM32U5:STM32U5G9NJHxQ +MCU_ST_STM32U5:STM32U5G9VJTxQ +MCU_ST_STM32U5:STM32U5G9ZJJxQ +MCU_ST_STM32U5:STM32U5G9ZJTxQ +MCU_ST_STM32WB:STM32WB05KZVx +MCU_ST_STM32WB:STM32WB06KCVx +MCU_ST_STM32WB:STM32WB07KCVx +MCU_ST_STM32WB:STM32WB09KEVx MCU_ST_STM32WB:STM32WB10CCUx MCU_ST_STM32WB:STM32WB15CCUx MCU_ST_STM32WB:STM32WB15CCUxE @@ -12360,6 +13738,20 @@ MCU_ST_STM32WB:STM32WB55VEYx MCU_ST_STM32WB:STM32WB55VGQx MCU_ST_STM32WB:STM32WB55VGYx MCU_ST_STM32WB:STM32WB55VYYx +MCU_ST_STM32WB:STM32WBA52CEUx +MCU_ST_STM32WB:STM32WBA52CGUx +MCU_ST_STM32WB:STM32WBA52KEUx +MCU_ST_STM32WB:STM32WBA52KGUx +MCU_ST_STM32WB:STM32WBA54CEUx +MCU_ST_STM32WB:STM32WBA54CGUx +MCU_ST_STM32WB:STM32WBA54KEUx +MCU_ST_STM32WB:STM32WBA54KGUx +MCU_ST_STM32WB:STM32WBA55CEUx +MCU_ST_STM32WB:STM32WBA55CGUx +MCU_ST_STM32WB:STM32WBA55HEFx +MCU_ST_STM32WB:STM32WBA55HGFx +MCU_ST_STM32WB:STM32WBA55UEIx +MCU_ST_STM32WB:STM32WBA55UGIx MCU_ST_STM32WL:STM32WL54CCUx MCU_ST_STM32WL:STM32WL54JCIx MCU_ST_STM32WL:STM32WL55CCUx @@ -12401,12 +13793,14 @@ MCU_ST_STM8:STM8S003K3T MCU_ST_STM8:STM8S207C6 MCU_ST_STM8:STM8S207C8 MCU_ST_STM8:STM8S207CB +MCU_ST_STM8:STM8S207MB MCU_ST_STM8:STM8S207R6 MCU_ST_STM8:STM8S207R8 MCU_ST_STM8:STM8S207RB MCU_ST_STM8:STM8S208C6 MCU_ST_STM8:STM8S208C8 MCU_ST_STM8:STM8S208CB +MCU_ST_STM8:STM8S208MB MCU_ST_STM8:STM8S208R6 MCU_ST_STM8:STM8S208R8 MCU_ST_STM8:STM8S208RB @@ -12793,6 +14187,19 @@ MCU_Texas_MSP430:MSP430G2855IRHA40 MCU_Texas_MSP430:MSP430G2955IDA38 MCU_Texas_MSP430:MSP430G2955IRHA40 MCU_Texas_SimpleLink:CC1312R1F3RGZ +MCU_WCH_CH32V0:CH32V003AxMx +MCU_WCH_CH32V0:CH32V003FxPx +MCU_WCH_CH32V0:CH32V003FxUx +MCU_WCH_CH32V0:CH32V003JxMx +MCU_WCH_CH32V2:CH32V203CxTx +MCU_WCH_CH32V2:CH32V203F6P6 +MCU_WCH_CH32V2:CH32V203GxUx +MCU_WCH_CH32V3:CH32V30xCxTx +MCU_WCH_CH32V3:CH32V30xFxPx +MCU_WCH_CH32V3:CH32V30xRxTx +MCU_WCH_CH32V3:CH32V30xVxTx +MCU_WCH_CH32V3:CH32V30xWxUx +MCU_WCH_CH32X0:CH32X035G8U6 Mechanical:DIN_Rail_Adapter Mechanical:Fiducial Mechanical:Heatsink @@ -12805,6 +14212,10 @@ Mechanical:MountingHole Mechanical:MountingHole_Pad Mechanical:MountingHole_Pad_MP Memory_EEPROM:24AA02-OT +Memory_EEPROM:24AA025E-OT +Memory_EEPROM:24AA025E-SN +Memory_EEPROM:24AA02E-OT +Memory_EEPROM:24AA02E-SN Memory_EEPROM:24LC00 Memory_EEPROM:24LC01 Memory_EEPROM:24LC02 @@ -12821,6 +14232,7 @@ Memory_EEPROM:25CSM04xxMF Memory_EEPROM:25CSM04xxSN Memory_EEPROM:25LCxxx Memory_EEPROM:25LCxxx-MC +Memory_EEPROM:25LCxxx-MF Memory_EEPROM:28C256 Memory_EEPROM:93AAxxA Memory_EEPROM:93AAxxAT-xOT @@ -12874,6 +14286,14 @@ Memory_EEPROM:CAT24M01X Memory_EEPROM:CAT24M01Y Memory_EEPROM:CAT250xxx Memory_EEPROM:CAT250xxx-HU4 +Memory_EEPROM:DS2431 +Memory_EEPROM:DS2431P +Memory_EEPROM:DS2431Q +Memory_EEPROM:DS28E07 +Memory_EEPROM:DS28E07P +Memory_EEPROM:DS28E07Q +Memory_EEPROM:KM28C64A +Memory_EEPROM:KM28C65A Memory_EEPROM:M24C01-FDW Memory_EEPROM:M24C01-FMN Memory_EEPROM:M24C01-RDW @@ -12887,6 +14307,7 @@ Memory_EEPROM:M24C02-RMN Memory_EEPROM:M24C02-WDW Memory_EEPROM:M24C02-WMN Memory_EEPROM:M95256-WMN6P +Memory_EEPROM:M95512-Axxx-MF Memory_EEPROM:TMS4C1050N Memory_EPROM:27128 Memory_EPROM:27256 @@ -12904,6 +14325,9 @@ Memory_EPROM:27C64 Memory_Flash:28F400 Memory_Flash:29F010-TSOP-SP Memory_Flash:29W040 +Memory_Flash:AM29F400BB-90SC +Memory_Flash:AM29F400Bx-xxEx +Memory_Flash:AM29F400Bx-xxSx Memory_Flash:AM29PDL128G Memory_Flash:AT25DF041x-UxN-x Memory_Flash:AT25SF081-SSHD-X @@ -12921,6 +14345,7 @@ Memory_Flash:AT45DB161B-TC-2.5 Memory_Flash:AT45DB161D-SU Memory_Flash:GD25D05CT Memory_Flash:GD25D10CT +Memory_Flash:GD25QxxxEY Memory_Flash:IS25WP256D-xM Memory_Flash:M25PX32-VMP Memory_Flash:M25PX32-VMW @@ -12941,7 +14366,10 @@ Memory_Flash:SST25VF080B-50-4x-S2Ax Memory_Flash:SST39SF010 Memory_Flash:SST39SF020 Memory_Flash:SST39SF040 +Memory_Flash:W25Q128JVE +Memory_Flash:W25Q128JVP Memory_Flash:W25Q128JVS +Memory_Flash:W25Q16JVSS Memory_Flash:W25Q32JVSS Memory_Flash:W25Q32JVZP Memory_Flash:W25X20CLSN @@ -12957,6 +14385,13 @@ Memory_NVRAM:47C04 Memory_NVRAM:47C16 Memory_NVRAM:47L04 Memory_NVRAM:47L16 +Memory_NVRAM:CY14B256LA-SP +Memory_NVRAM:CY14B256LA-SZ +Memory_NVRAM:CY14B256LA-ZS +Memory_NVRAM:CY14E256LA-SZ +Memory_NVRAM:CY14E256LA-ZS +Memory_NVRAM:CY14U256LA-BA +Memory_NVRAM:CY14V256LA-BA Memory_NVRAM:FM1608B-SG Memory_NVRAM:FM16W08-SG Memory_NVRAM:FM1808B-SG @@ -12973,17 +14408,41 @@ Memory_NVRAM:MB85RS512T Memory_NVRAM:MB85RS64 Memory_NVRAM:MR20H40 Memory_NVRAM:MR25H40 -Memory_RAM:628128_DIP32_SSOP32 -Memory_RAM:628128_TSOP32 +Memory_NVRAM:STK14C88 +Memory_NVRAM:STK14C88-3 +Memory_NVRAM:STK14C88C +Memory_NVRAM:STK14C88C-3 Memory_RAM:AS4C256M16D3 Memory_RAM:AS4C4M16SA +Memory_RAM:AS6C1008-xxB +Memory_RAM:AS6C1008-xxP +Memory_RAM:AS6C1008-xxS +Memory_RAM:AS6C1008-xxST +Memory_RAM:AS6C1008-xxT Memory_RAM:AS6C1616 Memory_RAM:AS6C4008-55PCN +Memory_RAM:AS7C1024B-xxJ +Memory_RAM:AS7C1024B-xxT +Memory_RAM:AS7C1024B-xxTJ +Memory_RAM:AS7C31024B-xxJ +Memory_RAM:AS7C31024B-xxST +Memory_RAM:AS7C31024B-xxT +Memory_RAM:AS7C31024B-xxTJ +Memory_RAM:CY62128EV30xx-xxS +Memory_RAM:CY62128EV30xx-xxZ +Memory_RAM:CY62128Exx-xxS +Memory_RAM:CY62128Exx-xxZ Memory_RAM:CY62256-70PC Memory_RAM:CY7C199 Memory_RAM:ESP-PSRAM32 Memory_RAM:H5AN8G8NAFR-UHC Memory_RAM:HM62256BLP +Memory_RAM:HM628128D_DIP32_SOP32 +Memory_RAM:HM628128D_TSOP32 +Memory_RAM:HM628128_DIP32_SOP32 +Memory_RAM:HM628128_TSOP32 +Memory_RAM:HY6264AxJ +Memory_RAM:HY6264AxP Memory_RAM:IDT7006PF Memory_RAM:IDT7027_TQ100 Memory_RAM:IDT7132 @@ -13005,15 +14464,27 @@ Memory_RAM:IS61C5128AL-10TLI Memory_RAM:IS61C5128AS-25HLI Memory_RAM:IS61C5128AS-25QLI Memory_RAM:IS61C5128AS-25TLI +Memory_RAM:IS62C256AL Memory_RAM:IS64C5128AL-12CTLA3 Memory_RAM:IS64C5128AL-12KLA3 +Memory_RAM:IS65C256AL +Memory_RAM:IS6xC1024AL-xxH +Memory_RAM:IS6xC1024AL-xxJ +Memory_RAM:IS6xC1024AL-xxK +Memory_RAM:IS6xC1024AL-xxT Memory_RAM:KM62256CLP +Memory_RAM:M48Tx2 +Memory_RAM:M48Zx2 +Memory_RAM:MK4116N +Memory_RAM:MK4164N Memory_RAM:MT48LC16M16A2P Memory_RAM:MT48LC16M16A2TG Memory_RAM:MT48LC32M8A2P Memory_RAM:MT48LC32M8A2TG Memory_RAM:MT48LC64M4A2P Memory_RAM:MT48LC64M4A2TG +Memory_RAM:R1LP0108ESF +Memory_RAM:R1LP0108ESN Memory_RAM:W9812G6KH-5 Memory_RAM:W9812G6KH-6 Memory_RAM:W9812G6KH-6I @@ -13027,7 +14498,8 @@ Motor:Fan_3pin Motor:Fan_4pin Motor:Fan_ALT Motor:Fan_CPU_4pin -Motor:Fan_IEC60617 +Motor:Fan_IEC-60617 +Motor:Fan_ISO-14617 Motor:Fan_PC_Chassis Motor:Fan_Tacho Motor:Fan_Tacho_PWM @@ -13120,6 +14592,21 @@ Oscillator:Si5351B-B-GM Oscillator:Si5351C-B-GM Oscillator:Si570 Oscillator:Si571 +Oscillator:SiT8008xx-1x-xxE +Oscillator:SiT8008xx-1x-xxN +Oscillator:SiT8008xx-1x-xxS +Oscillator:SiT8008xx-2x-xxE +Oscillator:SiT8008xx-2x-xxN +Oscillator:SiT8008xx-2x-xxS +Oscillator:SiT8008xx-3x-xxE +Oscillator:SiT8008xx-3x-xxN +Oscillator:SiT8008xx-3x-xxS +Oscillator:SiT8008xx-7x-xxE +Oscillator:SiT8008xx-7x-xxN +Oscillator:SiT8008xx-7x-xxS +Oscillator:SiT8008xx-8x-xxE +Oscillator:SiT8008xx-8x-xxN +Oscillator:SiT8008xx-8x-xxS Oscillator:SiT9365xx-xBx-xxE Oscillator:SiT9365xx-xBx-xxN Oscillator:SiT9366xx-xBx-xxE @@ -13130,6 +14617,7 @@ Oscillator:TCXO-14 Oscillator:TCXO3 Oscillator:TFT660 Oscillator:TFT680 +Oscillator:TG2520SMN-xx.xxxxxxMhz-xxxxNM Oscillator:TXC-7C Oscillator:VC-81 Oscillator:VC-83 @@ -13181,6 +14669,14 @@ Potentiometer_Digital:MCP4024-xxxxOT Potentiometer_Digital:MCP41010 Potentiometer_Digital:MCP41050 Potentiometer_Digital:MCP41100 +Potentiometer_Digital:MCP4131-xxxx-P +Potentiometer_Digital:MCP4132-xxxx-P +Potentiometer_Digital:MCP4141-xxxx-P +Potentiometer_Digital:MCP4142-xxxx-P +Potentiometer_Digital:MCP4151-xxxx-P +Potentiometer_Digital:MCP4152-xxxx-P +Potentiometer_Digital:MCP4161-xxxx-P +Potentiometer_Digital:MCP4162-xxxx-P Potentiometer_Digital:MCP42010 Potentiometer_Digital:MCP42050 Potentiometer_Digital:MCP42100 @@ -13306,12 +14802,20 @@ Power_Management:AAT4610BIGV-1-T1 Power_Management:AAT4610BIGV-T1 Power_Management:AAT4616IGV-1-T1 Power_Management:AAT4616IGV-T1 +Power_Management:ADM1270ACPZ +Power_Management:ADM1270ARQZ Power_Management:AP2161W Power_Management:AP2171W Power_Management:AP22804AW5 Power_Management:AP22804BW5 Power_Management:AP22814AW5 Power_Management:AP22814BW5 +Power_Management:AP22816AKEWT +Power_Management:AP22816BKEWT +Power_Management:AP22817AKEWT +Power_Management:AP22817BKEWT +Power_Management:AP22818AKEWT +Power_Management:AP22818BKEWT Power_Management:AP22913CN4 Power_Management:AUIPS1041R Power_Management:AUIPS1042G @@ -13343,6 +14847,9 @@ Power_Management:AUIR3315S Power_Management:AUIR3316S Power_Management:AUIR3320S Power_Management:AUIR33402S +Power_Management:BD2222G +Power_Management:BD2242G +Power_Management:BD2243G Power_Management:BD48ExxG Power_Management:BD48KxxG Power_Management:BD48LxxG @@ -13377,8 +14884,11 @@ Power_Management:BTS6143D Power_Management:BTS6163D Power_Management:BTS6200-1EJA Power_Management:BTS7004-1EPP +Power_Management:BTS711L1 +Power_Management:BTS712N1 Power_Management:BTS716G Power_Management:BTS716GB +Power_Management:BTS721L1 Power_Management:BTS724G Power_Management:CAP002DG Power_Management:CAP003DG @@ -13399,6 +14909,9 @@ Power_Management:CAP019DG Power_Management:CAP200DG Power_Management:CAP300DG Power_Management:DS1210 +Power_Management:EPC23102 +Power_Management:EPC23103 +Power_Management:EPC23104 Power_Management:FPF2000 Power_Management:FPF2001 Power_Management:FPF2002 @@ -13431,6 +14944,12 @@ Power_Management:LM5050-1 Power_Management:LM5050-2 Power_Management:LM5051 Power_Management:LM5060 +Power_Management:LM50672NPAR +Power_Management:LM5067MM-1 +Power_Management:LM5067MM-2 +Power_Management:LM5067MMX-2 +Power_Management:LM5067MWX-1 +Power_Management:LM66100DCK Power_Management:LM74700 Power_Management:LMG3410 Power_Management:LMG5200 @@ -13467,17 +14986,30 @@ Power_Management:LTC4417HGN Power_Management:LTC4417HUF Power_Management:LTC4417IGN Power_Management:LTC4417IUF +Power_Management:MAX14919xUP Power_Management:MAX8586 +Power_Management:MAX9611 +Power_Management:MAX9612 +Power_Management:MIC2007YM6 +Power_Management:MIC2008YM6 +Power_Management:MIC2017YM6 +Power_Management:MIC2018YM6 Power_Management:MIC2025-1YM Power_Management:MIC2025-1YMM Power_Management:MIC2025-2YM Power_Management:MIC2025-2YMM -Power_Management:MIC2026-1BM Power_Management:MIC2026-1BN -Power_Management:MIC2026-2BM +Power_Management:MIC2026-1xM Power_Management:MIC2026-2BN +Power_Management:MIC2026-2xM +Power_Management:MIC2090-1YM5 +Power_Management:MIC2090-2YM5 +Power_Management:MIC2091-1YM5 +Power_Management:MIC2091-2YM5 +Power_Management:MIC2544-2YM Power_Management:MIC2587-1 Power_Management:MIC2587R-1 +Power_Management:NIS5420MTxTXG Power_Management:NPC45560-H Power_Management:NPC45560-L Power_Management:PD70224 @@ -13488,6 +15020,7 @@ Power_Management:RT9742BGJ5F Power_Management:RT9742BNGJ5F Power_Management:SN6505ADBV Power_Management:SN6505BDBV +Power_Management:SN6507DGQ Power_Management:STM6600 Power_Management:STM6601 Power_Management:SiP32431DR3 @@ -13498,7 +15031,12 @@ Power_Management:TLE8104E Power_Management:TPS2041B Power_Management:TPS2042D Power_Management:TPS2044D +Power_Management:TPS2051CDBV Power_Management:TPS2054D +Power_Management:TPS2065CDBV +Power_Management:TPS2065CDBVx-2 +Power_Management:TPS2069CDBV +Power_Management:TPS2116DRL Power_Management:TPS22810DRV Power_Management:TPS22917DBV Power_Management:TPS22929D @@ -13524,19 +15062,31 @@ Power_Management:UCC39002D Power_Protection:CDNBS08-SLVU2.8-4 Power_Protection:CDSOT236-0504C Power_Protection:CM1213A-01SO +Power_Protection:CM1624 +Power_Protection:D3V3X8U9LP3810 Power_Protection:D3V3XA4B10LP Power_Protection:DT1240A-08LP3810 Power_Protection:ECMF02-2AMX6 +Power_Protection:ECMF04-4HSWM10 Power_Protection:EMI2121MTTAG Power_Protection:EMI8132 Power_Protection:ESD224DQA +Power_Protection:ESDA14V2SC5 +Power_Protection:ESDA5V3L +Power_Protection:ESDA5V3SC5 Power_Protection:ESDA6V1-5SC6 Power_Protection:ESDA6V1BC6 +Power_Protection:ESDA6V1SC5 Power_Protection:ESDLC5V0PB8 Power_Protection:IP3319CX6 +Power_Protection:IP4234CZ6 +Power_Protection:IP4251CZ8-4-TTL Power_Protection:IP4252CZ12 Power_Protection:IP4252CZ16 Power_Protection:IP4252CZ8 +Power_Protection:IP4252CZ8-4-TTL +Power_Protection:IP4253CZ8-4-TTL +Power_Protection:IP4254CZ8-4-TTL Power_Protection:NCP349MN Power_Protection:NCP349MNAE Power_Protection:NCP349MNAM @@ -13579,18 +15129,50 @@ Power_Protection:SP0505BAJT Power_Protection:SP7538P Power_Protection:SRV05-4 Power_Protection:SZNUP2105L -Power_Protection:TPD2E2U06 +Power_Protection:TBU-CA-025-050-WH +Power_Protection:TBU-CA-025-100-WH +Power_Protection:TBU-CA-025-200-WH +Power_Protection:TBU-CA-025-300-WH +Power_Protection:TBU-CA-025-500-WH +Power_Protection:TBU-CA-040-050-WH +Power_Protection:TBU-CA-040-100-WH +Power_Protection:TBU-CA-040-200-WH +Power_Protection:TBU-CA-040-300-WH +Power_Protection:TBU-CA-040-500-WH +Power_Protection:TBU-CA-050-050-WH +Power_Protection:TBU-CA-050-100-WH +Power_Protection:TBU-CA-050-200-WH +Power_Protection:TBU-CA-050-300-WH +Power_Protection:TBU-CA-050-500-WH +Power_Protection:TBU-CA-065-050-WH +Power_Protection:TBU-CA-065-100-WH +Power_Protection:TBU-CA-065-200-WH +Power_Protection:TBU-CA-065-300-WH +Power_Protection:TBU-CA-065-500-WH +Power_Protection:TBU-CA-085-050-WH +Power_Protection:TBU-CA-085-100-WH +Power_Protection:TBU-CA-085-200-WH +Power_Protection:TBU-CA-085-300-WH +Power_Protection:TBU-CA-085-500-WH +Power_Protection:TPD1E05U06DPY +Power_Protection:TPD1E05U06DYA +Power_Protection:TPD2E2U06DCK +Power_Protection:TPD2E2U06DRL Power_Protection:TPD2EUSB30 Power_Protection:TPD2EUSB30A Power_Protection:TPD2S017 Power_Protection:TPD3E001DRLR +Power_Protection:TPD3F303DPV Power_Protection:TPD3S014 Power_Protection:TPD3S044 Power_Protection:TPD4E02B04DQA +Power_Protection:TPD4E05U06DQA Power_Protection:TPD4EUSB30 Power_Protection:TPD4S014 Power_Protection:TPD4S1394 +Power_Protection:TPD6E05U06RVZ Power_Protection:TPD6F003 +Power_Protection:TPD6S300A Power_Protection:TPD8F003 Power_Protection:TVS0500DRV Power_Protection:TVS1400DRV @@ -13625,6 +15207,12 @@ Power_Supervisor:CAT811RTBI-GT3 Power_Supervisor:CAT811STBI-GT3 Power_Supervisor:CAT811TTBI-GT3 Power_Supervisor:CAT811ZTBI-GT3 +Power_Supervisor:DIO705 +Power_Supervisor:DIO706 +Power_Supervisor:DIO706J +Power_Supervisor:DIO706R +Power_Supervisor:DIO706S +Power_Supervisor:DIO706T Power_Supervisor:LM3880 Power_Supervisor:LM809 Power_Supervisor:LM810 @@ -13637,8 +15225,15 @@ Power_Supervisor:MAX6371 Power_Supervisor:MAX6372 Power_Supervisor:MAX6373 Power_Supervisor:MAX6374 +Power_Supervisor:MAX690ACSA +Power_Supervisor:MAX690xPA Power_Supervisor:MAX691xPE Power_Supervisor:MAX691xWE +Power_Supervisor:MAX692ACSA +Power_Supervisor:MAX692xPA +Power_Supervisor:MAX694xPA +Power_Supervisor:MAX802LCSA +Power_Supervisor:MAX805LCSA Power_Supervisor:MAX811LEUS-T Power_Supervisor:MAX811MEUS-T Power_Supervisor:MAX811REUS-T @@ -13683,12 +15278,14 @@ Power_Supervisor:TCM810 Power_Supervisor:TL7702A Power_Supervisor:TL7702B Power_Supervisor:TL7705A -Power_Supervisor:TL7705ACPSR +Power_Supervisor:TL7705AxPS Power_Supervisor:TL7705B Power_Supervisor:TL7709A Power_Supervisor:TL7712A Power_Supervisor:TL7715A Power_Supervisor:TL7733B +Power_Supervisor:TLV810EA29DBZ +Power_Supervisor:TPS3430WDRC Power_Supervisor:TPS3702 Power_Supervisor:TPS3808DBV Power_Supervisor:TPS3831 @@ -13707,10 +15304,22 @@ Reference_Current:LT3092xTS8 Reference_Current:PSSI2021SAY Reference_Current:REF200AU Reference_Voltage:AD586 +Reference_Voltage:ADR1399KEZ +Reference_Voltage:ADR1399KHZ Reference_Voltage:ADR420ARMZ Reference_Voltage:ADR421ARMZ Reference_Voltage:ADR423ARMZ Reference_Voltage:ADR425ARMZ +Reference_Voltage:ADR440ARMZ +Reference_Voltage:ADR440xRZ +Reference_Voltage:ADR441ARMZ +Reference_Voltage:ADR441xRZ +Reference_Voltage:ADR443ARMZ +Reference_Voltage:ADR443xRZ +Reference_Voltage:ADR444ARMZ +Reference_Voltage:ADR444xRZ +Reference_Voltage:ADR445ARMZ +Reference_Voltage:ADR445xRZ Reference_Voltage:ADR4520 Reference_Voltage:ADR4525 Reference_Voltage:ADR4530 @@ -13775,6 +15384,9 @@ Reference_Voltage:LM4132xMF-2.5 Reference_Voltage:LM4132xMF-3.0 Reference_Voltage:LM4132xMF-3.3 Reference_Voltage:LM4132xMF-4.1 +Reference_Voltage:LT1009CMS8 +Reference_Voltage:LT1009xS8 +Reference_Voltage:LT1009xZ Reference_Voltage:LT1019xN8 Reference_Voltage:LT1461AxS8-2.5 Reference_Voltage:LT1461AxS8-3 @@ -13821,10 +15433,62 @@ Reference_Voltage:LT6657BHMS8-2.5 Reference_Voltage:LT6657BHMS8-3 Reference_Voltage:LT6657BHMS8-4.096 Reference_Voltage:LT6657BHMS8-5 +Reference_Voltage:MAX6001 +Reference_Voltage:MAX6002 +Reference_Voltage:MAX6003 +Reference_Voltage:MAX6004 +Reference_Voltage:MAX6005 Reference_Voltage:MAX6035xSA25 Reference_Voltage:MAX6035xxUR25 Reference_Voltage:MAX6035xxUR30 Reference_Voltage:MAX6035xxUR50 +Reference_Voltage:MAX6070AAUT12+T +Reference_Voltage:MAX6070AAUT18+T +Reference_Voltage:MAX6070AAUT18V+T +Reference_Voltage:MAX6070AAUT21+T +Reference_Voltage:MAX6070AAUT25+T +Reference_Voltage:MAX6070AAUT30+T +Reference_Voltage:MAX6070AAUT33+T +Reference_Voltage:MAX6070AAUT33V+T +Reference_Voltage:MAX6070AAUT41+T +Reference_Voltage:MAX6070AAUT50+T +Reference_Voltage:MAX6070AAUT50V+T +Reference_Voltage:MAX6070BAUT12+T +Reference_Voltage:MAX6070BAUT12V+T +Reference_Voltage:MAX6070BAUT18+T +Reference_Voltage:MAX6070BAUT21+T +Reference_Voltage:MAX6070BAUT21V+T +Reference_Voltage:MAX6070BAUT25+T +Reference_Voltage:MAX6070BAUT25V+T +Reference_Voltage:MAX6070BAUT30+T +Reference_Voltage:MAX6070BAUT33+T +Reference_Voltage:MAX6070BAUT33V+T +Reference_Voltage:MAX6070BAUT41+T +Reference_Voltage:MAX6070BAUT41V+T +Reference_Voltage:MAX6070BAUT50+T +Reference_Voltage:MAX6070BAUT50V+T +Reference_Voltage:MAX6070DAUT12V+T +Reference_Voltage:MAX6070DAUT25V+T +Reference_Voltage:MAX6070DAUT30V+T +Reference_Voltage:MAX6070DAUT41V+T +Reference_Voltage:MAX6071AAUT12+T +Reference_Voltage:MAX6071AAUT18+T +Reference_Voltage:MAX6071AAUT21+T +Reference_Voltage:MAX6071AAUT25+T +Reference_Voltage:MAX6071AAUT30+T +Reference_Voltage:MAX6071AAUT30V+T +Reference_Voltage:MAX6071AAUT33+T +Reference_Voltage:MAX6071AAUT41+T +Reference_Voltage:MAX6071AAUT50+T +Reference_Voltage:MAX6071BAUT12+T +Reference_Voltage:MAX6071BAUT18+T +Reference_Voltage:MAX6071BAUT21+T +Reference_Voltage:MAX6071BAUT25+T +Reference_Voltage:MAX6071BAUT25V+T +Reference_Voltage:MAX6071BAUT30+T +Reference_Voltage:MAX6071BAUT33+T +Reference_Voltage:MAX6071BAUT41+T +Reference_Voltage:MAX6071BAUT50+T Reference_Voltage:MAX6100 Reference_Voltage:MAX6101 Reference_Voltage:MAX6102 @@ -13917,6 +15581,19 @@ Reference_Voltage:REF3225AMDBVREP Reference_Voltage:REF3230AMDBVREP Reference_Voltage:REF3233AMDBVREP Reference_Voltage:REF3240AMDBVREP +Reference_Voltage:REF35102QDBVR +Reference_Voltage:REF35120QDBVR +Reference_Voltage:REF35125QDBVR +Reference_Voltage:REF35160QDBVR +Reference_Voltage:REF35170QDBVR +Reference_Voltage:REF35180QDBVR +Reference_Voltage:REF35205QDBVR +Reference_Voltage:REF35250QDBVR +Reference_Voltage:REF35300QDBVR +Reference_Voltage:REF35330QDBVR +Reference_Voltage:REF35360QDBVR +Reference_Voltage:REF35409QDBVR +Reference_Voltage:REF35500QDBVR Reference_Voltage:REF5010AD Reference_Voltage:REF5010ADGK Reference_Voltage:REF5010ID @@ -14233,6 +15910,8 @@ Regulator_Linear:AP2204RA-3.3 Regulator_Linear:AP2204RA-5.0 Regulator_Linear:AP2204RB-3.3 Regulator_Linear:AP2204RB-5.0 +Regulator_Linear:AP22615AWU +Regulator_Linear:AP22615BWU Regulator_Linear:AP7361C-10E Regulator_Linear:AP7361C-12E Regulator_Linear:AP7361C-15E @@ -14248,6 +15927,10 @@ Regulator_Linear:AP7370-30FDC Regulator_Linear:AP7370-33FDC Regulator_Linear:AP7370-36FDC Regulator_Linear:AP7370-50FDC +Regulator_Linear:AP7381-28SA-7 +Regulator_Linear:AP7381-33SA-7 +Regulator_Linear:AP7381-50SA-7 +Regulator_Linear:AP7381-70SA-7 Regulator_Linear:AP7384-28SA Regulator_Linear:AP7384-28V Regulator_Linear:AP7384-28Y @@ -14940,6 +16623,8 @@ Regulator_Linear:LT3010 Regulator_Linear:LT3010-5 Regulator_Linear:LT3011xDD Regulator_Linear:LT3011xMSE +Regulator_Linear:LT3014xDD +Regulator_Linear:LT3014xS5 Regulator_Linear:LT3015Q Regulator_Linear:LT3015xQ-12 Regulator_Linear:LT3015xQ-15 @@ -14952,14 +16637,18 @@ Regulator_Linear:LT3032-12 Regulator_Linear:LT3032-15 Regulator_Linear:LT3032-3.3 Regulator_Linear:LT3032-5 +Regulator_Linear:LT3033xUDC Regulator_Linear:LT3042xMSE +Regulator_Linear:LT3045xDD Regulator_Linear:LT3045xMSE Regulator_Linear:LT3080xDD Regulator_Linear:LT3080xMS8E Regulator_Linear:LT3080xQ Regulator_Linear:LT3080xST Regulator_Linear:LT3080xT +Regulator_Linear:LT3091xT7 Regulator_Linear:LT3093xMSE +Regulator_Linear:LT3094xDD Regulator_Linear:LT3094xMSE Regulator_Linear:LTC3026-1 Regulator_Linear:MAX1615xUK @@ -14967,6 +16656,10 @@ Regulator_Linear:MAX1616xUK Regulator_Linear:MAX1658ESA Regulator_Linear:MAX1659ESA Regulator_Linear:MAX16910 +Regulator_Linear:MAX38908xTD +Regulator_Linear:MAX38909xTD +Regulator_Linear:MAX38911ATA+ +Regulator_Linear:MAX38912ATA+ Regulator_Linear:MAX5092AATE Regulator_Linear:MAX5092BATE Regulator_Linear:MAX5093AATE @@ -15130,6 +16823,18 @@ Regulator_Linear:MCP1804x-C002xMT Regulator_Linear:MCP1804x-C002xOT Regulator_Linear:MCP1825S Regulator_Linear:MCP1826S +Regulator_Linear:ME6211C10M5 +Regulator_Linear:ME6211C12M5 +Regulator_Linear:ME6211C15M5 +Regulator_Linear:ME6211C18M5 +Regulator_Linear:ME6211C21M5 +Regulator_Linear:ME6211C25M5 +Regulator_Linear:ME6211C27M5 +Regulator_Linear:ME6211C28M5 +Regulator_Linear:ME6211C29M5 +Regulator_Linear:ME6211C30M5 +Regulator_Linear:ME6211C33M5 +Regulator_Linear:ME6211C50M5 Regulator_Linear:MIC29152WT Regulator_Linear:MIC29152WU Regulator_Linear:MIC29153WT @@ -15186,6 +16891,7 @@ Regulator_Linear:MIC5317-2.5xM5 Regulator_Linear:MIC5317-2.8xM5 Regulator_Linear:MIC5317-3.0xM5 Regulator_Linear:MIC5317-3.3xM5 +Regulator_Linear:MIC5350 Regulator_Linear:MIC5353-1.8YMT Regulator_Linear:MIC5353-2.5YMT Regulator_Linear:MIC5353-2.6YMT @@ -15296,6 +17002,9 @@ Regulator_Linear:NCV8114BSN180T1G Regulator_Linear:NCV8114BSN280T1G Regulator_Linear:NCV8114BSN300T1G Regulator_Linear:NCV8114BSN330T1G +Regulator_Linear:NDP6802SF-33 +Regulator_Linear:NDP6802SF-50 +Regulator_Linear:NDP6802SF-A2 Regulator_Linear:NVC8674DS120 Regulator_Linear:NVC8674DS50 Regulator_Linear:OM1323_TO220 @@ -15428,6 +17137,8 @@ Regulator_Linear:TLV70237_WSON6 Regulator_Linear:TLV70242PDSE Regulator_Linear:TLV70245_SOT23-5 Regulator_Linear:TLV702475_SOT23-5 +Regulator_Linear:TLV7113318DDSE +Regulator_Linear:TLV7113333DDSE Regulator_Linear:TLV71209_SOT23-5 Regulator_Linear:TLV71210_SOT23-5 Regulator_Linear:TLV71211_SOT23-5 @@ -15442,6 +17153,7 @@ Regulator_Linear:TLV713285PDBV Regulator_Linear:TLV71328PDBV Regulator_Linear:TLV71330PDBV Regulator_Linear:TLV71333PDBV +Regulator_Linear:TLV71x_WSON-6 Regulator_Linear:TLV73310PDBV Regulator_Linear:TLV73311PDBV Regulator_Linear:TLV73312PDBV @@ -15498,6 +17210,8 @@ Regulator_Linear:TLV75733PDRV Regulator_Linear:TLV75740PDRV Regulator_Linear:TLV75801PDBV Regulator_Linear:TLV75801PDRV +Regulator_Linear:TLV76133DCY +Regulator_Linear:TLV76150DCY Regulator_Linear:TLV76701DRVx Regulator_Linear:TLV76701QWDRBxQ1 Regulator_Linear:TLV76708DRVx @@ -15542,6 +17256,9 @@ Regulator_Linear:TPS72201 Regulator_Linear:TPS72215 Regulator_Linear:TPS72216 Regulator_Linear:TPS72218 +Regulator_Linear:TPS72301DBV +Regulator_Linear:TPS72301DDC +Regulator_Linear:TPS72325DBV Regulator_Linear:TPS73018DBV Regulator_Linear:TPS730285DBV Regulator_Linear:TPS73101DBV @@ -15566,6 +17283,8 @@ Regulator_Linear:TPS73632DBV Regulator_Linear:TPS73633DBV Regulator_Linear:TPS73643DBV Regulator_Linear:TPS74401_VQFN +Regulator_Linear:TPS74801AWDRC +Regulator_Linear:TPS74801DRC Regulator_Linear:TPS75005RGW Regulator_Linear:TPS76301 Regulator_Linear:TPS76316 @@ -15643,10 +17362,19 @@ Regulator_Linear:TPS7A0530PDBZ Regulator_Linear:TPS7A0531PDBV Regulator_Linear:TPS7A0533PDBV Regulator_Linear:TPS7A0533PDBZ +Regulator_Linear:TPS7A20xxxDQN +Regulator_Linear:TPS7A3301RGW +Regulator_Linear:TPS7A39 +Regulator_Linear:TPS7A4101DGN +Regulator_Linear:TPS7A4701xRGW Regulator_Linear:TPS7A7001DDA Regulator_Linear:TPS7A7200RGW Regulator_Linear:TPS7A90 Regulator_Linear:TPS7A91 +Regulator_Linear:UA78M05QDCYRQ1 +Regulator_Linear:UA78M08QDCYRQ1 +Regulator_Linear:UA78M10QDCYRQ1 +Regulator_Linear:UA78M33QDCYRQ1 Regulator_Linear:XC6206PxxxMR Regulator_Linear:XC6210B332MR Regulator_Linear:XC6220B331MR @@ -15670,12 +17398,25 @@ Regulator_SwitchedCapacitor:LT1054 Regulator_SwitchedCapacitor:LT1054L Regulator_SwitchedCapacitor:LT1054xSW Regulator_SwitchedCapacitor:LTC1044 +Regulator_SwitchedCapacitor:LTC1502xMS8-3.3 +Regulator_SwitchedCapacitor:LTC1502xS8-3.3 +Regulator_SwitchedCapacitor:LTC1503CMS8-1.8 +Regulator_SwitchedCapacitor:LTC1503CMS8-2 +Regulator_SwitchedCapacitor:LTC1503xS8-1.8 +Regulator_SwitchedCapacitor:LTC1503xS8-2 +Regulator_SwitchedCapacitor:LTC1751 Regulator_SwitchedCapacitor:LTC1754 +Regulator_SwitchedCapacitor:LTC3260xDE +Regulator_SwitchedCapacitor:LTC3260xMSE Regulator_SwitchedCapacitor:LTC660 Regulator_SwitchedCapacitor:MAX1044 Regulator_SwitchedCapacitor:RT9361AxE Regulator_SwitchedCapacitor:RT9361BxE Regulator_SwitchedCapacitor:TPS60151DRV +Regulator_SwitchedCapacitor:TPS60400DBV +Regulator_SwitchedCapacitor:TPS60401DBV +Regulator_SwitchedCapacitor:TPS60402DBV +Regulator_SwitchedCapacitor:TPS60403DBV Regulator_SwitchedCapacitor:TPS60500DGS Regulator_SwitchedCapacitor:TPS60501DGS Regulator_SwitchedCapacitor:TPS60502DGS @@ -15723,10 +17464,15 @@ Regulator_Switching:ADuM6000 Regulator_Switching:AOZ1280CI Regulator_Switching:AOZ1282CI Regulator_Switching:AOZ1282CI-1 +Regulator_Switching:AOZ6663DI +Regulator_Switching:AOZ6663DI-01 Regulator_Switching:AP3012 Regulator_Switching:AP3211K Regulator_Switching:AP3402 +Regulator_Switching:AP3441SHE +Regulator_Switching:AP62150WU Regulator_Switching:AP62150Z6 +Regulator_Switching:AP62250WU Regulator_Switching:AP62250Z6 Regulator_Switching:AP62300TWU Regulator_Switching:AP62300WU @@ -15799,6 +17545,8 @@ Regulator_Switching:GL2576-5.0TB5T Regulator_Switching:GL2576-ASF8DR Regulator_Switching:GL2576-ATA5R Regulator_Switching:GL2576-ATB5T +Regulator_Switching:HT7463A +Regulator_Switching:HT7463B Regulator_Switching:ISL8117FRZ Regulator_Switching:ISL8117FVEZ Regulator_Switching:KA5H02659RN @@ -15813,10 +17561,15 @@ Regulator_Switching:KA5M0265RTU Regulator_Switching:KA5M0265RYDTU Regulator_Switching:KA5M0280RTU Regulator_Switching:KA5M0280RYDTU +Regulator_Switching:L4962-A +Regulator_Switching:L4962E-A +Regulator_Switching:L4962EH-A Regulator_Switching:L5973D Regulator_Switching:L7980A Regulator_Switching:LD7575 -Regulator_Switching:LGS6302 +Regulator_Switching:LGS5116B +Regulator_Switching:LGS5145 +Regulator_Switching:LGS6302B5 Regulator_Switching:LM22676MR-5 Regulator_Switching:LM22676MR-ADJ Regulator_Switching:LM22678TJ-5 @@ -15993,6 +17746,8 @@ Regulator_Switching:LMR33630CDDA Regulator_Switching:LMR33640ADDA Regulator_Switching:LMR33640DDDA Regulator_Switching:LMR36510ADDA +Regulator_Switching:LMR50410 +Regulator_Switching:LMR51430 Regulator_Switching:LMR62014XMF Regulator_Switching:LMR62421XMF Regulator_Switching:LMR62421XSD @@ -16152,6 +17907,8 @@ Regulator_Switching:LT3430-1 Regulator_Switching:LT3439 Regulator_Switching:LT3471 Regulator_Switching:LT3472 +Regulator_Switching:LT3483AxS6 +Regulator_Switching:LT3483xS6 Regulator_Switching:LT3514xUFD Regulator_Switching:LT3580xDD Regulator_Switching:LT3580xMS8E @@ -16162,15 +17919,19 @@ Regulator_Switching:LT3757EDD Regulator_Switching:LT3757EMSE Regulator_Switching:LT3988 Regulator_Switching:LT8303 +Regulator_Switching:LT8306 Regulator_Switching:LT8610 Regulator_Switching:LT8610AC Regulator_Switching:LT8610AC-1 +Regulator_Switching:LT8705AxFE Regulator_Switching:LTC1436A Regulator_Switching:LTC1436A-PLL Regulator_Switching:LTC1437A Regulator_Switching:LTC1878EMS8 Regulator_Switching:LTC3105xDD Regulator_Switching:LTC3105xMS +Regulator_Switching:LTC3245xDE +Regulator_Switching:LTC3245xMSE Regulator_Switching:LTC3406AES5 Regulator_Switching:LTC3406B-2ES5 Regulator_Switching:LTC3406BES5-1.2 @@ -16187,24 +17948,33 @@ Regulator_Switching:LTC3525-3.3 Regulator_Switching:LTC3525-5 Regulator_Switching:LTC3525D-3.3 Regulator_Switching:LTC3525L-3 -Regulator_Switching:LTC3630ADHC -Regulator_Switching:LTC3630AMSE -Regulator_Switching:LTC3630DHC -Regulator_Switching:LTC3630MSE -Regulator_Switching:LTC3638 -Regulator_Switching:LTC3639 +Regulator_Switching:LTC3561EDD +Regulator_Switching:LTC3630AxDHC +Regulator_Switching:LTC3630AxMSE +Regulator_Switching:LTC3630xDHC +Regulator_Switching:LTC3630xMSE +Regulator_Switching:LTC3638xMSE +Regulator_Switching:LTC3639xMSE Regulator_Switching:LTC3886 -Regulator_Switching:LTC7138 +Regulator_Switching:LTC7138xMSE +Regulator_Switching:LTM4626 Regulator_Switching:LTM4637xV Regulator_Switching:LTM4637xY +Regulator_Switching:LTM4638 +Regulator_Switching:LTM4657 Regulator_Switching:LTM4668 Regulator_Switching:LTM4668A +Regulator_Switching:LTM4671 +Regulator_Switching:LTM8049 Regulator_Switching:LTM8063 Regulator_Switching:LV2862XDDC Regulator_Switching:LV2862YDDC Regulator_Switching:MAX15062A Regulator_Switching:MAX15062B Regulator_Switching:MAX15062C +Regulator_Switching:MAX1522 +Regulator_Switching:MAX1523 +Regulator_Switching:MAX1524 Regulator_Switching:MAX17501AxTB Regulator_Switching:MAX17501BxTB Regulator_Switching:MAX17501ExTB @@ -16225,6 +17995,7 @@ Regulator_Switching:MAX5035DUPA Regulator_Switching:MAX5035DUSA Regulator_Switching:MAX5035EUSA Regulator_Switching:MAX777L +Regulator_Switching:MAX77827AEFD Regulator_Switching:MAX778L Regulator_Switching:MAX779L Regulator_Switching:MC33063AD @@ -16232,26 +18003,28 @@ Regulator_Switching:MC33063AP Regulator_Switching:MC33063MNTXG Regulator_Switching:MC34063AD Regulator_Switching:MC34063AP -Regulator_Switching:MCP16301 -Regulator_Switching:MCP16301H -Regulator_Switching:MCP16311MNY -Regulator_Switching:MCP16311MS -Regulator_Switching:MCP16312MNY -Regulator_Switching:MCP16312MS -Regulator_Switching:MCP16331CH -Regulator_Switching:MCP16331MN -Regulator_Switching:MCP1640BCH -Regulator_Switching:MCP1640BMC -Regulator_Switching:MCP1640CCH -Regulator_Switching:MCP1640CH -Regulator_Switching:MCP1640CMC -Regulator_Switching:MCP1640DCH -Regulator_Switching:MCP1640DMC -Regulator_Switching:MCP1640MC -Regulator_Switching:MCP1650 -Regulator_Switching:MCP1651 -Regulator_Switching:MCP1652 -Regulator_Switching:MCP1653 +Regulator_Switching:MCP1623x-xCHY +Regulator_Switching:MCP1623x-xMC +Regulator_Switching:MCP16301Hx-xCH +Regulator_Switching:MCP16301x-xCH +Regulator_Switching:MCP16311x-xMNY +Regulator_Switching:MCP16311x-xMS +Regulator_Switching:MCP16312x-xMNY +Regulator_Switching:MCP16312x-xMS +Regulator_Switching:MCP16331x-xCH +Regulator_Switching:MCP16331x-xMNY +Regulator_Switching:MCP1640Bx-xCHY +Regulator_Switching:MCP1640Bx-xMC +Regulator_Switching:MCP1640Cx-xCHY +Regulator_Switching:MCP1640Cx-xMC +Regulator_Switching:MCP1640Dx-xCHY +Regulator_Switching:MCP1640Dx-xMC +Regulator_Switching:MCP1640x-xCHY +Regulator_Switching:MCP1640x-xMC +Regulator_Switching:MCP1650x-xMC +Regulator_Switching:MCP1651x-xMC +Regulator_Switching:MCP1652x-xMC +Regulator_Switching:MCP1653x-xUN Regulator_Switching:MIC2177 Regulator_Switching:MIC2177-3.3 Regulator_Switching:MIC2177-5.0 @@ -16259,6 +18032,7 @@ Regulator_Switching:MIC2178 Regulator_Switching:MIC2178-3.3 Regulator_Switching:MIC2178-5.0 Regulator_Switching:MIC2207 +Regulator_Switching:MIC2253 Regulator_Switching:MIC2290 Regulator_Switching:MIC23050-4YML Regulator_Switching:MIC23050-CYML @@ -16271,6 +18045,7 @@ Regulator_Switching:MP171GJ Regulator_Switching:MP171GS Regulator_Switching:MP2303ADN Regulator_Switching:MP2303ADP +Regulator_Switching:MPM3550EGLE Regulator_Switching:MT3608 Regulator_Switching:MUN12AD01-SH Regulator_Switching:MUN12AD03-SH @@ -16427,6 +18202,18 @@ Regulator_Switching:R-78S3.3-0.1 Regulator_Switching:SC33063AD Regulator_Switching:SC34063AP Regulator_Switching:SC4503TSK +Regulator_Switching:SIC431A +Regulator_Switching:SIC431B +Regulator_Switching:SIC431C +Regulator_Switching:SIC431D +Regulator_Switching:SIC437A +Regulator_Switching:SIC437B +Regulator_Switching:SIC437C +Regulator_Switching:SIC437D +Regulator_Switching:SIC438A +Regulator_Switching:SIC438B +Regulator_Switching:SIC438C +Regulator_Switching:SIC438D Regulator_Switching:ST1S10PHR Regulator_Switching:ST1S10PUR Regulator_Switching:ST1S12XX @@ -16451,14 +18238,22 @@ Regulator_Switching:TDN_5-4815WISM Regulator_Switching:TDN_5-4819WISM Regulator_Switching:TL497 Regulator_Switching:TL497A +Regulator_Switching:TL5001 +Regulator_Switching:TL5001A Regulator_Switching:TLV61046ADB +Regulator_Switching:TLV61070ADBV +Regulator_Switching:TLV61225DC Regulator_Switching:TLV62080DSGx Regulator_Switching:TLV62084ADSGx Regulator_Switching:TLV62084DSGx Regulator_Switching:TLV62095RGTx +Regulator_Switching:TLV62565DBVx +Regulator_Switching:TLV62566DBVx +Regulator_Switching:TLV62568ADRL Regulator_Switching:TLV62568DBV Regulator_Switching:TLV62568DDC Regulator_Switching:TLV62568DRL +Regulator_Switching:TLV62569ADRL Regulator_Switching:TLV62569DBV Regulator_Switching:TLV62569DDC Regulator_Switching:TLV62569DRL @@ -16648,12 +18443,16 @@ Regulator_Switching:TOP270VG Regulator_Switching:TOP271EG Regulator_Switching:TOP271KG Regulator_Switching:TOP271VG +Regulator_Switching:TOS06-05SIL +Regulator_Switching:TOS06-12SIL Regulator_Switching:TPS51363 Regulator_Switching:TPS5403 Regulator_Switching:TPS54061DRB Regulator_Switching:TPS54202DDC Regulator_Switching:TPS5420D Regulator_Switching:TPS54233 +Regulator_Switching:TPS54260DGQ +Regulator_Switching:TPS54260DRC Regulator_Switching:TPS54302 Regulator_Switching:TPS54308 Regulator_Switching:TPS5430DDA @@ -16664,10 +18463,19 @@ Regulator_Switching:TPS54360DDA Regulator_Switching:TPS54560BDDA Regulator_Switching:TPS560200 Regulator_Switching:TPS562200 +Regulator_Switching:TPS562202 +Regulator_Switching:TPS562202S +Regulator_Switching:TPS562203 +Regulator_Switching:TPS562206 Regulator_Switching:TPS563200 +Regulator_Switching:TPS563202S +Regulator_Switching:TPS563203 +Regulator_Switching:TPS563206 Regulator_Switching:TPS563240DDC +Regulator_Switching:TPS563300 Regulator_Switching:TPS56339DDC Regulator_Switching:TPS565208 +Regulator_Switching:TPS56528DDA Regulator_Switching:TPS568215RNN Regulator_Switching:TPS61040DBV Regulator_Switching:TPS61040DDC @@ -16675,6 +18483,10 @@ Regulator_Switching:TPS61040DRV Regulator_Switching:TPS61041DBV Regulator_Switching:TPS61041DDC Regulator_Switching:TPS61041DRV +Regulator_Switching:TPS61085DGK +Regulator_Switching:TPS61085PW +Regulator_Switching:TPS61089 +Regulator_Switching:TPS610891 Regulator_Switching:TPS61090 Regulator_Switching:TPS61091 Regulator_Switching:TPS61092 @@ -16747,7 +18559,29 @@ Regulator_Switching:TPS62208DBV Regulator_Switching:TPS62821DLC Regulator_Switching:TPS62822DLC Regulator_Switching:TPS62823DLC +Regulator_Switching:TPS628436DRL +Regulator_Switching:TPS628436YKA +Regulator_Switching:TPS628437DRL +Regulator_Switching:TPS628437YKA +Regulator_Switching:TPS628438DRL +Regulator_Switching:TPS628438YKA +Regulator_Switching:TPS62912 +Regulator_Switching:TPS62913 +Regulator_Switching:TPS62932 Regulator_Switching:TPS62933 +Regulator_Switching:TPS62933F +Regulator_Switching:TPS62933O +Regulator_Switching:TPS62933P +Regulator_Switching:TPS62A01ADRL +Regulator_Switching:TPS62A01APDDC +Regulator_Switching:TPS62A01DRL +Regulator_Switching:TPS62A01PDDC +Regulator_Switching:TPS62A02ADRL +Regulator_Switching:TPS62A02APDDC +Regulator_Switching:TPS62A02DRL +Regulator_Switching:TPS62A02NADRL +Regulator_Switching:TPS62A02NDRL +Regulator_Switching:TPS62A02PDDC Regulator_Switching:TPS63000 Regulator_Switching:TPS63000-Q1 Regulator_Switching:TPS63001 @@ -16762,8 +18596,25 @@ Regulator_Switching:TPS65131RGE Regulator_Switching:TPS82130 Regulator_Switching:TPS82140 Regulator_Switching:TPS82150 +Regulator_Switching:TSR0.6-48120WI +Regulator_Switching:TSR0.6-48150WI +Regulator_Switching:TSR0.6-48240WI +Regulator_Switching:TSR0.6-4833WI +Regulator_Switching:TSR0.6-4850WI +Regulator_Switching:TSR0.6-4865WI +Regulator_Switching:TSR0.6-4890WI Regulator_Switching:TSR1-2433E Regulator_Switching:TSR1-2450E +Regulator_Switching:TSR2-24120N +Regulator_Switching:TSR2-2412N +Regulator_Switching:TSR2-24150N +Regulator_Switching:TSR2-2415N +Regulator_Switching:TSR2-2418N +Regulator_Switching:TSR2-2425N +Regulator_Switching:TSR2-2433N +Regulator_Switching:TSR2-2450N +Regulator_Switching:TSR2-2465N +Regulator_Switching:TSR2-2490N Regulator_Switching:TSR_1-2412 Regulator_Switching:TSR_1-24120 Regulator_Switching:TSR_1-2415 @@ -16791,12 +18642,22 @@ Relay:ADW11 Relay:AZ850-x Relay:AZ850P1-x Relay:AZ850P2-x +Relay:AZSR131-1AE-12D +Relay:COTO_3602_Split +Relay:COTO_3650_Split +Relay:COTO_3660_Split Relay:DIPxx-1Axx-11x Relay:DIPxx-1Axx-12x Relay:DIPxx-1Axx-12xD Relay:DIPxx-1Axx-13x Relay:DIPxx-1Cxx-51x Relay:DIPxx-2Axx-21x +Relay:DR-24V +Relay:DR-3V +Relay:DR-5V +Relay:DR-L-3V +Relay:DR-L2-3V_Form1 +Relay:DR-L2-3V_Form2 Relay:EC2-12NU Relay:EC2-12SNU Relay:EC2-12TNU @@ -16890,11 +18751,15 @@ Relay:G2RL-1A-H Relay:G2RL-2 Relay:G2RL-2A Relay:G5LE-1 +Relay:G5NB Relay:G5Q-1 Relay:G5Q-1A Relay:G5V-1 Relay:G5V-2 Relay:G5V-2_Split +Relay:G6A +Relay:G6AK +Relay:G6AU Relay:G6E Relay:G6EU Relay:G6H-2 @@ -16904,6 +18769,7 @@ Relay:G6KU-2 Relay:G6S-2 Relay:G6SK-2 Relay:G6SU-2 +Relay:HF115F-2Z-x4 Relay:HF3-01 Relay:HF3-02 Relay:HF3-03 @@ -16918,6 +18784,8 @@ Relay:HF3-54 Relay:HF3-55 Relay:HF3-56 Relay:HF3-57 +Relay:HK19F-DCxxV-SHC +Relay:HONGFA_HFD2-0xx-x-L2-x Relay:IM00 Relay:IM01 Relay:IM02 @@ -16945,9 +18813,39 @@ Relay:IM45 Relay:IM46 Relay:IM47 Relay:IM48 +Relay:JQC-3FF-005-1H +Relay:JQC-3FF-005-1Z +Relay:JQC-3FF-006-1H +Relay:JQC-3FF-006-1Z +Relay:JQC-3FF-009-1H +Relay:JQC-3FF-009-1Z +Relay:JQC-3FF-012-1H +Relay:JQC-3FF-012-1Z +Relay:JQC-3FF-018-1H +Relay:JQC-3FF-018-1Z +Relay:JQC-3FF-024-1H +Relay:JQC-3FF-024-1Z +Relay:JQC-3FF-048-1H +Relay:JQC-3FF-048-1Z Relay:JW2 Relay:MSxx-1Axx-75 Relay:MSxx-1Bxx-75 +Relay:Panasonic_ALFG1PF09 +Relay:Panasonic_ALFG1PF091 +Relay:Panasonic_ALFG1PF12 +Relay:Panasonic_ALFG1PF121 +Relay:Panasonic_ALFG1PF18 +Relay:Panasonic_ALFG1PF181 +Relay:Panasonic_ALFG1PF24 +Relay:Panasonic_ALFG1PF241 +Relay:Panasonic_ALFG2PF09 +Relay:Panasonic_ALFG2PF091 +Relay:Panasonic_ALFG2PF12 +Relay:Panasonic_ALFG2PF121 +Relay:Panasonic_ALFG2PF18 +Relay:Panasonic_ALFG2PF181 +Relay:Panasonic_ALFG2PF24 +Relay:Panasonic_ALFG2PF241 Relay:RAYEX-L90 Relay:RAYEX-L90A Relay:RAYEX-L90AS @@ -16971,9 +18869,19 @@ Relay:RTE2xFxx Relay:RTE2xxxx Relay:RTE4xxxx Relay:Relay_DPDT +Relay:Relay_DPDT_Latching_1coil +Relay:Relay_DPDT_Latching_2coil +Relay:Relay_DPST-NC Relay:Relay_DPST-NO +Relay:Relay_DPST_Latching_1coil +Relay:Relay_DPST_Latching_2coil Relay:Relay_SPDT +Relay:Relay_SPDT_Latching_1coil +Relay:Relay_SPDT_Latching_2coil +Relay:Relay_SPST-NC Relay:Relay_SPST-NO +Relay:Relay_SPST_Latching_1coil +Relay:Relay_SPST_Latching_2coil Relay:SANYOU_SRD_Form_A Relay:SANYOU_SRD_Form_B Relay:SANYOU_SRD_Form_C @@ -16984,6 +18892,8 @@ Relay:TE_PCH-1xxx2M Relay:TIANBO-HJR-4102-L Relay:UMS05-1A80-75D Relay:UMS05-1A80-75L +Relay:V23072-Cx061-xxx8 +Relay:V23072-Cx062-xxx8 Relay:Y14x-1C-xxDS Relay_SolidState:34.81-7048 Relay_SolidState:34.81-8240 @@ -17005,6 +18915,7 @@ Relay_SolidState:AQH3213A Relay_SolidState:AQH3223 Relay_SolidState:AQH3223A Relay_SolidState:ASSR-1218 +Relay_SolidState:BC2213A Relay_SolidState:CPC1002N Relay_SolidState:CPC1017N Relay_SolidState:CPC1117N @@ -17018,6 +18929,7 @@ Relay_SolidState:FODM3022 Relay_SolidState:FODM3023 Relay_SolidState:FODM3052 Relay_SolidState:FODM3053 +Relay_SolidState:HHG1D-1 Relay_SolidState:LAA110 Relay_SolidState:LBB110 Relay_SolidState:LCC110 @@ -17082,16 +18994,22 @@ RF:CC1200 RF:CC2500 RF:DC4759J5020AHF-1 RF:DC4759J5020AHF-2 +RF:DW1000 +RF:F113 +RF:F115 +RF:F117 RF:HMC394LP4 RF:HMC431 RF:LAT-3 RF:LRPS-2-1 +RF:LTC5507ES6 RF:MAADSS0008 RF:MAAVSS0004 RF:MC12080 RF:MC12093D RF:MICRF112YMM RF:MICRF220AYQS +RF:MRF89XA RF:NRF24L01 RF:NRF24L01_Breakout RF:PAT1220-C-0DB @@ -17109,6 +19027,9 @@ RF:PD4859J5050S2HF RF:RMK-3-451 RF:RMK-5-51 RF:SE5004L +RF:SX1231IMLTRT +RF:SX1261IMLTRT +RF:SX1262IMLTRT RF:SX1272 RF:SX1273 RF:SX1276 @@ -17220,6 +19141,7 @@ RF_Bluetooth:BM78SPPS5NC2 RF_Bluetooth:BTM112 RF_Bluetooth:BTM222 RF_Bluetooth:MOD-nRF8001 +RF_Bluetooth:Microchip_BM83 RF_Bluetooth:RFD77101 RF_Bluetooth:RN42 RF_Bluetooth:RN42N @@ -17227,6 +19149,7 @@ RF_Bluetooth:RN4871 RF_Bluetooth:SPBTLE-RF RF_Bluetooth:SPBTLE-RF0 RF_Bluetooth:nRF8001 +RF_Filter:B3715 RF_Filter:BFCN-1445 RF_Filter:BFCN-1525 RF_Filter:BFCN-152W-75 @@ -17450,13 +19373,25 @@ RF_GPS:RXM-GPS-RM RF_GPS:SAM-M8Q RF_GPS:SIM28ML RF_GPS:ZED-F9P +RF_GPS:ZOE-M8G +RF_GPS:ZOE-M8Q RF_GSM:BC66 RF_GSM:BC95 +RF_GSM:BG95-M1 +RF_GSM:BG95-M2 +RF_GSM:BG95-M3 +RF_GSM:BG95-M4 +RF_GSM:BG95-M5 +RF_GSM:BG95-M6 +RF_GSM:BG95-M8 +RF_GSM:BG95-MF +RF_GSM:LENA-R8001 RF_GSM:M95 RF_GSM:SARA-U201 RF_GSM:SARA-U260 RF_GSM:SARA-U270 RF_GSM:SARA-U280 +RF_GSM:SE150A4 RF_GSM:SIM7020C RF_GSM:SIM7020E RF_GSM:SIM800C @@ -17483,6 +19418,7 @@ RF_Module:DCTR-52DA RF_Module:DCTR-52DAT RF_Module:DWM1000 RF_Module:DWM1001 +RF_Module:DWM3000 RF_Module:E18-MS1-PCB RF_Module:E73-2G4M04S-52810 RF_Module:E73-2G4M04S-52832 @@ -17490,12 +19426,26 @@ RF_Module:ESP-07 RF_Module:ESP-12E RF_Module:ESP-12F RF_Module:ESP-WROOM-02 -RF_Module:ESP32-PICO-D4 +RF_Module:ESP32-C3-DevKitM-1 +RF_Module:ESP32-C3-WROOM-02 +RF_Module:ESP32-C3-WROOM-02U +RF_Module:ESP32-C6-MINI-1 RF_Module:ESP32-S2-WROVER RF_Module:ESP32-S2-WROVER-I +RF_Module:ESP32-S3-MINI-1 +RF_Module:ESP32-S3-MINI-1U +RF_Module:ESP32-S3-WROOM-1 +RF_Module:ESP32-S3-WROOM-2 RF_Module:ESP32-WROOM-32 RF_Module:ESP32-WROOM-32D +RF_Module:ESP32-WROOM-32E +RF_Module:ESP32-WROOM-32E-R2 RF_Module:ESP32-WROOM-32U +RF_Module:ESP32-WROOM-32UE +RF_Module:ESP32-WROOM-32UE-R2 +RF_Module:HT-CT62 +RF_Module:Jadak_Thingmagic_M6e-Nano +RF_Module:MDBT42Q-512K RF_Module:MDBT50Q-1MV2 RF_Module:MDBT50Q-512K RF_Module:MDBT50Q-P1MV2 @@ -17524,12 +19474,15 @@ RF_Module:RFM97W-868S2 RF_Module:RFM97W-915S2 RF_Module:RFM98W-315S2 RF_Module:RFM98W-433S2 +RF_Module:STM32WB5MMG RF_Module:TD1205 RF_Module:TD1208 RF_Module:TR-52DA RF_Module:TR-52DAT RF_Module:TR-72DA RF_Module:TR-72DAT +RF_Module:WEMOS_C3_mini +RF_Module:WEMOS_D1_mini RF_Module:iM880A RF_Module:iM880B RF_NFC:PN5321A3HN_C1xx @@ -17551,6 +19504,7 @@ RF_Switch:ADG918BRM RF_Switch:ADG919BCPZ RF_Switch:ADG919BRMZ RF_Switch:AS179-92LF +RF_Switch:BGS12WN6E6327 RF_Switch:HMC7992 RF_Switch:HMC849A RF_Switch:KSW-2-46 @@ -17582,8 +19536,12 @@ RF_ZigBee:TWE-L-DP-W RF_ZigBee:TWE-L-WX RF_ZigBee:XBee_SMT Security:ATAES132A-SH +Security:ATECC508A-MAHDA +Security:ATECC508A-SSHDA Security:ATECC608A-MAHDA Security:ATECC608A-SSHDA +Security:ATECC608B-MAHDA +Security:ATECC608B-SSHDA Sensor:ADE7758 Sensor:ADE7763xRS Sensor:ADE7953xCP @@ -17599,6 +19557,7 @@ Sensor:INA260 Sensor:LTC2990 Sensor:MAX30102 Sensor:Nuclear-Radiation_Detector +Sensor:RPR-0521RS Sensor:SHT1x Sensor_Audio:ICS-43434 Sensor_Audio:IM69D120 @@ -17607,6 +19566,7 @@ Sensor_Audio:IM73A135V01 Sensor_Audio:MP45DT02 Sensor_Audio:SPH0641LU4H-1 Sensor_Audio:SPH0645LM4H +Sensor_Audio:SPM0687LR5H-1 Sensor_Current:A1363xKTTN-1 Sensor_Current:A1363xKTTN-10 Sensor_Current:A1363xKTTN-2 @@ -17772,7 +19732,9 @@ Sensor_Current:ACS781xLRTR-150U Sensor_Current:CKSR_15-NP Sensor_Current:CKSR_25-NP Sensor_Current:CKSR_50-NP +Sensor_Current:CKSR_50-NP-SP1 Sensor_Current:CKSR_6-NP +Sensor_Current:CKSR_75-NP Sensor_Current:CQ-2063 Sensor_Current:CQ-2064 Sensor_Current:CQ-2065 @@ -17819,6 +19781,7 @@ Sensor_Current:CZ-3813 Sensor_Current:CZ-3814 Sensor_Current:CZ-3815 Sensor_Current:HO120-NP +Sensor_Current:HO128-NP Sensor_Current:HO15-NP Sensor_Current:HO15-NPxSP33 Sensor_Current:HO15-NSM @@ -17855,18 +19818,34 @@ Sensor_Current:IR22771S Sensor_Current:IR2277S Sensor_Current:IR25750L Sensor_Current:LA100-P +Sensor_Current:LA25-NP Sensor_Current:LA25-P Sensor_Current:LA55-P Sensor_Current:LTSR15-NP Sensor_Current:LTSR25-NP Sensor_Current:LTSR6-NP +Sensor_Current:MCA1101-20-3 +Sensor_Current:MCA1101-20-5 +Sensor_Current:MCA1101-5-3 +Sensor_Current:MCA1101-5-5 +Sensor_Current:MCA1101-50-3 +Sensor_Current:MCA1101-50-5 +Sensor_Current:MCA1101-65-5 +Sensor_Distance:TMF8820 +Sensor_Distance:TMF8821 +Sensor_Distance:TMF8828 +Sensor_Distance:VL53L0CXV0DH1 Sensor_Distance:VL53L1CXV0FY1 +Sensor_Energy:ATM90E26-YU Sensor_Energy:INA219AxD Sensor_Energy:INA219AxDCN Sensor_Energy:INA219BxD Sensor_Energy:INA219BxDCN Sensor_Energy:INA226 +Sensor_Energy:INA228 Sensor_Energy:INA233 +Sensor_Energy:INA237 +Sensor_Energy:INA238 Sensor_Energy:LTC4151xMS Sensor_Energy:MCP39F521 Sensor_Energy:PAC1931x-xJ6CX @@ -17914,6 +19893,7 @@ Sensor_Gas:MQ-6 Sensor_Gas:MiCS-5524 Sensor_Gas:SCD40-D-R2 Sensor_Gas:SCD41-D-R2 +Sensor_Gas:TGS-5141 Sensor_Humidity:ENS210 Sensor_Humidity:HDC1080 Sensor_Humidity:HDC2080 @@ -17974,10 +19954,14 @@ Sensor_Magnetic:LIS3MDL Sensor_Magnetic:MA730 Sensor_Magnetic:MMC5633NJL Sensor_Magnetic:MMC5883MA +Sensor_Magnetic:MT6701CT +Sensor_Magnetic:MT6701QT +Sensor_Magnetic:MT6816CT Sensor_Magnetic:SM351LT Sensor_Magnetic:SM353LT Sensor_Magnetic:Si7210-B-xx-IM2 Sensor_Magnetic:Si7210-B-xx-IV +Sensor_Magnetic:TLE5012B Sensor_Magnetic:TLV493D Sensor_Magnetic:TMAG5110A2xxDBV Sensor_Magnetic:TMAG5110A4xxDBV @@ -17999,6 +19983,10 @@ Sensor_Motion:BMI160 Sensor_Motion:BNO055 Sensor_Motion:ICM-20602 Sensor_Motion:ICM-20948 +Sensor_Motion:IIM-42652 +Sensor_Motion:IIS3DWB +Sensor_Motion:IPS2200 +Sensor_Motion:ISM330DHCX Sensor_Motion:KX022-1020 Sensor_Motion:KX122-1042 Sensor_Motion:KX222-1054 @@ -18021,11 +20009,13 @@ Sensor_Motion:MPU-6000 Sensor_Motion:MPU-6050 Sensor_Motion:MPU-9150 Sensor_Motion:MPU-9250 +Sensor_Motion:SC7A20 Sensor_Optical:A1050 Sensor_Optical:A1060 Sensor_Optical:A9013 Sensor_Optical:A9050 Sensor_Optical:A9060 +Sensor_Optical:APDS-9251-001 Sensor_Optical:APDS-9301 Sensor_Optical:APDS-9306 Sensor_Optical:APDS-9306-065 @@ -18086,16 +20076,19 @@ Sensor_Optical:SFH2440 Sensor_Optical:SFH2701 Sensor_Optical:SFH300 Sensor_Optical:SFH309 +Sensor_Optical:SFH320 Sensor_Optical:SFH3201 Sensor_Optical:TEPT4400 Sensor_Optical:TSL2550D Sensor_Optical:TSL2550T +Sensor_Optical:TSL25911FN Sensor_Optical:VT93xx Sensor_Pressure:40PC015G Sensor_Pressure:40PC100G Sensor_Pressure:40PC150G Sensor_Pressure:40PC250G Sensor_Pressure:BMP280 +Sensor_Pressure:LPS22DF Sensor_Pressure:LPS22HB Sensor_Pressure:LPS22HH Sensor_Pressure:LPS25HB @@ -18109,12 +20102,17 @@ Sensor_Pressure:MS5525DSO Sensor_Pressure:MS5607-02BA Sensor_Pressure:MS5611-01BA Sensor_Pressure:MS5837-xxBA +Sensor_Pressure:WSEN-PADS_2511020213301 Sensor_Pressure:XGZP6897D Sensor_Pressure:XGZP6899D +Sensor_Proximity:AD7150BRMZ +Sensor_Proximity:AD7151BRMZ +Sensor_Proximity:APDS-9160-003 Sensor_Proximity:BPR-105 Sensor_Proximity:BPR-105F Sensor_Proximity:BPR-205 Sensor_Proximity:CNY70 +Sensor_Proximity:GP2S700HCP Sensor_Proximity:ITR1201SR10AR Sensor_Proximity:ITR8307 Sensor_Proximity:ITR8307-F43 @@ -18130,6 +20128,7 @@ Sensor_Proximity:LG206D Sensor_Proximity:LG206L Sensor_Proximity:QRE1113 Sensor_Proximity:QRE1113GR +Sensor_Proximity:RPR-0720 Sensor_Proximity:SFH900 Sensor_Proximity:SFH9201 Sensor_Proximity:SFH9202 @@ -18177,9 +20176,14 @@ Sensor_Temperature:LM35-LP Sensor_Temperature:LM35-NEB Sensor_Temperature:LM73 Sensor_Temperature:LM73-1 +Sensor_Temperature:LM74CIM +Sensor_Temperature:LM74CITP Sensor_Temperature:LM75B Sensor_Temperature:LM75C Sensor_Temperature:LM92CIM +Sensor_Temperature:LM94021 +Sensor_Temperature:LMT01DQX +Sensor_Temperature:LMT01LPG Sensor_Temperature:LMT84DCK Sensor_Temperature:LMT85DCK Sensor_Temperature:LMT86DCK @@ -18236,10 +20240,13 @@ Sensor_Temperature:TMP102xxDRL Sensor_Temperature:TMP1075D Sensor_Temperature:TMP1075DGK Sensor_Temperature:TMP1075DSG +Sensor_Temperature:TMP110D Sensor_Temperature:TMP112xxDRL +Sensor_Temperature:TMP114 Sensor_Temperature:TMP116xxDRV Sensor_Temperature:TMP117xxDRV Sensor_Temperature:TMP117xxYBG +Sensor_Temperature:TMP119AIYBGR Sensor_Temperature:TMP20AIDCK Sensor_Temperature:TMP20AIDRL Sensor_Temperature:TMP36xS @@ -18305,6 +20312,7 @@ Simulation_SPICE:PMOS Simulation_SPICE:PMOS_Substrate Simulation_SPICE:PNP Simulation_SPICE:PNP_Substrate +Simulation_SPICE:SWITCH Simulation_SPICE:TLINE Simulation_SPICE:VAM Simulation_SPICE:VDC @@ -18316,6 +20324,8 @@ Simulation_SPICE:VSFFM Simulation_SPICE:VSIN Simulation_SPICE:VTRNOISE Simulation_SPICE:VTRRANDOM +Switch:CK_KMS2xxG +Switch:CK_KMS2xxGP Switch:SW_Coded Switch:SW_Coded_SH-7010 Switch:SW_Coded_SH-7030 @@ -18362,21 +20372,36 @@ Switch:SW_Push_Open Switch:SW_Push_Open_Dual Switch:SW_Push_Open_Dual_x2 Switch:SW_Push_SPDT +Switch:SW_Push_Shielded Switch:SW_Reed Switch:SW_Reed_Opener Switch:SW_Reed_SPDT -Switch:SW_Rotary12 -Switch:SW_Rotary2x6 -Switch:SW_Rotary3x4 -Switch:SW_Rotary4x3 +Switch:SW_Rotary_1x12 +Switch:SW_Rotary_1x3_MP +Switch:SW_Rotary_1x4_MP +Switch:SW_Rotary_1x5_MP +Switch:SW_Rotary_1x6_MP +Switch:SW_Rotary_1x7_MP +Switch:SW_Rotary_1x8_MP +Switch:SW_Rotary_1x9_MP +Switch:SW_Rotary_2x6 +Switch:SW_Rotary_3x4 +Switch:SW_Rotary_4x3 Switch:SW_SP3T +Switch:SW_SP3T_NR01103 +Switch:SW_SP4T_NR01104 +Switch:SW_SP5T_NR01105 Switch:SW_SPDT +Switch:SW_SPDT_312 Switch:SW_SPDT_321 Switch:SW_SPDT_MSM +Switch:SW_SPDT_XKB_DMx-xxxx-1 Switch:SW_SPST Switch:SW_SPST_LED Switch:SW_SPST_Lamp Switch:SW_SPST_Temperature +Switch:SW_Slide_DPDT +Switch:SW_Wuerth_450301014042 Timer:8253 Timer:8254 Timer:8284 @@ -18388,6 +20413,7 @@ Timer:AD9515 Timer:CD4541BE Timer:CD4541BM Timer:CD4541BPW +Timer:DS1023S Timer:ICM7209 Timer:ICM7555xB Timer:ICM7555xP @@ -18495,6 +20521,7 @@ Timer_RTC:PCF8523T Timer_RTC:PCF8523TK Timer_RTC:PCF8523TS Timer_RTC:PCF85263AT +Timer_RTC:PCF85263ATL Timer_RTC:PCF85263ATT Timer_RTC:PCF85263ATT1 Timer_RTC:PCF85363ATT @@ -18502,7 +20529,9 @@ Timer_RTC:PCF85363ATT1 Timer_RTC:PCF8563T Timer_RTC:PCF8563TS Timer_RTC:RV-1805-C3 +Timer_RTC:RV-3028-C7 Timer_RTC:RV-8523-C3 +Timer_RTC:RX8901CE Transformer:0433BM15A0001 Transformer:0868BM15C0001 Transformer:0896BM15A0001 @@ -18544,12 +20573,14 @@ Transformer:ADTT1-6 Transformer:ADTT1.5-1 Transformer:ADTT3-2 Transformer:ADTT4-1 +Transformer:B0322J5050AHF Transformer:CST1 Transformer:CST1_Split Transformer:CST2 Transformer:CST2010 Transformer:CST2010_Split Transformer:CST2_Split +Transformer:ED8_4 Transformer:ETC1-1-13 Transformer:LL1587 Transformer:P0544NL @@ -18576,6 +20607,7 @@ Transformer:PA3493NL Transformer:PE-68386NL Transformer:PT61017PEL Transformer:PT61020EL +Transformer:TC1-1-13M+ Transformer:TEZ0.5-D-1 Transformer:TEZ0.5-D-2 Transformer:TEZ1.5-D-1 @@ -18609,10 +20641,14 @@ Transformer:TRANSF5 Transformer:TRANSF6 Transformer:TRANSF7 Transformer:TRANSF8 +Transformer:Triad_VPP16-310 Transformer:Wuerth_749013011A Transformer:Wuerth_750315371 Transformer:Wuerth_750343373 +Transformer:Wuerth_760871131 Transformer:Wurth_750319177 +Transformer:ZMCT103C +Transformer:ZMPT101K Transistor_Array:A2982 Transistor_Array:MC1413BD Transistor_Array:MC1413BP @@ -18622,6 +20658,8 @@ Transistor_Array:NCV1413B Transistor_Array:SN75468 Transistor_Array:SN75469 Transistor_Array:TBD62783A +Transistor_Array:TBD62785AFWG +Transistor_Array:TBD62785APG Transistor_Array:ULN2002 Transistor_Array:ULN2002A Transistor_Array:ULN2003 @@ -18659,6 +20697,7 @@ Transistor_BJT:BC140 Transistor_BJT:BC141 Transistor_BJT:BC160 Transistor_BJT:BC161 +Transistor_BJT:BC212 Transistor_BJT:BC237 Transistor_BJT:BC240 Transistor_BJT:BC307 @@ -18785,6 +20824,7 @@ Transistor_BJT:BFR92 Transistor_BJT:BFT92 Transistor_BJT:BUT11 Transistor_BJT:BUT11A +Transistor_BJT:DMMT5401 Transistor_BJT:DTA113T Transistor_BJT:DTA113Z Transistor_BJT:DTA114E @@ -18892,22 +20932,47 @@ Transistor_BJT:MJE13003 Transistor_BJT:MJE13005G Transistor_BJT:MJE13007G Transistor_BJT:MJE13009G +Transistor_BJT:MMBT2222A Transistor_BJT:MMBT3904 Transistor_BJT:MMBT3906 Transistor_BJT:MMBT5550L Transistor_BJT:MMBT5551L +Transistor_BJT:MMBTA06 Transistor_BJT:MMBTA42 +Transistor_BJT:MMBTA44 +Transistor_BJT:MMBTA56 Transistor_BJT:MMBTA92 +Transistor_BJT:MMBTA94 Transistor_BJT:MMDT2222A Transistor_BJT:MMDT3904 Transistor_BJT:MMDT3906 Transistor_BJT:MMDT3946 Transistor_BJT:MMDT5401 Transistor_BJT:MMDT5551 +Transistor_BJT:MMDTA06 Transistor_BJT:MPSA42 Transistor_BJT:MPSA92 +Transistor_BJT:MUN5111DW1 +Transistor_BJT:MUN5112DW1 +Transistor_BJT:MUN5113DW1 +Transistor_BJT:MUN5114DW1 Transistor_BJT:MUN5211DW1 +Transistor_BJT:MUN5212DW1 +Transistor_BJT:MUN5213DW1 +Transistor_BJT:MUN5214DW1 +Transistor_BJT:MUN5311DW1 +Transistor_BJT:MUN5312DW1 +Transistor_BJT:MUN5313DW1 +Transistor_BJT:MUN5314DW1 +Transistor_BJT:MUN5330DW1 +Transistor_BJT:MUN5331DW1 +Transistor_BJT:MUN5332DW1 +Transistor_BJT:MUN5333DW1 +Transistor_BJT:MUN5334DW1 +Transistor_BJT:MUN5335DW1 +Transistor_BJT:MUN5336DW1 Transistor_BJT:PBSS301PZ +Transistor_BJT:PMBT2222A Transistor_BJT:PMBT2222AYS Transistor_BJT:PMBT3904YS Transistor_BJT:PMBT3906YS @@ -18920,8 +20985,62 @@ Transistor_BJT:PZT3904 Transistor_BJT:PZT3906 Transistor_BJT:PZTA42 Transistor_BJT:PZTA92 +Transistor_BJT:Q_Dual_NPN_C2C1E1E2 +Transistor_BJT:Q_Dual_NPN_NPN_B1E2B2C2E1C1 +Transistor_BJT:Q_Dual_NPN_NPN_BRT_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_NPN_NPN_BRT_No_R2_C1B2E2C2B1E1 +Transistor_BJT:Q_Dual_NPN_NPN_BRT_No_R2_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_NPN_NPN_C1E1C2E2B2B1 +Transistor_BJT:Q_Dual_NPN_NPN_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_NPN_PNP_B1E2B2C2E1C1 +Transistor_BJT:Q_Dual_NPN_PNP_BRT_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_NPN_PNP_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_PNP_C2C1E1E2 +Transistor_BJT:Q_Dual_PNP_NPN_BRT_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_PNP_PNP_BRT_E1B1C2E2B2C1 +Transistor_BJT:Q_Dual_PNP_PNP_C1B1B2C2E2E1 +Transistor_BJT:Q_Dual_PNP_PNP_C1E1C2E2B2B1 +Transistor_BJT:Q_Dual_PNP_PNP_E1B1C2E2B2C1 +Transistor_BJT:Q_NPN_BCE +Transistor_BJT:Q_NPN_BCEC +Transistor_BJT:Q_NPN_BEC +Transistor_BJT:Q_NPN_BRT_BEC +Transistor_BJT:Q_NPN_BRT_ECB +Transistor_BJT:Q_NPN_CBE +Transistor_BJT:Q_NPN_CEB +Transistor_BJT:Q_NPN_Darlington_BCE +Transistor_BJT:Q_NPN_Darlington_BCEC +Transistor_BJT:Q_NPN_Darlington_BEC +Transistor_BJT:Q_NPN_Darlington_CBE +Transistor_BJT:Q_NPN_Darlington_CEB +Transistor_BJT:Q_NPN_Darlington_EBC +Transistor_BJT:Q_NPN_Darlington_ECB +Transistor_BJT:Q_NPN_Darlington_ECBC +Transistor_BJT:Q_NPN_EBC +Transistor_BJT:Q_NPN_ECB +Transistor_BJT:Q_NPN_ECBC +Transistor_BJT:Q_PNP_BCE +Transistor_BJT:Q_PNP_BCEC +Transistor_BJT:Q_PNP_BEC +Transistor_BJT:Q_PNP_BRT_BEC +Transistor_BJT:Q_PNP_BRT_ECB +Transistor_BJT:Q_PNP_CBE +Transistor_BJT:Q_PNP_CEB +Transistor_BJT:Q_PNP_Darlington_BCE +Transistor_BJT:Q_PNP_Darlington_BCEC +Transistor_BJT:Q_PNP_Darlington_BEC +Transistor_BJT:Q_PNP_Darlington_CBE +Transistor_BJT:Q_PNP_Darlington_CEB +Transistor_BJT:Q_PNP_Darlington_EBC +Transistor_BJT:Q_PNP_Darlington_ECB +Transistor_BJT:Q_PNP_Darlington_ECBC +Transistor_BJT:Q_PNP_EBC +Transistor_BJT:Q_PNP_ECB +Transistor_BJT:Q_PNP_ECBC Transistor_BJT:S8050 Transistor_BJT:S8550 +Transistor_BJT:SS8050 +Transistor_BJT:SS8550 Transistor_BJT:SSM2210 Transistor_BJT:SSM2220 Transistor_BJT:TIP120 @@ -18952,6 +21071,8 @@ Transistor_FET:2N7002K Transistor_FET:3SK263 Transistor_FET:AO3400A Transistor_FET:AO3401A +Transistor_FET:AO4842 +Transistor_FET:AO4892 Transistor_FET:AON6411 Transistor_FET:BF244A Transistor_FET:BF244B @@ -18962,6 +21083,7 @@ Transistor_FET:BF245C Transistor_FET:BF545A Transistor_FET:BF545B Transistor_FET:BF545C +Transistor_FET:BF994S Transistor_FET:BS107 Transistor_FET:BS108 Transistor_FET:BS170 @@ -19014,6 +21136,7 @@ Transistor_FET:BSC265N10LSFG Transistor_FET:BSC340N08NS3G Transistor_FET:BSC440N10NS3G Transistor_FET:BSD235C +Transistor_FET:BSD840N Transistor_FET:BSF030NE2LQ Transistor_FET:BSF035NE2LQ Transistor_FET:BSF450NE7NH3 @@ -19046,6 +21169,7 @@ Transistor_FET:BUK7M67-60EX Transistor_FET:BUK7M6R3-40EX Transistor_FET:BUK7M8R0-40EX Transistor_FET:BUK7M9R9-60EX +Transistor_FET:BUK9832-55A Transistor_FET:BUK9M10-30EX Transistor_FET:BUK9M11-40EX Transistor_FET:BUK9M12-60EX @@ -19092,10 +21216,12 @@ Transistor_FET:C3M0120100J Transistor_FET:C3M0120100K Transistor_FET:C3M0280090D Transistor_FET:C3M0280090J +Transistor_FET:CSD13380F3 Transistor_FET:CSD16301Q2 Transistor_FET:CSD16321Q5 Transistor_FET:CSD16322Q5 Transistor_FET:CSD16325Q5 +Transistor_FET:CSD16327Q3 Transistor_FET:CSD16342Q5A Transistor_FET:CSD16401Q5 Transistor_FET:CSD16403Q5A @@ -19136,9 +21262,11 @@ Transistor_FET:CSD17559Q5 Transistor_FET:CSD17570Q5B Transistor_FET:CSD17573Q5B Transistor_FET:CSD17576Q5B +Transistor_FET:CSD17577Q3A Transistor_FET:CSD17577Q5A Transistor_FET:CSD17578Q5A Transistor_FET:CSD17579Q5A +Transistor_FET:CSD17581Q3A Transistor_FET:CSD18501Q5A Transistor_FET:CSD18502Q5B Transistor_FET:CSD18503Q5A @@ -19151,6 +21279,7 @@ Transistor_FET:CSD18533Q5A Transistor_FET:CSD18534Q5A Transistor_FET:CSD18537NQ5A Transistor_FET:CSD18540Q5B +Transistor_FET:CSD18543Q3A Transistor_FET:CSD18563Q5A Transistor_FET:CSD19502Q5B Transistor_FET:CSD19531Q5A @@ -19159,6 +21288,8 @@ Transistor_FET:CSD19533Q5A Transistor_FET:CSD19534Q5A Transistor_FET:CSD19537Q3 Transistor_FET:CSD25302Q2 +Transistor_FET:CSD25402Q3A +Transistor_FET:CSD25480F3 Transistor_FET:DMC2053UVT Transistor_FET:DMC3071LVT Transistor_FET:DMG1012T @@ -19173,6 +21304,7 @@ Transistor_FET:DMG9926UDM Transistor_FET:DMN10H220L Transistor_FET:DMN10H700S Transistor_FET:DMN13H750S +Transistor_FET:DMN2040U Transistor_FET:DMN2041L Transistor_FET:DMN2050L Transistor_FET:DMN2056U @@ -19181,6 +21313,7 @@ Transistor_FET:DMN2075U Transistor_FET:DMN2230U Transistor_FET:DMN24H11DS Transistor_FET:DMN24H3D5L +Transistor_FET:DMN3008SFG Transistor_FET:DMN3033LDM Transistor_FET:DMN3042L Transistor_FET:DMN3051L @@ -19193,9 +21326,18 @@ Transistor_FET:DMN3404L Transistor_FET:DMN6075S Transistor_FET:DMN60H080DS Transistor_FET:DMN6140L +Transistor_FET:DMN61D8LQ Transistor_FET:DMN67D7L Transistor_FET:DMN67D8L Transistor_FET:DMP3013SFV +Transistor_FET:DMP6050SSD +Transistor_FET:DMT6008LFG +Transistor_FET:EPC2035 +Transistor_FET:EPC2036 +Transistor_FET:EPC2037 +Transistor_FET:EPC2038 +Transistor_FET:EPC2203 +Transistor_FET:EPC2219 Transistor_FET:FDC2512 Transistor_FET:FDC6330L Transistor_FET:FDC86244 @@ -19239,7 +21381,10 @@ Transistor_FET:FDS9435A Transistor_FET:FDS9926A Transistor_FET:FDS9934C Transistor_FET:FQP27P06 +Transistor_FET:GS66502B +Transistor_FET:GS66504B Transistor_FET:GS66508B +Transistor_FET:IF3602 Transistor_FET:IGLD60R070D1 Transistor_FET:IGLD60R190D1 Transistor_FET:IGO60R070D1 @@ -19375,6 +21520,9 @@ Transistor_FET:IRLML9301 Transistor_FET:IRLZ24 Transistor_FET:IRLZ34N Transistor_FET:IRLZ44N +Transistor_FET:JFE150DBV +Transistor_FET:JFE150DCK +Transistor_FET:JFE2140D Transistor_FET:MMBF170 Transistor_FET:MMBF4391 Transistor_FET:MMBF4392 @@ -19391,6 +21539,54 @@ Transistor_FET:PMN48XP Transistor_FET:PSMN5R2-60YL Transistor_FET:QM6006D Transistor_FET:QM6015D +Transistor_FET:Q_Dual_NMOS_G1S2G2D2S1D1 +Transistor_FET:Q_Dual_NMOS_S1G1D2S2G2D1 +Transistor_FET:Q_Dual_NMOS_S1G1S2G2D2D1 +Transistor_FET:Q_Dual_NMOS_S1G1S2G2D2D2D1D1 +Transistor_FET:Q_Dual_PMOS_G1S2G2D2S1D1 +Transistor_FET:Q_Dual_PMOS_S1G1D2S2G2D1 +Transistor_FET:Q_Dual_PMOS_S1G1S2G2D2D2D1D1 +Transistor_FET:Q_NMOS_DGS +Transistor_FET:Q_NMOS_DSG +Transistor_FET:Q_NMOS_GDS +Transistor_FET:Q_NMOS_GDSD +Transistor_FET:Q_NMOS_GSD +Transistor_FET:Q_NMOS_SDGD +Transistor_FET:Q_NMOS_SGD +Transistor_FET:Q_PMOS_DGS +Transistor_FET:Q_PMOS_DSG +Transistor_FET:Q_PMOS_GDS +Transistor_FET:Q_PMOS_GDSD +Transistor_FET:Q_PMOS_GSD +Transistor_FET:Q_PMOS_SDG +Transistor_FET:Q_PMOS_SDGD +Transistor_FET:Q_PMOS_SGD +Transistor_FET:RQ6E080AJ +Transistor_FET:RS9N50D +Transistor_FET:RSQ030N08HZG +Transistor_FET:SCTL35N65G2V +Transistor_FET:SGT65R65AL +Transistor_FET:SQJQ100E +Transistor_FET:SQJQ100EL +Transistor_FET:SQJQ112E +Transistor_FET:SQJQ114EL +Transistor_FET:SQJQ116EL +Transistor_FET:SQJQ130EL +Transistor_FET:SQJQ140E +Transistor_FET:SQJQ142E +Transistor_FET:SQJQ144AE +Transistor_FET:SQJQ146E +Transistor_FET:SQJQ148E +Transistor_FET:SQJQ150E +Transistor_FET:SQJQ160E +Transistor_FET:SQJQ160EL +Transistor_FET:SQJQ184E +Transistor_FET:SQJQ186E +Transistor_FET:SQJQ402E +Transistor_FET:SQJQ404E +Transistor_FET:SQJQ410EL +Transistor_FET:SQJQ466E +Transistor_FET:SQJQ480E Transistor_FET:STB15N80K5 Transistor_FET:STB33N65M2 Transistor_FET:STB40N60M2 @@ -19404,6 +21600,7 @@ Transistor_FET:SUD50P04-08 Transistor_FET:SUD50P06-15 Transistor_FET:SUD50P08-25L Transistor_FET:SUD50P10-43L +Transistor_FET:Si1308EDL Transistor_FET:Si1442DH Transistor_FET:Si2319CDS Transistor_FET:Si2371EDS @@ -19417,10 +21614,13 @@ Transistor_FET:Si7450DP Transistor_FET:Si7617DN Transistor_FET:SiA449DJ Transistor_FET:SiA453EDJ +Transistor_FET:SiA462DJ +Transistor_FET:SiR696DP Transistor_FET:SiS415DNT Transistor_FET:SiS443DN Transistor_FET:SiS454DN Transistor_FET:SiSS27DN +Transistor_FET:T2N7002AK Transistor_FET:TP0610L Transistor_FET:TP0610T Transistor_FET:TSM2301ACX @@ -19452,6 +21652,12 @@ Transistor_FET:ZXMP4A16G Transistor_FET_Other:DN2540N3-G Transistor_FET_Other:DN2540N5-G Transistor_FET_Other:DN2540N8-G +Transistor_FET_Other:Q_NMOS_Depletion_DGS +Transistor_FET_Other:Q_NMOS_Depletion_DSG +Transistor_FET_Other:Q_NMOS_Depletion_GDS +Transistor_FET_Other:Q_NMOS_Depletion_GSD +Transistor_FET_Other:Q_NMOS_Depletion_SDG +Transistor_FET_Other:Q_NMOS_Depletion_SGD Transistor_IGBT:IRG4PF50W Transistor_IGBT:STGP7NC60HD Transistor_Power_Module:A2C25S12M3 @@ -19514,6 +21720,13 @@ Triac_Thyristor:BTB16-800BW Triac_Thyristor:BTB16-800C Triac_Thyristor:BTB16-800CW Triac_Thyristor:BTB16-800SW +Triac_Thyristor:CT401T +Triac_Thyristor:Generic_Triac_A1A2G +Triac_Thyristor:Generic_Triac_A1GA2 +Triac_Thyristor:Generic_Triac_A2A1G +Triac_Thyristor:Generic_Triac_A2GA1 +Triac_Thyristor:Generic_Triac_GA1A2 +Triac_Thyristor:Generic_Triac_GA2A1 Triac_Thyristor:TIC106 Triac_Thyristor:TIC116 Triac_Thyristor:TIC126 diff --git a/src/ApiPlatform/AddDocumentedAPIPropertiesJSONSchemaFactory.php b/src/ApiPlatform/AddDocumentedAPIPropertiesJSONSchemaFactory.php deleted file mode 100644 index db629a4a..00000000 --- a/src/ApiPlatform/AddDocumentedAPIPropertiesJSONSchemaFactory.php +++ /dev/null @@ -1,116 +0,0 @@ -. - */ - -declare(strict_types=1); - - -namespace App\ApiPlatform; - -use ApiPlatform\JsonSchema\Schema; -use ApiPlatform\JsonSchema\SchemaFactoryInterface; -use ApiPlatform\Metadata\Operation; -use Symfony\Component\DependencyInjection\Attribute\AsDecorator; - -/** - * This decorator adds the properties given by DocumentedAPIProperty attributes on the classes to the schema. - */ -#[AsDecorator('api_platform.json_schema.schema_factory')] -class AddDocumentedAPIPropertiesJSONSchemaFactory implements SchemaFactoryInterface -{ - - public function __construct(private readonly SchemaFactoryInterface $decorated) - { - } - - public function buildSchema( - string $className, - string $format = 'json', - string $type = Schema::TYPE_OUTPUT, - Operation $operation = null, - Schema $schema = null, - array $serializerContext = null, - bool $forceCollection = false - ): Schema { - - - $schema = $this->decorated->buildSchema($className, $format, $type, $operation, $schema, $serializerContext, $forceCollection); - - //Check if there is are DocumentedAPIProperty attributes on the class - $reflectionClass = new \ReflectionClass($className); - $attributes = $reflectionClass->getAttributes(DocumentedAPIProperty::class); - foreach ($attributes as $attribute) { - /** @var DocumentedAPIProperty $api_property */ - $api_property = $attribute->newInstance(); - $this->addPropertyToSchema($schema, $api_property->schemaName, $api_property->property, - $api_property, $serializerContext ?? [], $format); - } - - return $schema; - } - - private function addPropertyToSchema(Schema $schema, string $definitionName, string $normalizedPropertyName, DocumentedAPIProperty $propertyMetadata, array $serializerContext, string $format): void - { - $version = $schema->getVersion(); - $swagger = Schema::VERSION_SWAGGER === $version; - - $propertySchema = []; - - if (false === $propertyMetadata->writeable) { - $propertySchema['readOnly'] = true; - } - if (!$swagger && false === $propertyMetadata->readable) { - $propertySchema['writeOnly'] = true; - } - if (null !== $description = $propertyMetadata->description) { - $propertySchema['description'] = $description; - } - - $deprecationReason = $propertyMetadata->deprecationReason; - - // see https://github.com/json-schema-org/json-schema-spec/pull/737 - if (!$swagger && null !== $deprecationReason) { - $propertySchema['deprecated'] = true; - } - - if (!empty($default = $propertyMetadata->default)) { - if ($default instanceof \BackedEnum) { - $default = $default->value; - } - $propertySchema['default'] = $default; - } - - if (!empty($example = $propertyMetadata->example)) { - $propertySchema['example'] = $example; - } - - if (!isset($propertySchema['example']) && isset($propertySchema['default'])) { - $propertySchema['example'] = $propertySchema['default']; - } - - $propertySchema['type'] = $propertyMetadata->type; - $propertySchema['nullable'] = $propertyMetadata->nullable; - - $propertySchema = new \ArrayObject($propertySchema); - - $schema->getDefinitions()[$definitionName]['properties'][$normalizedPropertyName] = $propertySchema; - } - - -} \ No newline at end of file diff --git a/src/ApiPlatform/DocumentedAPIProperty.php b/src/ApiPlatform/DocumentedAPIProperties/DocumentedAPIProperty.php similarity index 59% rename from src/ApiPlatform/DocumentedAPIProperty.php rename to src/ApiPlatform/DocumentedAPIProperties/DocumentedAPIProperty.php index c4c0a337..57d275be 100644 --- a/src/ApiPlatform/DocumentedAPIProperty.php +++ b/src/ApiPlatform/DocumentedAPIProperties/DocumentedAPIProperty.php @@ -21,7 +21,9 @@ declare(strict_types=1); -namespace App\ApiPlatform; +namespace App\ApiPlatform\DocumentedAPIProperties; + +use ApiPlatform\Metadata\ApiProperty; /** * When this attribute is applied to a class, an property will be added to the API documentation using the given parameters. @@ -64,4 +66,55 @@ final class DocumentedAPIProperty ) { } + + public function toAPIProperty(bool $use_swagger = false): ApiProperty + { + $openApiContext = []; + + if (false === $this->writeable) { + $openApiContext['readOnly'] = true; + } + if (!$use_swagger && false === $this->readable) { + $openApiContext['writeOnly'] = true; + } + if (null !== $description = $this->description) { + $openApiContext['description'] = $description; + } + + $deprecationReason = $this->deprecationReason; + + // see https://github.com/json-schema-org/json-schema-spec/pull/737 + if (!$use_swagger && null !== $deprecationReason) { + $openApiContext['deprecated'] = true; + } + + if (!empty($default = $this->default)) { + if ($default instanceof \BackedEnum) { + $default = $default->value; + } + $openApiContext['default'] = $default; + } + + if (!empty($example = $this->example)) { + $openApiContext['example'] = $example; + } + + if (!isset($openApiContext['example']) && isset($openApiContext['default'])) { + $openApiContext['example'] = $openApiContext['default']; + } + + $openApiContext['type'] = $this->type; + $openApiContext['nullable'] = $this->nullable; + + + + return new ApiProperty( + description: $this->description, + readable: $this->readable, + writable: $this->writeable, + openapiContext: $openApiContext, + types: $this->type, + property: $this->property + ); + } } \ No newline at end of file diff --git a/src/ApiPlatform/DocumentedAPIProperties/PropertyMetadataFactory.php b/src/ApiPlatform/DocumentedAPIProperties/PropertyMetadataFactory.php new file mode 100644 index 00000000..49e9a031 --- /dev/null +++ b/src/ApiPlatform/DocumentedAPIProperties/PropertyMetadataFactory.php @@ -0,0 +1,73 @@ +. + */ + +declare(strict_types=1); + + +namespace App\ApiPlatform\DocumentedAPIProperties; + +use ApiPlatform\Metadata\ApiProperty; +use ApiPlatform\Metadata\Property\Factory\PropertyMetadataFactoryInterface; +use ReflectionClass; +use Symfony\Component\DependencyInjection\Attribute\AsDecorator; + +/** + * This decorator adds the virtual properties defined by the DocumentedAPIProperty attribute to the property metadata + * which then get picked up by the openapi schema generator + */ +#[AsDecorator('api_platform.metadata.property.metadata_factory')] +class PropertyMetadataFactory implements PropertyMetadataFactoryInterface +{ + public function __construct(private PropertyMetadataFactoryInterface $decorated) + { + } + + public function create(string $resourceClass, string $property, array $options = []): ApiProperty + { + $metadata = $this->decorated->create($resourceClass, $property, $options); + + //Only become active in the context of the openapi schema generation + if (!isset($options['schema_type'])) { + return $metadata; + } + + if (!class_exists($resourceClass)) { + return $metadata; + } + + $refClass = new ReflectionClass($resourceClass); + $attributes = $refClass->getAttributes(DocumentedAPIProperty::class); + + //Look for the DocumentedAPIProperty attribute with the given property name + foreach ($attributes as $attribute) { + /** @var DocumentedAPIProperty $api_property */ + $api_property = $attribute->newInstance(); + //If attribute not matches the property name, skip it + if ($api_property->property !== $property) { + continue; + } + + //Return the virtual property + return $api_property->toAPIProperty(); + } + + return $metadata; + } +} \ No newline at end of file diff --git a/src/ApiPlatform/DocumentedAPIProperties/PropertyNameCollectionFactory.php b/src/ApiPlatform/DocumentedAPIProperties/PropertyNameCollectionFactory.php new file mode 100644 index 00000000..3157cbf3 --- /dev/null +++ b/src/ApiPlatform/DocumentedAPIProperties/PropertyNameCollectionFactory.php @@ -0,0 +1,68 @@ +. + */ + +declare(strict_types=1); + + +namespace App\ApiPlatform\DocumentedAPIProperties; + +use ApiPlatform\Metadata\Property\Factory\PropertyNameCollectionFactoryInterface; +use ApiPlatform\Metadata\Property\PropertyNameCollection; +use ReflectionClass; +use Symfony\Component\DependencyInjection\Attribute\AsDecorator; + +/** + * This decorator adds the virtual property names defined by the DocumentedAPIProperty attribute to the property name collection + * which then get picked up by the openapi schema generator + */ +#[AsDecorator('api_platform.metadata.property.name_collection_factory')] +class PropertyNameCollectionFactory implements PropertyNameCollectionFactoryInterface +{ + public function __construct(private readonly PropertyNameCollectionFactoryInterface $decorated) + { + } + + public function create(string $resourceClass, array $options = []): PropertyNameCollection + { + // Get the default properties from the decorated service + $propertyNames = $this->decorated->create($resourceClass, $options); + + //Only become active in the context of the openapi schema generation + if (!isset($options['schema_type'])) { + return $propertyNames; + } + + if (!class_exists($resourceClass)) { + return $propertyNames; + } + + $properties = iterator_to_array($propertyNames); + + $refClass = new ReflectionClass($resourceClass); + + foreach ($refClass->getAttributes(DocumentedAPIProperty::class) as $attribute) { + /** @var DocumentedAPIProperty $instance */ + $instance = $attribute->newInstance(); + $properties[] = $instance->property; + } + + return new PropertyNameCollection($properties); + } +} \ No newline at end of file diff --git a/src/ApiPlatform/Filter/EntityFilter.php b/src/ApiPlatform/Filter/EntityFilter.php index 50c1404f..85bc3833 100644 --- a/src/ApiPlatform/Filter/EntityFilter.php +++ b/src/ApiPlatform/Filter/EntityFilter.php @@ -37,7 +37,7 @@ class EntityFilter extends AbstractFilter public function __construct( ManagerRegistry $managerRegistry, private readonly EntityFilterHelper $filter_helper, - LoggerInterface $logger = null, + ?LoggerInterface $logger = null, ?array $properties = null, ?NameConverterInterface $nameConverter = null ) { @@ -50,7 +50,7 @@ class EntityFilter extends AbstractFilter QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, - Operation $operation = null, + ?Operation $operation = null, array $context = [] ): void { if ( diff --git a/src/ApiPlatform/Filter/EntityFilterHelper.php b/src/ApiPlatform/Filter/EntityFilterHelper.php index 42cc567f..45e04fde 100644 --- a/src/ApiPlatform/Filter/EntityFilterHelper.php +++ b/src/ApiPlatform/Filter/EntityFilterHelper.php @@ -92,12 +92,6 @@ class EntityFilterHelper 'type' => Type::BUILTIN_TYPE_STRING, 'required' => false, 'description' => 'Filter using a comma seperated list of element IDs. Use + to include all direct children and ++ to include all children recursively.', - 'openapi' => [ - 'example' => '', - 'allowReserved' => false,// if true, query parameters will be not percent-encoded - 'allowEmptyValue' => true, - 'explode' => false, // to be true, the type must be Type::BUILTIN_TYPE_ARRAY, ?product=blue,green will be ?product=blue&product=green - ], ]; } return $description; diff --git a/src/ApiPlatform/Filter/LikeFilter.php b/src/ApiPlatform/Filter/LikeFilter.php index f88c89b1..a8e96eb9 100644 --- a/src/ApiPlatform/Filter/LikeFilter.php +++ b/src/ApiPlatform/Filter/LikeFilter.php @@ -38,7 +38,7 @@ final class LikeFilter extends AbstractFilter QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, - Operation $operation = null, + ?Operation $operation = null, array $context = [] ): void { // Otherwise filter is applied to order and page as well @@ -50,7 +50,7 @@ final class LikeFilter extends AbstractFilter } $parameterName = $queryNameGenerator->generateParameterName($property); // Generate a unique parameter name to avoid collisions with other filters $queryBuilder - ->andWhere(sprintf('o.%s LIKE :%s', $property, $parameterName)) + ->andWhere(sprintf('ILIKE(o.%s, :%s) = TRUE', $property, $parameterName)) ->setParameter($parameterName, $value); } @@ -67,12 +67,6 @@ final class LikeFilter extends AbstractFilter 'type' => Type::BUILTIN_TYPE_STRING, 'required' => false, 'description' => 'Filter using a LIKE SQL expression. Use % as wildcard for multiple characters and _ for single characters. For example, to search for all items containing foo, use foo. To search for all items starting with foo, use foo%. To search for all items ending with foo, use %foo', - 'openapi' => [ - 'example' => '', - 'allowReserved' => false,// if true, query parameters will be not percent-encoded - 'allowEmptyValue' => true, - 'explode' => false, // to be true, the type must be Type::BUILTIN_TYPE_ARRAY, ?product=blue,green will be ?product=blue&product=green - ], ]; } return $description; diff --git a/src/ApiPlatform/Filter/PartStoragelocationFilter.php b/src/ApiPlatform/Filter/PartStoragelocationFilter.php index 860fb320..4d0ad2df 100644 --- a/src/ApiPlatform/Filter/PartStoragelocationFilter.php +++ b/src/ApiPlatform/Filter/PartStoragelocationFilter.php @@ -38,7 +38,7 @@ class PartStoragelocationFilter extends AbstractFilter public function __construct( ManagerRegistry $managerRegistry, private readonly EntityFilterHelper $filter_helper, - LoggerInterface $logger = null, + ?LoggerInterface $logger = null, ?array $properties = null, ?NameConverterInterface $nameConverter = null ) { @@ -51,7 +51,7 @@ class PartStoragelocationFilter extends AbstractFilter QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, - Operation $operation = null, + ?Operation $operation = null, array $context = [] ): void { //Do not check for mapping here, as we are using a virtual property diff --git a/src/ApiPlatform/Filter/TagFilter.php b/src/ApiPlatform/Filter/TagFilter.php index 9702cfcf..98648ee9 100644 --- a/src/ApiPlatform/Filter/TagFilter.php +++ b/src/ApiPlatform/Filter/TagFilter.php @@ -61,10 +61,10 @@ final class TagFilter extends AbstractFilter $expr = $queryBuilder->expr(); $tmp = $expr->orX( - $expr->like('o.'.$property, ':' . $tag_identifier_prefix . '_1'), - $expr->like('o.'.$property, ':' . $tag_identifier_prefix . '_2'), - $expr->like('o.'.$property, ':' . $tag_identifier_prefix . '_3'), - $expr->eq('o.'.$property, ':' . $tag_identifier_prefix . '_4'), + 'ILIKE(o.'.$property.', :' . $tag_identifier_prefix . '_1) = TRUE', + 'ILIKE(o.'.$property.', :' . $tag_identifier_prefix . '_2) = TRUE', + 'ILIKE(o.'.$property.', :' . $tag_identifier_prefix . '_3) = TRUE', + 'ILIKE(o.'.$property.', :' . $tag_identifier_prefix . '_4) = TRUE', ); $queryBuilder->andWhere($tmp); @@ -89,12 +89,6 @@ final class TagFilter extends AbstractFilter 'type' => Type::BUILTIN_TYPE_STRING, 'required' => false, 'description' => 'Filter for tags of a part', - 'openapi' => [ - 'example' => '', - 'allowReserved' => false,// if true, query parameters will be not percent-encoded - 'allowEmptyValue' => true, - 'explode' => false, // to be true, the type must be Type::BUILTIN_TYPE_ARRAY, ?product=blue,green will be ?product=blue&product=green - ], ]; } return $description; diff --git a/src/ApiPlatform/NormalizePropertyNameCollectionFactory.php b/src/ApiPlatform/NormalizePropertyNameCollectionFactory.php new file mode 100644 index 00000000..c6a8220e --- /dev/null +++ b/src/ApiPlatform/NormalizePropertyNameCollectionFactory.php @@ -0,0 +1,77 @@ +. + */ + +declare(strict_types=1); + + +namespace App\ApiPlatform; + +use ApiPlatform\Metadata\Property\Factory\PropertyNameCollectionFactoryInterface; +use ApiPlatform\Metadata\Property\PropertyNameCollection; +use Symfony\Component\DependencyInjection\Attribute\AsDecorator; +use function Symfony\Component\String\u; + +/** + * This decorator removes all camelCase property names from the property name collection, if a snake_case version exists. + * This is a fix for https://github.com/Part-DB/Part-DB-server/issues/862, as the openapi schema generator wrongly collects + * both camelCase and snake_case property names, which leads to duplicate properties in the schema. + * This seems to come from the fact that the openapi schema generator uses no serializerContext, which seems then to collect + * the getters too... + */ +#[AsDecorator('api_platform.metadata.property.name_collection_factory')] +class NormalizePropertyNameCollectionFactory implements PropertyNameCollectionFactoryInterface +{ + public function __construct(private readonly PropertyNameCollectionFactoryInterface $decorated) + { + } + + public function create(string $resourceClass, array $options = []): PropertyNameCollection + { + // Get the default properties from the decorated service + $propertyNames = $this->decorated->create($resourceClass, $options); + + //Only become active in the context of the openapi schema generation + if (!isset($options['schema_type'])) { + return $propertyNames; + } + + //If we are not in the jsonapi generator (which sets no serializer groups), return the property names as is + if (isset($options['serializer_groups'])) { + return $propertyNames; + } + + //Remove all camelCase property names from the collection, if a snake_case version exists + $properties = iterator_to_array($propertyNames); + + foreach ($properties as $property) { + if (str_contains($property, '_')) { + $camelized = u($property)->camel()->toString(); + + //If the camelized version exists, remove it from the collection + $index = array_search($camelized, $properties, true); + if ($index !== false) { + unset($properties[$index]); + } + } + } + + return new PropertyNameCollection($properties); + } +} \ No newline at end of file diff --git a/src/Command/Attachments/CleanAttachmentsCommand.php b/src/Command/Attachments/CleanAttachmentsCommand.php index e9ffd286..59bc99ee 100644 --- a/src/Command/Attachments/CleanAttachmentsCommand.php +++ b/src/Command/Attachments/CleanAttachmentsCommand.php @@ -73,6 +73,9 @@ class CleanAttachmentsCommand extends Command //Ignore image cache folder $finder->exclude('cache'); + //Ignore automigration folder + $finder->exclude('.automigration-backup'); + $fs = new Filesystem(); $file_list = []; diff --git a/src/Command/Attachments/DownloadAttachmentsCommand.php b/src/Command/Attachments/DownloadAttachmentsCommand.php new file mode 100644 index 00000000..34deef0e --- /dev/null +++ b/src/Command/Attachments/DownloadAttachmentsCommand.php @@ -0,0 +1,136 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Command\Attachments; + +use App\Entity\Attachments\Attachment; +use App\Entity\Attachments\AttachmentUpload; +use App\Exceptions\AttachmentDownloadException; +use App\Services\Attachments\AttachmentManager; +use App\Services\Attachments\AttachmentSubmitHandler; +use Doctrine\ORM\EntityManagerInterface; +use Symfony\Component\Console\Attribute\AsCommand; +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; + +#[AsCommand('partdb:attachments:download', "Downloads all attachments which have only an external URL to the local filesystem.")] +class DownloadAttachmentsCommand extends Command +{ + public function __construct(private readonly AttachmentSubmitHandler $attachmentSubmitHandler, + private EntityManagerInterface $entityManager) + { + parent::__construct(); + } + + public function configure(): void + { + $this->setHelp('This command downloads all attachments, which only have an external URL, to the local filesystem, so that you have an offline copy of the attachments.'); + $this->addOption('--private', null, null, 'If set, the attachments will be downloaded to the private storage.'); + } + + protected function execute(InputInterface $input, OutputInterface $output): int + { + $io = new SymfonyStyle($input, $output); + + $qb = $this->entityManager->createQueryBuilder(); + $qb->select('attachment') + ->from(Attachment::class, 'attachment') + ->where('attachment.external_path IS NOT NULL') + ->andWhere('attachment.external_path != \'\'') + ->andWhere('attachment.internal_path IS NULL'); + + $query = $qb->getQuery(); + $attachments = $query->getResult(); + + if (count($attachments) === 0) { + $io->success('No attachments with external URL found.'); + return Command::SUCCESS; + } + + $io->note('Found ' . count($attachments) . ' attachments with external URL, that will be downloaded.'); + + //If the option --private is set, the attachments will be downloaded to the private storage. + $private = $input->getOption('private'); + if ($private) { + if (!$io->confirm('Attachments will be downloaded to the private storage. Continue?')) { + return Command::SUCCESS; + } + } else { + if (!$io->confirm('Attachments will be downloaded to the public storage, where everybody knowing the correct URL can access it. Continue?')){ + return Command::SUCCESS; + } + } + + $progressBar = $io->createProgressBar(count($attachments)); + $progressBar->setFormat("%current%/%max% [%bar%] %percent:3s%% %elapsed:16s%/%estimated:-16s% \n%message%"); + + $progressBar->setMessage('Starting download...'); + $progressBar->start(); + + + $errors = []; + + foreach ($attachments as $attachment) { + /** @var Attachment $attachment */ + $progressBar->setMessage(sprintf('%s (ID: %s) from %s', $attachment->getName(), $attachment->getID(), $attachment->getHost())); + $progressBar->advance(); + + try { + $attachmentUpload = new AttachmentUpload(file: null, downloadUrl: true, private: $private); + $this->attachmentSubmitHandler->handleUpload($attachment, $attachmentUpload); + + //Write changes to the database + $this->entityManager->flush(); + } catch (AttachmentDownloadException $e) { + $errors[] = [ + 'attachment' => $attachment, + 'error' => $e->getMessage() + ]; + } + } + + $progressBar->finish(); + + //Fix the line break after the progress bar + $io->newLine(); + $io->newLine(); + + if (count($errors) > 0) { + $io->warning('Some attachments could not be downloaded:'); + foreach ($errors as $error) { + $io->warning(sprintf("Attachment %s (ID %s) could not be downloaded from %s:\n%s", + $error['attachment']->getName(), + $error['attachment']->getID(), + $error['attachment']->getExternalPath(), + $error['error']) + ); + } + } else { + $io->success('All attachments downloaded successfully.'); + } + + return Command::SUCCESS; + } +} \ No newline at end of file diff --git a/src/Command/Attachments/SanitizeSVGAttachmentsCommand.php b/src/Command/Attachments/SanitizeSVGAttachmentsCommand.php new file mode 100644 index 00000000..7f6550f0 --- /dev/null +++ b/src/Command/Attachments/SanitizeSVGAttachmentsCommand.php @@ -0,0 +1,90 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Command\Attachments; + +use App\Entity\Attachments\Attachment; +use App\Services\Attachments\AttachmentSubmitHandler; +use Doctrine\ORM\EntityManagerInterface; +use Symfony\Component\Console\Attribute\AsCommand; +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; + +#[AsCommand('partdb:attachments:sanitize-svg', "Sanitize uploaded SVG files.")] +class SanitizeSVGAttachmentsCommand extends Command +{ + public function __construct(private readonly EntityManagerInterface $entityManager, private readonly AttachmentSubmitHandler $attachmentSubmitHandler, ?string $name = null) + { + parent::__construct($name); + } + + public function configure(): void + { + $this->setHelp('This command allows to sanitize SVG files uploaded via attachments. This happens automatically since version 1.17.1, this command is intended to be used for older files.'); + } + + protected function execute(InputInterface $input, OutputInterface $output): int + { + $io = new SymfonyStyle($input, $output); + + $io->info('This command will sanitize all uploaded SVG files. This is only required if you have uploaded (untrusted) SVG files before version 1.17.1. If you are running a newer version, you don\'t need to run this command (again).'); + if (!$io->confirm('Do you want to continue?', false)) { + $io->success('Command aborted.'); + return Command::FAILURE; + } + + $io->info('Sanitizing SVG files...'); + + //Finding all attachments with svg files + $qb = $this->entityManager->createQueryBuilder(); + $qb->select('a') + ->from(Attachment::class, 'a') + ->where('a.internal_path LIKE :pattern ESCAPE \'#\'') + ->orWhere('a.original_filename LIKE :pattern ESCAPE \'#\'') + ->setParameter('pattern', '%.svg'); + + $attachments = $qb->getQuery()->getResult(); + $io->note('Found '.count($attachments).' attachments with SVG files.'); + + if (count($attachments) === 0) { + $io->success('No SVG files found.'); + return Command::FAILURE; + } + + $io->info('Sanitizing SVG files...'); + $io->progressStart(count($attachments)); + foreach ($attachments as $attachment) { + /** @var Attachment $attachment */ + $io->note('Sanitizing attachment '.$attachment->getId().' ('.($attachment->getFilename() ?? '???').')'); + $this->attachmentSubmitHandler->sanitizeSVGAttachment($attachment); + $io->progressAdvance(); + + } + $io->progressFinish(); + + $io->success('Sanitization finished. All SVG files have been sanitized.'); + return Command::SUCCESS; + } +} \ No newline at end of file diff --git a/src/Command/CheckRequirementsCommand.php b/src/Command/CheckRequirementsCommand.php index b5395f35..5e15e8e2 100644 --- a/src/Command/CheckRequirementsCommand.php +++ b/src/Command/CheckRequirementsCommand.php @@ -79,7 +79,7 @@ class CheckRequirementsCommand extends Command //Checking 32-bit system if (PHP_INT_SIZE === 4) { $io->warning('You are using a 32-bit system. You will have problems with working with dates after the year 2038, therefore a 64-bit system is recommended.'); - } elseif (PHP_INT_SIZE === 8) { + } elseif (PHP_INT_SIZE === 8) { //@phpstan-ignore-line //PHP_INT_SIZE is always 4 or 8 if (!$only_issues) { $io->success('You are using a 64-bit system.'); } diff --git a/src/Command/Migrations/ConvertBBCodeCommand.php b/src/Command/Migrations/ConvertBBCodeCommand.php index 2b6e4382..201263ff 100644 --- a/src/Command/Migrations/ConvertBBCodeCommand.php +++ b/src/Command/Migrations/ConvertBBCodeCommand.php @@ -79,6 +79,7 @@ class ConvertBBCodeCommand extends Command /** * Returns a list which entities and which properties need to be checked. + * @return array, string[]> */ protected function getTargetsLists(): array { @@ -109,7 +110,6 @@ class ConvertBBCodeCommand extends Command $class )); //Determine which entities of this type we need to modify - /** @var EntityRepository $repo */ $repo = $this->em->getRepository($class); $qb = $repo->createQueryBuilder('e') ->select('e'); diff --git a/src/Command/User/UserEnableCommand.php b/src/Command/User/UserEnableCommand.php index 00753e94..51ff2280 100644 --- a/src/Command/User/UserEnableCommand.php +++ b/src/Command/User/UserEnableCommand.php @@ -35,7 +35,7 @@ use Symfony\Component\Console\Style\SymfonyStyle; #[AsCommand('partdb:users:enable|partdb:user:enable', 'Enables/Disable the login of one or more users')] class UserEnableCommand extends Command { - public function __construct(protected EntityManagerInterface $entityManager, string $name = null) + public function __construct(protected EntityManagerInterface $entityManager, ?string $name = null) { parent::__construct($name); } diff --git a/src/Command/User/UsersPermissionsCommand.php b/src/Command/User/UsersPermissionsCommand.php index 021853bb..6408e9c9 100644 --- a/src/Command/User/UsersPermissionsCommand.php +++ b/src/Command/User/UsersPermissionsCommand.php @@ -206,12 +206,15 @@ class UsersPermissionsCommand extends Command return 'Allow'; } elseif ($permission_value === false) { return 'Disallow'; - } elseif ($permission_value === null && !$inherit) { + } + // Permission value is null by this point + elseif (!$inherit) { return 'Inherit'; - } elseif ($permission_value === null && $inherit) { + } elseif ($inherit) { return 'Disallow (Inherited)'; } + //@phpstan-ignore-next-line This line is never reached, but PHPstorm complains otherwise return '???'; } } diff --git a/src/Controller/AdminPages/BaseAdminController.php b/src/Controller/AdminPages/BaseAdminController.php index 3c219e29..edc5917a 100644 --- a/src/Controller/AdminPages/BaseAdminController.php +++ b/src/Controller/AdminPages/BaseAdminController.php @@ -221,7 +221,6 @@ abstract class BaseAdminController extends AbstractController } } - /** @var AbstractPartsContainingRepository $repo */ $repo = $this->entityManager->getRepository($this->entity_class); return $this->render($this->twig_template, [ @@ -397,7 +396,7 @@ abstract class BaseAdminController extends AbstractController { if ($entity instanceof AbstractPartsContainingDBElement) { /** @var AbstractPartsContainingRepository $repo */ - $repo = $this->entityManager->getRepository($this->entity_class); + $repo = $this->entityManager->getRepository($this->entity_class); //@phpstan-ignore-line if ($repo->getPartsCount($entity) > 0) { $this->addFlash('error', t('entity.delete.must_not_contain_parts', ['%PATH%' => $entity->getFullPath()])); @@ -468,6 +467,11 @@ abstract class BaseAdminController extends AbstractController $this->denyAccessUnlessGranted('read', $entity); $entities = $em->getRepository($this->entity_class)->findAll(); + if (count($entities) === 0) { + $this->addFlash('error', 'entity.export.flash.error.no_entities'); + return $this->redirectToRoute($this->route_base.'_new'); + } + return $exporter->exportEntityFromRequest($entities, $request); } diff --git a/src/Controller/AttachmentFileController.php b/src/Controller/AttachmentFileController.php index 936d27c5..d8bd8d87 100644 --- a/src/Controller/AttachmentFileController.php +++ b/src/Controller/AttachmentFileController.php @@ -51,15 +51,15 @@ class AttachmentFileController extends AbstractController $this->denyAccessUnlessGranted('show_private', $attachment); } - if ($attachment->isExternal()) { - throw $this->createNotFoundException('The file for this attachment is external and can not stored locally!'); + if (!$attachment->hasInternal()) { + throw $this->createNotFoundException('The file for this attachment is external and not stored locally!'); } - if (!$helper->isFileExisting($attachment)) { + if (!$helper->isInternalFileExisting($attachment)) { throw $this->createNotFoundException('The file associated with the attachment is not existing!'); } - $file_path = $helper->toAbsoluteFilePath($attachment); + $file_path = $helper->toAbsoluteInternalFilePath($attachment); $response = new BinaryFileResponse($file_path); //Set header content disposition, so that the file will be downloaded @@ -80,15 +80,15 @@ class AttachmentFileController extends AbstractController $this->denyAccessUnlessGranted('show_private', $attachment); } - if ($attachment->isExternal()) { - throw $this->createNotFoundException('The file for this attachment is external and can not stored locally!'); + if (!$attachment->hasInternal()) { + throw $this->createNotFoundException('The file for this attachment is external and not stored locally!'); } - if (!$helper->isFileExisting($attachment)) { + if (!$helper->isInternalFileExisting($attachment)) { throw $this->createNotFoundException('The file associated with the attachment is not existing!'); } - $file_path = $helper->toAbsoluteFilePath($attachment); + $file_path = $helper->toAbsoluteInternalFilePath($attachment); $response = new BinaryFileResponse($file_path); //Set header content disposition, so that the file will be downloaded diff --git a/src/Controller/InfoProviderController.php b/src/Controller/InfoProviderController.php index 46c5f041..a6ce3f1b 100644 --- a/src/Controller/InfoProviderController.php +++ b/src/Controller/InfoProviderController.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace App\Controller; +use App\Entity\Parts\Manufacturer; use App\Entity\Parts\Part; use App\Form\InfoProviderSystem\PartSearchType; +use App\Services\InfoProviderSystem\ExistingPartFinder; use App\Services\InfoProviderSystem\PartInfoRetriever; use App\Services\InfoProviderSystem\ProviderRegistry; +use Doctrine\ORM\EntityManagerInterface; use Psr\Log\LoggerInterface; use Symfony\Bridge\Doctrine\Attribute\MapEntity; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; @@ -42,7 +45,9 @@ class InfoProviderController extends AbstractController { public function __construct(private readonly ProviderRegistry $providerRegistry, - private readonly PartInfoRetriever $infoRetriever) + private readonly PartInfoRetriever $infoRetriever, + private readonly ExistingPartFinder $existingPartFinder + ) { } @@ -72,21 +77,49 @@ class InfoProviderController extends AbstractController //When we are updating a part, use its name as keyword, to make searching easier //However we can only do this, if the form was not submitted yet if ($update_target !== null && !$form->isSubmitted()) { - $form->get('keyword')->setData($update_target->getName()); + //Use the provider reference if available, otherwise use the manufacturer product number + $keyword = $update_target->getProviderReference()->getProviderId() ?? $update_target->getManufacturerProductNumber(); + //Or the name if both are not available + if ($keyword === "") { + $keyword = $update_target->getName(); + } + + $form->get('keyword')->setData($keyword); + + //If we are updating a part, which already has a provider, preselect that provider in the form + if ($update_target->getProviderReference()->getProviderKey() !== null) { + try { + $form->get('providers')->setData([$this->providerRegistry->getProviderByKey($update_target->getProviderReference()->getProviderKey())]); + } catch (\InvalidArgumentException $e) { + //If the provider is not found, just ignore it + } + } } if ($form->isSubmitted() && $form->isValid()) { $keyword = $form->get('keyword')->getData(); $providers = $form->get('providers')->getData(); + $dtos = []; + try { - $results = $this->infoRetriever->searchByKeyword(keyword: $keyword, providers: $providers); + $dtos = $this->infoRetriever->searchByKeyword(keyword: $keyword, providers: $providers); } catch (ClientException $e) { $this->addFlash('error', t('info_providers.search.error.client_exception')); $this->addFlash('error',$e->getMessage()); //Log the exception $exceptionLogger->error('Error during info provider search: ' . $e->getMessage(), ['exception' => $e]); } + + // modify the array to an array of arrays that has a field for a matching local Part + // the advantage to use that format even when we don't look for local parts is that we + // always work with the same interface + $results = array_map(function ($result) {return ['dto' => $result, 'localPart' => null];}, $dtos); + if(!$update_target) { + foreach ($results as $index => $result) { + $results[$index]['localPart'] = $this->existingPartFinder->findFirstExisting($result['dto']); + } + } } return $this->render('info_providers/search/part_search.html.twig', [ diff --git a/src/Controller/LabelController.php b/src/Controller/LabelController.php index d1bcfdbf..4950628b 100644 --- a/src/Controller/LabelController.php +++ b/src/Controller/LabelController.php @@ -108,8 +108,31 @@ class LabelController extends AbstractController $pdf_data = null; $filename = 'invalid.pdf'; - //Generate PDF either when the form is submitted and valid, or the form was not submit yet, and generate is set if (($form->isSubmitted() && $form->isValid()) || ($generate && !$form->isSubmitted() && $profile instanceof LabelProfile)) { + + //Check if the label should be saved as profile + if ($form->get('save_profile')->isClicked() && $this->isGranted('@labels.create_profiles')) { //@phpstan-ignore-line Phpstan does not recognize the isClicked method + //Retrieve the profile name from the form + $new_name = $form->get('save_profile_name')->getData(); + //ensure that the name is not empty + if ($new_name === '' || $new_name === null) { + $form->get('save_profile_name')->addError(new FormError($this->translator->trans('label_generator.profile_name_empty'))); + goto render; + } + + $profile = new LabelProfile(); + $profile->setName($form->get('save_profile_name')->getData()); + $profile->setOptions($form_options); + $this->em->persist($profile); + $this->em->flush(); + $this->addFlash('success', 'label_generator.profile_saved'); + + return $this->redirectToRoute('label_dialog_profile', [ + 'profile' => $profile->getID(), + 'target_id' => (string) $form->get('target_id')->getData() + ]); + } + $target_id = (string) $form->get('target_id')->getData(); $targets = $this->findObjects($form_options->getSupportedElement(), $target_id); if ($targets !== []) { @@ -132,6 +155,7 @@ class LabelController extends AbstractController } } + render: return $this->render('label_system/dialog.html.twig', [ 'form' => $form, 'pdf_data' => $pdf_data, @@ -152,7 +176,7 @@ class LabelController extends AbstractController { $id_array = $this->rangeParser->parse($ids); - /** @var DBElementRepository $repo */ + /** @var DBElementRepository $repo */ $repo = $this->em->getRepository($type->getEntityClass()); return $repo->getElementsFromIDArray($id_array); diff --git a/src/Controller/PartController.php b/src/Controller/PartController.php index d6acb36b..b11a5c90 100644 --- a/src/Controller/PartController.php +++ b/src/Controller/PartController.php @@ -229,6 +229,10 @@ class PartController extends AbstractController $dto = $infoRetriever->getDetails($providerKey, $providerId); $new_part = $infoRetriever->dtoToPart($dto); + if ($new_part->getCategory() === null || $new_part->getCategory()->getID() === null) { + $this->addFlash('warning', t("part.create_from_info_provider.no_category_yet")); + } + return $this->renderPartForm('new', $request, $new_part, [ 'info_provider_dto' => $dto, ]); diff --git a/src/Controller/PartImportExportController.php b/src/Controller/PartImportExportController.php index 528ab3e3..45f90d75 100644 --- a/src/Controller/PartImportExportController.php +++ b/src/Controller/PartImportExportController.php @@ -112,8 +112,9 @@ class PartImportExportController extends AbstractController $ids = $request->query->get('ids', ''); $parts = $this->partsTableActionHandler->idStringToArray($ids); - if ($parts === []) { - throw new \RuntimeException('No parts found!'); + if (count($parts) === 0) { + $this->addFlash('error', 'entity.export.flash.error.no_entities'); + return $this->redirectToRoute('homepage'); } //Ensure that we have access to the parts diff --git a/src/Controller/PartListsController.php b/src/Controller/PartListsController.php index 677ad987..48995228 100644 --- a/src/Controller/PartListsController.php +++ b/src/Controller/PartListsController.php @@ -29,6 +29,7 @@ use App\DataTables\PartsDataTable; use App\Entity\Parts\Category; use App\Entity\Parts\Footprint; use App\Entity\Parts\Manufacturer; +use App\Entity\Parts\Part; use App\Entity\Parts\StorageLocation; use App\Entity\Parts\Supplier; use App\Exceptions\InvalidRegexException; @@ -43,8 +44,11 @@ use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; +use Symfony\Component\Translation\TranslatableMessage; use Symfony\Contracts\Translation\TranslatorInterface; +use function Symfony\Component\Translation\t; + class PartListsController extends AbstractController { public function __construct(private readonly EntityManagerInterface $entityManager, private readonly NodesListBuilder $nodesListBuilder, private readonly DataTableFactory $dataTableFactory, private readonly TranslatorInterface $translator) @@ -60,6 +64,7 @@ class PartListsController extends AbstractController $ids = $request->request->get('ids'); $action = $request->request->get('action'); $target = $request->request->get('target'); + $redirectResponse = null; if (!$this->isCsrfTokenValid('table_action', $request->request->get('_token'))) { $this->addFlash('error', 'csfr_invalid'); @@ -70,17 +75,36 @@ class PartListsController extends AbstractController if (null === $action || null === $ids) { $this->addFlash('error', 'part.table.actions.no_params_given'); } else { + $errors = []; + $parts = $actionHandler->idStringToArray($ids); - $redirectResponse = $actionHandler->handleAction($action, $parts, $target ? (int) $target : null, $redirect); + $redirectResponse = $actionHandler->handleAction($action, $parts, $target ? (int) $target : null, $redirect, $errors); //Save changes $this->entityManager->flush(); - $this->addFlash('success', 'part.table.actions.success'); + if (count($errors) === 0) { + $this->addFlash('success', 'part.table.actions.success'); + } else { + $this->addFlash('error', t('part.table.actions.error', ['%count%' => count($errors)])); + //Create a flash message for each error + foreach ($errors as $error) { + /** @var Part $part */ + $part = $error['part']; + + $this->addFlash('error', + t('part.table.actions.error_detail', [ + '%part_name%' => $part->getName(), + '%part_id%' => $part->getID(), + '%message%' => $error['message'] + ]) + ); + } + } } //If the action handler returned a response, we use it, otherwise we redirect back to the previous page. - if (isset($redirectResponse) && $redirectResponse instanceof Response) { + if ($redirectResponse !== null) { return $redirectResponse; } @@ -131,7 +155,11 @@ class PartListsController extends AbstractController $filterForm->handleRequest($formRequest); - $table = $this->dataTableFactory->createFromType(PartsDataTable::class, array_merge(['filter' => $filter], $additional_table_vars)) + $table = $this->dataTableFactory->createFromType( + PartsDataTable::class, + array_merge(['filter' => $filter], $additional_table_vars), + ['lengthMenu' => PartsDataTable::LENGTH_MENU] + ) ->handleRequest($request); if ($table->isCallback()) { diff --git a/src/Controller/ScanController.php b/src/Controller/ScanController.php index 77183c89..aebadd89 100644 --- a/src/Controller/ScanController.php +++ b/src/Controller/ScanController.php @@ -42,10 +42,10 @@ declare(strict_types=1); namespace App\Controller; use App\Form\LabelSystem\ScanDialogType; -use App\Services\LabelSystem\Barcodes\BarcodeScanHelper; -use App\Services\LabelSystem\Barcodes\BarcodeRedirector; -use App\Services\LabelSystem\Barcodes\BarcodeScanResult; -use App\Services\LabelSystem\Barcodes\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\BarcodeRedirector; +use App\Services\LabelSystem\BarcodeScanner\BarcodeScanHelper; +use App\Services\LabelSystem\BarcodeScanner\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\LocalBarcodeScanResult; use Doctrine\ORM\EntityNotFoundException; use InvalidArgumentException; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; @@ -77,13 +77,21 @@ class ScanController extends AbstractController $mode = $form['mode']->getData(); } + $infoModeData = null; + if ($input !== null) { try { $scan_result = $this->barcodeNormalizer->scanBarcodeContent($input, $mode ?? null); - try { - return $this->redirect($this->barcodeParser->getRedirectURL($scan_result)); - } catch (EntityNotFoundException) { - $this->addFlash('success', 'scan.qr_not_found'); + //Perform a redirect if the info mode is not enabled + if (!$form['info_mode']->getData()) { + try { + return $this->redirect($this->barcodeParser->getRedirectURL($scan_result)); + } catch (EntityNotFoundException) { + $this->addFlash('success', 'scan.qr_not_found'); + } + } else { //Otherwise retrieve infoModeData + $infoModeData = $scan_result->getDecodedForInfoMode(); + } } catch (InvalidArgumentException) { $this->addFlash('error', 'scan.format_unknown'); @@ -92,6 +100,7 @@ class ScanController extends AbstractController return $this->render('label_system/scanner/scanner.html.twig', [ 'form' => $form, + 'infoModeData' => $infoModeData, ]); } @@ -109,7 +118,7 @@ class ScanController extends AbstractController throw new InvalidArgumentException('Unknown type: '.$type); } //Construct the scan result manually, as we don't have a barcode here - $scan_result = new BarcodeScanResult( + $scan_result = new LocalBarcodeScanResult( target_type: BarcodeScanHelper::QR_TYPE_MAP[$type], target_id: $id, //The routes are only used on the internal generated QR codes diff --git a/src/Controller/SelectAPIController.php b/src/Controller/SelectAPIController.php index 50062118..c1e682c8 100644 --- a/src/Controller/SelectAPIController.php +++ b/src/Controller/SelectAPIController.php @@ -29,6 +29,7 @@ use App\Entity\Parts\Category; use App\Entity\Parts\Footprint; use App\Entity\Parts\Manufacturer; use App\Entity\Parts\MeasurementUnit; +use App\Entity\Parts\StorageLocation; use App\Entity\ProjectSystem\Project; use App\Form\Type\Helper\StructuralEntityChoiceHelper; use App\Services\Trees\NodesListBuilder; @@ -78,6 +79,12 @@ class SelectAPIController extends AbstractController return $this->getResponseForClass(Project::class, false); } + #[Route(path: '/storage_location', name: 'select_storage_location')] + public function locations(): Response + { + return $this->getResponseForClass(StorageLocation::class, true); + } + #[Route(path: '/export_level', name: 'select_export_level')] public function exportLevel(): Response { diff --git a/src/Controller/ToolsController.php b/src/Controller/ToolsController.php index 78e149e3..dbcb91a1 100644 --- a/src/Controller/ToolsController.php +++ b/src/Controller/ToolsController.php @@ -61,10 +61,10 @@ class ToolsController extends AbstractController 'default_theme' => $this->getParameter('partdb.global_theme'), 'enabled_locales' => $this->getParameter('partdb.locale_menu'), 'demo_mode' => $this->getParameter('partdb.demo_mode'), - 'gpdr_compliance' => $this->getParameter('partdb.gdpr_compliance'), + 'gdpr_compliance' => $this->getParameter('partdb.gdpr_compliance'), 'use_gravatar' => $this->getParameter('partdb.users.use_gravatar'), 'email_password_reset' => $this->getParameter('partdb.users.email_pw_reset'), - 'enviroment' => $this->getParameter('kernel.environment'), + 'environment' => $this->getParameter('kernel.environment'), 'is_debug' => $this->getParameter('kernel.debug'), 'email_sender' => $this->getParameter('partdb.mail.sender_email'), 'email_sender_name' => $this->getParameter('partdb.mail.sender_name'), diff --git a/src/Controller/TypeaheadController.php b/src/Controller/TypeaheadController.php index b1344532..89eac7ff 100644 --- a/src/Controller/TypeaheadController.php +++ b/src/Controller/TypeaheadController.php @@ -22,6 +22,7 @@ declare(strict_types=1); namespace App\Controller; +use App\Entity\Parameters\AbstractParameter; use Symfony\Component\HttpFoundation\Response; use App\Entity\Attachments\Attachment; use App\Entity\Parts\Category; @@ -92,7 +93,7 @@ class TypeaheadController extends AbstractController /** * This function map the parameter type to the class, so we can access its repository - * @return class-string + * @return class-string */ private function typeToParameterClass(string $type): string { @@ -155,7 +156,7 @@ class TypeaheadController extends AbstractController //Ensure user has the correct permissions $this->denyAccessUnlessGranted('read', $test_obj); - /** @var ParameterRepository $repository */ + /** @var ParameterRepository $repository */ $repository = $entityManager->getRepository($class); $data = $repository->autocompleteParamName($query); diff --git a/src/Controller/UserSettingsController.php b/src/Controller/UserSettingsController.php index f84547dc..4e56015a 100644 --- a/src/Controller/UserSettingsController.php +++ b/src/Controller/UserSettingsController.php @@ -240,7 +240,10 @@ class UserSettingsController extends AbstractController $page_need_reload = true; } - /** @var Form $form We need a form implementation for the next calls */ + if (!$form instanceof Form) { + throw new RuntimeException('Form is not an instance of Form, so we cannot retrieve the clicked button!'); + } + //Remove the avatar attachment from the user if requested if ($form->getClickedButton() && 'remove_avatar' === $form->getClickedButton()->getName() && $user->getMasterPictureAttachment() instanceof Attachment) { $em->remove($user->getMasterPictureAttachment()); diff --git a/src/DataFixtures/APITokenFixtures.php b/src/DataFixtures/APITokenFixtures.php index 4bcf3a60..0ab0b7bb 100644 --- a/src/DataFixtures/APITokenFixtures.php +++ b/src/DataFixtures/APITokenFixtures.php @@ -41,7 +41,7 @@ class APITokenFixtures extends Fixture implements DependentFixtureInterface public function load(ObjectManager $manager): void { /** @var User $admin_user */ - $admin_user = $this->getReference(UserFixtures::ADMIN); + $admin_user = $this->getReference(UserFixtures::ADMIN, User::class); $read_only_token = new ApiToken(); $read_only_token->setUser($admin_user); diff --git a/src/DataFixtures/LogEntryFixtures.php b/src/DataFixtures/LogEntryFixtures.php index b9788ec0..eb9cf731 100644 --- a/src/DataFixtures/LogEntryFixtures.php +++ b/src/DataFixtures/LogEntryFixtures.php @@ -35,7 +35,7 @@ use Doctrine\Persistence\ObjectManager; class LogEntryFixtures extends Fixture implements DependentFixtureInterface { - public function load(ObjectManager $manager) + public function load(ObjectManager $manager): void { $this->createCategoryEntries($manager); $this->createDeletedCategory($manager); diff --git a/src/DataFixtures/PartFixtures.php b/src/DataFixtures/PartFixtures.php index a9290cbf..a60d037d 100644 --- a/src/DataFixtures/PartFixtures.php +++ b/src/DataFixtures/PartFixtures.php @@ -106,7 +106,7 @@ class PartFixtures extends Fixture implements DependentFixtureInterface $partLot2->setComment('Test'); $partLot2->setNeedsRefill(true); $partLot2->setStorageLocation($manager->find(StorageLocation::class, 3)); - $partLot2->setVendorBarcode('lot2_vendor_barcode'); + $partLot2->setUserBarcode('lot2_vendor_barcode'); $part->addPartLot($partLot2); $orderdetail = new Orderdetail(); @@ -131,7 +131,7 @@ class PartFixtures extends Fixture implements DependentFixtureInterface $attachment = new PartAttachment(); $attachment->setName('Test2'); - $attachment->setPath('invalid'); + $attachment->setInternalPath('invalid'); $attachment->setShowInTable(true); $attachment->setAttachmentType($manager->find(AttachmentType::class, 1)); $part->addAttachment($attachment); diff --git a/src/DataFixtures/UserFixtures.php b/src/DataFixtures/UserFixtures.php index 0571a4b0..922d0b1e 100644 --- a/src/DataFixtures/UserFixtures.php +++ b/src/DataFixtures/UserFixtures.php @@ -22,6 +22,7 @@ declare(strict_types=1); namespace App\DataFixtures; +use App\Entity\UserSystem\Group; use App\Entity\UserSystem\User; use Doctrine\Bundle\FixturesBundle\Fixture; use Doctrine\Common\DataFixtures\DependentFixtureInterface; @@ -41,7 +42,7 @@ class UserFixtures extends Fixture implements DependentFixtureInterface { $anonymous = new User(); $anonymous->setName('anonymous'); - $anonymous->setGroup($this->getReference(GroupFixtures::READONLY)); + $anonymous->setGroup($this->getReference(GroupFixtures::READONLY, Group::class)); $anonymous->setNeedPwChange(false); $anonymous->setPassword($this->encoder->hashPassword($anonymous, 'test')); $manager->persist($anonymous); @@ -50,7 +51,7 @@ class UserFixtures extends Fixture implements DependentFixtureInterface $admin->setName('admin'); $admin->setPassword($this->encoder->hashPassword($admin, 'test')); $admin->setNeedPwChange(false); - $admin->setGroup($this->getReference(GroupFixtures::ADMINS)); + $admin->setGroup($this->getReference(GroupFixtures::ADMINS, Group::class)); $manager->persist($admin); $this->addReference(self::ADMIN, $admin); @@ -60,7 +61,7 @@ class UserFixtures extends Fixture implements DependentFixtureInterface $user->setEmail('user@invalid.invalid'); $user->setFirstName('Test')->setLastName('User'); $user->setPassword($this->encoder->hashPassword($user, 'test')); - $user->setGroup($this->getReference(GroupFixtures::USERS)); + $user->setGroup($this->getReference(GroupFixtures::USERS, Group::class)); $manager->persist($user); $noread = new User(); diff --git a/src/DataTables/Adapters/TwoStepORMAdapter.php b/src/DataTables/Adapters/TwoStepORMAdapter.php index 2086c907..51315c32 100644 --- a/src/DataTables/Adapters/TwoStepORMAdapter.php +++ b/src/DataTables/Adapters/TwoStepORMAdapter.php @@ -54,7 +54,7 @@ class TwoStepORMAdapter extends ORMAdapter private \Closure|null $query_modifier = null; - public function __construct(ManagerRegistry $registry = null) + public function __construct(?ManagerRegistry $registry = null) { parent::__construct($registry); $this->detailQueryCallable = static function (QueryBuilder $qb, array $ids): never { diff --git a/src/DataTables/AttachmentDataTable.php b/src/DataTables/AttachmentDataTable.php index 0d6c5b53..16e6a7a7 100644 --- a/src/DataTables/AttachmentDataTable.php +++ b/src/DataTables/AttachmentDataTable.php @@ -50,8 +50,8 @@ final class AttachmentDataTable implements DataTableTypeInterface { $dataTable->add('dont_matter', RowClassColumn::class, [ 'render' => function ($value, Attachment $context): string { - //Mark attachments with missing files yellow - if(!$this->attachmentHelper->isFileExisting($context)){ + //Mark attachments yellow which have an internal file linked that doesn't exist + if($context->hasInternal() && !$this->attachmentHelper->isInternalFileExisting($context)){ return 'table-warning'; } @@ -64,8 +64,8 @@ final class AttachmentDataTable implements DataTableTypeInterface 'className' => 'no-colvis', 'render' => function ($value, Attachment $context): string { if ($context->isPicture() - && !$context->isExternal() - && $this->attachmentHelper->isFileExisting($context)) { + && $this->attachmentHelper->isInternalFileExisting($context)) { + $title = htmlspecialchars($context->getName()); if ($context->getFilename()) { $title .= ' ('.htmlspecialchars($context->getFilename()).')'; @@ -93,26 +93,6 @@ final class AttachmentDataTable implements DataTableTypeInterface $dataTable->add('name', TextColumn::class, [ 'label' => 'attachment.edit.name', 'orderField' => 'NATSORT(attachment.name)', - 'render' => function ($value, Attachment $context) { - //Link to external source - if ($context->isExternal()) { - return sprintf( - '%s', - htmlspecialchars((string) $context->getURL()), - htmlspecialchars($value) - ); - } - - if ($this->attachmentHelper->isFileExisting($context)) { - return sprintf( - '%s', - $this->entityURLGenerator->viewURL($context), - htmlspecialchars($value) - ); - } - - return $value; - }, ]); $dataTable->add('attachment_type', TextColumn::class, [ @@ -136,25 +116,60 @@ final class AttachmentDataTable implements DataTableTypeInterface ), ]); - $dataTable->add('filename', TextColumn::class, [ - 'label' => $this->translator->trans('attachment.table.filename'), + $dataTable->add('internal_link', TextColumn::class, [ + 'label' => 'attachment.table.internal_file', 'propertyPath' => 'filename', + 'orderField' => 'NATSORT(attachment.original_filename)', + 'render' => function ($value, Attachment $context) { + if ($this->attachmentHelper->isInternalFileExisting($context)) { + return sprintf( + '%s', + $this->entityURLGenerator->viewURL($context), + htmlspecialchars($value) + ); + } + + return $value; + } + ]); + + $dataTable->add('external_link', TextColumn::class, [ + 'label' => 'attachment.table.external_link', + 'propertyPath' => 'host', + 'orderField' => 'attachment.external_path', + 'render' => function ($value, Attachment $context) { + if ($context->hasExternal()) { + return sprintf( + '%s', + htmlspecialchars((string) $context->getExternalPath()), + htmlspecialchars((string) $context->getExternalPath()), + htmlspecialchars($value), + ); + } + + return $value; + } ]); $dataTable->add('filesize', TextColumn::class, [ 'label' => $this->translator->trans('attachment.table.filesize'), 'render' => function ($value, Attachment $context) { - if ($context->isExternal()) { + if (!$context->hasInternal()) { return sprintf( ' %s ', - $this->translator->trans('attachment.external') + $this->translator->trans('attachment.external_only') ); } - if ($this->attachmentHelper->isFileExisting($context)) { - return $this->attachmentHelper->getHumanFileSize($context); + if ($this->attachmentHelper->isInternalFileExisting($context)) { + return sprintf( + ' + %s + ', + $this->attachmentHelper->getHumanFileSize($context) + ); } return sprintf( diff --git a/src/DataTables/Filters/AttachmentFilter.php b/src/DataTables/Filters/AttachmentFilter.php index 9f8cf094..d41bbe39 100644 --- a/src/DataTables/Filters/AttachmentFilter.php +++ b/src/DataTables/Filters/AttachmentFilter.php @@ -45,6 +45,9 @@ class AttachmentFilter implements FilterInterface public readonly DateTimeConstraint $lastModified; public readonly DateTimeConstraint $addedDate; + public readonly TextConstraint $originalFileName; + public readonly TextConstraint $externalLink; + public function __construct(NodesListBuilder $nodesListBuilder) { @@ -55,6 +58,9 @@ class AttachmentFilter implements FilterInterface $this->lastModified = new DateTimeConstraint('attachment.lastModified'); $this->addedDate = new DateTimeConstraint('attachment.addedDate'); $this->showInTable = new BooleanConstraint('attachment.show_in_table'); + $this->originalFileName = new TextConstraint('attachment.original_filename'); + $this->externalLink = new TextConstraint('attachment.external_path'); + } public function apply(QueryBuilder $queryBuilder): void diff --git a/src/DataTables/Filters/Constraints/AbstractConstraint.php b/src/DataTables/Filters/Constraints/AbstractConstraint.php index cbb62352..7f16511e 100644 --- a/src/DataTables/Filters/Constraints/AbstractConstraint.php +++ b/src/DataTables/Filters/Constraints/AbstractConstraint.php @@ -45,7 +45,7 @@ abstract class AbstractConstraint implements FilterInterface * @var string The property where this BooleanConstraint should apply to */ protected string $property, - string $identifier = null) + ?string $identifier = null) { $this->identifier = $identifier ?? $this->generateParameterIdentifier($property); } diff --git a/src/DataTables/Filters/Constraints/BooleanConstraint.php b/src/DataTables/Filters/Constraints/BooleanConstraint.php index b3f1dc47..8eb4f042 100644 --- a/src/DataTables/Filters/Constraints/BooleanConstraint.php +++ b/src/DataTables/Filters/Constraints/BooleanConstraint.php @@ -28,7 +28,7 @@ class BooleanConstraint extends AbstractConstraint { public function __construct( string $property, - string $identifier = null, + ?string $identifier = null, /** @var bool|null The value of our constraint */ protected ?bool $value = null ) diff --git a/src/DataTables/Filters/Constraints/DateTimeConstraint.php b/src/DataTables/Filters/Constraints/DateTimeConstraint.php index 23134de5..a3043170 100644 --- a/src/DataTables/Filters/Constraints/DateTimeConstraint.php +++ b/src/DataTables/Filters/Constraints/DateTimeConstraint.php @@ -34,7 +34,7 @@ class DateTimeConstraint extends AbstractConstraint public function __construct( string $property, - string $identifier = null, + ?string $identifier = null, /** * The value1 used for comparison (this is the main one used for all mono-value comparisons) */ diff --git a/src/DataTables/Filters/Constraints/EntityConstraint.php b/src/DataTables/Filters/Constraints/EntityConstraint.php index 6e9721f4..c75da80d 100644 --- a/src/DataTables/Filters/Constraints/EntityConstraint.php +++ b/src/DataTables/Filters/Constraints/EntityConstraint.php @@ -46,7 +46,7 @@ class EntityConstraint extends AbstractConstraint public function __construct(protected ?NodesListBuilder $nodesListBuilder, protected string $class, string $property, - string $identifier = null, + ?string $identifier = null, protected ?AbstractDBElement $value = null, protected ?string $operator = null) { diff --git a/src/DataTables/Filters/Constraints/NumberConstraint.php b/src/DataTables/Filters/Constraints/NumberConstraint.php index c872dade..dc7cf733 100644 --- a/src/DataTables/Filters/Constraints/NumberConstraint.php +++ b/src/DataTables/Filters/Constraints/NumberConstraint.php @@ -31,7 +31,7 @@ class NumberConstraint extends AbstractConstraint public function __construct( string $property, - string $identifier = null, + ?string $identifier = null, /** * The value1 used for comparison (this is the main one used for all mono-value comparisons) */ diff --git a/src/DataTables/Filters/Constraints/Part/LessThanDesiredConstraint.php b/src/DataTables/Filters/Constraints/Part/LessThanDesiredConstraint.php index eb96ad33..011824e5 100644 --- a/src/DataTables/Filters/Constraints/Part/LessThanDesiredConstraint.php +++ b/src/DataTables/Filters/Constraints/Part/LessThanDesiredConstraint.php @@ -28,7 +28,7 @@ use Doctrine\ORM\QueryBuilder; class LessThanDesiredConstraint extends BooleanConstraint { - public function __construct(string $property = null, string $identifier = null, ?bool $default_value = null) + public function __construct(?string $property = null, ?string $identifier = null, ?bool $default_value = null) { parent::__construct($property ?? '( SELECT COALESCE(SUM(ld_partLot.amount), 0.0) diff --git a/src/DataTables/Filters/Constraints/Part/TagsConstraint.php b/src/DataTables/Filters/Constraints/Part/TagsConstraint.php index e8bfe2a4..02eab7a1 100644 --- a/src/DataTables/Filters/Constraints/Part/TagsConstraint.php +++ b/src/DataTables/Filters/Constraints/Part/TagsConstraint.php @@ -30,7 +30,7 @@ class TagsConstraint extends AbstractConstraint { final public const ALLOWED_OPERATOR_VALUES = ['ANY', 'ALL', 'NONE']; - public function __construct(string $property, string $identifier = null, + public function __construct(string $property, ?string $identifier = null, protected ?string $value = null, protected ?string $operator = '') { @@ -93,10 +93,10 @@ class TagsConstraint extends AbstractConstraint $expr = $queryBuilder->expr(); $tmp = $expr->orX( - $expr->like($this->property, ':' . $tag_identifier_prefix . '_1'), - $expr->like($this->property, ':' . $tag_identifier_prefix . '_2'), - $expr->like($this->property, ':' . $tag_identifier_prefix . '_3'), - $expr->eq($this->property, ':' . $tag_identifier_prefix . '_4'), + 'ILIKE(' . $this->property . ', :' . $tag_identifier_prefix . '_1) = TRUE', + 'ILIKE(' . $this->property . ', :' . $tag_identifier_prefix . '_2) = TRUE', + 'ILIKE(' . $this->property . ', :' . $tag_identifier_prefix . '_3) = TRUE', + 'ILIKE(' . $this->property . ', :' . $tag_identifier_prefix . '_4) = TRUE', ); //Set the parameters for the LIKE expression, in each variation of the tag (so with a comma, at the end, at the beginning, and on both ends, and equaling the tag) @@ -133,6 +133,7 @@ class TagsConstraint extends AbstractConstraint return; } + //@phpstan-ignore-next-line Keep this check to ensure that everything has the same structure even if we add a new operator if ($this->operator === 'NONE') { $queryBuilder->andWhere($queryBuilder->expr()->not($queryBuilder->expr()->orX(...$tagsExpressions))); return; diff --git a/src/DataTables/Filters/Constraints/TextConstraint.php b/src/DataTables/Filters/Constraints/TextConstraint.php index 89567d83..31b12a5e 100644 --- a/src/DataTables/Filters/Constraints/TextConstraint.php +++ b/src/DataTables/Filters/Constraints/TextConstraint.php @@ -32,7 +32,7 @@ class TextConstraint extends AbstractConstraint /** * @param string $value */ - public function __construct(string $property, string $identifier = null, /** + public function __construct(string $property, ?string $identifier = null, /** * @var string|null The value to compare to */ protected ?string $value = null, /** @@ -107,7 +107,8 @@ class TextConstraint extends AbstractConstraint } if ($like_value !== null) { - $this->addSimpleAndConstraint($queryBuilder, $this->property, $this->identifier, 'LIKE', $like_value); + $queryBuilder->andWhere(sprintf('ILIKE(%s, :%s) = TRUE', $this->property, $this->identifier)); + $queryBuilder->setParameter($this->identifier, $like_value); return; } diff --git a/src/DataTables/Filters/PartSearchFilter.php b/src/DataTables/Filters/PartSearchFilter.php index 84dfe9b3..6e2e5894 100644 --- a/src/DataTables/Filters/PartSearchFilter.php +++ b/src/DataTables/Filters/PartSearchFilter.php @@ -21,7 +21,6 @@ declare(strict_types=1); * along with this program. If not, see . */ namespace App\DataTables\Filters; - use Doctrine\ORM\QueryBuilder; class PartSearchFilter implements FilterInterface @@ -132,15 +131,15 @@ class PartSearchFilter implements FilterInterface return sprintf("REGEXP(%s, :search_query) = TRUE", $field); } - return sprintf("%s LIKE :search_query", $field); + return sprintf("ILIKE(%s, :search_query) = TRUE", $field); }, $fields_to_search); - //Add Or concatation of the expressions to our query + //Add Or concatenation of the expressions to our query $queryBuilder->andWhere( $queryBuilder->expr()->orX(...$expressions) ); - //For regex we pass the query as is, for like we add % to the start and end as wildcards + //For regex, we pass the query as is, for like we add % to the start and end as wildcards if ($this->regex) { $queryBuilder->setParameter('search_query', $this->keyword); } else { diff --git a/src/DataTables/PartsDataTable.php b/src/DataTables/PartsDataTable.php index f62d9083..3163a38b 100644 --- a/src/DataTables/PartsDataTable.php +++ b/src/DataTables/PartsDataTable.php @@ -57,6 +57,8 @@ use Symfony\Contracts\Translation\TranslatorInterface; final class PartsDataTable implements DataTableTypeInterface { + const LENGTH_MENU = [[10, 25, 50, 100, -1], [10, 25, 50, 100, "All"]]; + public function __construct( private readonly EntityURLGenerator $urlGenerator, private readonly TranslatorInterface $translator, diff --git a/src/DataTables/ProjectBomEntriesDataTable.php b/src/DataTables/ProjectBomEntriesDataTable.php index 84a89320..fcb06984 100644 --- a/src/DataTables/ProjectBomEntriesDataTable.php +++ b/src/DataTables/ProjectBomEntriesDataTable.php @@ -87,16 +87,14 @@ class ProjectBomEntriesDataTable implements DataTableTypeInterface if(!$context->getPart() instanceof Part) { return htmlspecialchars((string) $context->getName()); } - if($context->getPart() instanceof Part) { - $tmp = $this->partDataTableHelper->renderName($context->getPart()); - if($context->getName() !== null && $context->getName() !== '') { - $tmp .= '
'.htmlspecialchars($context->getName()).''; - } - return $tmp; - } - //@phpstan-ignore-next-line - throw new \RuntimeException('This should never happen!'); + //Part exists if we reach this point + + $tmp = $this->partDataTableHelper->renderName($context->getPart()); + if($context->getName() !== null && $context->getName() !== '') { + $tmp .= '
'.htmlspecialchars($context->getName()).''; + } + return $tmp; }, ]) ->add('ipn', TextColumn::class, [ diff --git a/src/Doctrine/Functions/ILike.php b/src/Doctrine/Functions/ILike.php new file mode 100644 index 00000000..5246220a --- /dev/null +++ b/src/Doctrine/Functions/ILike.php @@ -0,0 +1,71 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Doctrine\Functions; + +use Doctrine\DBAL\Platforms\AbstractMySQLPlatform; +use Doctrine\DBAL\Platforms\PostgreSQLPlatform; +use Doctrine\DBAL\Platforms\SQLitePlatform; +use Doctrine\ORM\Query\AST\Functions\FunctionNode; +use Doctrine\ORM\Query\Parser; +use Doctrine\ORM\Query\SqlWalker; +use Doctrine\ORM\Query\TokenType; + +/** + * A platform invariant version of the case-insensitive LIKE operation. + * On MySQL and SQLite this is the normal LIKE, but on PostgreSQL it is the ILIKE operator. + */ +class ILike extends FunctionNode +{ + + public $value = null; + + public $expr = null; + + public function parse(Parser $parser): void + { + $parser->match(TokenType::T_IDENTIFIER); + $parser->match(TokenType::T_OPEN_PARENTHESIS); + $this->value = $parser->StringPrimary(); + $parser->match(TokenType::T_COMMA); + $this->expr = $parser->StringExpression(); + $parser->match(TokenType::T_CLOSE_PARENTHESIS); + } + + public function getSql(SqlWalker $sqlWalker): string + { + $platform = $sqlWalker->getConnection()->getDatabasePlatform(); + + // + if ($platform instanceof AbstractMySQLPlatform || $platform instanceof SQLitePlatform) { + $operator = 'LIKE'; + } elseif ($platform instanceof PostgreSQLPlatform) { + //Use the case-insensitive operator, to have the same behavior as MySQL + $operator = 'ILIKE'; + } else { + throw new \RuntimeException('Platform ' . gettype($platform) . ' does not support case insensitive like expressions.'); + } + + return '(' . $this->value->dispatch($sqlWalker) . ' ' . $operator . ' ' . $this->expr->dispatch($sqlWalker) . ')'; + } +} \ No newline at end of file diff --git a/src/Doctrine/Middleware/SQLiteRegexExtensionMiddlewareDriver.php b/src/Doctrine/Middleware/SQLiteRegexExtensionMiddlewareDriver.php index 80a81612..ad572d4c 100644 --- a/src/Doctrine/Middleware/SQLiteRegexExtensionMiddlewareDriver.php +++ b/src/Doctrine/Middleware/SQLiteRegexExtensionMiddlewareDriver.php @@ -44,15 +44,13 @@ class SQLiteRegexExtensionMiddlewareDriver extends AbstractDriverMiddleware $native_connection = $connection->getNativeConnection(); //Ensure that the function really exists on the connection, as it is marked as experimental according to PHP documentation - if($native_connection instanceof \PDO && method_exists($native_connection, 'sqliteCreateFunction' )) { + if($native_connection instanceof \PDO) { $native_connection->sqliteCreateFunction('REGEXP', self::regexp(...), 2, \PDO::SQLITE_DETERMINISTIC); $native_connection->sqliteCreateFunction('FIELD', self::field(...), -1, \PDO::SQLITE_DETERMINISTIC); $native_connection->sqliteCreateFunction('FIELD2', self::field2(...), 2, \PDO::SQLITE_DETERMINISTIC); //Create a new collation for natural sorting - if (method_exists($native_connection, 'sqliteCreateCollation')) { - $native_connection->sqliteCreateCollation('NATURAL_CMP', strnatcmp(...)); - } + $native_connection->sqliteCreateCollation('NATURAL_CMP', strnatcmp(...)); } } diff --git a/src/Doctrine/Purger/DoNotUsePurgerFactory.php b/src/Doctrine/Purger/DoNotUsePurgerFactory.php index 95726fab..6d487573 100644 --- a/src/Doctrine/Purger/DoNotUsePurgerFactory.php +++ b/src/Doctrine/Purger/DoNotUsePurgerFactory.php @@ -44,7 +44,7 @@ class DoNotUsePurgerFactory implements PurgerFactory throw new \LogicException('Do not use doctrine:fixtures:load directly. Use partdb:fixtures:load instead!'); } - public function setEntityManager(EntityManagerInterface $em) + public function setEntityManager(EntityManagerInterface $em): void { // TODO: Implement setEntityManager() method. } diff --git a/src/Entity/Attachments/Attachment.php b/src/Entity/Attachments/Attachment.php index 8dc01641..00cf581a 100644 --- a/src/Entity/Attachments/Attachment.php +++ b/src/Entity/Attachments/Attachment.php @@ -33,23 +33,24 @@ use ApiPlatform\Metadata\Get; use ApiPlatform\Metadata\GetCollection; use ApiPlatform\Metadata\Patch; use ApiPlatform\Metadata\Post; -use App\ApiPlatform\DocumentedAPIProperty; +use App\ApiPlatform\DocumentedAPIProperties\DocumentedAPIProperty; use App\ApiPlatform\Filter\EntityFilter; use App\ApiPlatform\Filter\LikeFilter; use App\ApiPlatform\HandleAttachmentsUploadsProcessor; -use App\Repository\AttachmentRepository; -use App\EntityListeners\AttachmentDeleteListener; -use Doctrine\DBAL\Types\Types; use App\Entity\Base\AbstractNamedDBElement; +use App\EntityListeners\AttachmentDeleteListener; +use App\Repository\AttachmentRepository; use App\Validator\Constraints\Selectable; +use Doctrine\DBAL\Types\Types; use Doctrine\ORM\Mapping as ORM; +use InvalidArgumentException; +use LogicException; use Symfony\Component\Serializer\Annotation\Groups; use Symfony\Component\Serializer\Annotation\SerializedName; use Symfony\Component\Serializer\Attribute\DiscriminatorMap; use Symfony\Component\Validator\Constraints as Assert; + use function in_array; -use InvalidArgumentException; -use LogicException; /** * Class Attachment. @@ -78,11 +79,16 @@ use LogicException; denormalizationContext: ['groups' => ['attachment:write', 'attachment:write:standalone', 'api:basic:write'], 'openapi_definition_name' => 'Write'], processor: HandleAttachmentsUploadsProcessor::class, )] -#[DocumentedAPIProperty(schemaName: 'Attachment-Read', property: 'media_url', type: 'string', nullable: true, - description: 'The URL to the file, where the attachment file can be downloaded. This can be an internal or external URL.', - example: '/media/part/2/bc547-6508afa5a79c8.pdf')] -#[DocumentedAPIProperty(schemaName: 'Attachment-Read', property: 'thumbnail_url', type: 'string', nullable: true, - description: 'The URL to a thumbnail version of this file. This only exists for internal picture attachments.')] +//This property is added by the denormalizer in order to resolve the placeholder +#[DocumentedAPIProperty( + schemaName: 'Attachment-Read', property: 'internal_path', type: 'string', nullable: false, + description: 'The URL to the internally saved copy of the file, if one exists', + example: '/media/part/2/bc547-6508afa5a79c8.pdf' +)] +#[DocumentedAPIProperty( + schemaName: 'Attachment-Read', property: 'thumbnail_url', type: 'string', nullable: true, + description: 'The URL to a thumbnail version of this file. This only exists for internal picture attachments.' +)] #[ApiFilter(LikeFilter::class, properties: ["name"])] #[ApiFilter(EntityFilter::class, properties: ["attachment_type"])] #[ApiFilter(DateFilter::class, strategy: DateFilterInterface::EXCLUDE_NULL)] @@ -91,8 +97,8 @@ use LogicException; #[DiscriminatorMap(typeProperty: '_type', mapping: self::API_DISCRIMINATOR_MAP)] abstract class Attachment extends AbstractNamedDBElement { - private const ORM_DISCRIMINATOR_MAP = ['PartDB\Part' => PartAttachment::class, 'Part' => PartAttachment::class, - 'PartDB\Device' => ProjectAttachment::class, 'Device' => ProjectAttachment::class, 'AttachmentType' => AttachmentTypeAttachment::class, + private const ORM_DISCRIMINATOR_MAP = ['Part' => PartAttachment::class, 'Device' => ProjectAttachment::class, + 'AttachmentType' => AttachmentTypeAttachment::class, 'Category' => CategoryAttachment::class, 'Footprint' => FootprintAttachment::class, 'Manufacturer' => ManufacturerAttachment::class, 'Currency' => CurrencyAttachment::class, 'Group' => GroupAttachment::class, 'MeasurementUnit' => MeasurementUnitAttachment::class, 'Storelocation' => StorageLocationAttachment::class, 'Supplier' => SupplierAttachment::class, @@ -119,10 +125,6 @@ abstract class Attachment extends AbstractNamedDBElement */ final public const MODEL_EXTS = ['x3d']; - /** - * When the path begins with one of the placeholders. - */ - final public const INTERNAL_PLACEHOLDER = ['%BASE%', '%MEDIA%', '%SECURE%']; /** * @var array placeholders for attachments which using built in files @@ -152,10 +154,21 @@ abstract class Attachment extends AbstractNamedDBElement protected ?string $original_filename = null; /** - * @var string The path to the file relative to a placeholder path like %MEDIA% + * @var string|null If a copy of the file is stored internally, the path to the file relative to a placeholder + * path like %MEDIA% */ - #[ORM\Column(name: 'path', type: Types::STRING)] - protected string $path = ''; + #[ORM\Column(type: Types::STRING, nullable: true)] + protected ?string $internal_path = null; + + + /** + * @var string|null The path to the external source if the file is stored externally or was downloaded from an + * external source. Null if there is no external source. + */ + #[ORM\Column(type: Types::STRING, nullable: true)] + #[Groups(['attachment:read'])] + #[ApiProperty(example: 'http://example.com/image.jpg')] + protected ?string $external_path = null; /** * @var string the name of this element @@ -237,7 +250,7 @@ abstract class Attachment extends AbstractNamedDBElement /** * Check if this attachment is a picture (analyse the file's extension). - * If the link is external, it is assumed that this is true. + * If the link is only external and doesn't contain an extension, it is assumed that this is true. * * @return bool * true if the file extension is a picture extension * * otherwise false @@ -245,54 +258,67 @@ abstract class Attachment extends AbstractNamedDBElement #[Groups(['attachment:read'])] public function isPicture(): bool { - if ($this->isExternal()) { + if($this->hasInternal()){ + + $extension = pathinfo($this->getInternalPath(), PATHINFO_EXTENSION); + + return in_array(strtolower($extension), static::PICTURE_EXTS, true); + + } + if ($this->hasExternal()) { //Check if we can extract a file extension from the URL - $extension = pathinfo(parse_url($this->path, PHP_URL_PATH) ?? '', PATHINFO_EXTENSION); + $extension = pathinfo(parse_url($this->getExternalPath(), PHP_URL_PATH) ?? '', PATHINFO_EXTENSION); //If no extension is found or it is known picture extension, we assume that this is a picture extension return $extension === '' || in_array(strtolower($extension), static::PICTURE_EXTS, true); } - - $extension = pathinfo($this->getPath(), PATHINFO_EXTENSION); - - return in_array(strtolower($extension), static::PICTURE_EXTS, true); + //File doesn't have an internal, nor an external copy. This shouldn't happen, but it certainly isn't a picture... + return false; } /** * Check if this attachment is a 3D model and therefore can be directly shown to user. - * If the attachment is external, false is returned (3D Models must be internal). + * If no internal copy exists, false is returned (3D Models must be internal). */ #[Groups(['attachment:read'])] #[SerializedName('3d_model')] public function is3DModel(): bool { //We just assume that 3D Models are internally saved, otherwise we get problems loading them. - if ($this->isExternal()) { + if (!$this->hasInternal()) { return false; } - $extension = pathinfo($this->getPath(), PATHINFO_EXTENSION); + $extension = pathinfo($this->getInternalPath(), PATHINFO_EXTENSION); return in_array(strtolower($extension), static::MODEL_EXTS, true); } /** - * Checks if the attachment file is externally saved (the database saves an URL). + * Checks if this attachment has a path to an external file * - * @return bool true, if the file is saved externally + * @return bool true, if there is a path to an external file + * @phpstan-assert-if-true non-empty-string $this->external_path + * @phpstan-assert-if-true non-empty-string $this->getExternalPath()) */ #[Groups(['attachment:read'])] - public function isExternal(): bool + public function hasExternal(): bool { - //When path is empty, this attachment can not be external - if ($this->path === '') { - return false; - } + return $this->external_path !== null && $this->external_path !== ''; + } - //After the %PLACEHOLDER% comes a slash, so we can check if we have a placeholder via explode - $tmp = explode('/', $this->path); - - return !in_array($tmp[0], array_merge(static::INTERNAL_PLACEHOLDER, static::BUILTIN_PLACEHOLDER), true); + /** + * Checks if this attachment has a path to an internal file. + * Does not check if the file exists. + * + * @return bool true, if there is a path to an internal file + * @phpstan-assert-if-true non-empty-string $this->internal_path + * @phpstan-assert-if-true non-empty-string $this->getInternalPath()) + */ + #[Groups(['attachment:read'])] + public function hasInternal(): bool + { + return $this->internal_path !== null && $this->internal_path !== ''; } /** @@ -305,8 +331,12 @@ abstract class Attachment extends AbstractNamedDBElement #[SerializedName('private')] public function isSecure(): bool { + if ($this->internal_path === null) { + return false; + } + //After the %PLACEHOLDER% comes a slash, so we can check if we have a placeholder via explode - $tmp = explode('/', $this->path); + $tmp = explode('/', $this->internal_path); return '%SECURE%' === $tmp[0]; } @@ -320,7 +350,11 @@ abstract class Attachment extends AbstractNamedDBElement #[Groups(['attachment:read'])] public function isBuiltIn(): bool { - return static::checkIfBuiltin($this->path); + if ($this->internal_path === null) { + return false; + } + + return static::checkIfBuiltin($this->internal_path); } /******************************************************************************** @@ -332,13 +366,13 @@ abstract class Attachment extends AbstractNamedDBElement /** * Returns the extension of the file referenced via the attachment. * For a path like %BASE/path/foo.bar, bar will be returned. - * If this attachment is external null is returned. + * If this attachment is only external null is returned. * * @return string|null the file extension in lower case */ public function getExtension(): ?string { - if ($this->isExternal()) { + if (!$this->hasInternal()) { return null; } @@ -346,7 +380,7 @@ abstract class Attachment extends AbstractNamedDBElement return strtolower(pathinfo($this->original_filename, PATHINFO_EXTENSION)); } - return strtolower(pathinfo($this->getPath(), PATHINFO_EXTENSION)); + return strtolower(pathinfo($this->getInternalPath(), PATHINFO_EXTENSION)); } /** @@ -361,52 +395,54 @@ abstract class Attachment extends AbstractNamedDBElement } /** - * The URL to the external file, or the path to the built-in file. + * The URL to the external file, or the path to the built-in file, but not paths to uploaded files. * Returns null, if the file is not external (and not builtin). + * The output of this function is such, that no changes occur when it is fed back into setURL(). + * Required for the Attachment form field. */ - #[Groups(['attachment:read'])] - #[SerializedName('url')] public function getURL(): ?string { - if (!$this->isExternal() && !$this->isBuiltIn()) { - return null; + if($this->hasExternal()){ + return $this->getExternalPath(); } - - return $this->path; + if($this->isBuiltIn()){ + return $this->getInternalPath(); + } + return null; } /** * Returns the hostname where the external file is stored. - * Returns null, if the file is not external. + * Returns null, if there is no external path. */ public function getHost(): ?string { - if (!$this->isExternal()) { + if (!$this->hasExternal()) { return null; } - return parse_url((string) $this->getURL(), PHP_URL_HOST); + return parse_url($this->getExternalPath(), PHP_URL_HOST); } - /** - * Get the filepath, relative to %BASE%. - * - * @return string A string like %BASE/path/foo.bar - */ - public function getPath(): string + public function getInternalPath(): ?string { - return $this->path; + return $this->internal_path; + } + + public function getExternalPath(): ?string + { + return $this->external_path; } /** * Returns the filename of the attachment. * For a path like %BASE/path/foo.bar, foo.bar will be returned. * - * If the path is a URL (can be checked via isExternal()), null will be returned. + * If there is no internal copy of the file, null will be returned. */ public function getFilename(): ?string { - if ($this->isExternal()) { + if (!$this->hasInternal()) { return null; } @@ -415,7 +451,7 @@ abstract class Attachment extends AbstractNamedDBElement return $this->original_filename; } - return pathinfo($this->getPath(), PATHINFO_BASENAME); + return pathinfo($this->getInternalPath(), PATHINFO_BASENAME); } /** @@ -488,15 +524,12 @@ abstract class Attachment extends AbstractNamedDBElement } /** - * Sets the filepath (with relative placeholder) for this attachment. - * - * @param string $path the new filepath of the attachment - * - * @return Attachment + * Sets the path to a file hosted internally. If you set this path to a file that was not downloaded from the + * external source in external_path, make sure to reset external_path. */ - public function setPath(string $path): self + public function setInternalPath(?string $internal_path): self { - $this->path = $path; + $this->internal_path = $internal_path; return $this; } @@ -512,34 +545,60 @@ abstract class Attachment extends AbstractNamedDBElement } /** - * Sets the url associated with this attachment. - * If the url is empty nothing is changed, to not override the file path. - * - * @return Attachment + * Sets up the paths using a user provided string which might contain an external path or a builtin path. Allows + * resetting the external path if an internal path exists. Resets any other paths if a (nonempty) new path is set. */ #[Groups(['attachment:write'])] #[SerializedName('url')] + #[ApiProperty(description: 'Set the path of the attachment here. + Provide either an external URL, a path to a builtin file (like %FOOTPRINTS%/Active/ICs/IC_DFS.png) or an empty + string if the attachment has an internal file associated and you\'d like to reset the external source. + If you set a new (nonempty) file path any associated internal file will be removed!')] public function setURL(?string $url): self { - //Do nothing if the URL is empty - if ($url === null || $url === '') { + //Don't allow the user to set an empty external path if the internal path is empty already + if (($url === null || $url === "") && !$this->hasInternal()) { return $this; } - $url = trim($url); - //Escape spaces in URL - $url = str_replace(' ', '%20', $url); - - //Only set if the URL is not empty - if ($url !== null && $url !== '') { - if (str_contains($url, '%BASE%') || str_contains($url, '%MEDIA%')) { - throw new InvalidArgumentException('You can not reference internal files via the url field! But nice try!'); - } - - $this->path = $url; - //Reset internal filename - $this->original_filename = null; + //The URL field can also contain the special builtin internal paths, so we need to distinguish here + if ($this::checkIfBuiltin($url)) { + $this->setInternalPath($url); + //make sure the external path isn't still pointing to something unrelated + $this->setExternalPath(null); + } else { + $this->setExternalPath($url); } + return $this; + } + + + /** + * Sets the path to a file hosted on an external server. Setting the external path to a (nonempty) value different + * from the the old one _clears_ the internal path, so that the external path reflects where any associated internal + * file came from. + */ + public function setExternalPath(?string $external_path): self + { + //If we only clear the external path, don't reset the internal path, since that could be confusing + if($external_path === null || $external_path === '') { + $this->external_path = null; + return $this; + } + + $external_path = trim($external_path); + //Escape spaces in URL + $external_path = str_replace(' ', '%20', $external_path); + + if($this->external_path === $external_path) { + //Nothing changed, nothing to do + return $this; + } + + $this->external_path = $external_path; + $this->internal_path = null; + //Reset internal filename + $this->original_filename = null; return $this; } @@ -551,12 +610,17 @@ abstract class Attachment extends AbstractNamedDBElement /** * Checks if the given path is a path to a builtin resource. * - * @param string $path The path that should be checked + * @param string|null $path The path that should be checked * * @return bool true if the path is pointing to a builtin resource */ - public static function checkIfBuiltin(string $path): bool + public static function checkIfBuiltin(?string $path): bool { + //An empty path can't be a builtin + if ($path === null) { + return false; + } + //After the %PLACEHOLDER% comes a slash, so we can check if we have a placeholder via explode $tmp = explode('/', $path); //Builtins must have a %PLACEHOLDER% construction diff --git a/src/Entity/Attachments/AttachmentContainingDBElement.php b/src/Entity/Attachments/AttachmentContainingDBElement.php index 3c863e85..a78cb1f4 100644 --- a/src/Entity/Attachments/AttachmentContainingDBElement.php +++ b/src/Entity/Attachments/AttachmentContainingDBElement.php @@ -33,7 +33,7 @@ use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation\Groups; /** - * @template-covariant AT of Attachment + * @template AT of Attachment */ #[ORM\MappedSuperclass(repositoryClass: AttachmentContainingDBElementRepository::class)] abstract class AttachmentContainingDBElement extends AbstractNamedDBElement implements HasMasterAttachmentInterface, HasAttachmentsInterface diff --git a/src/Entity/Base/AbstractCompany.php b/src/Entity/Base/AbstractCompany.php index e3d4fd61..947d1339 100644 --- a/src/Entity/Base/AbstractCompany.php +++ b/src/Entity/Base/AbstractCompany.php @@ -33,8 +33,8 @@ use Symfony\Component\Validator\Constraints as Assert; /** * This abstract class is used for companies like suppliers or manufacturers. * - * @template-covariant AT of Attachment - * @template-covariant PT of AbstractParameter + * @template AT of Attachment + * @template PT of AbstractParameter * @extends AbstractPartsContainingDBElement */ #[ORM\MappedSuperclass] @@ -162,7 +162,7 @@ abstract class AbstractCompany extends AbstractPartsContainingDBElement * * @return string the link to the article */ - public function getAutoProductUrl(string $partnr = null): string + public function getAutoProductUrl(?string $partnr = null): string { if (is_string($partnr)) { return str_replace('%PARTNUMBER%', $partnr, $this->auto_product_url); diff --git a/src/Entity/Base/AbstractPartsContainingDBElement.php b/src/Entity/Base/AbstractPartsContainingDBElement.php index e2209987..70d88fa9 100644 --- a/src/Entity/Base/AbstractPartsContainingDBElement.php +++ b/src/Entity/Base/AbstractPartsContainingDBElement.php @@ -31,8 +31,8 @@ use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation\Groups; /** - * @template-covariant AT of Attachment - * @template-covariant PT of AbstractParameter + * @template AT of Attachment + * @template PT of AbstractParameter * @extends AbstractStructuralDBElement */ #[ORM\MappedSuperclass(repositoryClass: AbstractPartsContainingRepository::class)] diff --git a/src/Entity/Base/AbstractStructuralDBElement.php b/src/Entity/Base/AbstractStructuralDBElement.php index 09ec94a6..660710db 100644 --- a/src/Entity/Base/AbstractStructuralDBElement.php +++ b/src/Entity/Base/AbstractStructuralDBElement.php @@ -53,8 +53,8 @@ use Symfony\Component\Serializer\Annotation\Groups; * * @see \App\Tests\Entity\Base\AbstractStructuralDBElementTest * - * @template-covariant AT of Attachment - * @template-covariant PT of AbstractParameter + * @template AT of Attachment + * @template PT of AbstractParameter * @template-use ParametersTrait * @extends AttachmentContainingDBElement * @uses ParametersTrait @@ -318,6 +318,7 @@ abstract class AbstractStructuralDBElement extends AttachmentContainingDBElement return new ArrayCollection(); } + //@phpstan-ignore-next-line return $this->children ?? new ArrayCollection(); } diff --git a/src/Entity/LabelSystem/LabelSupportedElement.php b/src/Entity/LabelSystem/LabelSupportedElement.php index 2f9afa85..7649e586 100644 --- a/src/Entity/LabelSystem/LabelSupportedElement.php +++ b/src/Entity/LabelSystem/LabelSupportedElement.php @@ -22,6 +22,8 @@ declare(strict_types=1); */ namespace App\Entity\LabelSystem; +use App\Entity\Base\AbstractDBElement; +use App\Entity\Base\AbstractNamedDBElement; use App\Entity\Parts\Part; use App\Entity\Parts\PartLot; use App\Entity\Parts\StorageLocation; @@ -34,7 +36,7 @@ enum LabelSupportedElement: string /** * Returns the entity class for the given element type - * @return string + * @return class-string */ public function getEntityClass(): string { diff --git a/src/Entity/LogSystem/SecurityEventLogEntry.php b/src/Entity/LogSystem/SecurityEventLogEntry.php index ffcfd6a5..12e8e65e 100644 --- a/src/Entity/LogSystem/SecurityEventLogEntry.php +++ b/src/Entity/LogSystem/SecurityEventLogEntry.php @@ -44,9 +44,9 @@ namespace App\Entity\LogSystem; use App\Entity\Base\AbstractDBElement; use App\Entity\UserSystem\User; use App\Events\SecurityEvents; +use App\Helpers\IPAnonymizer; use Doctrine\ORM\Mapping as ORM; use InvalidArgumentException; -use Symfony\Component\HttpFoundation\IpUtils; /** * This log entry is created when something security related to a user happens. @@ -127,14 +127,14 @@ class SecurityEventLogEntry extends AbstractLogEntry * Sets the IP address used to log in the user. * * @param string $ip the IP address used to log in the user - * @param bool $anonymize Anonymize the IP address (remove last block) to be GPDR compliant + * @param bool $anonymize Anonymize the IP address (remove last block) to be GDPR compliant * * @return $this */ public function setIPAddress(string $ip, bool $anonymize = true): self { if ($anonymize) { - $ip = IpUtils::anonymize($ip); + $ip = IPAnonymizer::anonymize($ip); } $this->extra['i'] = $ip; diff --git a/src/Entity/LogSystem/UserLoginLogEntry.php b/src/Entity/LogSystem/UserLoginLogEntry.php index c9e6bc21..0719a740 100644 --- a/src/Entity/LogSystem/UserLoginLogEntry.php +++ b/src/Entity/LogSystem/UserLoginLogEntry.php @@ -22,8 +22,9 @@ declare(strict_types=1); namespace App\Entity\LogSystem; +use App\Helpers\IPAnonymizer; use Doctrine\ORM\Mapping as ORM; -use Symfony\Component\HttpFoundation\IpUtils; + /** * This log entry is created when a user logs in. @@ -52,14 +53,14 @@ class UserLoginLogEntry extends AbstractLogEntry * Sets the IP address used to log in the user. * * @param string $ip the IP address used to log in the user - * @param bool $anonymize Anonymize the IP address (remove last block) to be GPDR compliant + * @param bool $anonymize Anonymize the IP address (remove last block) to be GDPR compliant * * @return $this */ public function setIPAddress(string $ip, bool $anonymize = true): self { if ($anonymize) { - $ip = IpUtils::anonymize($ip); + $ip = IPAnonymizer::anonymize($ip); } $this->extra['i'] = $ip; diff --git a/src/Entity/LogSystem/UserLogoutLogEntry.php b/src/Entity/LogSystem/UserLogoutLogEntry.php index ba52de87..f9f9a3dc 100644 --- a/src/Entity/LogSystem/UserLogoutLogEntry.php +++ b/src/Entity/LogSystem/UserLogoutLogEntry.php @@ -22,8 +22,8 @@ declare(strict_types=1); namespace App\Entity\LogSystem; +use App\Helpers\IPAnonymizer; use Doctrine\ORM\Mapping as ORM; -use Symfony\Component\HttpFoundation\IpUtils; #[ORM\Entity] class UserLogoutLogEntry extends AbstractLogEntry @@ -49,14 +49,14 @@ class UserLogoutLogEntry extends AbstractLogEntry * Sets the IP address used to log in the user. * * @param string $ip the IP address used to log in the user - * @param bool $anonymize Anonymize the IP address (remove last block) to be GPDR compliant + * @param bool $anonymize Anonymize the IP address (remove last block) to be GDPR compliant * * @return $this */ public function setIPAddress(string $ip, bool $anonymize = true): self { if ($anonymize) { - $ip = IpUtils::anonymize($ip); + $ip = IPAnonymizer::anonymize($ip); } $this->extra['i'] = $ip; diff --git a/src/Entity/OAuthToken.php b/src/Entity/OAuthToken.php index 0073aeed..bc692369 100644 --- a/src/Entity/OAuthToken.php +++ b/src/Entity/OAuthToken.php @@ -54,7 +54,7 @@ class OAuthToken extends AbstractNamedDBElement implements AccessTokenInterface */ private const DEFAULT_EXPIRATION_TIME = 3600; - public function __construct(string $name, ?string $refresh_token, ?string $token = null, \DateTimeImmutable $expires_at = null) + public function __construct(string $name, ?string $refresh_token, ?string $token = null, ?\DateTimeImmutable $expires_at = null) { //If token is given, you also have to give the expires_at date if ($token !== null && $expires_at === null) { diff --git a/src/Entity/Parameters/AbstractParameter.php b/src/Entity/Parameters/AbstractParameter.php index c42682f9..edcedc3e 100644 --- a/src/Entity/Parameters/AbstractParameter.php +++ b/src/Entity/Parameters/AbstractParameter.php @@ -208,7 +208,7 @@ abstract class AbstractParameter extends AbstractNamedDBElement implements Uniqu */ #[Groups(['parameter:read', 'full'])] #[SerializedName('formatted')] - public function getFormattedValue(): string + public function getFormattedValue(bool $latex_formatted = false): string { //If we just only have text value, return early if (null === $this->value_typical && null === $this->value_min && null === $this->value_max) { @@ -218,7 +218,7 @@ abstract class AbstractParameter extends AbstractNamedDBElement implements Uniqu $str = ''; $bracket_opened = false; if ($this->value_typical) { - $str .= $this->getValueTypicalWithUnit(); + $str .= $this->getValueTypicalWithUnit($latex_formatted); if ($this->value_min || $this->value_max) { $bracket_opened = true; $str .= ' ('; @@ -226,11 +226,11 @@ abstract class AbstractParameter extends AbstractNamedDBElement implements Uniqu } if ($this->value_max && $this->value_min) { - $str .= $this->getValueMinWithUnit().' ... '.$this->getValueMaxWithUnit(); + $str .= $this->getValueMinWithUnit($latex_formatted).' ... '.$this->getValueMaxWithUnit($latex_formatted); } elseif ($this->value_max) { - $str .= 'max. '.$this->getValueMaxWithUnit(); + $str .= 'max. '.$this->getValueMaxWithUnit($latex_formatted); } elseif ($this->value_min) { - $str .= 'min. '.$this->getValueMinWithUnit(); + $str .= 'min. '.$this->getValueMinWithUnit($latex_formatted); } //Add closing bracket @@ -344,25 +344,25 @@ abstract class AbstractParameter extends AbstractNamedDBElement implements Uniqu /** * Return a formatted version with the minimum value with the unit of this parameter. */ - public function getValueTypicalWithUnit(): string + public function getValueTypicalWithUnit(bool $with_latex = false): string { - return $this->formatWithUnit($this->value_typical); + return $this->formatWithUnit($this->value_typical, with_latex: $with_latex); } /** * Return a formatted version with the maximum value with the unit of this parameter. */ - public function getValueMaxWithUnit(): string + public function getValueMaxWithUnit(bool $with_latex = false): string { - return $this->formatWithUnit($this->value_max); + return $this->formatWithUnit($this->value_max, with_latex: $with_latex); } /** * Return a formatted version with the typical value with the unit of this parameter. */ - public function getValueMinWithUnit(): string + public function getValueMinWithUnit(bool $with_latex = false): string { - return $this->formatWithUnit($this->value_min); + return $this->formatWithUnit($this->value_min, with_latex: $with_latex); } /** @@ -441,11 +441,18 @@ abstract class AbstractParameter extends AbstractNamedDBElement implements Uniqu /** * Return a string representation and (if possible) with its unit. */ - protected function formatWithUnit(float $value, string $format = '%g'): string + protected function formatWithUnit(float $value, string $format = '%g', bool $with_latex = false): string { $str = sprintf($format, $value); if ($this->unit !== '') { - return $str.' '.$this->unit; + + if (!$with_latex) { + $unit = $this->unit; + } else { + $unit = '$\mathrm{'.$this->unit.'}$'; + } + + return $str.' '.$unit; } return $str; diff --git a/src/Entity/Parts/PartLot.php b/src/Entity/Parts/PartLot.php index 70475efd..d893e6de 100644 --- a/src/Entity/Parts/PartLot.php +++ b/src/Entity/Parts/PartLot.php @@ -68,7 +68,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; #[ORM\Index(columns: ['needs_refill'], name: 'part_lots_idx_needs_refill')] #[ORM\Index(columns: ['vendor_barcode'], name: 'part_lots_idx_barcode')] #[ValidPartLot] -#[UniqueEntity(['vendor_barcode'], message: 'validator.part_lot.vendor_barcode_must_be_unique')] +#[UniqueEntity(['user_barcode'], message: 'validator.part_lot.vendor_barcode_must_be_unique')] #[ApiResource( operations: [ new Get(security: 'is_granted("read", object)'), @@ -166,10 +166,10 @@ class PartLot extends AbstractDBElement implements TimeStampableInterface, Named /** * @var string|null The content of the barcode of this part lot (e.g. a barcode on the package put by the vendor) */ - #[ORM\Column(type: Types::STRING, nullable: true)] + #[ORM\Column(name: "vendor_barcode", type: Types::STRING, nullable: true)] #[Groups(['part_lot:read', 'part_lot:write'])] #[Length(max: 255)] - protected ?string $vendor_barcode = null; + protected ?string $user_barcode = null; public function __clone() { @@ -185,7 +185,6 @@ class PartLot extends AbstractDBElement implements TimeStampableInterface, Named * * @return bool|null True, if the part lot is expired. Returns null, if no expiration date was set. * - * @throws Exception If an error with the DateTime occurs */ public function isExpired(): ?bool { @@ -376,19 +375,19 @@ class PartLot extends AbstractDBElement implements TimeStampableInterface, Named * null if no barcode is set. * @return string|null */ - public function getVendorBarcode(): ?string + public function getUserBarcode(): ?string { - return $this->vendor_barcode; + return $this->user_barcode; } /** * Set the content of the barcode of this part lot (e.g. a barcode on the package put by the vendor). - * @param string|null $vendor_barcode + * @param string|null $user_barcode * @return $this */ - public function setVendorBarcode(?string $vendor_barcode): PartLot + public function setUserBarcode(?string $user_barcode): PartLot { - $this->vendor_barcode = $vendor_barcode; + $this->user_barcode = $user_barcode; return $this; } diff --git a/src/Entity/Parts/Supplier.php b/src/Entity/Parts/Supplier.php index 6b01a92c..2c004e9e 100644 --- a/src/Entity/Parts/Supplier.php +++ b/src/Entity/Parts/Supplier.php @@ -103,7 +103,7 @@ class Supplier extends AbstractCompany protected ?AbstractStructuralDBElement $parent = null; /** - * @var Collection|Orderdetail[] + * @var Collection */ #[ORM\OneToMany(mappedBy: 'supplier', targetEntity: Orderdetail::class)] protected Collection $orderdetails; diff --git a/src/Entity/ProjectSystem/Project.php b/src/Entity/ProjectSystem/Project.php index 1d1ed413..a103d694 100644 --- a/src/Entity/ProjectSystem/Project.php +++ b/src/Entity/ProjectSystem/Project.php @@ -333,7 +333,6 @@ class Project extends AbstractStructuralDBElement { //If this project has subprojects, and these have builds part, they must be included in the BOM foreach ($this->getChildren() as $child) { - /** @var $child Project */ if (!$child->getBuildPart() instanceof Part) { continue; } diff --git a/src/Entity/UserSystem/User.php b/src/Entity/UserSystem/User.php index b5dd6064..b39bea4f 100644 --- a/src/Entity/UserSystem/User.php +++ b/src/Entity/UserSystem/User.php @@ -256,7 +256,7 @@ class User extends AttachmentContainingDBElement implements UserInterface, HasPe protected ?string $password = null; #[Assert\NotBlank] - #[Assert\Regex('/^[\w\.\+\-\$]+$/', message: 'user.invalid_username')] + #[Assert\Regex('/^[\w\.\+\-\$]+[\w\.\+\-\$\@]*$/', message: 'user.invalid_username')] #[Groups(['user:read'])] protected string $name = ''; @@ -893,8 +893,6 @@ class User extends AttachmentContainingDBElement implements UserInterface, HasPe * @param string[] $codes An array containing the backup codes * * @return $this - * - * @throws Exception If an error with the datetime occurs */ public function setBackupCodes(array $codes): self { diff --git a/src/EntityListeners/AttachmentDeleteListener.php b/src/EntityListeners/AttachmentDeleteListener.php index e9df5972..1f39b2d0 100644 --- a/src/EntityListeners/AttachmentDeleteListener.php +++ b/src/EntityListeners/AttachmentDeleteListener.php @@ -52,8 +52,8 @@ class AttachmentDeleteListener #[PreUpdate] public function preUpdateHandler(Attachment $attachment, PreUpdateEventArgs $event): void { - if ($event->hasChangedField('path')) { - $old_path = $event->getOldValue('path'); + if ($event->hasChangedField('internal_path')) { + $old_path = $event->getOldValue('internal_path'); //Dont delete file if the attachment uses a builtin ressource: if (Attachment::checkIfBuiltin($old_path)) { diff --git a/src/EventSubscriber/WebpackAutoPathSubscriber.php b/src/EventSubscriber/WebpackAutoPathSubscriber.php deleted file mode 100644 index f040a646..00000000 --- a/src/EventSubscriber/WebpackAutoPathSubscriber.php +++ /dev/null @@ -1,57 +0,0 @@ -. - */ - -declare(strict_types=1); - - -namespace App\EventSubscriber; - -use Symfony\Component\EventDispatcher\EventSubscriberInterface; -use Symfony\WebpackEncoreBundle\Event\RenderAssetTagEvent; - -/** - * This class fixes the wrong pathes generated by webpack using the auto publicPath mode. - * Basically it replaces the wrong /auto/ part of the path with the correct /build/ in all encore entrypoints. - */ -class WebpackAutoPathSubscriber implements EventSubscriberInterface -{ - public static function getSubscribedEvents(): array - { - return [ - RenderAssetTagEvent::class => 'onRenderAssetTag' - ]; - } - - public function onRenderAssetTag(RenderAssetTagEvent $event): void - { - if ($event->isScriptTag()) { - $event->setAttribute('src', $this->resolveAuto($event->getUrl())); - } - if ($event->isLinkTag()) { - $event->setAttribute('href', $this->resolveAuto($event->getUrl())); - } - } - - private function resolveAuto(string $path): string - { - //Replace the first occurence of /auto/ with /build/ to get the correct path - return preg_replace('/\/auto\//', '/build/', $path, 1); - } -} \ No newline at end of file diff --git a/src/Form/Filters/AttachmentFilterType.php b/src/Form/Filters/AttachmentFilterType.php index e6746feb..ff80bd38 100644 --- a/src/Form/Filters/AttachmentFilterType.php +++ b/src/Form/Filters/AttachmentFilterType.php @@ -100,6 +100,15 @@ class AttachmentFilterType extends AbstractType 'label' => 'attachment.edit.show_in_table' ]); + $builder->add('originalFileName', TextConstraintType::class, [ + 'label' => 'attachment.file_name' + ]); + + $builder->add('externalLink', TextConstraintType::class, [ + 'label' => 'attachment.table.external_link' + ]); + + $builder->add('lastModified', DateTimeConstraintType::class, [ 'label' => 'lastModified' ]); diff --git a/src/Form/LabelSystem/LabelDialogType.php b/src/Form/LabelSystem/LabelDialogType.php index 33c79797..f2710b19 100644 --- a/src/Form/LabelSystem/LabelDialogType.php +++ b/src/Form/LabelSystem/LabelDialogType.php @@ -71,6 +71,22 @@ class LabelDialogType extends AbstractType 'label' => false, 'disabled' => !$this->security->isGranted('@labels.edit_options') || $options['disable_options'], ]); + + $builder->add('save_profile_name', TextType::class, [ + 'required' => false, + 'attr' =>[ + 'placeholder' => 'label_generator.save_profile_name', + ] + ]); + + $builder->add('save_profile', SubmitType::class, [ + 'label' => 'label_generator.save_profile', + 'disabled' => !$this->security->isGranted('@labels.create_profiles'), + 'attr' => [ + 'class' => 'btn btn-outline-success' + ] + ]); + $builder->add('update', SubmitType::class, [ 'label' => 'label_generator.update', ]); diff --git a/src/Form/LabelSystem/ScanDialogType.php b/src/Form/LabelSystem/ScanDialogType.php index 5230dd5a..13ff8e6f 100644 --- a/src/Form/LabelSystem/ScanDialogType.php +++ b/src/Form/LabelSystem/ScanDialogType.php @@ -41,8 +41,9 @@ declare(strict_types=1); namespace App\Form\LabelSystem; -use App\Services\LabelSystem\Barcodes\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\BarcodeSourceType; use Symfony\Component\Form\AbstractType; +use Symfony\Component\Form\Extension\Core\Type\CheckboxType; use Symfony\Component\Form\Extension\Core\Type\EnumType; use Symfony\Component\Form\Extension\Core\Type\SubmitType; use Symfony\Component\Form\Extension\Core\Type\TextType; @@ -55,6 +56,8 @@ class ScanDialogType extends AbstractType { $builder->add('input', TextType::class, [ 'label' => 'scan_dialog.input', + //Do not trim the input, otherwise this damages Format06 barcodes which end with non-printable characters + 'trim' => false, 'attr' => [ 'autofocus' => true, 'id' => 'scan_dialog_input', @@ -71,9 +74,14 @@ class ScanDialogType extends AbstractType null => 'scan_dialog.mode.auto', BarcodeSourceType::INTERNAL => 'scan_dialog.mode.internal', BarcodeSourceType::IPN => 'scan_dialog.mode.ipn', - BarcodeSourceType::VENDOR => 'scan_dialog.mode.vendor', + BarcodeSourceType::USER_DEFINED => 'scan_dialog.mode.user', + BarcodeSourceType::EIGP114 => 'scan_dialog.mode.eigp' }, + ]); + $builder->add('info_mode', CheckboxType::class, [ + 'label' => 'scan_dialog.info_mode', + 'required' => false, ]); $builder->add('submit', SubmitType::class, [ diff --git a/src/Form/Part/PartBaseType.php b/src/Form/Part/PartBaseType.php index 4a71f03a..b1d2ebea 100644 --- a/src/Form/Part/PartBaseType.php +++ b/src/Form/Part/PartBaseType.php @@ -101,6 +101,8 @@ class PartBaseType extends AbstractType 'dto_value' => $dto?->category, 'label' => 'part.edit.category', 'disable_not_selectable' => true, + //Do not require category for new parts, so that the user must select the category by hand and cannot forget it (the requirement is handled by the constraint in the entity) + 'required' => !$new_part, ]) ->add('footprint', StructuralEntityType::class, [ 'class' => Footprint::class, diff --git a/src/Form/Part/PartLotType.php b/src/Form/Part/PartLotType.php index da061c7f..7d545340 100644 --- a/src/Form/Part/PartLotType.php +++ b/src/Form/Part/PartLotType.php @@ -103,10 +103,12 @@ class PartLotType extends AbstractType 'help' => 'part_lot.owner.help', ]); - $builder->add('vendor_barcode', TextType::class, [ - 'label' => 'part_lot.edit.vendor_barcode', + $builder->add('user_barcode', TextType::class, [ + 'label' => 'part_lot.edit.user_barcode', 'help' => 'part_lot.edit.vendor_barcode.help', 'required' => false, + //Do not remove whitespace chars on the beginning and end of the string + 'trim' => false, ]); } diff --git a/src/Form/Type/ExponentialNumberType.php b/src/Form/Type/ExponentialNumberType.php index b76196d9..f566afbb 100644 --- a/src/Form/Type/ExponentialNumberType.php +++ b/src/Form/Type/ExponentialNumberType.php @@ -39,7 +39,7 @@ class ExponentialNumberType extends AbstractType return NumberType::class; } - public function configureOptions(OptionsResolver $resolver) + public function configureOptions(OptionsResolver $resolver): void { $resolver->setDefaults([ //We want to allow the full precision of the number, so disable rounding @@ -47,7 +47,7 @@ class ExponentialNumberType extends AbstractType ]); } - public function buildForm(FormBuilderInterface $builder, array $options) + public function buildForm(FormBuilderInterface $builder, array $options): void { $builder->resetViewTransformers(); diff --git a/src/Form/Type/Helper/StructuralEntityChoiceHelper.php b/src/Form/Type/Helper/StructuralEntityChoiceHelper.php index e8e19ad6..1210d188 100644 --- a/src/Form/Type/Helper/StructuralEntityChoiceHelper.php +++ b/src/Form/Type/Helper/StructuralEntityChoiceHelper.php @@ -43,7 +43,7 @@ class StructuralEntityChoiceHelper /** * Generates the choice attributes for the given AbstractStructuralDBElement. - * @return array|string[] + * @return array */ public function generateChoiceAttr(AbstractNamedDBElement $choice, Options|array $options): array { diff --git a/src/Form/Type/Helper/StructuralEntityChoiceLoader.php b/src/Form/Type/Helper/StructuralEntityChoiceLoader.php index b79fad1b..e2e4e841 100644 --- a/src/Form/Type/Helper/StructuralEntityChoiceLoader.php +++ b/src/Form/Type/Helper/StructuralEntityChoiceLoader.php @@ -24,6 +24,7 @@ declare(strict_types=1); namespace App\Form\Type\Helper; use App\Entity\Base\AbstractNamedDBElement; +use App\Entity\Base\AbstractStructuralDBElement; use App\Repository\StructuralDBElementRepository; use App\Services\Trees\NodesListBuilder; use Doctrine\ORM\EntityManagerInterface; @@ -33,6 +34,9 @@ use Symfony\Component\Form\FormInterface; use Symfony\Component\OptionsResolver\Options; use Symfony\Contracts\Translation\TranslatorInterface; +/** + * @template T of AbstractStructuralDBElement + */ class StructuralEntityChoiceLoader extends AbstractChoiceLoader { private ?string $additional_element = null; @@ -90,10 +94,14 @@ class StructuralEntityChoiceLoader extends AbstractChoiceLoader } } + + /** @var class-string $class */ $class = $this->options['class']; - /** @var StructuralDBElementRepository $repo */ + + /** @var StructuralDBElementRepository $repo */ $repo = $this->entityManager->getRepository($class); + $entities = $repo->getNewEntityFromPath($value, '->'); $results = []; diff --git a/src/Form/Type/TriStateCheckboxType.php b/src/Form/Type/TriStateCheckboxType.php index 7d1e1c7c..4523a839 100644 --- a/src/Form/Type/TriStateCheckboxType.php +++ b/src/Form/Type/TriStateCheckboxType.php @@ -99,7 +99,6 @@ final class TriStateCheckboxType extends AbstractType implements DataTransformer * * @return mixed The value in the transformed representation * - * @throws TransformationFailedException when the transformation fails */ public function transform(mixed $value) { @@ -142,8 +141,6 @@ final class TriStateCheckboxType extends AbstractType implements DataTransformer * @param mixed $value The value in the transformed representation * * @return mixed The value in the original representation - * - * @throws TransformationFailedException when the transformation fails */ public function reverseTransform(mixed $value) { diff --git a/src/Helpers/IPAnonymizer.php b/src/Helpers/IPAnonymizer.php new file mode 100644 index 00000000..9662852f --- /dev/null +++ b/src/Helpers/IPAnonymizer.php @@ -0,0 +1,49 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Helpers; + +use Symfony\Component\HttpFoundation\IpUtils; + +/** + * Utils to assist with IP anonymization. + * The IPUtils::anonymize has a certain edgecase with local-link addresses, which is handled here. + * See: https://github.com/Part-DB/Part-DB-server/issues/782 + */ +final class IPAnonymizer +{ + public static function anonymize(string $ip): string + { + /** + * If the IP contains a % symbol, then it is a local-link address with scoping according to RFC 4007 + * In that case, we only care about the part before the % symbol, as the following functions, can only work with + * the IP address itself. As the scope can leak information (containing interface name), we do not want to + * include it in our anonymized IP data. + */ + if (str_contains($ip, '%')) { + $ip = substr($ip, 0, strpos($ip, '%')); + } + + return IpUtils::anonymize($ip); + } +} \ No newline at end of file diff --git a/src/Migration/WithPermPresetsTrait.php b/src/Migration/WithPermPresetsTrait.php index 5182f3b6..44bc4510 100644 --- a/src/Migration/WithPermPresetsTrait.php +++ b/src/Migration/WithPermPresetsTrait.php @@ -62,7 +62,7 @@ trait WithPermPresetsTrait return json_encode($user->getPermissions()); } - public function setContainer(ContainerInterface $container = null): void + public function setContainer(?ContainerInterface $container = null): void { if ($container !== null) { $this->container = $container; diff --git a/src/Repository/AttachmentRepository.php b/src/Repository/AttachmentRepository.php index 240ab058..4fc0abc9 100644 --- a/src/Repository/AttachmentRepository.php +++ b/src/Repository/AttachmentRepository.php @@ -58,15 +58,15 @@ class AttachmentRepository extends DBElementRepository { $qb = $this->createQueryBuilder('attachment'); $qb->select('COUNT(attachment)') - ->where('attachment.path LIKE :like'); - $qb->setParameter('like', '\\%SECURE\\%%'); + ->where('attachment.internal_path LIKE :like ESCAPE \'#\''); + $qb->setParameter('like', '#%SECURE#%%'); $query = $qb->getQuery(); return (int) $query->getSingleScalarResult(); } /** - * Gets the count of all external attachments (attachments only containing a URL). + * Gets the count of all external attachments (attachments containing only an external path). * * @throws NoResultException * @throws NonUniqueResultException @@ -75,17 +75,16 @@ class AttachmentRepository extends DBElementRepository { $qb = $this->createQueryBuilder('attachment'); $qb->select('COUNT(attachment)') - ->where('attachment.path LIKE :http') - ->orWhere('attachment.path LIKE :https'); - $qb->setParameter('http', 'http://%'); - $qb->setParameter('https', 'https://%'); + ->where('attachment.external_path IS NOT NULL') + ->andWhere('attachment.internal_path IS NULL'); + $query = $qb->getQuery(); return (int) $query->getSingleScalarResult(); } /** - * Gets the count of all attachments where a user uploaded a file. + * Gets the count of all attachments where a user uploaded a file or a file was downloaded from an external source. * * @throws NoResultException * @throws NonUniqueResultException @@ -94,12 +93,12 @@ class AttachmentRepository extends DBElementRepository { $qb = $this->createQueryBuilder('attachment'); $qb->select('COUNT(attachment)') - ->where('attachment.path LIKE :base') - ->orWhere('attachment.path LIKE :media') - ->orWhere('attachment.path LIKE :secure'); - $qb->setParameter('secure', '\\%SECURE\\%%'); - $qb->setParameter('base', '\\%BASE\\%%'); - $qb->setParameter('media', '\\%MEDIA\\%%'); + ->where('attachment.internal_path LIKE :base ESCAPE \'#\'') + ->orWhere('attachment.internal_path LIKE :media ESCAPE \'#\'') + ->orWhere('attachment.internal_path LIKE :secure ESCAPE \'#\''); + $qb->setParameter('secure', '#%SECURE#%%'); + $qb->setParameter('base', '#%BASE#%%'); + $qb->setParameter('media', '#%MEDIA#%%'); $query = $qb->getQuery(); return (int) $query->getSingleScalarResult(); diff --git a/src/Repository/LogEntryRepository.php b/src/Repository/LogEntryRepository.php index bf9909c5..6850d06b 100644 --- a/src/Repository/LogEntryRepository.php +++ b/src/Repository/LogEntryRepository.php @@ -160,7 +160,7 @@ class LogEntryRepository extends DBElementRepository * @param int|null $limit * @param int|null $offset */ - public function getLogsOrderedByTimestamp(string $order = 'DESC', int $limit = null, int $offset = null): array + public function getLogsOrderedByTimestamp(string $order = 'DESC', ?int $limit = null, ?int $offset = null): array { return $this->findBy([], ['timestamp' => $order], $limit, $offset); } diff --git a/src/Repository/ParameterRepository.php b/src/Repository/ParameterRepository.php index a837435e..6c6c867d 100644 --- a/src/Repository/ParameterRepository.php +++ b/src/Repository/ParameterRepository.php @@ -44,7 +44,7 @@ class ParameterRepository extends DBElementRepository ->select('parameter.name') ->addSelect('parameter.symbol') ->addSelect('parameter.unit') - ->where('parameter.name LIKE :name'); + ->where('ILIKE(parameter.name, :name) = TRUE'); if ($exact) { $qb->setParameter('name', $name); } else { diff --git a/src/Repository/PartRepository.php b/src/Repository/PartRepository.php index 84357b72..edccd74b 100644 --- a/src/Repository/PartRepository.php +++ b/src/Repository/PartRepository.php @@ -81,10 +81,10 @@ class PartRepository extends NamedDBElementRepository ->leftJoin('part.category', 'category') ->leftJoin('part.footprint', 'footprint') - ->where('part.name LIKE :query') - ->orWhere('part.description LIKE :query') - ->orWhere('category.name LIKE :query') - ->orWhere('footprint.name LIKE :query') + ->where('ILIKE(part.name, :query) = TRUE') + ->orWhere('ILIKE(part.description, :query) = TRUE') + ->orWhere('ILIKE(category.name, :query) = TRUE') + ->orWhere('ILIKE(footprint.name, :query) = TRUE') ; $qb->setParameter('query', '%'.$query.'%'); diff --git a/src/Repository/StructuralDBElementRepository.php b/src/Repository/StructuralDBElementRepository.php index 47c85db3..781c7622 100644 --- a/src/Repository/StructuralDBElementRepository.php +++ b/src/Repository/StructuralDBElementRepository.php @@ -151,7 +151,7 @@ class StructuralDBElementRepository extends AttachmentContainingDBElementReposit } if (null === $entity) { $class = $this->getClassName(); - /** @var AbstractStructuralDBElement $entity */ + /** @var TEntityClass $entity */ $entity = new $class; $entity->setName($name); $entity->setParent($parent); @@ -265,7 +265,7 @@ class StructuralDBElementRepository extends AttachmentContainingDBElementReposit } $class = $this->getClassName(); - /** @var AbstractStructuralDBElement $entity */ + /** @var TEntityClass $entity */ $entity = new $class; $entity->setName($name); diff --git a/src/Security/ApiTokenAuthenticator.php b/src/Security/ApiTokenAuthenticator.php index 23ab68b9..a52b1f7c 100644 --- a/src/Security/ApiTokenAuthenticator.php +++ b/src/Security/ApiTokenAuthenticator.php @@ -131,7 +131,7 @@ class ApiTokenAuthenticator implements AuthenticatorInterface /** * @see https://datatracker.ietf.org/doc/html/rfc6750#section-3 */ - private function getAuthenticateHeader(string $errorDescription = null): string + private function getAuthenticateHeader(?string $errorDescription = null): string { $data = [ 'realm' => $this->realm, diff --git a/src/Security/AuthenticationEntryPoint.php b/src/Security/AuthenticationEntryPoint.php index c26e7667..41f624b2 100644 --- a/src/Security/AuthenticationEntryPoint.php +++ b/src/Security/AuthenticationEntryPoint.php @@ -47,7 +47,7 @@ class AuthenticationEntryPoint implements AuthenticationEntryPointInterface ) { } - public function start(Request $request, AuthenticationException $authException = null): Response + public function start(Request $request, ?AuthenticationException $authException = null): Response { //Check if the request is an API request if ($this->isJSONRequest($request)) { diff --git a/src/Security/EnsureSAMLUserForSAMLLoginChecker.php b/src/Security/EnsureSAMLUserForSAMLLoginChecker.php index 7b540984..0ebf893c 100644 --- a/src/Security/EnsureSAMLUserForSAMLLoginChecker.php +++ b/src/Security/EnsureSAMLUserForSAMLLoginChecker.php @@ -25,6 +25,7 @@ namespace App\Security; use App\Entity\UserSystem\User; use Nbgrp\OneloginSamlBundle\Security\Http\Authenticator\Token\SamlToken; use Symfony\Component\EventDispatcher\EventSubscriberInterface; +use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; use Symfony\Component\Security\Core\Event\AuthenticationSuccessEvent; use Symfony\Component\Security\Core\Exception\CustomUserMessageAccountStatusException; use Symfony\Contracts\Translation\TranslatorInterface; @@ -50,13 +51,20 @@ class EnsureSAMLUserForSAMLLoginChecker implements EventSubscriberInterface $token = $event->getAuthenticationToken(); $user = $token->getUser(); - //If we are using SAML, we need to check that the user is a SAML user. - if ($token instanceof SamlToken) { - if ($user instanceof User && !$user->isSamlUser()) { - throw new CustomUserMessageAccountStatusException($this->translator->trans('saml.error.cannot_login_local_user_per_saml', [], 'security')); - } - } elseif ($user instanceof User && $user->isSamlUser()) { - //Ensure that you can not login locally with a SAML user (even if this should not happen, as the password is not set) + //Do not check for anonymous users + if (!$user instanceof User) { + return; + } + + //Do not allow SAML users to login as local user + if ($token instanceof SamlToken && !$user->isSamlUser()) { + throw new CustomUserMessageAccountStatusException($this->translator->trans('saml.error.cannot_login_local_user_per_saml', + [], 'security')); + } + + //Do not allow local users to login as SAML user via local username and password + if ($token instanceof UsernamePasswordToken && $user->isSamlUser()) { + //Ensure that you can not login locally with a SAML user (even though this should not happen, as the password is not set) throw new CustomUserMessageAccountStatusException($this->translator->trans('saml.error.cannot_login_saml_user_locally', [], 'security')); } } diff --git a/src/Security/SamlUserFactory.php b/src/Security/SamlUserFactory.php index d5c68146..312be859 100644 --- a/src/Security/SamlUserFactory.php +++ b/src/Security/SamlUserFactory.php @@ -116,10 +116,10 @@ class SamlUserFactory implements SamlUserFactoryInterface, EventSubscriberInterf * Maps a list of SAML roles to a local group ID. * The first available mapping will be used (so the order of the $map is important, first match wins). * @param array $roles The list of SAML roles - * @param array $map|null The mapping from SAML roles. If null, the global mapping will be used. + * @param array|null $map The mapping from SAML roles. If null, the global mapping will be used. * @return int|null The ID of the local group or null if no mapping was found. */ - public function mapSAMLRolesToLocalGroupID(array $roles, array $map = null): ?int + public function mapSAMLRolesToLocalGroupID(array $roles, ?array $map = null): ?int { $map ??= $this->saml_role_mapping; diff --git a/src/Security/UserChecker.php b/src/Security/UserChecker.php index fd53a295..16afb37e 100644 --- a/src/Security/UserChecker.php +++ b/src/Security/UserChecker.php @@ -40,12 +40,10 @@ final class UserChecker implements UserCheckerInterface /** * Checks the user account before authentication. - * - * @throws AccountStatusException */ public function checkPreAuth(UserInterface $user): void { - // TODO: Implement checkPreAuth() method. + //We don't need to check the user before authentication, just implemented to fulfill the interface } /** diff --git a/src/Serializer/AttachmentNormalizer.php b/src/Serializer/AttachmentNormalizer.php index bb167fc6..bd791d04 100644 --- a/src/Serializer/AttachmentNormalizer.php +++ b/src/Serializer/AttachmentNormalizer.php @@ -42,7 +42,7 @@ class AttachmentNormalizer implements NormalizerInterface, NormalizerAwareInterf { } - public function normalize(mixed $object, string $format = null, array $context = []): array|null + public function normalize(mixed $object, ?string $format = null, array $context = []): array|null { if (!$object instanceof Attachment) { throw new \InvalidArgumentException('This normalizer only supports Attachment objects!'); @@ -52,15 +52,19 @@ class AttachmentNormalizer implements NormalizerInterface, NormalizerAwareInterf $context[self::ALREADY_CALLED] = true; $data = $this->normalizer->normalize($object, $format, $context); + $data['internal_path'] = $this->attachmentURLGenerator->getInternalViewURL($object); - $data['media_url'] = $this->attachmentURLGenerator->getViewURL($object); //Add thumbnail url if the attachment is a picture $data['thumbnail_url'] = $object->isPicture() ? $this->attachmentURLGenerator->getThumbnailURL($object) : null; + //For backwards compatibility reasons + //Deprecated: Use internal_path and external_path instead + $data['media_url'] = $data['internal_path'] ?? $object->getExternalPath(); + return $data; } - public function supportsNormalization(mixed $data, string $format = null, array $context = []): bool + public function supportsNormalization(mixed $data, ?string $format = null, array $context = []): bool { // avoid recursion: only call once per object if (isset($context[self::ALREADY_CALLED])) { diff --git a/src/Serializer/BigNumberNormalizer.php b/src/Serializer/BigNumberNormalizer.php index 8ef06d67..10cedfa5 100644 --- a/src/Serializer/BigNumberNormalizer.php +++ b/src/Serializer/BigNumberNormalizer.php @@ -33,12 +33,12 @@ use Symfony\Component\Serializer\Normalizer\NormalizerInterface; class BigNumberNormalizer implements NormalizerInterface, DenormalizerInterface { - public function supportsNormalization($data, string $format = null, array $context = []): bool + public function supportsNormalization($data, ?string $format = null, array $context = []): bool { return $data instanceof BigNumber; } - public function normalize($object, string $format = null, array $context = []): string + public function normalize($object, ?string $format = null, array $context = []): string { if (!$object instanceof BigNumber) { throw new \InvalidArgumentException('This normalizer only supports BigNumber objects!'); @@ -58,7 +58,7 @@ class BigNumberNormalizer implements NormalizerInterface, DenormalizerInterface ]; } - public function denormalize(mixed $data, string $type, string $format = null, array $context = []): BigNumber|null + public function denormalize(mixed $data, string $type, ?string $format = null, array $context = []): BigNumber|null { if (!is_a($type, BigNumber::class, true)) { throw new \InvalidArgumentException('This normalizer only supports BigNumber objects!'); @@ -67,7 +67,7 @@ class BigNumberNormalizer implements NormalizerInterface, DenormalizerInterface return $type::of($data); } - public function supportsDenormalization(mixed $data, string $type, string $format = null, array $context = []): bool + public function supportsDenormalization(mixed $data, string $type, ?string $format = null, array $context = []): bool { //data must be a string or a number (int, float, etc.) and the type must be BigNumber or BigDecimal return (is_string($data) || is_numeric($data)) && (is_subclass_of($type, BigNumber::class)); diff --git a/src/Serializer/PartNormalizer.php b/src/Serializer/PartNormalizer.php index 650b0214..9050abfc 100644 --- a/src/Serializer/PartNormalizer.php +++ b/src/Serializer/PartNormalizer.php @@ -63,13 +63,13 @@ class PartNormalizer implements NormalizerInterface, DenormalizerInterface, Norm { } - public function supportsNormalization($data, string $format = null, array $context = []): bool + public function supportsNormalization($data, ?string $format = null, array $context = []): bool { //We only remove the type field for CSV export return !isset($context[self::ALREADY_CALLED]) && $format === 'csv' && $data instanceof Part ; } - public function normalize($object, string $format = null, array $context = []): array + public function normalize($object, ?string $format = null, array $context = []): array { if (!$object instanceof Part) { throw new \InvalidArgumentException('This normalizer only supports Part objects!'); @@ -94,7 +94,14 @@ class PartNormalizer implements NormalizerInterface, DenormalizerInterface, Norm public function supportsDenormalization($data, string $type, string $format = null, array $context = []): bool { - return !isset($context[self::ALREADY_CALLED]) && is_array($data) && is_a($type, Part::class, true); + //Only denormalize if we are doing a file import operation + if (!($context['partdb_import'] ?? false)) { + return false; + } + + //Only make the denormalizer available on import operations + return !isset($context[self::ALREADY_CALLED]) + && is_array($data) && is_a($type, Part::class, true); } private function normalizeKeys(array &$data): array @@ -110,7 +117,7 @@ class PartNormalizer implements NormalizerInterface, DenormalizerInterface, Norm return $data; } - public function denormalize($data, string $type, string $format = null, array $context = []): ?Part + public function denormalize($data, string $type, ?string $format = null, array $context = []): ?Part { $this->normalizeKeys($data); diff --git a/src/Serializer/StructuralElementDenormalizer.php b/src/Serializer/StructuralElementDenormalizer.php index 17b3d81e..d9b03ae7 100644 --- a/src/Serializer/StructuralElementDenormalizer.php +++ b/src/Serializer/StructuralElementDenormalizer.php @@ -49,7 +49,7 @@ class StructuralElementDenormalizer implements DenormalizerInterface, Denormaliz { } - public function supportsDenormalization($data, string $type, string $format = null, array $context = []): bool + public function supportsDenormalization($data, string $type, ?string $format = null, array $context = []): bool { //Only denormalize if we are doing a file import operation if (!($context['partdb_import'] ?? false)) { @@ -69,7 +69,16 @@ class StructuralElementDenormalizer implements DenormalizerInterface, Denormaliz && in_array('import', $context['groups'] ?? [], true); } - public function denormalize($data, string $type, string $format = null, array $context = []): ?AbstractStructuralDBElement + /** + * @template T of AbstractStructuralDBElement + * @param $data + * @phpstan-param class-string $type + * @param string|null $format + * @param array $context + * @return AbstractStructuralDBElement|null + * @phpstan-return T|null + */ + public function denormalize($data, string $type, ?string $format = null, array $context = []): ?AbstractStructuralDBElement { //Do not use API Platform's denormalizer $context[SkippableItemNormalizer::DISABLE_ITEM_NORMALIZER] = true; @@ -85,7 +94,7 @@ class StructuralElementDenormalizer implements DenormalizerInterface, Denormaliz $deserialized_entity = $this->denormalizer->denormalize($data, $type, $format, $context); //Check if we already have the entity in the database (via path) - /** @var StructuralDBElementRepository $repo */ + /** @var StructuralDBElementRepository $repo */ $repo = $this->entityManager->getRepository($type); $path = $deserialized_entity->getFullPath(AbstractStructuralDBElement::PATH_DELIMITER_ARROW); diff --git a/src/Serializer/StructuralElementFromNameDenormalizer.php b/src/Serializer/StructuralElementFromNameDenormalizer.php index ef72aaea..1d7255b7 100644 --- a/src/Serializer/StructuralElementFromNameDenormalizer.php +++ b/src/Serializer/StructuralElementFromNameDenormalizer.php @@ -36,7 +36,7 @@ class StructuralElementFromNameDenormalizer implements DenormalizerInterface { } - public function supportsDenormalization($data, string $type, string $format = null, array $context = []): bool + public function supportsDenormalization($data, string $type, ?string $format = null, array $context = []): bool { //Only denormalize if we are doing a file import operation if (!($context['partdb_import'] ?? false)) { @@ -51,10 +51,10 @@ class StructuralElementFromNameDenormalizer implements DenormalizerInterface * @phpstan-param class-string $type * @phpstan-return T|null */ - public function denormalize($data, string $type, string $format = null, array $context = []): AbstractStructuralDBElement|null + public function denormalize($data, string $type, ?string $format = null, array $context = []): AbstractStructuralDBElement|null { //Retrieve the repository for the given type - /** @var StructuralDBElementRepository $repo */ + /** @var StructuralDBElementRepository $repo */ $repo = $this->em->getRepository($type); $path_delimiter = $context['path_delimiter'] ?? '->'; diff --git a/src/Serializer/StructuralElementNormalizer.php b/src/Serializer/StructuralElementNormalizer.php index 1838f210..e73f69be 100644 --- a/src/Serializer/StructuralElementNormalizer.php +++ b/src/Serializer/StructuralElementNormalizer.php @@ -38,7 +38,7 @@ class StructuralElementNormalizer implements NormalizerInterface { } - public function supportsNormalization($data, string $format = null, array $context = []): bool + public function supportsNormalization($data, ?string $format = null, array $context = []): bool { //Only normalize if we are doing a file export operation if (!($context['partdb_export'] ?? false)) { @@ -48,7 +48,7 @@ class StructuralElementNormalizer implements NormalizerInterface return $data instanceof AbstractStructuralDBElement; } - public function normalize($object, string $format = null, array $context = []): mixed + public function normalize($object, ?string $format = null, array $context = []): mixed { if (!$object instanceof AbstractStructuralDBElement) { throw new \InvalidArgumentException('This normalizer only supports AbstractStructural objects!'); diff --git a/src/Services/Attachments/AttachmentManager.php b/src/Services/Attachments/AttachmentManager.php index 4429179e..1075141b 100644 --- a/src/Services/Attachments/AttachmentManager.php +++ b/src/Services/Attachments/AttachmentManager.php @@ -44,35 +44,31 @@ class AttachmentManager * * @param Attachment $attachment The attachment for which the file should be generated * - * @return SplFileInfo|null The fileinfo for the attachment file. Null, if the attachment is external or has + * @return SplFileInfo|null The fileinfo for the attachment file. Null, if the attachment is only external or has * invalid file. */ public function attachmentToFile(Attachment $attachment): ?SplFileInfo { - if ($attachment->isExternal() || !$this->isFileExisting($attachment)) { + if (!$this->isInternalFileExisting($attachment)) { return null; } - return new SplFileInfo($this->toAbsoluteFilePath($attachment)); + return new SplFileInfo($this->toAbsoluteInternalFilePath($attachment)); } /** - * Returns the absolute filepath of the attachment. Null is returned, if the attachment is externally saved, - * or is not existing. + * Returns the absolute filepath to the internal copy of the attachment. Null is returned, if the attachment is + * only externally saved, or is not existing. * * @param Attachment $attachment The attachment for which the filepath should be determined */ - public function toAbsoluteFilePath(Attachment $attachment): ?string + public function toAbsoluteInternalFilePath(Attachment $attachment): ?string { - if ($attachment->getPath() === '') { + if (!$attachment->hasInternal()){ return null; } - if ($attachment->isExternal()) { - return null; - } - - $path = $this->pathResolver->placeholderToRealPath($attachment->getPath()); + $path = $this->pathResolver->placeholderToRealPath($attachment->getInternalPath()); //realpath does not work with null as argument if (null === $path) { @@ -89,8 +85,8 @@ class AttachmentManager } /** - * Checks if the file in this attachement is existing. This works for files on the HDD, and for URLs - * (it's not checked if the ressource behind the URL is really existing, so for every external attachment true is returned). + * Checks if the file in this attachment is existing. This works for files on the HDD, and for URLs + * (it's not checked if the resource behind the URL is really existing, so for every external attachment true is returned). * * @param Attachment $attachment The attachment for which the existence should be checked * @@ -98,15 +94,23 @@ class AttachmentManager */ public function isFileExisting(Attachment $attachment): bool { - if ($attachment->getPath() === '') { - return false; - } - - if ($attachment->isExternal()) { + if($attachment->hasExternal()){ return true; } + return $this->isInternalFileExisting($attachment); + } - $absolute_path = $this->toAbsoluteFilePath($attachment); + /** + * Checks if the internal file in this attachment is existing. Returns false if the attachment doesn't have an + * internal file. + * + * @param Attachment $attachment The attachment for which the existence should be checked + * + * @return bool true if the file is existing + */ + public function isInternalFileExisting(Attachment $attachment): bool + { + $absolute_path = $this->toAbsoluteInternalFilePath($attachment); if (null === $absolute_path) { return false; @@ -117,21 +121,17 @@ class AttachmentManager /** * Returns the filesize of the attachments in bytes. - * For external attachments or not existing attachments, null is returned. + * For purely external attachments or inexistent attachments, null is returned. * * @param Attachment $attachment the filesize for which the filesize should be calculated */ public function getFileSize(Attachment $attachment): ?int { - if ($attachment->isExternal()) { + if (!$this->isInternalFileExisting($attachment)) { return null; } - if (!$this->isFileExisting($attachment)) { - return null; - } - - $tmp = filesize($this->toAbsoluteFilePath($attachment)); + $tmp = filesize($this->toAbsoluteInternalFilePath($attachment)); return false !== $tmp ? $tmp : null; } diff --git a/src/Services/Attachments/AttachmentPathResolver.php b/src/Services/Attachments/AttachmentPathResolver.php index e3e7a3ca..1b52c89b 100644 --- a/src/Services/Attachments/AttachmentPathResolver.php +++ b/src/Services/Attachments/AttachmentPathResolver.php @@ -115,12 +115,16 @@ class AttachmentPathResolver * Converts an relative placeholder filepath (with %MEDIA% or older %BASE%) to an absolute filepath on disk. * The directory separator is always /. Relative pathes are not realy possible (.. is striped). * - * @param string $placeholder_path the filepath with placeholder for which the real path should be determined + * @param string|null $placeholder_path the filepath with placeholder for which the real path should be determined * * @return string|null The absolute real path of the file, or null if the placeholder path is invalid */ - public function placeholderToRealPath(string $placeholder_path): ?string + public function placeholderToRealPath(?string $placeholder_path): ?string { + if (null === $placeholder_path) { + return null; + } + //The new attachments use %MEDIA% as placeholders, which is the directory set in media_directory //Older path entries are given via %BASE% which was the project root diff --git a/src/Services/Attachments/AttachmentReverseSearch.php b/src/Services/Attachments/AttachmentReverseSearch.php index 5f4f86de..e05192d0 100644 --- a/src/Services/Attachments/AttachmentReverseSearch.php +++ b/src/Services/Attachments/AttachmentReverseSearch.php @@ -55,7 +55,7 @@ class AttachmentReverseSearch $repo = $this->em->getRepository(Attachment::class); return $repo->findBy([ - 'path' => [$relative_path_new, $relative_path_old], + 'internal_path' => [$relative_path_new, $relative_path_old], ]); } diff --git a/src/Services/Attachments/AttachmentSubmitHandler.php b/src/Services/Attachments/AttachmentSubmitHandler.php index d9b2a380..89457cea 100644 --- a/src/Services/Attachments/AttachmentSubmitHandler.php +++ b/src/Services/Attachments/AttachmentSubmitHandler.php @@ -65,7 +65,7 @@ class AttachmentSubmitHandler 'htpasswd', '']; public function __construct(protected AttachmentPathResolver $pathResolver, protected bool $allow_attachments_downloads, - protected HttpClientInterface $httpClient, protected MimeTypesInterface $mimeTypes, + protected HttpClientInterface $httpClient, protected MimeTypesInterface $mimeTypes, protected readonly SVGSanitizer $SVGSanitizer, protected FileTypeFilterTools $filterTools, /** * @var string The user configured maximum upload size. This is a string like "10M" or "1G" and will be converted to */ @@ -207,13 +207,16 @@ class AttachmentSubmitHandler if ($file instanceof UploadedFile) { $this->upload($attachment, $file, $secure_attachment); - } elseif ($upload->downloadUrl && $attachment->isExternal()) { + } elseif ($upload->downloadUrl && $attachment->hasExternal()) { $this->downloadURL($attachment, $secure_attachment); } //Move the attachment files to secure location (and back) if needed $this->moveFile($attachment, $secure_attachment); + //Sanitize the SVG if needed + $this->sanitizeSVGAttachment($attachment); + //Rename blacklisted (unsecure) files to a better extension $this->renameBlacklistedExtensions($attachment); @@ -244,12 +247,12 @@ class AttachmentSubmitHandler protected function renameBlacklistedExtensions(Attachment $attachment): Attachment { //We can not do anything on builtins or external ressources - if ($attachment->isBuiltIn() || $attachment->isExternal()) { + if ($attachment->isBuiltIn() || !$attachment->hasInternal()) { return $attachment; } //Determine the old filepath - $old_path = $this->pathResolver->placeholderToRealPath($attachment->getPath()); + $old_path = $this->pathResolver->placeholderToRealPath($attachment->getInternalPath()); if ($old_path === null || $old_path === '' || !file_exists($old_path)) { return $attachment; } @@ -267,7 +270,7 @@ class AttachmentSubmitHandler $fs->rename($old_path, $new_path); //Update the attachment - $attachment->setPath($this->pathResolver->realPathToPlaceholder($new_path)); + $attachment->setInternalPath($this->pathResolver->realPathToPlaceholder($new_path)); } @@ -275,17 +278,17 @@ class AttachmentSubmitHandler } /** - * Move the given attachment to secure location (or back to public folder) if needed. + * Move the internal copy of the given attachment to a secure location (or back to public folder) if needed. * * @param Attachment $attachment the attachment for which the file should be moved * @param bool $secure_location this value determines, if the attachment is moved to the secure or public folder * - * @return Attachment The attachment with the updated filepath + * @return Attachment The attachment with the updated internal filepath */ protected function moveFile(Attachment $attachment, bool $secure_location): Attachment { //We can not do anything on builtins or external ressources - if ($attachment->isBuiltIn() || $attachment->isExternal()) { + if ($attachment->isBuiltIn() || !$attachment->hasInternal()) { return $attachment; } @@ -295,7 +298,7 @@ class AttachmentSubmitHandler } //Determine the old filepath - $old_path = $this->pathResolver->placeholderToRealPath($attachment->getPath()); + $old_path = $this->pathResolver->placeholderToRealPath($attachment->getInternalPath()); if (!file_exists($old_path)) { return $attachment; } @@ -319,7 +322,7 @@ class AttachmentSubmitHandler //Save info to attachment entity $new_path = $this->pathResolver->realPathToPlaceholder($new_path); - $attachment->setPath($new_path); + $attachment->setInternalPath($new_path); return $attachment; } @@ -329,7 +332,7 @@ class AttachmentSubmitHandler * * @param bool $secureAttachment True if the file should be moved to the secure attachment storage * - * @return Attachment The attachment with the new filepath + * @return Attachment The attachment with the downloaded copy */ protected function downloadURL(Attachment $attachment, bool $secureAttachment): Attachment { @@ -338,16 +341,35 @@ class AttachmentSubmitHandler throw new RuntimeException('Download of attachments is not allowed!'); } - $url = $attachment->getURL(); + $url = $attachment->getExternalPath(); $fs = new Filesystem(); $attachment_folder = $this->generateAttachmentPath($attachment, $secureAttachment); $tmp_path = $attachment_folder.DIRECTORY_SEPARATOR.$this->generateAttachmentFilename($attachment, 'tmp'); try { - $response = $this->httpClient->request('GET', $url, [ + $opts = [ 'buffer' => false, - ]); + //Use user-agent and other headers to make the server think we are a browser + 'headers' => [ + "sec-ch-ua" => "\"Not(A:Brand\";v=\"99\", \"Google Chrome\";v=\"133\", \"Chromium\";v=\"133\"", + "sec-ch-ua-mobile" => "?0", + "sec-ch-ua-platform" => "\"Windows\"", + "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36", + "sec-fetch-site" => "none", + "sec-fetch-mode" => "navigate", + ], + + ]; + $response = $this->httpClient->request('GET', $url, $opts); + //Digikey wants TLSv1.3, so try again with that if we get a 403 + if ($response->getStatusCode() === 403) { + $opts['crypto_method'] = STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT; + $response = $this->httpClient->request('GET', $url, $opts); + } + # if you have these changes and downloads still fail, check if it's due to an unknown certificate. Curl by + # default uses the systems ca store and that doesn't contain all the intermediate certificates needed to + # verify the leafs if (200 !== $response->getStatusCode()) { throw new AttachmentDownloadException('Status code: '.$response->getStatusCode()); @@ -399,7 +421,7 @@ class AttachmentSubmitHandler //Make our file path relative to %BASE% $new_path = $this->pathResolver->realPathToPlaceholder($new_path); //Save the path to the attachment - $attachment->setPath($new_path); + $attachment->setInternalPath($new_path); } catch (TransportExceptionInterface) { throw new AttachmentDownloadException('Transport error!'); } @@ -427,7 +449,9 @@ class AttachmentSubmitHandler //Make our file path relative to %BASE% $file_path = $this->pathResolver->realPathToPlaceholder($file_path); //Save the path to the attachment - $attachment->setPath($file_path); + $attachment->setInternalPath($file_path); + //reset any external paths the attachment might have had + $attachment->setExternalPath(null); //And save original filename $attachment->setFilename($file->getClientOriginalName()); @@ -477,4 +501,32 @@ class AttachmentSubmitHandler return $this->max_upload_size_bytes; } + + /** + * Sanitizes the given SVG file, if the attachment is an internal SVG file. + * @param Attachment $attachment + * @return Attachment + */ + public function sanitizeSVGAttachment(Attachment $attachment): Attachment + { + //We can not do anything on builtins or external ressources + if ($attachment->isBuiltIn() || !$attachment->hasInternal()) { + return $attachment; + } + + //Resolve the path to the file + $path = $this->pathResolver->placeholderToRealPath($attachment->getInternalPath()); + + //Check if the file exists + if (!file_exists($path)) { + return $attachment; + } + + //Check if the file is an SVG + if ($attachment->getExtension() === "svg") { + $this->SVGSanitizer->sanitizeFile($path); + } + + return $attachment; + } } diff --git a/src/Services/Attachments/AttachmentURLGenerator.php b/src/Services/Attachments/AttachmentURLGenerator.php index d28a8d65..c22cefe4 100644 --- a/src/Services/Attachments/AttachmentURLGenerator.php +++ b/src/Services/Attachments/AttachmentURLGenerator.php @@ -92,9 +92,9 @@ class AttachmentURLGenerator * Returns a URL under which the attachment file can be viewed. * @return string|null The URL or null if the attachment file is not existing */ - public function getViewURL(Attachment $attachment): ?string + public function getInternalViewURL(Attachment $attachment): ?string { - $absolute_path = $this->attachmentHelper->toAbsoluteFilePath($attachment); + $absolute_path = $this->attachmentHelper->toAbsoluteInternalFilePath($attachment); if (null === $absolute_path) { return null; } @@ -111,6 +111,7 @@ class AttachmentURLGenerator /** * Returns a URL to a thumbnail of the attachment file. + * For external files the original URL is returned. * @return string|null The URL or null if the attachment file is not existing */ public function getThumbnailURL(Attachment $attachment, string $filter_name = 'thumbnail_sm'): ?string @@ -119,11 +120,14 @@ class AttachmentURLGenerator throw new InvalidArgumentException('Thumbnail creation only works for picture attachments!'); } - if ($attachment->isExternal() && ($attachment->getURL() !== null && $attachment->getURL() !== '')) { - return $attachment->getURL(); + if (!$attachment->hasInternal()){ + if($attachment->hasExternal()) { + return $attachment->getExternalPath(); + } + return null; } - $absolute_path = $this->attachmentHelper->toAbsoluteFilePath($attachment); + $absolute_path = $this->attachmentHelper->toAbsoluteInternalFilePath($attachment); if (null === $absolute_path) { return null; } @@ -137,7 +141,7 @@ class AttachmentURLGenerator //GD can not work with SVG, so serve it directly... //We can not use getExtension here, because it uses the original filename and not the real extension //Instead we use the logic, which is also used to determine if the attachment is a picture - $extension = pathinfo(parse_url($attachment->getPath(), PHP_URL_PATH) ?? '', PATHINFO_EXTENSION); + $extension = pathinfo(parse_url($attachment->getInternalPath(), PHP_URL_PATH) ?? '', PATHINFO_EXTENSION); if ('svg' === $extension) { return $this->assets->getUrl($asset_path); } @@ -157,7 +161,7 @@ class AttachmentURLGenerator /** * Returns a download link to the file associated with the attachment. */ - public function getDownloadURL(Attachment $attachment): string + public function getInternalDownloadURL(Attachment $attachment): string { //Redirect always to download controller, which sets the correct headers for downloading: return $this->urlGenerator->generate('attachment_download', ['id' => $attachment->getID()]); diff --git a/src/Services/Attachments/SVGSanitizer.php b/src/Services/Attachments/SVGSanitizer.php new file mode 100644 index 00000000..9ac5956b --- /dev/null +++ b/src/Services/Attachments/SVGSanitizer.php @@ -0,0 +1,58 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services\Attachments; + +use Rhukster\DomSanitizer\DOMSanitizer; + +class SVGSanitizer +{ + + /** + * Sanitizes the given SVG string by removing any potentially harmful content (like inline scripts). + * @param string $input + * @return string + */ + public function sanitizeString(string $input): string + { + return (new DOMSanitizer(DOMSanitizer::SVG))->sanitize($input); + } + + /** + * Sanitizes the given SVG file by removing any potentially harmful content (like inline scripts). + * The sanitized content is written back to the file. + * @param string $filepath + */ + public function sanitizeFile(string $filepath): void + { + //Open the file and read the content + $content = file_get_contents($filepath); + if ($content === false) { + throw new \RuntimeException('Could not read file: ' . $filepath); + } + //Sanitize the content + $sanitizedContent = $this->sanitizeString($content); + //Write the sanitized content back to the file + file_put_contents($filepath, $sanitizedContent); + } +} \ No newline at end of file diff --git a/src/Services/EDA/KiCadHelper.php b/src/Services/EDA/KiCadHelper.php index 13de01e8..d4cbab34 100644 --- a/src/Services/EDA/KiCadHelper.php +++ b/src/Services/EDA/KiCadHelper.php @@ -27,6 +27,7 @@ use App\Entity\Parts\Category; use App\Entity\Parts\Footprint; use App\Entity\Parts\Part; use App\Services\Cache\ElementCacheTagGenerator; +use App\Services\EntityURLGenerator; use App\Services\Trees\NodesListBuilder; use Doctrine\ORM\EntityManagerInterface; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; @@ -44,6 +45,7 @@ class KiCadHelper private readonly EntityManagerInterface $em, private readonly ElementCacheTagGenerator $tagGenerator, private readonly UrlGeneratorInterface $urlGenerator, + private readonly EntityURLGenerator $entityURLGenerator, private readonly TranslatorInterface $translator, /** The maximum level of the shown categories. 0 Means only the top level categories are shown. -1 means only a single one containing */ private readonly int $category_depth, @@ -64,6 +66,10 @@ class KiCadHelper $secure_class_name = $this->tagGenerator->getElementTypeCacheTag(Category::class); $item->tag($secure_class_name); + //Invalidate the cache on part changes (as the visibility depends on parts, and the parts can change) + $secure_class_name = $this->tagGenerator->getElementTypeCacheTag(Part::class); + $item->tag($secure_class_name); + //If the category depth is smaller than 0, create only one dummy category if ($this->category_depth < 0) { return [ @@ -108,6 +114,8 @@ class KiCadHelper $result[] = [ 'id' => (string)$category->getId(), 'name' => $category->getFullPath('/'), + //Show the category link as the category description, this also fixes an segfault in KiCad see issue #878 + 'description' => $this->entityURLGenerator->listPartsURL($category), ]; } diff --git a/src/Services/EntityMergers/Mergers/EntityMergerHelperTrait.php b/src/Services/EntityMergers/Mergers/EntityMergerHelperTrait.php index a5c9a5fa..64c952a9 100644 --- a/src/Services/EntityMergers/Mergers/EntityMergerHelperTrait.php +++ b/src/Services/EntityMergers/Mergers/EntityMergerHelperTrait.php @@ -247,7 +247,8 @@ trait EntityMergerHelperTrait { return $this->mergeCollections($target, $other, 'attachments', fn(Attachment $t, Attachment $o): bool => $t->getName() === $o->getName() && $t->getAttachmentType() === $o->getAttachmentType() - && $t->getPath() === $o->getPath()); + && $t->getExternalPath() === $o->getExternalPath() + && $t->getInternalPath() === $o->getInternalPath()); } /** diff --git a/src/Services/EntityURLGenerator.php b/src/Services/EntityURLGenerator.php index 5718daec..78db06f0 100644 --- a/src/Services/EntityURLGenerator.php +++ b/src/Services/EntityURLGenerator.php @@ -156,25 +156,34 @@ class EntityURLGenerator public function viewURL(Attachment $entity): string { - if ($entity->isExternal()) { //For external attachments, return the link to external path - return $entity->getURL() ?? throw new \RuntimeException('External attachment has no URL!'); + //If the underlying file path is invalid, null gets returned, which is not allowed here. + //We still have the chance to use an external path, if it is set. + if ($entity->hasInternal() && ($url = $this->attachmentURLGenerator->getInternalViewURL($entity)) !== null) { + return $url; } - //return $this->urlGenerator->generate('attachment_view', ['id' => $entity->getID()]); - return $this->attachmentURLGenerator->getViewURL($entity) ?? ''; + + if($entity->hasExternal()) { + return $entity->getExternalPath(); + } + + throw new \RuntimeException('Attachment has no internal nor external path!'); } public function downloadURL($entity): string { - if ($entity instanceof Attachment) { - if ($entity->isExternal()) { //For external attachments, return the link to external path - return $entity->getURL() ?? throw new \RuntimeException('External attachment has no URL!'); - } - - return $this->attachmentURLGenerator->getDownloadURL($entity); + if (!($entity instanceof Attachment)) { + throw new EntityNotSupportedException(sprintf('The given entity is not supported yet! Passed class type: %s', $entity::class)); } - //Otherwise throw an error - throw new EntityNotSupportedException(sprintf('The given entity is not supported yet! Passed class type: %s', $entity::class)); + if ($entity->hasInternal()) { + return $this->attachmentURLGenerator->getInternalDownloadURL($entity); + } + + if($entity->hasExternal()) { + return $entity->getExternalPath(); + } + + throw new \RuntimeException('Attachment has not internal or external path!'); } /** diff --git a/src/Services/Formatters/MoneyFormatter.php b/src/Services/Formatters/MoneyFormatter.php index d49b77cf..44a49cb5 100644 --- a/src/Services/Formatters/MoneyFormatter.php +++ b/src/Services/Formatters/MoneyFormatter.php @@ -46,7 +46,7 @@ class MoneyFormatter public function format(string|float $value, ?Currency $currency = null, int $decimals = 5, bool $show_all_digits = false): string { $iso_code = $this->base_currency; - if ($currency instanceof Currency && ($currency->getIsoCode() !== null && $currency->getIsoCode() !== '')) { + if ($currency instanceof Currency && ($currency->getIsoCode() !== '')) { $iso_code = $currency->getIsoCode(); } diff --git a/src/Services/ImportExportSystem/BOMImporter.php b/src/Services/ImportExportSystem/BOMImporter.php index 246ccf32..d4876445 100644 --- a/src/Services/ImportExportSystem/BOMImporter.php +++ b/src/Services/ImportExportSystem/BOMImporter.php @@ -153,6 +153,7 @@ class BOMImporter break; } + //@phpstan-ignore-next-line We want to keep this check just to be safe when something changes $new_index = self::MAP_KICAD_PCB_FIELDS[$index] ?? throw new \UnexpectedValueException('Invalid field index!'); $out[$new_index] = $field; } diff --git a/src/Services/ImportExportSystem/EntityImporter.php b/src/Services/ImportExportSystem/EntityImporter.php index 1318c658..cecab12d 100644 --- a/src/Services/ImportExportSystem/EntityImporter.php +++ b/src/Services/ImportExportSystem/EntityImporter.php @@ -64,7 +64,7 @@ class EntityImporter * @phpstan-param class-string $class_name * @param AbstractStructuralDBElement|null $parent the element which will be used as parent element for new elements * @param array $errors an associative array containing all validation errors - * @param-out array $errors + * @param-out list $errors * * @return AbstractNamedDBElement[] An array containing all valid imported entities (with the type $class_name) * @return T[] @@ -133,13 +133,15 @@ class EntityImporter if ($repo instanceof StructuralDBElementRepository) { $entities = $repo->getNewEntityFromPath($new_path); $entity = end($entities); + if ($entity === false) { + throw new InvalidArgumentException('getNewEntityFromPath returned an empty array!'); + } } else { //Otherwise just create a new entity $entity = new $class_name; $entity->setName($name); } - //Validate entity $tmp = $this->validator->validate($entity); //If no error occured, write entry to DB: @@ -227,6 +229,11 @@ class EntityImporter //Iterate over each $entity write it to DB. foreach ($entities as $key => $entity) { + //Ensure that entity is a NamedDBElement + if (!$entity instanceof AbstractNamedDBElement) { + throw new \RuntimeException("Encountered an entity that is not a NamedDBElement!"); + } + //Validate entity $tmp = $this->validator->validate($entity); @@ -281,7 +288,7 @@ class EntityImporter * * @param File $file the file that should be used for importing * @param array $options options for the import process - * @param AbstractNamedDBElement[] $entities The imported entities are returned in this array + * @param-out AbstractNamedDBElement[] $entities The imported entities are returned in this array * * @return array An associative array containing an ConstraintViolationList and the entity name as key are returned, * if an error happened during validation. When everything was successfully, the array should be empty. @@ -317,7 +324,7 @@ class EntityImporter * @param array $options options for the import process * @param-out array $errors * - * @return array an array containing the deserialized elements + * @return AbstractNamedDBElement[] an array containing the deserialized elements */ public function importFile(File $file, array $options = [], array &$errors = []): array { @@ -350,7 +357,7 @@ class EntityImporter * @param iterable $entities the list of entities that should be fixed * @param AbstractStructuralDBElement|null $parent the parent, to which the entity should be set */ - protected function correctParentEntites(iterable $entities, AbstractStructuralDBElement $parent = null): void + protected function correctParentEntites(iterable $entities, ?AbstractStructuralDBElement $parent = null): void { foreach ($entities as $entity) { /** @var AbstractStructuralDBElement $entity */ diff --git a/src/Services/ImportExportSystem/PartKeeprImporter/PKImportHelperTrait.php b/src/Services/ImportExportSystem/PartKeeprImporter/PKImportHelperTrait.php index 574bc32b..1e4cd3ba 100644 --- a/src/Services/ImportExportSystem/PartKeeprImporter/PKImportHelperTrait.php +++ b/src/Services/ImportExportSystem/PartKeeprImporter/PKImportHelperTrait.php @@ -105,7 +105,7 @@ trait PKImportHelperTrait //Next comes the filename plus extension $path .= '/'.$attachment_row['filename'].'.'.$attachment_row['extension']; - $attachment->setPath($path); + $attachment->setInternalPath($path); return $attachment; } @@ -205,10 +205,6 @@ trait PKImportHelperTrait */ protected function setIDOfEntity(AbstractDBElement $element, int|string $id): void { - if (!is_int($id) && !is_string($id)) { - throw new \InvalidArgumentException('ID must be an integer or string'); - } - $id = (int) $id; $metadata = $this->em->getClassMetadata($element::class); diff --git a/src/Services/InfoProviderSystem/DTOs/ParameterDTO.php b/src/Services/InfoProviderSystem/DTOs/ParameterDTO.php index 3332700b..0b54d1a9 100644 --- a/src/Services/InfoProviderSystem/DTOs/ParameterDTO.php +++ b/src/Services/InfoProviderSystem/DTOs/ParameterDTO.php @@ -72,9 +72,9 @@ class ParameterDTO group: $group); } - //If the attribute contains "..." or a tilde we assume it is a range - if (preg_match('/(\.{3}|~)/', $value) === 1) { - $parts = preg_split('/\s*(\.{3}|~)\s*/', $value); + //If the attribute contains ".." or "..." or a tilde we assume it is a range + if (preg_match('/(\.{2,3}|~)/', $value) === 1) { + $parts = preg_split('/\s*(\.{2,3}|~)\s*/', $value); if (count($parts) === 2) { //Try to extract number and unit from value (allow leading +) if ($unit === null || trim($unit) === '') { diff --git a/src/Services/InfoProviderSystem/DTOtoEntityConverter.php b/src/Services/InfoProviderSystem/DTOtoEntityConverter.php index 2c2b4076..40f69498 100644 --- a/src/Services/InfoProviderSystem/DTOtoEntityConverter.php +++ b/src/Services/InfoProviderSystem/DTOtoEntityConverter.php @@ -27,6 +27,7 @@ use App\Entity\Attachments\AttachmentType; use App\Entity\Attachments\PartAttachment; use App\Entity\Base\AbstractStructuralDBElement; use App\Entity\Parameters\PartParameter; +use App\Entity\Parts\Category; use App\Entity\Parts\Footprint; use App\Entity\Parts\InfoProviderReference; use App\Entity\Parts\Manufacturer; @@ -36,6 +37,7 @@ use App\Entity\Parts\Supplier; use App\Entity\PriceInformations\Currency; use App\Entity\PriceInformations\Orderdetail; use App\Entity\PriceInformations\Pricedetail; +use App\Repository\Parts\CategoryRepository; use App\Services\InfoProviderSystem\DTOs\FileDTO; use App\Services\InfoProviderSystem\DTOs\ParameterDTO; use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; @@ -156,6 +158,12 @@ final class DTOtoEntityConverter $entity->setMass($dto->mass); + //Try to map the category to an existing entity (but never create a new one) + if ($dto->category) { + //@phpstan-ignore-next-line For some reason php does not recognize the repo returns a category + $entity->setCategory($this->em->getRepository(Category::class)->findForInfoProvider($dto->category)); + } + $entity->setManufacturer($this->getOrCreateEntity(Manufacturer::class, $dto->manufacturer)); $entity->setFootprint($this->getOrCreateEntity(Footprint::class, $dto->footprint)); @@ -166,9 +174,21 @@ final class DTOtoEntityConverter //Set the provider reference on the part $entity->setProviderReference(InfoProviderReference::fromPartDTO($dto)); + $param_groups = []; + //Add parameters foreach ($dto->parameters ?? [] as $parameter) { - $entity->addParameter($this->convertParameter($parameter)); + $new_param = $this->convertParameter($parameter); + + $key = $new_param->getName() . '##' . $new_param->getGroup(); + //If there is already an parameter with the same name and group, rename the new parameter, by suffixing a number + if (count($param_groups[$key] ?? []) > 0) { + $new_param->setName($new_param->getName() . ' (' . (count($param_groups[$key]) + 1) . ')'); + } + + $param_groups[$key][] = $new_param; + + $entity->addParameter($new_param); } //Add preview image @@ -184,6 +204,8 @@ final class DTOtoEntityConverter $entity->setMasterPictureAttachment($preview_image); } + $attachments_grouped = []; + //Add other images $images = $this->files_unique($dto->images ?? []); foreach ($images as $image) { @@ -192,14 +214,29 @@ final class DTOtoEntityConverter continue; } - $entity->addAttachment($this->convertFile($image, $image_type)); + $attachment = $this->convertFile($image, $image_type); + + $attachments_grouped[$attachment->getName()][] = $attachment; + if (count($attachments_grouped[$attachment->getName()] ?? []) > 1) { + $attachment->setName($attachment->getName() . ' (' . (count($attachments_grouped[$attachment->getName()]) + 1) . ')'); + } + + + $entity->addAttachment($attachment); } //Add datasheets $datasheet_type = $this->getDatasheetType(); $datasheets = $this->files_unique($dto->datasheets ?? []); foreach ($datasheets as $datasheet) { - $entity->addAttachment($this->convertFile($datasheet, $datasheet_type)); + $attachment = $this->convertFile($datasheet, $datasheet_type); + + $attachments_grouped[$attachment->getName()][] = $attachment; + if (count($attachments_grouped[$attachment->getName()] ?? []) > 1) { + $attachment->setName($attachment->getName() . ' (' . (count($attachments_grouped[$attachment->getName()])) . ')'); + } + + $entity->addAttachment($attachment); } //Add orderdetails and prices diff --git a/src/Services/InfoProviderSystem/ExistingPartFinder.php b/src/Services/InfoProviderSystem/ExistingPartFinder.php new file mode 100644 index 00000000..762c1517 --- /dev/null +++ b/src/Services/InfoProviderSystem/ExistingPartFinder.php @@ -0,0 +1,77 @@ +findAllExisting($dto); + return count($results) > 0 ? $results[0] : null; + } + + /** + * Returns all existing local parts that match the search result. + * If no part is found, return an empty array. + * @param SearchResultDTO $dto + * @return Part[] + */ + public function findAllExisting(SearchResultDTO $dto): array + { + $qb = $this->em->getRepository(Part::class)->createQueryBuilder('part'); + $qb->select('part') + ->leftJoin('part.manufacturer', 'manufacturer') + ->Orwhere($qb->expr()->andX( + 'part.providerReference.provider_key = :providerKey', + 'part.providerReference.provider_id = :providerId', + )) + + //Or the manufacturer (allowing for alternative names) and the MPN (or part name) must match + ->OrWhere( + $qb->expr()->andX( + $qb->expr()->orX( + "ILIKE(manufacturer.name, :manufacturerName) = TRUE", + "ILIKE(manufacturer.alternative_names, :manufacturerAltNames) = TRUE", + ), + $qb->expr()->orX( + "ILIKE(part.manufacturer_product_number, :mpn) = TRUE", + "ILIKE(part.name, :mpn) = TRUE", + ) + ) + ) + ; + + $qb->setParameter('providerKey', $dto->provider_key); + $qb->setParameter('providerId', $dto->provider_id); + + $qb->setParameter('manufacturerName', $dto->manufacturer); + $qb->setParameter('manufacturerAltNames', '%'.$dto->manufacturer.'%'); + $qb->setParameter('mpn', $dto->mpn); + + return $qb->getQuery()->getResult(); + } +} \ No newline at end of file diff --git a/src/Services/InfoProviderSystem/PartInfoRetriever.php b/src/Services/InfoProviderSystem/PartInfoRetriever.php index 1a31b197..0eb74642 100644 --- a/src/Services/InfoProviderSystem/PartInfoRetriever.php +++ b/src/Services/InfoProviderSystem/PartInfoRetriever.php @@ -27,6 +27,7 @@ use App\Entity\Parts\Part; use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; use App\Services\InfoProviderSystem\DTOs\SearchResultDTO; use App\Services\InfoProviderSystem\Providers\InfoProviderInterface; +use Symfony\Component\DependencyInjection\Attribute\Autowire; use Symfony\Contracts\Cache\CacheInterface; use Symfony\Contracts\Cache\ItemInterface; @@ -34,10 +35,12 @@ final class PartInfoRetriever { private const CACHE_DETAIL_EXPIRATION = 60 * 60 * 24 * 4; // 4 days - private const CACHE_RESULT_EXPIRATION = 60 * 60 * 24 * 7; // 7 days + private const CACHE_RESULT_EXPIRATION = 60 * 60 * 24 * 4; // 7 days public function __construct(private readonly ProviderRegistry $provider_registry, - private readonly DTOtoEntityConverter $dto_to_entity_converter, private readonly CacheInterface $partInfoCache) + private readonly DTOtoEntityConverter $dto_to_entity_converter, private readonly CacheInterface $partInfoCache, + #[Autowire(param: "kernel.debug")] + private readonly bool $debugMode = false) { } @@ -56,6 +59,11 @@ final class PartInfoRetriever $provider = $this->provider_registry->getProviderByKey($provider); } + //Ensure that the provider is active + if (!$provider->isActive()) { + throw new \RuntimeException("The provider with key {$provider->getProviderKey()} is not active!"); + } + if (!$provider instanceof InfoProviderInterface) { throw new \InvalidArgumentException("The provider must be either a provider key or a provider instance!"); } @@ -77,7 +85,7 @@ final class PartInfoRetriever $escaped_keyword = urlencode($keyword); return $this->partInfoCache->get("search_{$provider->getProviderKey()}_{$escaped_keyword}", function (ItemInterface $item) use ($provider, $keyword) { //Set the expiration time - $item->expiresAfter(self::CACHE_RESULT_EXPIRATION); + $item->expiresAfter(!$this->debugMode ? self::CACHE_RESULT_EXPIRATION : 1); return $provider->searchByKeyword($keyword); }); @@ -94,11 +102,16 @@ final class PartInfoRetriever { $provider = $this->provider_registry->getProviderByKey($provider_key); + //Ensure that the provider is active + if (!$provider->isActive()) { + throw new \RuntimeException("The provider with key $provider_key is not active!"); + } + //Generate key and escape reserved characters from the provider id $escaped_part_id = urlencode($part_id); return $this->partInfoCache->get("details_{$provider_key}_{$escaped_part_id}", function (ItemInterface $item) use ($provider, $part_id) { //Set the expiration time - $item->expiresAfter(self::CACHE_DETAIL_EXPIRATION); + $item->expiresAfter(!$this->debugMode ? self::CACHE_DETAIL_EXPIRATION : 1); return $provider->getDetails($part_id); }); diff --git a/src/Services/InfoProviderSystem/Providers/DigikeyProvider.php b/src/Services/InfoProviderSystem/Providers/DigikeyProvider.php index d8e93321..b20368ce 100644 --- a/src/Services/InfoProviderSystem/Providers/DigikeyProvider.php +++ b/src/Services/InfoProviderSystem/Providers/DigikeyProvider.php @@ -108,12 +108,15 @@ class DigikeyProvider implements InfoProviderInterface { $request = [ 'Keywords' => $keyword, - 'RecordCount' => 50, - 'RecordStartPosition' => 0, - 'ExcludeMarketPlaceProducts' => 'true', + 'Limit' => 50, + 'Offset' => 0, + 'FilterOptionsRequest' => [ + 'MarketPlaceFilter' => 'ExcludeMarketPlace', + ], ]; - $response = $this->digikeyClient->request('POST', '/Search/v3/Products/Keyword', [ + //$response = $this->digikeyClient->request('POST', '/Search/v3/Products/Keyword', [ + $response = $this->digikeyClient->request('POST', '/products/v4/search/keyword', [ 'json' => $request, 'auth_bearer' => $this->authTokenManager->getAlwaysValidTokenString(self::OAUTH_APP_NAME) ]); @@ -124,18 +127,21 @@ class DigikeyProvider implements InfoProviderInterface $result = []; $products = $response_array['Products']; foreach ($products as $product) { - $result[] = new SearchResultDTO( - provider_key: $this->getProviderKey(), - provider_id: $product['DigiKeyPartNumber'], - name: $product['ManufacturerPartNumber'], - description: $product['DetailedDescription'] ?? $product['ProductDescription'], - category: $this->getCategoryString($product), - manufacturer: $product['Manufacturer']['Value'] ?? null, - mpn: $product['ManufacturerPartNumber'], - preview_image_url: $product['PrimaryPhoto'] ?? null, - manufacturing_status: $this->productStatusToManufacturingStatus($product['ProductStatus']), - provider_url: $product['ProductUrl'], - ); + foreach ($product['ProductVariations'] as $variation) { + $result[] = new SearchResultDTO( + provider_key: $this->getProviderKey(), + provider_id: $variation['DigiKeyProductNumber'], + name: $product['ManufacturerProductNumber'], + description: $product['Description']['DetailedDescription'] ?? $product['Description']['ProductDescription'], + category: $this->getCategoryString($product), + manufacturer: $product['Manufacturer']['Name'] ?? null, + mpn: $product['ManufacturerProductNumber'], + preview_image_url: $product['PhotoUrl'] ?? null, + manufacturing_status: $this->productStatusToManufacturingStatus($product['ProductStatus']['Id']), + provider_url: $product['ProductUrl'], + footprint: $variation['PackageType']['Name'], //Use the footprint field, to show the user the package type (Tape & Reel, etc., as digikey has many different package types) + ); + } } return $result; @@ -143,62 +149,79 @@ class DigikeyProvider implements InfoProviderInterface public function getDetails(string $id): PartDetailDTO { - $response = $this->digikeyClient->request('GET', '/Search/v3/Products/' . urlencode($id), [ + $response = $this->digikeyClient->request('GET', '/products/v4/search/' . urlencode($id) . '/productdetails', [ 'auth_bearer' => $this->authTokenManager->getAlwaysValidTokenString(self::OAUTH_APP_NAME) ]); - $product = $response->toArray(); + $response_array = $response->toArray(); + $product = $response_array['Product']; $footprint = null; $parameters = $this->parametersToDTOs($product['Parameters'] ?? [], $footprint); - $media = $this->mediaToDTOs($product['MediaLinks']); + $media = $this->mediaToDTOs($id); + + // Get the price_breaks of the selected variation + $price_breaks = []; + foreach ($product['ProductVariations'] as $variation) { + if ($variation['DigiKeyProductNumber'] == $id) { + $price_breaks = $variation['StandardPricing'] ?? []; + break; + } + } return new PartDetailDTO( provider_key: $this->getProviderKey(), - provider_id: $product['DigiKeyPartNumber'], - name: $product['ManufacturerPartNumber'], - description: $product['DetailedDescription'] ?? $product['ProductDescription'], + provider_id: $id, + name: $product['ManufacturerProductNumber'], + description: $product['Description']['DetailedDescription'] ?? $product['Description']['ProductDescription'], category: $this->getCategoryString($product), - manufacturer: $product['Manufacturer']['Value'] ?? null, - mpn: $product['ManufacturerPartNumber'], - preview_image_url: $product['PrimaryPhoto'] ?? null, - manufacturing_status: $this->productStatusToManufacturingStatus($product['ProductStatus']), + manufacturer: $product['Manufacturer']['Name'] ?? null, + mpn: $product['ManufacturerProductNumber'], + preview_image_url: $product['PhotoUrl'] ?? null, + manufacturing_status: $this->productStatusToManufacturingStatus($product['ProductStatus']['Id']), provider_url: $product['ProductUrl'], footprint: $footprint, datasheets: $media['datasheets'], images: $media['images'], parameters: $parameters, - vendor_infos: $this->pricingToDTOs($product['StandardPricing'] ?? [], $product['DigiKeyPartNumber'], $product['ProductUrl']), + vendor_infos: $this->pricingToDTOs($price_breaks, $id, $product['ProductUrl']), ); } /** * Converts the product status from the Digikey API to the manufacturing status used in Part-DB - * @param string|null $dk_status + * @param int|null $dk_status * @return ManufacturingStatus|null */ - private function productStatusToManufacturingStatus(?string $dk_status): ?ManufacturingStatus + private function productStatusToManufacturingStatus(?int $dk_status): ?ManufacturingStatus { + // The V4 can use strings to get the status, but if you have changed the PROVIDER_DIGIKEY_LANGUAGE it will not match. + // Using the Id instead which should be fixed. + // + // The API is not well documented and the ID are not there yet, so were extracted using "trial and error". + // The 'Preliminary' id was not found in several categories so I was unable to extract it. Disabled for now. return match ($dk_status) { null => null, - 'Active' => ManufacturingStatus::ACTIVE, - 'Obsolete' => ManufacturingStatus::DISCONTINUED, - 'Discontinued at Digi-Key', 'Last Time Buy' => ManufacturingStatus::EOL, - 'Not For New Designs' => ManufacturingStatus::NRFND, - 'Preliminary' => ManufacturingStatus::ANNOUNCED, + 0 => ManufacturingStatus::ACTIVE, + 1 => ManufacturingStatus::DISCONTINUED, + 2, 4 => ManufacturingStatus::EOL, + 7 => ManufacturingStatus::NRFND, + //'Preliminary' => ManufacturingStatus::ANNOUNCED, default => ManufacturingStatus::NOT_SET, }; } private function getCategoryString(array $product): string { - $category = $product['Category']['Value']; - $sub_category = $product['Family']['Value']; + $category = $product['Category']['Name']; + $sub_category = current($product['Category']['ChildCategories']); - //Replace the ' - ' category separator with ' -> ' - $sub_category = str_replace(' - ', ' -> ', $sub_category); + if ($sub_category) { + //Replace the ' - ' category separator with ' -> ' + $category = $category . ' -> ' . str_replace(' - ', ' -> ', $sub_category["Name"]); + } - return $category . ' -> ' . $sub_category; + return $category; } /** @@ -215,18 +238,18 @@ class DigikeyProvider implements InfoProviderInterface foreach ($parameters as $parameter) { if ($parameter['ParameterId'] === 1291) { //Meaning "Manufacturer given footprint" - $footprint_name = $parameter['Value']; + $footprint_name = $parameter['ValueText']; } - if (in_array(trim((string) $parameter['Value']), ['', '-'], true)) { + if (in_array(trim((string) $parameter['ValueText']), ['', '-'], true)) { continue; } //If the parameter was marked as text only, then we do not try to parse it as a numerical value if (in_array($parameter['ParameterId'], self::TEXT_ONLY_PARAMETERS, true)) { - $results[] = new ParameterDTO(name: $parameter['Parameter'], value_text: $parameter['Value']); + $results[] = new ParameterDTO(name: $parameter['ParameterText'], value_text: $parameter['ValueText']); } else { //Otherwise try to parse it as a numerical value - $results[] = ParameterDTO::parseValueIncludingUnit($parameter['Parameter'], $parameter['Value']); + $results[] = ParameterDTO::parseValueIncludingUnit($parameter['ParameterText'], $parameter['ValueText']); } } @@ -254,16 +277,22 @@ class DigikeyProvider implements InfoProviderInterface } /** - * @param array $media_links + * @param string $id The Digikey product number, to get the media for * @return FileDTO[][] * @phpstan-return array */ - private function mediaToDTOs(array $media_links): array + private function mediaToDTOs(string $id): array { $datasheets = []; $images = []; - foreach ($media_links as $media_link) { + $response = $this->digikeyClient->request('GET', '/products/v4/search/' . urlencode($id) . '/media', [ + 'auth_bearer' => $this->authTokenManager->getAlwaysValidTokenString(self::OAUTH_APP_NAME) + ]); + + $media_array = $response->toArray(); + + foreach ($media_array['MediaLinks'] as $media_link) { $file = new FileDTO(url: $media_link['Url'], name: $media_link['Title']); switch ($media_link['MediaType']) { diff --git a/src/Services/InfoProviderSystem/Providers/Element14Provider.php b/src/Services/InfoProviderSystem/Providers/Element14Provider.php index ad70f9d9..b942b929 100644 --- a/src/Services/InfoProviderSystem/Providers/Element14Provider.php +++ b/src/Services/InfoProviderSystem/Providers/Element14Provider.php @@ -29,13 +29,14 @@ use App\Services\InfoProviderSystem\DTOs\ParameterDTO; use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; use App\Services\InfoProviderSystem\DTOs\PriceDTO; use App\Services\InfoProviderSystem\DTOs\PurchaseInfoDTO; +use Composer\CaBundle\CaBundle; use Symfony\Contracts\HttpClient\HttpClientInterface; class Element14Provider implements InfoProviderInterface { private const ENDPOINT_URL = 'https://api.element14.com/catalog/products'; - private const API_VERSION_NUMBER = '1.2'; + private const API_VERSION_NUMBER = '1.4'; private const NUMBER_OF_RESULTS = 20; public const DISTRIBUTOR_NAME = 'Farnell'; @@ -43,9 +44,19 @@ class Element14Provider implements InfoProviderInterface private const COMPLIANCE_ATTRIBUTES = ['euEccn', 'hazardous', 'MSL', 'productTraceability', 'rohsCompliant', 'rohsPhthalatesCompliant', 'SVHC', 'tariffCode', 'usEccn', 'hazardCode']; - public function __construct(private readonly HttpClientInterface $element14Client, private readonly string $api_key, private readonly string $store_id) - { + private readonly HttpClientInterface $element14Client; + public function __construct(HttpClientInterface $element14Client, private readonly string $api_key, private readonly string $store_id) + { + /* We use the mozilla CA from the composer ca bundle directly, as some debian systems seems to have problems + * with the SSL.COM CA, element14 uses. See https://github.com/Part-DB/Part-DB-server/issues/866 + * + * This is a workaround until the issue is resolved in debian (or never). + * As this only affects this provider, this should have no negative impact and the CA bundle is still secure. + */ + $this->element14Client = $element14Client->withOptions([ + 'cafile' => CaBundle::getBundledCaBundlePath(), + ]); } public function getProviderInfo(): array @@ -83,7 +94,7 @@ class Element14Provider implements InfoProviderInterface 'resultsSettings.responseGroup' => 'large', 'callInfo.apiKey' => $this->api_key, 'callInfo.responseDataFormat' => 'json', - 'callInfo.version' => self::API_VERSION_NUMBER, + 'versionNumber' => self::API_VERSION_NUMBER, ], ]); @@ -107,21 +118,18 @@ class Element14Provider implements InfoProviderInterface mpn: $product['translatedManufacturerPartNumber'], preview_image_url: $this->toImageUrl($product['image'] ?? null), manufacturing_status: $this->releaseStatusCodeToManufacturingStatus($product['releaseStatusCode'] ?? null), - provider_url: $this->generateProductURL($product['sku']), + provider_url: $product['productURL'], + notes: $product['productOverview']['description'] ?? null, datasheets: $this->parseDataSheets($product['datasheets'] ?? null), parameters: $this->attributesToParameters($product['attributes'] ?? null), - vendor_infos: $this->pricesToVendorInfo($product['sku'], $product['prices'] ?? []) + vendor_infos: $this->pricesToVendorInfo($product['sku'], $product['prices'] ?? [], $product['productURL']), + ); } return $result; } - private function generateProductURL($sku): string - { - return 'https://' . $this->store_id . '/' . $sku; - } - /** * @param array|null $datasheets * @return FileDTO[]|null Array of FileDTOs @@ -161,7 +169,7 @@ class Element14Provider implements InfoProviderInterface * @param array $prices * @return array */ - private function pricesToVendorInfo(string $sku, array $prices): array + private function pricesToVendorInfo(string $sku, array $prices, string $product_url): array { $price_dtos = []; @@ -179,7 +187,7 @@ class Element14Provider implements InfoProviderInterface distributor_name: self::DISTRIBUTOR_NAME, order_number: $sku, prices: $price_dtos, - product_url: $this->generateProductURL($sku) + product_url: $product_url ) ]; } diff --git a/src/Services/InfoProviderSystem/Providers/LCSCProvider.php b/src/Services/InfoProviderSystem/Providers/LCSCProvider.php index 601d5ebc..d903a8dd 100755 --- a/src/Services/InfoProviderSystem/Providers/LCSCProvider.php +++ b/src/Services/InfoProviderSystem/Providers/LCSCProvider.php @@ -97,6 +97,9 @@ class LCSCProvider implements InfoProviderInterface private function getRealDatasheetUrl(?string $url): string { if ($url !== null && trim($url) !== '' && preg_match("/^https:\/\/(datasheet\.lcsc\.com|www\.lcsc\.com\/datasheet)\/.*(C\d+)\.pdf$/", $url, $matches) > 0) { + if (preg_match("/^https:\/\/datasheet\.lcsc\.com\/lcsc\/(.*\.pdf)$/", $url, $rewriteMatches) > 0) { + $url = 'https://www.lcsc.com/datasheet/lcsc_datasheet_' . $rewriteMatches[1]; + } $response = $this->lcscClient->request('GET', $url, [ 'headers' => [ 'Referer' => 'https://www.lcsc.com/product-detail/_' . $matches[2] . '.html' diff --git a/src/Services/InfoProviderSystem/Providers/MouserProvider.php b/src/Services/InfoProviderSystem/Providers/MouserProvider.php index 84f5d65b..90bad263 100644 --- a/src/Services/InfoProviderSystem/Providers/MouserProvider.php +++ b/src/Services/InfoProviderSystem/Providers/MouserProvider.php @@ -94,6 +94,7 @@ class MouserProvider implements InfoProviderInterface From the startingRecord, the number of records specified will be returned up to the end of the recordset. This is useful for paging through the complete recordset of parts matching keyword. + searchOptions string Optional. If not provided, the default is None. @@ -176,11 +177,16 @@ class MouserProvider implements InfoProviderInterface throw new \RuntimeException('No part found with ID '.$id); } + //Manually filter out the part with the correct ID + $tmp = array_filter($tmp, fn(PartDetailDTO $part) => $part->provider_id === $id); + if (count($tmp) === 0) { + throw new \RuntimeException('No part found with ID '.$id); + } if (count($tmp) > 1) { - throw new \RuntimeException('Multiple parts found with ID '.$id . ' ('.count($tmp).' found). This is basically a bug in Mousers API response. See issue #616.'); + throw new \RuntimeException('Multiple parts found with ID '.$id); } - return $tmp[0]; + return reset($tmp); } public function getCapabilities(): array @@ -205,7 +211,7 @@ class MouserProvider implements InfoProviderInterface if (isset($arr['SearchResults'])) { $products = $arr['SearchResults']['Parts'] ?? []; } else { - throw new \RuntimeException('Unknown response format'); + throw new \RuntimeException('Unknown response format: ' .json_encode($arr, JSON_THROW_ON_ERROR)); } $result = []; diff --git a/src/Services/InfoProviderSystem/Providers/OEMSecretsProvider.php b/src/Services/InfoProviderSystem/Providers/OEMSecretsProvider.php index f3b59adc..ccf800f8 100644 --- a/src/Services/InfoProviderSystem/Providers/OEMSecretsProvider.php +++ b/src/Services/InfoProviderSystem/Providers/OEMSecretsProvider.php @@ -771,11 +771,6 @@ class OEMSecretsProvider implements InfoProviderInterface // Logic to extract parameters from the description $extractedParameters = $this->parseDescriptionToParameters($description) ?? []; - // Ensure that $extractedParameters is an array - if (!is_array($extractedParameters)) { - $extractedParameters = []; - } - foreach ($extractedParameters as $newParam) { $isDuplicate = false; foreach ($parameters as $existingParam) { @@ -1226,7 +1221,7 @@ class OEMSecretsProvider implements InfoProviderInterface * - 'value_min' => string|null The minimum value in a range, if applicable. * - 'value_max' => string|null The maximum value in a range, if applicable. */ - private function customSplitIntoValueAndUnit(string $value1, string $value2 = null): array + private function customSplitIntoValueAndUnit(string $value1, ?string $value2 = null): array { // Separate numbers and units (basic parsing handling) $unit = null; diff --git a/src/Services/InfoProviderSystem/Providers/PollinProvider.php b/src/Services/InfoProviderSystem/Providers/PollinProvider.php new file mode 100644 index 00000000..09ab8fd4 --- /dev/null +++ b/src/Services/InfoProviderSystem/Providers/PollinProvider.php @@ -0,0 +1,249 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services\InfoProviderSystem\Providers; + +use App\Entity\Parts\ManufacturingStatus; +use App\Entity\Parts\Part; +use App\Services\InfoProviderSystem\DTOs\FileDTO; +use App\Services\InfoProviderSystem\DTOs\ParameterDTO; +use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; +use App\Services\InfoProviderSystem\DTOs\PriceDTO; +use App\Services\InfoProviderSystem\DTOs\PurchaseInfoDTO; +use App\Services\InfoProviderSystem\DTOs\SearchResultDTO; +use Symfony\Component\DependencyInjection\Attribute\Autowire; +use Symfony\Component\DomCrawler\Crawler; +use Symfony\Contracts\HttpClient\HttpClientInterface; + +class PollinProvider implements InfoProviderInterface +{ + + public function __construct(private readonly HttpClientInterface $client, + #[Autowire(env: 'bool:PROVIDER_POLLIN_ENABLED')] + private readonly bool $enabled = true, + ) + { + } + + public function getProviderInfo(): array + { + return [ + 'name' => 'Pollin', + 'description' => 'Webscraping from pollin.de to get part information', + 'url' => 'https://www.pollin.de/', + 'disabled_help' => 'Set PROVIDER_POLLIN_ENABLED env to 1' + ]; + } + + public function getProviderKey(): string + { + return 'pollin'; + } + + public function isActive(): bool + { + return $this->enabled; + } + + public function searchByKeyword(string $keyword): array + { + $response = $this->client->request('GET', 'https://www.pollin.de/search', [ + 'query' => [ + 'search' => $keyword + ] + ]); + + $content = $response->getContent(); + + //If the response has us redirected to the product page, then just return the single item + if ($response->getInfo('redirect_count') > 0) { + return [$this->parseProductPage($content)]; + } + + $dom = new Crawler($content); + + $results = []; + + //Iterate over each div.product-box + $dom->filter('div.product-box')->each(function (Crawler $node) use (&$results) { + $results[] = new SearchResultDTO( + provider_key: $this->getProviderKey(), + provider_id: $node->filter('meta[itemprop="productID"]')->attr('content'), + name: $node->filter('a.product-name')->text(), + description: '', + preview_image_url: $node->filter('img.product-image')->attr('src'), + manufacturing_status: $this->mapAvailability($node->filter('link[itemprop="availability"]')->attr('href')), + provider_url: $node->filter('a.product-name')->attr('href') + ); + }); + + return $results; + } + + private function mapAvailability(string $availabilityURI): ManufacturingStatus + { + return match( $availabilityURI) { + 'http://schema.org/InStock' => ManufacturingStatus::ACTIVE, + 'http://schema.org/OutOfStock' => ManufacturingStatus::DISCONTINUED, + default => ManufacturingStatus::NOT_SET + }; + } + + public function getDetails(string $id): PartDetailDTO + { + //Ensure that $id is numeric + if (!is_numeric($id)) { + throw new \InvalidArgumentException("The id must be numeric!"); + } + + $response = $this->client->request('GET', 'https://www.pollin.de/search', [ + 'query' => [ + 'search' => $id + ] + ]); + + //The response must have us redirected to the product page + if ($response->getInfo('redirect_count') > 0) { + throw new \RuntimeException("Could not resolve the product page for the given id!"); + } + + $content = $response->getContent(); + + return $this->parseProductPage($content); + } + + private function parseProductPage(string $content): PartDetailDTO + { + $dom = new Crawler($content); + + $productPageUrl = $dom->filter('meta[property="product:product_link"]')->attr('content'); + $orderId = trim($dom->filter('span[itemprop="sku"]')->text()); //Text is important here + + //Calculate the mass + $massStr = $dom->filter('meta[itemprop="weight"]')->attr('content'); + //Remove the unit + $massStr = str_replace('kg', '', $massStr); + //Convert to float and convert to grams + $mass = (float) $massStr * 1000; + + //Parse purchase info + $purchaseInfo = new PurchaseInfoDTO('Pollin', $orderId, $this->parsePrices($dom), $productPageUrl); + + return new PartDetailDTO( + provider_key: $this->getProviderKey(), + provider_id: $orderId, + name: trim($dom->filter('meta[property="og:title"]')->attr('content')), + description: $dom->filter('meta[property="og:description"]')->attr('content'), + category: $this->parseCategory($dom), + manufacturer: $dom->filter('meta[property="product:brand"]')->count() > 0 ? $dom->filter('meta[property="product:brand"]')->attr('content') : null, + preview_image_url: $dom->filter('meta[property="og:image"]')->attr('content'), + manufacturing_status: $this->mapAvailability($dom->filter('link[itemprop="availability"]')->attr('href')), + provider_url: $productPageUrl, + notes: $this->parseNotes($dom), + datasheets: $this->parseDatasheets($dom), + parameters: $this->parseParameters($dom), + vendor_infos: [$purchaseInfo], + mass: $mass, + ); + } + + private function parseDatasheets(Crawler $dom): array + { + //Iterate over each a element withing div.pol-product-detail-download-files + $datasheets = []; + $dom->filter('div.pol-product-detail-download-files a')->each(function (Crawler $node) use (&$datasheets) { + $datasheets[] = new FileDTO($node->attr('href'), $node->text()); + }); + + return $datasheets; + } + + private function parseParameters(Crawler $dom): array + { + $parameters = []; + + //Iterate over each tr.properties-row inside table.product-detail-properties-table + $dom->filter('table.product-detail-properties-table tr.properties-row')->each(function (Crawler $node) use (&$parameters) { + $parameters[] = ParameterDTO::parseValueIncludingUnit( + name: rtrim($node->filter('th.properties-label')->text(), ':'), + value: trim($node->filter('td.properties-value')->text()) + ); + }); + + return $parameters; + } + + private function parseCategory(Crawler $dom): string + { + $category = ''; + + //Iterate over each li.breadcrumb-item inside ol.breadcrumb + $dom->filter('ol.breadcrumb li.breadcrumb-item')->each(function (Crawler $node) use (&$category) { + //Skip if it has breadcrumb-item-home class + if (str_contains($node->attr('class'), 'breadcrumb-item-home')) { + return; + } + + + $category .= $node->text() . ' -> '; + }); + + //Remove the last ' -> ' + return substr($category, 0, -4); + } + + private function parseNotes(Crawler $dom): string + { + //Concat product highlights and product description + return $dom->filter('div.product-detail-top-features')->html('') . '

' . $dom->filter('div.product-detail-description-text')->html(''); + } + + private function parsePrices(Crawler $dom): array + { + //TODO: Properly handle multiple prices, for now we just look at the price for one piece + + //We assume the currency is always the same + $currency = $dom->filter('meta[property="product:price:currency"]')->attr('content'); + + //If there is meta[property=highPrice] then use this as the price + if ($dom->filter('meta[itemprop="highPrice"]')->count() > 0) { + $price = $dom->filter('meta[itemprop="highPrice"]')->attr('content'); + } else { + $price = $dom->filter('meta[property="product:price:amount"]')->attr('content'); + } + + return [ + new PriceDTO(1.0, $price, $currency) + ]; + } + + public function getCapabilities(): array + { + return [ + ProviderCapabilities::BASIC, + ProviderCapabilities::PICTURE, + ProviderCapabilities::PRICE, + ProviderCapabilities::DATASHEET + ]; + } +} \ No newline at end of file diff --git a/src/Services/InfoProviderSystem/Providers/ReicheltProvider.php b/src/Services/InfoProviderSystem/Providers/ReicheltProvider.php new file mode 100644 index 00000000..0c31c411 --- /dev/null +++ b/src/Services/InfoProviderSystem/Providers/ReicheltProvider.php @@ -0,0 +1,285 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services\InfoProviderSystem\Providers; + +use App\Services\InfoProviderSystem\DTOs\FileDTO; +use App\Services\InfoProviderSystem\DTOs\ParameterDTO; +use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; +use App\Services\InfoProviderSystem\DTOs\PriceDTO; +use App\Services\InfoProviderSystem\DTOs\PurchaseInfoDTO; +use App\Services\InfoProviderSystem\DTOs\SearchResultDTO; +use Symfony\Component\DependencyInjection\Attribute\Autowire; +use Symfony\Component\DomCrawler\Crawler; +use Symfony\Contracts\HttpClient\HttpClientInterface; + +class ReicheltProvider implements InfoProviderInterface +{ + + public const DISTRIBUTOR_NAME = "Reichelt"; + + public function __construct(private readonly HttpClientInterface $client, + #[Autowire(env: "bool:PROVIDER_REICHELT_ENABLED")] + private readonly bool $enabled = true, + #[Autowire(env: "PROVIDER_REICHELT_LANGUAGE")] + private readonly string $language = "en", + #[Autowire(env: "PROVIDER_REICHELT_COUNTRY")] + private readonly string $country = "DE", + #[Autowire(env: "PROVIDER_REICHELT_INCLUDE_VAT")] + private readonly bool $includeVAT = false, + #[Autowire(env: "PROVIDER_REICHELT_CURRENCY")] + private readonly string $currency = "EUR", + ) + { + } + + public function getProviderInfo(): array + { + return [ + 'name' => 'Reichelt', + 'description' => 'Webscraping from reichelt.com to get part information', + 'url' => 'https://www.reichelt.com/', + 'disabled_help' => 'Set PROVIDER_REICHELT_ENABLED env to 1' + ]; + } + + public function getProviderKey(): string + { + return 'reichelt'; + } + + public function isActive(): bool + { + return $this->enabled; + } + + public function searchByKeyword(string $keyword): array + { + $response = $this->client->request('GET', sprintf($this->getBaseURL() . '/shop/search/%s', $keyword)); + $html = $response->getContent(); + + //Parse the HTML and return the results + $dom = new Crawler($html); + //Iterate over all div.al_gallery_article elements + $results = []; + $dom->filter('div.al_gallery_article')->each(function (Crawler $element) use (&$results) { + + //Extract product id from data-product attribute + $artId = json_decode($element->attr('data-product'), true, 2, JSON_THROW_ON_ERROR)['artid']; + + $productID = $element->filter('meta[itemprop="productID"]')->attr('content'); + $name = $element->filter('meta[itemprop="name"]')->attr('content'); + $sku = $element->filter('meta[itemprop="sku"]')->attr('content'); + + //Try to extract a picture URL: + $pictureURL = $element->filter("div.al_artlogo img")->attr('src'); + + $results[] = new SearchResultDTO( + provider_key: $this->getProviderKey(), + provider_id: $artId, + name: $productID, + description: $name, + category: null, + manufacturer: $sku, + preview_image_url: $pictureURL, + provider_url: $element->filter('a.al_artinfo_link')->attr('href') + ); + }); + + return $results; + } + + public function getDetails(string $id): PartDetailDTO + { + //Check that the ID is a number + if (!is_numeric($id)) { + throw new \InvalidArgumentException("Invalid ID"); + } + + //Use this endpoint to resolve the artID to a product page + $response = $this->client->request('GET', + sprintf( + 'https://www.reichelt.com/?ACTION=514&id=74&article=%s&LANGUAGE=%s&CCOUNTRY=%s', + $id, + strtoupper($this->language), + strtoupper($this->country) + ) + ); + $json = $response->toArray(); + + //Retrieve the product page from the response + $productPage = $this->getBaseURL() . '/shop/product' . $json[0]['article_path']; + + + $response = $this->client->request('GET', $productPage, [ + 'query' => [ + 'CCTYPE' => $this->includeVAT ? 'private' : 'business', + 'currency' => $this->currency, + ], + ]); + $html = $response->getContent(); + $dom = new Crawler($html); + + //Extract the product notes + $notes = $dom->filter('p[itemprop="description"]')->html(); + + //Extract datasheets + $datasheets = []; + $dom->filter('div.articleDatasheet a')->each(function (Crawler $element) use (&$datasheets) { + $datasheets[] = new FileDTO($element->attr('href'), $element->filter('span')->text()); + }); + + //Determine price for one unit + $priceString = $dom->filter('meta[itemprop="price"]')->attr('content'); + $currency = $dom->filter('meta[itemprop="priceCurrency"]')->attr('content', 'EUR'); + + //Create purchase info + $purchaseInfo = new PurchaseInfoDTO( + distributor_name: self::DISTRIBUTOR_NAME, + order_number: $json[0]['article_artnr'], + prices: array_merge( + [new PriceDTO(1.0, $priceString, $currency, $this->includeVAT)] + , $this->parseBatchPrices($dom, $currency)), + product_url: $productPage + ); + + //Create part object + return new PartDetailDTO( + provider_key: $this->getProviderKey(), + provider_id: $id, + name: $json[0]['article_artnr'], + description: $json[0]['article_besch'], + category: $this->parseCategory($dom), + manufacturer: $json[0]['manufacturer_name'], + mpn: $this->parseMPN($dom), + preview_image_url: $json[0]['article_picture'], + provider_url: $productPage, + notes: $notes, + datasheets: $datasheets, + parameters: $this->parseParameters($dom), + vendor_infos: [$purchaseInfo] + ); + + } + + private function parseMPN(Crawler $dom): string + { + //Find the small element directly after meta[itemprop="url"] element + $element = $dom->filter('meta[itemprop="url"] + small'); + //If the text contains GTIN text, take the small element afterwards + if (str_contains($element->text(), 'GTIN')) { + $element = $dom->filter('meta[itemprop="url"] + small + small'); + } + + //The MPN is contained in the span inside the element + return $element->filter('span')->text(); + } + + private function parseBatchPrices(Crawler $dom, string $currency): array + { + //Iterate over each a.inline-block element in div.discountValue + $prices = []; + $dom->filter('div.discountValue a.inline-block')->each(function (Crawler $element) use (&$prices, $currency) { + //The minimum amount is the number in the span.block element + $minAmountText = $element->filter('span.block')->text(); + + //Extract a integer from the text + $matches = []; + if (!preg_match('/\d+/', $minAmountText, $matches)) { + return; + } + + $minAmount = (int) $matches[0]; + + //The price is the text of the p.productPrice element + $priceString = $element->filter('p.productPrice')->text(); + //Replace comma with dot + $priceString = str_replace(',', '.', $priceString); + //Strip any non-numeric characters + $priceString = preg_replace('/[^0-9.]/', '', $priceString); + + $prices[] = new PriceDTO($minAmount, $priceString, $currency, $this->includeVAT); + }); + + return $prices; + } + + + private function parseCategory(Crawler $dom): string + { + // Look for ol.breadcrumb and iterate over the li elements + $category = ''; + $dom->filter('ol.breadcrumb li.triangle-left')->each(function (Crawler $element) use (&$category) { + //Do not include the .breadcrumb-showmore element + if ($element->attr('id') === 'breadcrumb-showmore') { + return; + } + + $category .= $element->text() . ' -> '; + }); + //Remove the trailing ' -> ' + $category = substr($category, 0, -4); + + return $category; + } + + /** + * @param Crawler $dom + * @return ParameterDTO[] + */ + private function parseParameters(Crawler $dom): array + { + $parameters = []; + //Iterate over each ul.articleTechnicalData which contains the specifications of each group + $dom->filter('ul.articleTechnicalData')->each(function (Crawler $groupElement) use (&$parameters) { + $groupName = $groupElement->filter('li.articleTechnicalHeadline')->text(); + + //Iterate over each second li in ul.articleAttribute, which contains the specifications + $groupElement->filter('ul.articleAttribute li:nth-child(2n)')->each(function (Crawler $specElement) use (&$parameters, $groupName) { + $parameters[] = ParameterDTO::parseValueIncludingUnit( + name: $specElement->previousAll()->text(), + value: $specElement->text(), + group: $groupName + ); + }); + }); + + return $parameters; + } + + private function getBaseURL(): string + { + //Without the trailing slash + return 'https://www.reichelt.com/' . strtolower($this->country) . '/' . strtolower($this->language); + } + + public function getCapabilities(): array + { + return [ + ProviderCapabilities::BASIC, + ProviderCapabilities::PICTURE, + ProviderCapabilities::DATASHEET, + ProviderCapabilities::PRICE, + ]; + } +} \ No newline at end of file diff --git a/src/Services/InfoProviderSystem/Providers/TMEClient.php b/src/Services/InfoProviderSystem/Providers/TMEClient.php index 0e32e9a6..d4df133e 100644 --- a/src/Services/InfoProviderSystem/Providers/TMEClient.php +++ b/src/Services/InfoProviderSystem/Providers/TMEClient.php @@ -50,6 +50,16 @@ class TMEClient return $this->token !== '' && $this->secret !== ''; } + /** + * Returns true if the client is using a private (account related token) instead of a deprecated anonymous token + * to authenticate with TME. + * @return bool + */ + public function isUsingPrivateToken(): bool + { + //Private tokens are longer than anonymous ones (50 instead of 45 characters) + return strlen($this->token) > 45; + } /** * Generates the signature for the given action and parameters. diff --git a/src/Services/InfoProviderSystem/Providers/TMEProvider.php b/src/Services/InfoProviderSystem/Providers/TMEProvider.php index 61944b7d..32fc0c72 100644 --- a/src/Services/InfoProviderSystem/Providers/TMEProvider.php +++ b/src/Services/InfoProviderSystem/Providers/TMEProvider.php @@ -36,12 +36,19 @@ class TMEProvider implements InfoProviderInterface private const VENDOR_NAME = 'TME'; + /** @var bool If true, the prices are gross prices. If false, the prices are net prices. */ + private readonly bool $get_gross_prices; + public function __construct(private readonly TMEClient $tmeClient, private readonly string $country, private readonly string $language, private readonly string $currency, - /** @var bool If true, the prices are gross prices. If false, the prices are net prices. */ - private readonly bool $get_gross_prices) + bool $get_gross_prices) { - + //If we have a private token, set get_gross_prices to false, as it is automatically determined by the account type then + if ($this->tmeClient->isUsingPrivateToken()) { + $this->get_gross_prices = false; + } else { + $this->get_gross_prices = $get_gross_prices; + } } public function getProviderInfo(): array diff --git a/src/Services/LabelSystem/BarcodeScanner/BarcodeRedirector.php b/src/Services/LabelSystem/BarcodeScanner/BarcodeRedirector.php new file mode 100644 index 00000000..2de7c035 --- /dev/null +++ b/src/Services/LabelSystem/BarcodeScanner/BarcodeRedirector.php @@ -0,0 +1,166 @@ +. + */ + +declare(strict_types=1); + +/** + * This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony). + * + * Copyright (C) 2019 - 2022 Jan Böhmer (https://github.com/jbtronics) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published + * by the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +namespace App\Services\LabelSystem\BarcodeScanner; + +use App\Entity\LabelSystem\LabelSupportedElement; +use App\Entity\Parts\Manufacturer; +use App\Entity\Parts\Part; +use App\Entity\Parts\PartLot; +use Doctrine\ORM\EntityManagerInterface; +use Doctrine\ORM\EntityNotFoundException; +use InvalidArgumentException; +use Symfony\Component\Routing\Generator\UrlGeneratorInterface; + +/** + * @see \App\Tests\Services\LabelSystem\Barcodes\BarcodeRedirectorTest + */ +final class BarcodeRedirector +{ + public function __construct(private readonly UrlGeneratorInterface $urlGenerator, private readonly EntityManagerInterface $em) + { + } + + /** + * Determines the URL to which the user should be redirected, when scanning a QR code. + * + * @param BarcodeScanResultInterface $barcodeScan The result of the barcode scan + * @return string the URL to which should be redirected + * + * @throws EntityNotFoundException + */ + public function getRedirectURL(BarcodeScanResultInterface $barcodeScan): string + { + if($barcodeScan instanceof LocalBarcodeScanResult) { + return $this->getURLLocalBarcode($barcodeScan); + } + + if ($barcodeScan instanceof EIGP114BarcodeScanResult) { + return $this->getURLVendorBarcode($barcodeScan); + } + + throw new InvalidArgumentException('Unknown $barcodeScan type: '.get_class($barcodeScan)); + } + + private function getURLLocalBarcode(LocalBarcodeScanResult $barcodeScan): string + { + switch ($barcodeScan->target_type) { + case LabelSupportedElement::PART: + return $this->urlGenerator->generate('app_part_show', ['id' => $barcodeScan->target_id]); + case LabelSupportedElement::PART_LOT: + //Try to determine the part to the given lot + $lot = $this->em->find(PartLot::class, $barcodeScan->target_id); + if (!$lot instanceof PartLot) { + throw new EntityNotFoundException(); + } + + return $this->urlGenerator->generate('app_part_show', ['id' => $lot->getPart()->getID()]); + + case LabelSupportedElement::STORELOCATION: + return $this->urlGenerator->generate('part_list_store_location', ['id' => $barcodeScan->target_id]); + + default: + throw new InvalidArgumentException('Unknown $type: '.$barcodeScan->target_type->name); + } + } + + /** + * Gets the URL to a part from a scan of a Vendor Barcode + */ + private function getURLVendorBarcode(EIGP114BarcodeScanResult $barcodeScan): string + { + $part = $this->getPartFromVendor($barcodeScan); + return $this->urlGenerator->generate('app_part_show', ['id' => $part->getID()]); + } + + /** + * Gets a part from a scan of a Vendor Barcode by filtering for parts + * with the same Info Provider Id or, if that fails, by looking for parts with a + * matching manufacturer product number. Only returns the first matching part. + */ + private function getPartFromVendor(EIGP114BarcodeScanResult $barcodeScan) : Part + { + // first check via the info provider ID (e.g. Vendor ID). This might fail if the part was not added via + // the info provider system or if the part was bought from a different vendor than the data was retrieved + // from. + if($barcodeScan->digikeyPartNumber) { + $qb = $this->em->getRepository(Part::class)->createQueryBuilder('part'); + //Lower() to be case insensitive + $qb->where($qb->expr()->like('LOWER(part.providerReference.provider_id)', 'LOWER(:vendor_id)')); + $qb->setParameter('vendor_id', $barcodeScan->digikeyPartNumber); + $results = $qb->getQuery()->getResult(); + if ($results) { + return $results[0]; + } + } + + if(!$barcodeScan->supplierPartNumber){ + throw new EntityNotFoundException(); + } + + //Fallback to the manufacturer part number. This may return false positives, since it is common for + //multiple manufacturers to use the same part number for their version of a common product + //We assume the user is able to realize when this returns the wrong part + //If the barcode specifies the manufacturer we try to use that as well + $mpnQb = $this->em->getRepository(Part::class)->createQueryBuilder('part'); + $mpnQb->where($mpnQb->expr()->like('LOWER(part.manufacturer_product_number)', 'LOWER(:mpn)')); + $mpnQb->setParameter('mpn', $barcodeScan->supplierPartNumber); + + if($barcodeScan->mouserManufacturer){ + $manufacturerQb = $this->em->getRepository(Manufacturer::class)->createQueryBuilder("manufacturer"); + $manufacturerQb->where($manufacturerQb->expr()->like("LOWER(manufacturer.name)", "LOWER(:manufacturer_name)")); + $manufacturerQb->setParameter("manufacturer_name", $barcodeScan->mouserManufacturer); + $manufacturers = $manufacturerQb->getQuery()->getResult(); + + if($manufacturers) { + $mpnQb->andWhere($mpnQb->expr()->eq("part.manufacturer", ":manufacturer")); + $mpnQb->setParameter("manufacturer", $manufacturers); + } + + } + + $results = $mpnQb->getQuery()->getResult(); + if($results){ + return $results[0]; + } + throw new EntityNotFoundException(); + } +} diff --git a/src/Services/LabelSystem/Barcodes/BarcodeScanHelper.php b/src/Services/LabelSystem/BarcodeScanner/BarcodeScanHelper.php similarity index 81% rename from src/Services/LabelSystem/Barcodes/BarcodeScanHelper.php rename to src/Services/LabelSystem/BarcodeScanner/BarcodeScanHelper.php index c9750ea3..e5930b36 100644 --- a/src/Services/LabelSystem/Barcodes/BarcodeScanHelper.php +++ b/src/Services/LabelSystem/BarcodeScanner/BarcodeScanHelper.php @@ -39,7 +39,7 @@ declare(strict_types=1); * along with this program. If not, see . */ -namespace App\Services\LabelSystem\Barcodes; +namespace App\Services\LabelSystem\BarcodeScanner; use App\Entity\LabelSystem\LabelSupportedElement; use App\Entity\Parts\Part; @@ -75,20 +75,23 @@ final class BarcodeScanHelper * will try to guess the type. * @param string $input * @param BarcodeSourceType|null $type - * @return BarcodeScanResult + * @return BarcodeScanResultInterface */ - public function scanBarcodeContent(string $input, ?BarcodeSourceType $type = null): BarcodeScanResult + public function scanBarcodeContent(string $input, ?BarcodeSourceType $type = null): BarcodeScanResultInterface { //Do specific parsing if ($type === BarcodeSourceType::INTERNAL) { return $this->parseInternalBarcode($input) ?? throw new InvalidArgumentException('Could not parse barcode'); } - if ($type === BarcodeSourceType::VENDOR) { - return $this->parseVendorBarcode($input) ?? throw new InvalidArgumentException('Could not parse barcode'); + if ($type === BarcodeSourceType::USER_DEFINED) { + return $this->parseUserDefinedBarcode($input) ?? throw new InvalidArgumentException('Could not parse barcode'); } if ($type === BarcodeSourceType::IPN) { return $this->parseIPNBarcode($input) ?? throw new InvalidArgumentException('Could not parse barcode'); } + if ($type === BarcodeSourceType::EIGP114) { + return $this->parseEIGP114Barcode($input); + } //Null means auto and we try the different formats $result = $this->parseInternalBarcode($input); @@ -97,12 +100,17 @@ final class BarcodeScanHelper return $result; } - //Try to parse as vendor barcode - $result = $this->parseVendorBarcode($input); + //Try to parse as User defined barcode + $result = $this->parseUserDefinedBarcode($input); if ($result !== null) { return $result; } + //If the barcode is formatted as EIGP114, we can parse it directly + if (EIGP114BarcodeScanResult::isFormat06Code($input)) { + return $this->parseEIGP114Barcode($input); + } + //Try to parse as IPN barcode $result = $this->parseIPNBarcode($input); if ($result !== null) { @@ -112,11 +120,16 @@ final class BarcodeScanHelper throw new InvalidArgumentException('Unknown barcode'); } - private function parseVendorBarcode(string $input): ?BarcodeScanResult + private function parseEIGP114Barcode(string $input): EIGP114BarcodeScanResult + { + return EIGP114BarcodeScanResult::parseFormat06Code($input); + } + + private function parseUserDefinedBarcode(string $input): ?LocalBarcodeScanResult { $lot_repo = $this->entityManager->getRepository(PartLot::class); //Find only the first result - $results = $lot_repo->findBy(['vendor_barcode' => $input], limit: 1); + $results = $lot_repo->findBy(['user_barcode' => $input], limit: 1); if (count($results) === 0) { return null; @@ -124,14 +137,14 @@ final class BarcodeScanHelper //We found a part, so use it to create the result $lot = $results[0]; - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: LabelSupportedElement::PART_LOT, target_id: $lot->getID(), - source_type: BarcodeSourceType::VENDOR + source_type: BarcodeSourceType::USER_DEFINED ); } - private function parseIPNBarcode(string $input): ?BarcodeScanResult + private function parseIPNBarcode(string $input): ?LocalBarcodeScanResult { $part_repo = $this->entityManager->getRepository(Part::class); //Find only the first result @@ -143,7 +156,7 @@ final class BarcodeScanHelper //We found a part, so use it to create the result $part = $results[0]; - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: LabelSupportedElement::PART, target_id: $part->getID(), source_type: BarcodeSourceType::IPN @@ -155,9 +168,9 @@ final class BarcodeScanHelper * If the barcode could not be parsed at all, null is returned. If the barcode is a valid format, but could * not be found in the database, an exception is thrown. * @param string $input - * @return BarcodeScanResult|null + * @return LocalBarcodeScanResult|null */ - private function parseInternalBarcode(string $input): ?BarcodeScanResult + private function parseInternalBarcode(string $input): ?LocalBarcodeScanResult { $input = trim($input); $matches = []; @@ -167,7 +180,7 @@ final class BarcodeScanHelper //Extract parts from QR code's URL if (preg_match('#^https?://.*/scan/(\w+)/(\d+)/?$#', $input, $matches)) { - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: self::QR_TYPE_MAP[strtolower($matches[1])], target_id: (int) $matches[2], source_type: BarcodeSourceType::INTERNAL @@ -183,7 +196,7 @@ final class BarcodeScanHelper throw new InvalidArgumentException('Unknown prefix '.$prefix); } - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: self::PREFIX_TYPE_MAP[$prefix], target_id: $id, source_type: BarcodeSourceType::INTERNAL @@ -199,7 +212,7 @@ final class BarcodeScanHelper throw new InvalidArgumentException('Unknown prefix '.$prefix); } - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: self::PREFIX_TYPE_MAP[$prefix], target_id: $id, source_type: BarcodeSourceType::INTERNAL @@ -208,7 +221,7 @@ final class BarcodeScanHelper //Legacy Part-DB location labels used $L00336 format if (preg_match('#^\$L(\d{5,})$#', $input, $matches)) { - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: LabelSupportedElement::STORELOCATION, target_id: (int) $matches[1], source_type: BarcodeSourceType::INTERNAL @@ -217,7 +230,7 @@ final class BarcodeScanHelper //Legacy Part-DB used EAN8 barcodes for part labels. Format 0000001(2) (note the optional 8th digit => checksum) if (preg_match('#^(\d{7})\d?$#', $input, $matches)) { - return new BarcodeScanResult( + return new LocalBarcodeScanResult( target_type: LabelSupportedElement::PART, target_id: (int) $matches[1], source_type: BarcodeSourceType::INTERNAL diff --git a/src/Services/LabelSystem/BarcodeScanner/BarcodeScanResultInterface.php b/src/Services/LabelSystem/BarcodeScanner/BarcodeScanResultInterface.php new file mode 100644 index 00000000..88130351 --- /dev/null +++ b/src/Services/LabelSystem/BarcodeScanner/BarcodeScanResultInterface.php @@ -0,0 +1,36 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services\LabelSystem\BarcodeScanner; + +interface BarcodeScanResultInterface +{ + /** + * Returns all data that was decoded from the barcode in a format, that can be shown in a table to the user. + * The return values of this function are not meant to be parsed by code again, but should just give a information + * to the user. + * The keys of the returned array are the first column of the table and the values are the second column. + * @return array + */ + public function getDecodedForInfoMode(): array; +} \ No newline at end of file diff --git a/src/Services/LabelSystem/Barcodes/BarcodeSourceType.php b/src/Services/LabelSystem/BarcodeScanner/BarcodeSourceType.php similarity index 83% rename from src/Services/LabelSystem/Barcodes/BarcodeSourceType.php rename to src/Services/LabelSystem/BarcodeScanner/BarcodeSourceType.php index 20ba316a..40f707de 100644 --- a/src/Services/LabelSystem/Barcodes/BarcodeSourceType.php +++ b/src/Services/LabelSystem/BarcodeScanner/BarcodeSourceType.php @@ -21,7 +21,7 @@ declare(strict_types=1); -namespace App\Services\LabelSystem\Barcodes; +namespace App\Services\LabelSystem\BarcodeScanner; /** * This enum represents the different types, where a barcode/QR-code can be generated from @@ -32,9 +32,14 @@ enum BarcodeSourceType case INTERNAL; /** This barcode is containing an internal part number (IPN) */ case IPN; + /** - * This barcode is a custom barcode from a third party like a vendor, which was set via the vendor_barcode - * field of a part lot. + * This barcode is a user defined barcode defined on a part lot */ - case VENDOR; + case USER_DEFINED; + + /** + * EIGP114 formatted barcodes like used by digikey, mouser, etc. + */ + case EIGP114; } \ No newline at end of file diff --git a/src/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResult.php b/src/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResult.php new file mode 100644 index 00000000..0b4f4b56 --- /dev/null +++ b/src/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResult.php @@ -0,0 +1,332 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services\LabelSystem\BarcodeScanner; + +/** + * This class represents the content of a EIGP114 barcode. + * Based on PR 811, EIGP 114.2018 (https://www.ecianow.org/assets/docs/GIPC/EIGP-114.2018%20ECIA%20Labeling%20Specification%20for%20Product%20and%20Shipment%20Identification%20in%20the%20Electronics%20Industry%20-%202D%20Barcode.pdf), + * , https://forum.digikey.com/t/digikey-product-labels-decoding-digikey-barcodes/41097 + */ +class EIGP114BarcodeScanResult implements BarcodeScanResultInterface +{ + + /** + * @var string|null Ship date in format YYYYMMDD + */ + public readonly ?string $shipDate; + + /** + * @var string|null Customer assigned part number – Optional based on + * agreements between Distributor and Supplier + */ + public readonly ?string $customerPartNumber; + + /** + * @var string|null Supplier assigned part number + */ + public readonly ?string $supplierPartNumber; + + /** + * @var int|null Quantity of product + */ + public readonly ?int $quantity; + + /** + * @var string|null Customer assigned purchase order number + */ + public readonly ?string $customerPO; + + /** + * @var string|null Line item number from PO. Required on Logistic Label when + * used on back of Packing Slip. See Section 4.9 + */ + public readonly ?string $customerPOLine; + + /** + * 9D - YYWW (Year and Week of Manufacture). ) If no date code is used + * for a particular part, this field should be populated with N/T + * to indicate the product is Not Traceable by this data field. + * @var string|null + */ + public readonly ?string $dateCode; + + /** + * 10D - YYWW (Year and Week of Manufacture). ) If no date code is used + * for a particular part, this field should be populated with N/T + * to indicate the product is Not Traceable by this data field. + * @var string|null + */ + public readonly ?string $alternativeDateCode; + + /** + * Traceability number assigned to a batch or group of items. If + * no lot code is used for a particular part, this field should be + * populated with N/T to indicate the product is Not Traceable + * by this data field. + * @var string|null + */ + public readonly ?string $lotCode; + + /** + * Country where part was manufactured. Two-letter code from + * ISO 3166 country code list + * @var string|null + */ + public readonly ?string $countryOfOrigin; + + /** + * @var string|null Unique alphanumeric number assigned by supplier + * 3S - Package ID for Inner Pack when part of a mixed Logistic + * Carton. Always used in conjunction with a mixed logistic label + * with a 5S data identifier for Package ID. + */ + public readonly ?string $packageId1; + + /** + * @var string|null + * 4S - Package ID for Logistic Carton with like items + */ + public readonly ?string $packageId2; + + /** + * @var string|null + * 5S - Package ID for Logistic Carton with mixed items + */ + public readonly ?string $packageId3; + + /** + * @var string|null Unique alphanumeric number assigned by supplier. + */ + public readonly ?string $packingListNumber; + + /** + * @var string|null Ship date in format YYYYMMDD + */ + public readonly ?string $serialNumber; + + /** + * @var string|null Code for sorting and classifying LEDs. Use when applicable + */ + public readonly ?string $binCode; + + /** + * @var int|null Sequential carton count in format “#/#” or “# of #” + */ + public readonly ?int $packageCount; + + /** + * @var string|null Alphanumeric string assigned by the supplier to distinguish + * from one closely-related design variation to another. Use as + * required or when applicable + */ + public readonly ?string $revisionNumber; + + /** + * @var string|null Digikey Extension: This is not represented in the ECIA spec, but the field being used is found in the ANSI MH10.8.2-2016 spec on which the ECIA spec is based. In the ANSI spec it is called First Level (Supplier Assigned) Part Number. + */ + public readonly ?string $digikeyPartNumber; + + /** + * @var string|null Digikey Extension: This can be shared across multiple invoices and time periods and is generated as an order enters our system from any vector (web, API, phone order, etc.) + */ + public readonly ?string $digikeySalesOrderNumber; + + /** + * @var string|null Digikey extension: This is typically assigned per shipment as items are being released to be picked in the warehouse. A SO can have many Invoice numbers + */ + public readonly ?string $digikeyInvoiceNumber; + + /** + * @var string|null Digikey extension: This is for internal DigiKey purposes and defines the label type. + */ + public readonly ?string $digikeyLabelType; + + /** + * @var string|null You will also see this as the last part of a URL for a product detail page. Ex https://www.digikey.com/en/products/detail/w%C3%BCrth-elektronik/860010672008/5726907 + */ + public readonly ?string $digikeyPartID; + + /** + * @var string|null Digikey Extension: For internal use of Digikey. Probably not needed + */ + public readonly ?string $digikeyNA; + + /** + * @var string|null Digikey Extension: This is a field of varying length used to keep the barcode approximately the same size between labels. It is safe to ignore. + */ + public readonly ?string $digikeyPadding; + + public readonly ?string $mouserPositionInOrder; + + public readonly ?string $mouserManufacturer; + + + + /** + * + * @param array $data The fields of the EIGP114 barcode, where the key is the field name and the value is the field content + */ + public function __construct(public readonly array $data) + { + //IDs per EIGP 114.2018 + $this->shipDate = $data['6D'] ?? null; + $this->customerPartNumber = $data['P'] ?? null; + $this->supplierPartNumber = $data['1P'] ?? null; + $this->quantity = isset($data['Q']) ? (int)$data['Q'] : null; + $this->customerPO = $data['K'] ?? null; + $this->customerPOLine = $data['4K'] ?? null; + $this->dateCode = $data['9D'] ?? null; + $this->alternativeDateCode = $data['10D'] ?? null; + $this->lotCode = $data['1T'] ?? null; + $this->countryOfOrigin = $data['4L'] ?? null; + $this->packageId1 = $data['3S'] ?? null; + $this->packageId2 = $data['4S'] ?? null; + $this->packageId3 = $data['5S'] ?? null; + $this->packingListNumber = $data['11K'] ?? null; + $this->serialNumber = $data['S'] ?? null; + $this->binCode = $data['33P'] ?? null; + $this->packageCount = isset($data['13Q']) ? (int)$data['13Q'] : null; + $this->revisionNumber = $data['2P'] ?? null; + //IDs used by Digikey + $this->digikeyPartNumber = $data['30P'] ?? null; + $this->digikeySalesOrderNumber = $data['1K'] ?? null; + $this->digikeyInvoiceNumber = $data['10K'] ?? null; + $this->digikeyLabelType = $data['11Z'] ?? null; + $this->digikeyPartID = $data['12Z'] ?? null; + $this->digikeyNA = $data['13Z'] ?? null; + $this->digikeyPadding = $data['20Z'] ?? null; + //IDs used by Mouser + $this->mouserPositionInOrder = $data['14K'] ?? null; + $this->mouserManufacturer = $data['1V'] ?? null; + } + + /** + * Tries to guess the vendor of the barcode based on the supplied data field. + * This is experimental and should not be relied upon. + * @return string|null The guessed vendor as smallcase string (e.g. "digikey", "mouser", etc.), or null if the vendor could not be guessed + */ + public function guessBarcodeVendor(): ?string + { + //If the barcode data contains the digikey extensions, we assume it is a digikey barcode + if (isset($this->data['13Z']) || isset($this->data['20Z']) || isset($this->data['12Z']) || isset($this->data['11Z'])) { + return 'digikey'; + } + + //If the barcode data contains the mouser extensions, we assume it is a mouser barcode + if (isset($this->data['14K']) || isset($this->data['1V'])) { + return 'mouser'; + } + + //According to this thread (https://github.com/inventree/InvenTree/issues/853), Newark/element14 codes contains a "3P" field + if (isset($this->data['3P'])) { + return 'element14'; + } + + return null; + } + + /** + * Checks if the given input is a valid format06 formatted data. + * This just perform a simple check for the header, the content might be malformed still. + * @param string $input + * @return bool + */ + public static function isFormat06Code(string $input): bool + { + //Code must begin with [)>06 + if(!str_starts_with($input, "[)>\u{1E}06\u{1D}")){ + return false; + } + + //Digikey does not put a trailer onto the barcode, so we just check for the header + + return true; + } + + /** + * Parses a format06 code a returns a new instance of this class + * @param string $input + * @return self + */ + public static function parseFormat06Code(string $input): self + { + //Ensure that the input is a valid format06 code + if (!self::isFormat06Code($input)) { + throw new \InvalidArgumentException("The given input is not a valid format06 code"); + } + + //Remove the trailer, if present + if (str_ends_with($input, "\u{1E}\u{04}")){ + $input = substr($input, 5, -2); + } + + //Split the input into the different fields (using the separator) + $parts = explode("\u{1D}", $input); + + //The first field is the format identifier, which we do not need + array_shift($parts); + + //Split the fields into key-value pairs + $results = []; + + foreach($parts as $part) { + //^ 0* ([1-9]? \d* [A-Z]) + //Start of the string Leading zeros are discarded Not a zero Any number of digits single uppercase Letter + // 00 1 4 K + + if(!preg_match('/^0*([1-9]?\d*[A-Z])/', $part, $matches)) { + throw new \LogicException("Could not parse field: $part"); + } + //Extract the key + $key = $matches[0]; + //Extract the field value + $fieldValue = substr($part, strlen($matches[0])); + + $results[$key] = $fieldValue; + } + + return new self($results); + } + + public function getDecodedForInfoMode(): array + { + $tmp = [ + 'Barcode type' => 'EIGP114', + 'Guessed vendor from barcode' => $this->guessBarcodeVendor() ?? 'Unknown', + ]; + + //Iterate over all fields of this object and add them to the array if they are not null + foreach((array) $this as $key => $value) { + //Skip data key + if ($key === 'data') { + continue; + } + if($value !== null) { + $tmp[$key] = $value; + } + } + + return $tmp; + } +} \ No newline at end of file diff --git a/src/Services/LabelSystem/Barcodes/BarcodeScanResult.php b/src/Services/LabelSystem/BarcodeScanner/LocalBarcodeScanResult.php similarity index 66% rename from src/Services/LabelSystem/Barcodes/BarcodeScanResult.php rename to src/Services/LabelSystem/BarcodeScanner/LocalBarcodeScanResult.php index 7f1315b3..050aff6f 100644 --- a/src/Services/LabelSystem/Barcodes/BarcodeScanResult.php +++ b/src/Services/LabelSystem/BarcodeScanner/LocalBarcodeScanResult.php @@ -21,14 +21,15 @@ declare(strict_types=1); -namespace App\Services\LabelSystem\Barcodes; +namespace App\Services\LabelSystem\BarcodeScanner; use App\Entity\LabelSystem\LabelSupportedElement; /** - * This class represents the result of a barcode scan, with the target type and the ID of the element + * This class represents the result of a barcode scan of a barcode that uniquely identifies a local entity, + * like an internally generated barcode or a barcode that was added manually to the system by a user */ -class BarcodeScanResult +class LocalBarcodeScanResult implements BarcodeScanResultInterface { public function __construct( public readonly LabelSupportedElement $target_type, @@ -36,4 +37,13 @@ class BarcodeScanResult public readonly BarcodeSourceType $source_type, ) { } + + public function getDecodedForInfoMode(): array + { + return [ + 'Barcode type' => $this->source_type->name, + 'Target type' => $this->target_type->name, + 'Target ID' => $this->target_id, + ]; + } } \ No newline at end of file diff --git a/src/Services/LabelSystem/Barcodes/BarcodeRedirector.php b/src/Services/LabelSystem/Barcodes/BarcodeRedirector.php deleted file mode 100644 index bc21b787..00000000 --- a/src/Services/LabelSystem/Barcodes/BarcodeRedirector.php +++ /dev/null @@ -1,89 +0,0 @@ -. - */ - -declare(strict_types=1); - -/** - * This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony). - * - * Copyright (C) 2019 - 2022 Jan Böhmer (https://github.com/jbtronics) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published - * by the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -namespace App\Services\LabelSystem\Barcodes; - -use App\Entity\LabelSystem\LabelSupportedElement; -use App\Entity\Parts\PartLot; -use Doctrine\ORM\EntityManagerInterface; -use Doctrine\ORM\EntityNotFoundException; -use InvalidArgumentException; -use Symfony\Component\Routing\Generator\UrlGeneratorInterface; - -/** - * @see \App\Tests\Services\LabelSystem\Barcodes\BarcodeRedirectorTest - */ -final class BarcodeRedirector -{ - public function __construct(private readonly UrlGeneratorInterface $urlGenerator, private readonly EntityManagerInterface $em) - { - } - - /** - * Determines the URL to which the user should be redirected, when scanning a QR code. - * - * @param BarcodeScanResult $barcodeScan The result of the barcode scan - * @return string the URL to which should be redirected - * - * @throws EntityNotFoundException - */ - public function getRedirectURL(BarcodeScanResult $barcodeScan): string - { - switch ($barcodeScan->target_type) { - case LabelSupportedElement::PART: - return $this->urlGenerator->generate('app_part_show', ['id' => $barcodeScan->target_id]); - case LabelSupportedElement::PART_LOT: - //Try to determine the part to the given lot - $lot = $this->em->find(PartLot::class, $barcodeScan->target_id); - if (!$lot instanceof PartLot) { - throw new EntityNotFoundException(); - } - - return $this->urlGenerator->generate('app_part_show', ['id' => $lot->getPart()->getID()]); - - case LabelSupportedElement::STORELOCATION: - return $this->urlGenerator->generate('part_list_store_location', ['id' => $barcodeScan->target_id]); - - default: - throw new InvalidArgumentException('Unknown $type: '.$barcodeScan->target_type->name); - } - } -} diff --git a/src/Services/LabelSystem/LabelExampleElementsGenerator.php b/src/Services/LabelSystem/LabelExampleElementsGenerator.php index 199d5f46..d344c929 100644 --- a/src/Services/LabelSystem/LabelExampleElementsGenerator.php +++ b/src/Services/LabelSystem/LabelExampleElementsGenerator.php @@ -146,11 +146,11 @@ final class LabelExampleElementsGenerator throw new InvalidArgumentException('$class must be an child of AbstractStructuralDBElement'); } - /** @var AbstractStructuralDBElement $parent */ + /** @var T $parent */ $parent = new $class(); $parent->setName('Example'); - /** @var AbstractStructuralDBElement $child */ + /** @var T $child */ $child = new $class(); $child->setName((new ReflectionClass($class))->getShortName()); $child->setParent($parent); diff --git a/src/Services/LabelSystem/LabelGenerator.php b/src/Services/LabelSystem/LabelGenerator.php index d2b20c92..bfb8d27b 100644 --- a/src/Services/LabelSystem/LabelGenerator.php +++ b/src/Services/LabelSystem/LabelGenerator.php @@ -62,10 +62,6 @@ final class LabelGenerator */ public function generateLabel(LabelOptions $options, object|array $elements): string { - if (!is_array($elements) && !is_object($elements)) { - throw new InvalidArgumentException('$element must be an object or an array of objects!'); - } - if (!is_array($elements)) { $elements = [$elements]; } diff --git a/src/Services/LabelSystem/LabelProfileDropdownHelper.php b/src/Services/LabelSystem/LabelProfileDropdownHelper.php index ac5020a2..773923ab 100644 --- a/src/Services/LabelSystem/LabelProfileDropdownHelper.php +++ b/src/Services/LabelSystem/LabelProfileDropdownHelper.php @@ -74,8 +74,7 @@ final class LabelProfileDropdownHelper $secure_class_name = $this->tagGenerator->getElementTypeCacheTag(LabelProfile::class); $key = 'profile_dropdown_'.$this->keyGenerator->generateKey().'_'.$secure_class_name.'_'.$type->value; - - /** @var LabelProfileRepository $repo */ + $repo = $this->entityManager->getRepository(LabelProfile::class); return $this->cache->get($key, function (ItemInterface $item) use ($repo, $type, $secure_class_name) { diff --git a/src/Services/LabelSystem/PlaceholderProviders/BarcodeProvider.php b/src/Services/LabelSystem/PlaceholderProviders/BarcodeProvider.php index dd70177f..400fef35 100644 --- a/src/Services/LabelSystem/PlaceholderProviders/BarcodeProvider.php +++ b/src/Services/LabelSystem/PlaceholderProviders/BarcodeProvider.php @@ -63,12 +63,24 @@ final class BarcodeProvider implements PlaceholderProviderInterface return $this->barcodeGenerator->generateHTMLBarcode($label_options, $label_target); } + if ('[[BARCODE_DATAMATRIX]]' === $placeholder) { + $label_options = new LabelOptions(); + $label_options->setBarcodeType(BarcodeType::DATAMATRIX); + return $this->barcodeGenerator->generateHTMLBarcode($label_options, $label_target); + } + if ('[[BARCODE_C39]]' === $placeholder) { $label_options = new LabelOptions(); $label_options->setBarcodeType(BarcodeType::CODE39); return $this->barcodeGenerator->generateHTMLBarcode($label_options, $label_target); } + if ('[[BARCODE_C93]]' === $placeholder) { + $label_options = new LabelOptions(); + $label_options->setBarcodeType(BarcodeType::CODE93); + return $this->barcodeGenerator->generateHTMLBarcode($label_options, $label_target); + } + if ('[[BARCODE_C128]]' === $placeholder) { $label_options = new LabelOptions(); $label_options->setBarcodeType(BarcodeType::CODE128); diff --git a/src/Services/LabelSystem/SandboxedTwigFactory.php b/src/Services/LabelSystem/SandboxedTwigFactory.php index cdf0594f..d6ea6968 100644 --- a/src/Services/LabelSystem/SandboxedTwigFactory.php +++ b/src/Services/LabelSystem/SandboxedTwigFactory.php @@ -122,8 +122,8 @@ final class SandboxedTwigFactory 'getFullPath', 'getPathArray', 'getSubelements', 'getChildren', 'isNotSelectable', ], AbstractCompany::class => ['getAddress', 'getPhoneNumber', 'getFaxNumber', 'getEmailAddress', 'getWebsite', 'getAutoProductUrl'], AttachmentContainingDBElement::class => ['getAttachments', 'getMasterPictureAttachment'], - Attachment::class => ['isPicture', 'is3DModel', 'isExternal', 'isSecure', 'isBuiltIn', 'getExtension', - 'getElement', 'getURL', 'getHost', 'getFilename', 'getAttachmentType', 'getShowInTable', ], + Attachment::class => ['isPicture', 'is3DModel', 'hasExternal', 'hasInternal', 'isSecure', 'isBuiltIn', 'getExtension', + 'getElement', 'getExternalPath', 'getHost', 'getFilename', 'getAttachmentType', 'getShowInTable'], AbstractParameter::class => ['getFormattedValue', 'getGroup', 'getSymbol', 'getValueMin', 'getValueMax', 'getValueTypical', 'getUnit', 'getValueText', ], MeasurementUnit::class => ['getUnit', 'isInteger', 'useSIPrefix'], diff --git a/src/Services/Parts/PartsTableActionHandler.php b/src/Services/Parts/PartsTableActionHandler.php index bcfb3a8a..616df229 100644 --- a/src/Services/Parts/PartsTableActionHandler.php +++ b/src/Services/Parts/PartsTableActionHandler.php @@ -22,6 +22,7 @@ declare(strict_types=1); */ namespace App\Services\Parts; +use App\Entity\Parts\StorageLocation; use Symfony\Bundle\SecurityBundle\Security; use App\Entity\Parts\Category; use App\Entity\Parts\Footprint; @@ -35,6 +36,9 @@ use InvalidArgumentException; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Component\Security\Core\Exception\AccessDeniedException; +use Symfony\Contracts\Translation\TranslatableInterface; + +use function Symfony\Component\Translation\t; final class PartsTableActionHandler { @@ -53,7 +57,6 @@ final class PartsTableActionHandler { $id_array = explode(',', $ids); - /** @var PartRepository $repo */ $repo = $this->entityManager->getRepository(Part::class); return $repo->getElementsFromIDArray($id_array); @@ -62,8 +65,9 @@ final class PartsTableActionHandler /** * @param Part[] $selected_parts * @return RedirectResponse|null Returns a redirect response if the user should be redirected to another page, otherwise null + * //@param-out list|array $errors */ - public function handleAction(string $action, array $selected_parts, ?int $target_id, ?string $redirect_url = null): ?RedirectResponse + public function handleAction(string $action, array $selected_parts, ?int $target_id, ?string $redirect_url = null, array &$errors = []): ?RedirectResponse { if ($action === 'add_to_project') { return new RedirectResponse( @@ -162,6 +166,29 @@ implode(',', array_map(static fn (PartLot $lot) => $lot->getID(), $part->getPart $this->denyAccessUnlessGranted('@measurement_units.read'); $part->setPartUnit(null === $target_id ? null : $this->entityManager->find(MeasurementUnit::class, $target_id)); break; + case 'change_location': + $this->denyAccessUnlessGranted('@storelocations.read'); + //Retrieve the first part lot and set the location for it + $part_lots = $part->getPartLots(); + if ($part_lots->count() > 0) { + if ($part_lots->count() > 1) { + $errors[] = [ + 'part' => $part, + 'message' => t('parts.table.action_handler.error.part_lots_multiple'), + ]; + break; + } + + $part_lot = $part_lots->first(); + $part_lot->setStorageLocation(null === $target_id ? null : $this->entityManager->find(StorageLocation::class, $target_id)); + } else { //Create a new part lot if there are none + $part_lot = new PartLot(); + $part_lot->setPart($part); + $part_lot->setInstockUnknown(true); //We do not know how many parts are in stock, so we set it to true + $part_lot->setStorageLocation(null === $target_id ? null : $this->entityManager->find(StorageLocation::class, $target_id)); + $this->entityManager->persist($part_lot); + } + break; default: throw new InvalidArgumentException('The given action is unknown! ('.$action.')'); diff --git a/src/Services/System/BannerHelper.php b/src/Services/System/BannerHelper.php index 1b6da52a..3d5daef9 100644 --- a/src/Services/System/BannerHelper.php +++ b/src/Services/System/BannerHelper.php @@ -40,9 +40,6 @@ class BannerHelper public function getBanner(): string { $banner = $this->partdb_banner; - if (!is_string($banner)) { - throw new \RuntimeException('The parameter "partdb.banner" must be a string.'); - } if ($banner === '') { $banner_path = $this->project_dir .DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'banner.md'; diff --git a/src/Services/Tools/StatisticsHelper.php b/src/Services/Tools/StatisticsHelper.php index c1cace21..00bb05c9 100644 --- a/src/Services/Tools/StatisticsHelper.php +++ b/src/Services/Tools/StatisticsHelper.php @@ -122,7 +122,6 @@ class StatisticsHelper throw new InvalidArgumentException('No count for the given type available!'); } - /** @var EntityRepository $repo */ $repo = $this->em->getRepository($arr[$type]); return $repo->count([]); diff --git a/src/Services/Tools/TagFinder.php b/src/Services/Tools/TagFinder.php index bfc7c9db..80c89e0f 100644 --- a/src/Services/Tools/TagFinder.php +++ b/src/Services/Tools/TagFinder.php @@ -66,7 +66,7 @@ class TagFinder $qb->select('p.tags') ->from(Part::class, 'p') - ->where('p.tags LIKE ?1') + ->where('ILIKE(p.tags, ?1) = TRUE') ->setMaxResults($options['query_limit']) //->orderBy('RAND()') ->setParameter(1, '%'.$keyword.'%'); diff --git a/src/Services/Trees/NodesListBuilder.php b/src/Services/Trees/NodesListBuilder.php index 0f94d79d..e65fa37e 100644 --- a/src/Services/Trees/NodesListBuilder.php +++ b/src/Services/Trees/NodesListBuilder.php @@ -23,9 +23,11 @@ declare(strict_types=1); namespace App\Services\Trees; use App\Entity\Base\AbstractDBElement; +use App\Entity\Base\AbstractNamedDBElement; use App\Entity\Base\AbstractStructuralDBElement; use App\Repository\AttachmentContainingDBElementRepository; use App\Repository\DBElementRepository; +use App\Repository\NamedDBElementRepository; use App\Repository\StructuralDBElementRepository; use App\Services\Cache\ElementCacheTagGenerator; use App\Services\Cache\UserCacheKeyGenerator; @@ -51,7 +53,7 @@ class NodesListBuilder * Gets a flattened hierarchical tree. Useful for generating option lists. * In difference to the Repository Function, the results here are cached. * - * @template T of AbstractDBElement + * @template T of AbstractNamedDBElement * * @param string $class_name the class name of the entity you want to retrieve * @phpstan-param class-string $class_name @@ -69,7 +71,7 @@ class NodesListBuilder $ids = $this->getFlattenedIDs($class_name, $parent); //Retrieve the elements from the IDs, the order is the same as in the $ids array - /** @var DBElementRepository $repo */ + /** @var NamedDBElementRepository $repo */ $repo = $this->em->getRepository($class_name); if ($repo instanceof AttachmentContainingDBElementRepository) { @@ -81,7 +83,9 @@ class NodesListBuilder /** * This functions returns the (cached) list of the IDs of the elements for the flattened tree. + * @template T of AbstractNamedDBElement * @param string $class_name + * @phpstan-param class-string $class_name * @param AbstractStructuralDBElement|null $parent * @return int[] */ @@ -96,10 +100,12 @@ class NodesListBuilder // Invalidate when groups, an element with the class or the user changes $item->tag(['groups', 'tree_list', $this->keyGenerator->generateKey(), $secure_class_name]); - /** @var StructuralDBElementRepository $repo */ + /** @var NamedDBElementRepository $repo */ $repo = $this->em->getRepository($class_name); - return array_map(static fn(AbstractDBElement $element) => $element->getID(), $repo->getFlatList($parent)); + return array_map(static fn(AbstractDBElement $element) => $element->getID(), + //@phpstan-ignore-next-line For some reason phpstan does not understand that $repo is a StructuralDBElementRepository + $repo->getFlatList($parent)); }); } diff --git a/src/Services/Trees/TreeViewGenerator.php b/src/Services/Trees/TreeViewGenerator.php index 81b64840..23d6a406 100644 --- a/src/Services/Trees/TreeViewGenerator.php +++ b/src/Services/Trees/TreeViewGenerator.php @@ -33,6 +33,7 @@ use App\Entity\Parts\Supplier; use App\Entity\ProjectSystem\Project; use App\Helpers\Trees\TreeViewNode; use App\Helpers\Trees\TreeViewNodeIterator; +use App\Repository\NamedDBElementRepository; use App\Repository\StructuralDBElementRepository; use App\Services\Cache\ElementCacheTagGenerator; use App\Services\Cache\UserCacheKeyGenerator; @@ -219,6 +220,7 @@ class TreeViewGenerator * The treeview is generic, that means the href are null and ID values are set. * * @param string $class The class for which the tree should be generated + * @phpstan-param class-string $class * @param AbstractStructuralDBElement|null $parent the parent the root elements should have * * @return TreeViewNode[] @@ -232,12 +234,12 @@ class TreeViewGenerator throw new InvalidArgumentException('$parent must be of the type $class!'); } - /** @var StructuralDBElementRepository $repo */ + /** @var NamedDBElementRepository $repo */ $repo = $this->em->getRepository($class); //If we just want a part of a tree, don't cache it if ($parent instanceof AbstractStructuralDBElement) { - return $repo->getGenericNodeTree($parent); + return $repo->getGenericNodeTree($parent); //@phpstan-ignore-line PHPstan does not seem to recognize, that we have a StructuralDBElementRepository here, which have 1 argument } $secure_class_name = $this->tagGenerator->getElementTypeCacheTag($class); @@ -246,7 +248,7 @@ class TreeViewGenerator return $this->cache->get($key, function (ItemInterface $item) use ($repo, $parent, $secure_class_name) { // Invalidate when groups, an element with the class or the user changes $item->tag(['groups', 'tree_treeview', $this->keyGenerator->generateKey(), $secure_class_name]); - return $repo->getGenericNodeTree($parent); + return $repo->getGenericNodeTree($parent); //@phpstan-ignore-line }); } } diff --git a/src/Validator/Constraints/UniqueObjectCollection.php b/src/Validator/Constraints/UniqueObjectCollection.php index c71fcc5d..6548494e 100644 --- a/src/Validator/Constraints/UniqueObjectCollection.php +++ b/src/Validator/Constraints/UniqueObjectCollection.php @@ -43,12 +43,12 @@ class UniqueObjectCollection extends Constraint * @param array|string $fields the combination of fields that must contain unique values or a set of options */ public function __construct( - array $options = null, - string $message = null, - callable $normalizer = null, - array $groups = null, + ?array $options = null, + ?string $message = null, + ?callable $normalizer = null, + ?array $groups = null, mixed $payload = null, - array|string $fields = null, + array|string|null $fields = null, public bool $allowNull = true, ) { parent::__construct($options, $groups, $payload); diff --git a/src/Validator/Constraints/ValidGoogleAuthCode.php b/src/Validator/Constraints/ValidGoogleAuthCode.php index 482af35c..180d346e 100644 --- a/src/Validator/Constraints/ValidGoogleAuthCode.php +++ b/src/Validator/Constraints/ValidGoogleAuthCode.php @@ -31,8 +31,8 @@ class ValidGoogleAuthCode extends Constraint * @param TwoFactorInterface|null $user The user to use for the validation process, if null, the current user is used */ public function __construct( - array $options = null, - array $groups = null, + ?array $options = null, + ?array $groups = null, mixed $payload = null, public ?TwoFactorInterface $user = null) { diff --git a/symfony.lock b/symfony.lock index 8f230496..c7471b73 100644 --- a/symfony.lock +++ b/symfony.lock @@ -139,9 +139,6 @@ "florianv/swap-bundle": { "version": "5.0.x-dev" }, - "friendsofphp/proxy-manager-lts": { - "version": "v1.0.5" - }, "gregwar/captcha": { "version": "v1.1.7" }, @@ -172,9 +169,6 @@ "./config/packages/knpu_oauth2_client.yaml" ] }, - "laminas/laminas-code": { - "version": "3.4.1" - }, "league/html-to-markdown": { "version": "4.8.2" }, @@ -414,15 +408,15 @@ "version": "v4.2.3" }, "symfony/console": { - "version": "5.3", + "version": "6.4", "recipe": { "repo": "github.com/symfony/recipes", - "branch": "master", + "branch": "main", "version": "5.3", - "ref": "da0c8be8157600ad34f10ff0c9cc91232522e047" + "ref": "1781ff40d8a17d87cf53f8d4cf0c8346ed2bb461" }, "files": [ - "./bin/console" + "bin/console" ] }, "symfony/css-selector": { @@ -474,15 +468,16 @@ "version": "v4.2.3" }, "symfony/flex": { - "version": "1.19", + "version": "2.4", "recipe": { "repo": "github.com/symfony/recipes", "branch": "main", - "version": "1.0", - "ref": "146251ae39e06a95be0fe3d13c807bcf3938b172" + "version": "2.4", + "ref": "52e9754527a15e2b79d9a610f98185a1fe46622a" }, "files": [ - ".env" + ".env", + ".env.dev" ] }, "symfony/form": { @@ -612,9 +607,6 @@ "symfony/property-info": { "version": "v4.2.3" }, - "symfony/proxy-manager-bridge": { - "version": "v5.2.1" - }, "symfony/routing": { "version": "6.2", "recipe": { diff --git a/templates/attachment_list.html.twig b/templates/attachment_list.html.twig index abb6f4ad..3ff45700 100644 --- a/templates/attachment_list.html.twig +++ b/templates/attachment_list.html.twig @@ -34,6 +34,8 @@ {{ form_row(filterForm.attachmentType) }} {{ form_row(filterForm.targetType) }} {{ form_row(filterForm.showInTable) }} + {{ form_row(filterForm.originalFileName) }} + {{ form_row(filterForm.externalLink) }} {{ form_row(filterForm.lastModified) }} {{ form_row(filterForm.addedDate) }} {{ form_row(filterForm.dbId) }} diff --git a/templates/base.html.twig b/templates/base.html.twig index 3b4cebba..e7c641c6 100644 --- a/templates/base.html.twig +++ b/templates/base.html.twig @@ -38,7 +38,7 @@ - {% if not app.user.theme is defined %} + {% if not app.user.theme is defined or app.user.theme is null %} {% set theme = global_theme %} {% else %} {% set theme = app.user.theme %} diff --git a/templates/components/datatables.macro.html.twig b/templates/components/datatables.macro.html.twig index c32294ba..5ce0f23f 100644 --- a/templates/components/datatables.macro.html.twig +++ b/templates/components/datatables.macro.html.twig @@ -54,6 +54,7 @@ + diff --git a/templates/form/filter_types_layout.html.twig b/templates/form/filter_types_layout.html.twig index e99e6b62..cae9e3ea 100644 --- a/templates/form/filter_types_layout.html.twig +++ b/templates/form/filter_types_layout.html.twig @@ -54,7 +54,7 @@ {{ form_widget(form.name, {"attr": {"data-pages--parameters-autocomplete-target": "name"}}) }} {{ form_widget(form.symbol, {"attr": {"data-pages--parameters-autocomplete-target": "symbol", "data-pages--latex-preview-target": "input"}}) }} {{ form_widget(form.value) }} - {{ form_widget(form.unit, {"attr": {"data-pages--parameters-autocomplete-target": "unit", "data-pages--latex-preview-target": "input"}}) }} + {{ form_widget(form.unit, {"attr": {"data-pages--parameters-autocomplete-target": "unit", "data-pages--latex-preview-target": "input"}}) }} {{ form_widget(form.value_text) }} + + + + + + {% endif %} {% endfor %} diff --git a/templates/label_system/dialog.html.twig b/templates/label_system/dialog.html.twig index a845d12e..50db99e7 100644 --- a/templates/label_system/dialog.html.twig +++ b/templates/label_system/dialog.html.twig @@ -59,7 +59,7 @@
{{ profile.name ?? '-' }} - {% if profile %} + {% if profile and is_granted("edit", profile) %} {% endif %} @@ -91,6 +91,25 @@
+ + {% if is_granted("@labels.read_profiles") %} + + {% endif %} + +
+
+
+ {{ form_widget(form.save_profile_name) }} + {{ form_widget(form.save_profile) }} +
+ {{ form_errors(form.save_profile_name) }} +
+
+ diff --git a/templates/label_system/scanner/scanner.html.twig b/templates/label_system/scanner/scanner.html.twig index 39f4e140..1f978a9b 100644 --- a/templates/label_system/scanner/scanner.html.twig +++ b/templates/label_system/scanner/scanner.html.twig @@ -23,4 +23,22 @@ {{ form_end(form) }} + + {% if infoModeData %} +
+

{% trans %}label_scanner.decoded_info.title{% endtrans %}

+ + + + {% for key, value in infoModeData %} + + + + + {% endfor %} + +
{{ key }}{{ value }}
+ + {% endif %} + {% endblock %} diff --git a/templates/parts/edit/edit_form_styles.html.twig b/templates/parts/edit/edit_form_styles.html.twig index 6658fa80..c2a89b6a 100644 --- a/templates/parts/edit/edit_form_styles.html.twig +++ b/templates/parts/edit/edit_form_styles.html.twig @@ -75,7 +75,7 @@ {{ form_widget(form.value_min) }}{{ form_errors(form.value_min) }} {{ form_widget(form.value_typical) }}{{ form_errors(form.value_typical) }} {{ form_widget(form.value_max) }}{{ form_errors(form.value_max) }} - {{ form_widget(form.unit, {"attr": {"data-pages--parameters-autocomplete-target": "unit", "data-pages--latex-preview-target": "input"}}) }}{{ form_errors(form.unit) }} + {{ form_widget(form.unit, {"attr": {"data-pages--parameters-autocomplete-target": "unit", "data-pages--latex-preview-target": "input"}}) }}{{ form_errors(form.unit) }} {{ form_widget(form.value_text) }}{{ form_errors(form.value_text) }} {{ form_widget(form.group) }}{{ form_errors(form.group) }} @@ -108,7 +108,7 @@
{{ form_row(form.comment) }} {{ form_row(form.owner) }} - {{ form_row(form.vendor_barcode) }} + {{ form_row(form.user_barcode) }}
@@ -152,35 +152,32 @@ {% set attach = form.vars.value %} + {# @var \App\Entity\Attachments\Attachment attach #} {% if attach is not null %} - {% if attachment_manager.fileExisting(attach) %} - {% if not attach.external %} -

-
+ {% if not attach.hasInternal() and attach.external %} +
- {{ attach.filename }} + {% trans %}attachment.external_only{% endtrans %} -
- +
+ {% elseif attachment_manager.isInternalFileExisting(attach) %} +
+
+ {{ attach.filename|u.truncate(25, ' ...') }} +
+
+
{{ attachment_manager.humanFileSize(attach) }} - -
- {% else %} -

-
- - {% trans %}attachment.external{% endtrans %} - -
- {% endif %} + + {% if attach.secure %} -
+
{% trans %}attachment.secure{% endtrans %} -
+ {% endif %} {% if attach.secure and not is_granted('show_private', attach) %} @@ -190,16 +187,21 @@ {% trans %}attachment.preview.alt{% endtrans %} {% else %} - {% trans %}attachment.view{% endtrans %} + {% trans %}attachment.view_local{% endtrans %} {% endif %} {% else %} -

-
+
{% trans %}attachment.file_not_found{% endtrans %} -
+ + {% endif %} + {% if attach.external %} + {% endif %} {% endif %} diff --git a/templates/parts/info/_attachments_info.html.twig b/templates/parts/info/_attachments_info.html.twig index 995c69eb..4f7c0455 100644 --- a/templates/parts/info/_attachments_info.html.twig +++ b/templates/parts/info/_attachments_info.html.twig @@ -24,18 +24,16 @@ {{ attachment.name }} {{ attachment.attachmentType.fullPath }} - {% if attachment.external %} - {{ attachment.host }} - {% else %} + {% if attachment.hasInternal() %} {{ attachment.filename }} {% endif %} - {% if attachment.external %} + {% if not attachment.hasInternal() %} - {% trans %}attachment.external{% endtrans %} + {% trans %}attachment.external_only{% endtrans %} - {% elseif attachment_manager.fileExisting(attachment) %} + {% elseif attachment_manager.internalFileExisting(attachment) %} {{ attachment_manager.humanFileSize(attachment) }} @@ -58,14 +56,19 @@
- + + + + - + diff --git a/templates/tools/server_infos/_partdb.html.twig b/templates/tools/server_infos/_partdb.html.twig index 52d19c93..ca2b82a8 100644 --- a/templates/tools/server_infos/_partdb.html.twig +++ b/templates/tools/server_infos/_partdb.html.twig @@ -11,7 +11,7 @@ Symfony environment - {{ enviroment }} (Debug: {{ helper.boolean_badge(is_debug) }}) + {{ environment }} (Debug: {{ helper.boolean_badge(is_debug) }}) Part-DB Instance name @@ -42,8 +42,8 @@ {{ helper.boolean_badge(demo_mode) }} - GPDR Compliance Mode - {{ helper.boolean_badge(gpdr_compliance) }} + GDPR Compliance Mode + {{ helper.boolean_badge(gdpr_compliance) }} Users diff --git a/tests/API/Endpoints/AttachmentsEndpointTest.php b/tests/API/Endpoints/AttachmentsEndpointTest.php index 8084db5c..8f4d7e77 100644 --- a/tests/API/Endpoints/AttachmentsEndpointTest.php +++ b/tests/API/Endpoints/AttachmentsEndpointTest.php @@ -91,7 +91,7 @@ class AttachmentsEndpointTest extends AuthenticatedApiTestCase //Attachment must be set (not null) $array = json_decode($response->getContent(), true); - self::assertNotNull($array['media_url']); + self::assertNotNull($array['internal_path']); //Attachment must be private self::assertJsonContains([ diff --git a/tests/Controller/RedirectControllerTest.php b/tests/Controller/RedirectControllerTest.php index 029c93f5..f62c05c3 100644 --- a/tests/Controller/RedirectControllerTest.php +++ b/tests/Controller/RedirectControllerTest.php @@ -115,6 +115,62 @@ class RedirectControllerTest extends WebTestCase $this->client->followRedirects(false); $this->client->request('GET', $input_path); - $this->assertResponseRedirects($redirect_path); + self::assertResponseRedirects($redirect_path); } + + /** + * Test if the user is redirected to the localized version of a page, based on his settings. + * We simulate the situation of a reverse proxy here, by adding a prefix to the path. + * + * @dataProvider urlAddLocaleDataProvider + * @group slow + */ + public function testAddLocaleReverseProxy(?string $user_locale, string $input_path, string $redirect_path): void + { + //Input path remains unchanged, as this is what the server receives from the proxy + + //Redirect path must contain the proxy prefix + $redirect_path = 'http://localhost'. '/proxy' . $redirect_path; + + /** @var User $user */ + $user = $this->userRepo->findOneBy(['name' => 'user']); + //Set user locale + $user->setLanguage($user_locale); + $this->em->flush(); + + $this->client->followRedirects(false); + $this->client->request('GET', $input_path, [], [], ['HTTP_X_FORWARDED_PREFIX' => '/proxy']); + self::assertResponseRedirects($redirect_path); + } + + + /** + * Test if the user is redirected to the localized version of a page, based on his settings. + * We simulate the situation of serving Part-DB in a subfolder here. + * + * @dataProvider urlAddLocaleDataProvider + * @group slow + */ + public function testAddLocaleSubfolder(?string $user_locale, string $input_path, string $redirect_path): void + { + //Prefix our path with the proxy prefix + $input_path = '/folder'.$input_path; + + //Redirect path is absolute + $redirect_path = 'http://localhost'. '/folder' . $redirect_path; + + /** @var User $user */ + $user = $this->userRepo->findOneBy(['name' => 'user']); + //Set user locale + $user->setLanguage($user_locale); + $this->em->flush(); + + $this->client->followRedirects(false); + $this->client->request('GET', $input_path, [], [], [ + 'SCRIPT_FILENAME' => '/var/www/html/folder/public/index.php', + 'PHP_SELF' => '/folder/index.php', + ]); + self::assertResponseRedirects($redirect_path); + } + } diff --git a/tests/Entity/Attachments/AttachmentTest.php b/tests/Entity/Attachments/AttachmentTest.php index a2179e53..bac28fd4 100644 --- a/tests/Entity/Attachments/AttachmentTest.php +++ b/tests/Entity/Attachments/AttachmentTest.php @@ -59,14 +59,15 @@ class AttachmentTest extends TestCase $this->assertNull($attachment->getAttachmentType()); $this->assertFalse($attachment->isPicture()); - $this->assertFalse($attachment->isExternal()); + $this->assertFalse($attachment->hasExternal()); + $this->assertFalse($attachment->hasInternal()); $this->assertFalse($attachment->isSecure()); $this->assertFalse($attachment->isBuiltIn()); $this->assertFalse($attachment->is3DModel()); $this->assertFalse($attachment->getShowInTable()); - $this->assertEmpty($attachment->getPath()); + $this->assertEmpty($attachment->getInternalPath()); + $this->assertEmpty($attachment->getExternalPath()); $this->assertEmpty($attachment->getName()); - $this->assertEmpty($attachment->getURL()); $this->assertEmpty($attachment->getExtension()); $this->assertNull($attachment->getElement()); $this->assertEmpty($attachment->getFilename()); @@ -119,82 +120,63 @@ class AttachmentTest extends TestCase $attachment->setElement($element); } - public function externalDataProvider(): \Iterator - { - yield ['', false]; - yield ['%MEDIA%/foo/bar.txt', false]; - yield ['%BASE%/foo/bar.jpg', false]; - yield ['%FOOTPRINTS%/foo/bar.jpg', false]; - yield ['%FOOTPRINTS3D%/foo/bar.jpg', false]; - yield ['%SECURE%/test.txt', false]; - yield ['%test%/foo/bar.ghp', true]; - yield ['foo%MEDIA%/foo.jpg', true]; - yield ['foo%MEDIA%/%BASE%foo.jpg', true]; - } - /** - * @dataProvider externalDataProvider - */ - public function testIsExternal($path, $expected): void + public static function extensionDataProvider(): \Iterator { - $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); - $this->assertSame($expected, $attachment->isExternal()); - } - - public function extensionDataProvider(): \Iterator - { - yield ['%MEDIA%/foo/bar.txt', null, 'txt']; - yield ['%MEDIA%/foo/bar.JPeg', null, 'jpeg']; - yield ['%MEDIA%/foo/bar.JPeg', 'test.txt', 'txt']; - yield ['%MEDIA%/foo/bar', null, '']; - yield ['%MEDIA%/foo.bar', 'bar', '']; - yield ['http://google.de', null, null]; - yield ['https://foo.bar', null, null]; - yield ['https://foo.bar/test.jpeg', null, null]; - yield ['test', null, null]; - yield ['test.txt', null, null]; + yield ['%MEDIA%/foo/bar.txt', 'http://google.de', null, 'txt']; + yield ['%MEDIA%/foo/bar.JPeg', 'https://foo.bar', null, 'jpeg']; + yield ['%MEDIA%/foo/bar.JPeg', null, 'test.txt', 'txt']; + yield ['%MEDIA%/foo/bar', 'https://foo.bar/test.jpeg', null, '']; + yield ['%MEDIA%/foo.bar', 'test.txt', 'bar', '']; + yield [null, 'http://google.de', null, null]; + yield [null, 'https://foo.bar', null, null]; + yield [null, ',https://foo.bar/test.jpeg', null, null]; + yield [null, 'test', null, null]; + yield [null, 'test.txt', null, null]; } /** * @dataProvider extensionDataProvider */ - public function testGetExtension($path, $originalFilename, $expected): void + public function testGetExtension(?string $internal_path, ?string $external_path, ?string $originalFilename, ?string $expected): void { $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); + $this->setProtectedProperty($attachment, 'internal_path', $internal_path); + $this->setProtectedProperty($attachment, 'external_path', $external_path); $this->setProtectedProperty($attachment, 'original_filename', $originalFilename); $this->assertSame($expected, $attachment->getExtension()); } - public function pictureDataProvider(): \Iterator + public static function pictureDataProvider(): \Iterator { - yield ['%MEDIA%/foo/bar.txt', false]; - yield ['https://test.de/picture.jpeg', true]; - yield ['https://test.de/picture.png?test=fdsj&width=34', true]; - yield ['https://invalid.invalid/file.txt', false]; - yield ['http://infsf.inda/file.zip?test', false]; - yield ['https://test.de', true]; - yield ['https://invalid.com/invalid/pic', true]; - yield ['%MEDIA%/foo/bar.jpeg', true]; - yield ['%MEDIA%/foo/bar.webp', true]; - yield ['%MEDIA%/foo', false]; - yield ['%SECURE%/foo.txt/test', false]; + yield [null, '%MEDIA%/foo/bar.txt', false]; + yield [null, 'https://test.de/picture.jpeg', true]; + yield [null, 'https://test.de/picture.png?test=fdsj&width=34', true]; + yield [null, 'https://invalid.invalid/file.txt', false]; + yield [null, 'http://infsf.inda/file.zip?test', false]; + yield [null, 'https://test.de', true]; + yield [null, 'https://invalid.com/invalid/pic', true]; + yield ['%MEDIA%/foo/bar.jpeg', 'https://invalid.invalid/file.txt', true]; + yield ['%MEDIA%/foo/bar.webp', '', true]; + yield ['%MEDIA%/foo', '', false]; + yield ['%SECURE%/foo.txt/test', 'https://test.de/picture.jpeg', false]; } /** * @dataProvider pictureDataProvider */ - public function testIsPicture($path, $expected): void + public function testIsPicture(?string $internal_path, ?string $external_path, bool $expected): void { $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); + $this->setProtectedProperty($attachment, 'internal_path', $internal_path); + $this->setProtectedProperty($attachment, 'external_path', $external_path); $this->assertSame($expected, $attachment->isPicture()); } - public function builtinDataProvider(): \Iterator + public static function builtinDataProvider(): \Iterator { yield ['', false]; + yield [null, false]; yield ['%MEDIA%/foo/bar.txt', false]; yield ['%BASE%/foo/bar.txt', false]; yield ['/', false]; @@ -205,14 +187,14 @@ class AttachmentTest extends TestCase /** * @dataProvider builtinDataProvider */ - public function testIsBuiltIn($path, $expected): void + public function testIsBuiltIn(?string $path, $expected): void { $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); + $this->setProtectedProperty($attachment, 'internal_path', $path); $this->assertSame($expected, $attachment->isBuiltIn()); } - public function hostDataProvider(): \Iterator + public static function hostDataProvider(): \Iterator { yield ['%MEDIA%/foo/bar.txt', null]; yield ['https://www.google.de/test.txt', 'www.google.de']; @@ -222,55 +204,60 @@ class AttachmentTest extends TestCase /** * @dataProvider hostDataProvider */ - public function testGetHost($path, $expected): void + public function testGetHost(?string $path, ?string $expected): void { $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); + $this->setProtectedProperty($attachment, 'external_path', $path); $this->assertSame($expected, $attachment->getHost()); } - public function filenameProvider(): \Iterator + public static function filenameProvider(): \Iterator { - yield ['%MEDIA%/foo/bar.txt', null, 'bar.txt']; - yield ['%MEDIA%/foo/bar.JPeg', 'test.txt', 'test.txt']; - yield ['https://www.google.de/test.txt', null, null]; + yield ['%MEDIA%/foo/bar.txt', 'https://www.google.de/test.txt', null, 'bar.txt']; + yield ['%MEDIA%/foo/bar.JPeg', 'https://www.google.de/foo.txt', 'test.txt', 'test.txt']; + yield ['', 'https://www.google.de/test.txt', null, null]; + yield [null, 'https://www.google.de/test.txt', null, null]; } /** * @dataProvider filenameProvider */ - public function testGetFilename($path, $original_filename, $expected): void + public function testGetFilename(?string $internal_path, ?string $external_path, ?string $original_filename, ?string $expected): void { $attachment = new PartAttachment(); - $this->setProtectedProperty($attachment, 'path', $path); + $this->setProtectedProperty($attachment, 'internal_path', $internal_path); + $this->setProtectedProperty($attachment, 'external_path', $external_path); $this->setProtectedProperty($attachment, 'original_filename', $original_filename); $this->assertSame($expected, $attachment->getFilename()); } - public function testSetURL(): void + public function testSetExternalPath(): void { $attachment = new PartAttachment(); //Set URL - $attachment->setURL('https://google.de'); - $this->assertSame('https://google.de', $attachment->getURL()); + $attachment->setExternalPath('https://google.de'); + $this->assertSame('https://google.de', $attachment->getExternalPath()); - //Ensure that an empty url does not overwrite the existing one - $attachment->setPath('%MEDIA%/foo/bar.txt'); - $attachment->setURL(' '); - $this->assertSame('%MEDIA%/foo/bar.txt', $attachment->getPath()); + //Ensure that changing the external path does reset the internal one + $attachment->setInternalPath('%MEDIA%/foo/bar.txt'); + $attachment->setExternalPath('https://example.de'); + $this->assertSame(null, $attachment->getInternalPath()); + + //Ensure that setting the same value to the external path again doesn't reset the internal one + $attachment->setExternalPath('https://google.de'); + $attachment->setInternalPath('%MEDIA%/foo/bar.txt'); + $attachment->setExternalPath('https://google.de'); + $this->assertSame('%MEDIA%/foo/bar.txt', $attachment->getInternalPath()); + + //Ensure that resetting the external path doesn't reset the internal one + $attachment->setInternalPath('%MEDIA%/foo/bar.txt'); + $attachment->setExternalPath(''); + $this->assertSame('%MEDIA%/foo/bar.txt', $attachment->getInternalPath()); //Ensure that spaces get replaced by %20 - $attachment->setURL('https://google.de/test file.txt'); - $this->assertSame('https://google.de/test%20file.txt', $attachment->getURL()); - } - - public function testSetURLForbiddenURL(): void - { - $attachment = new PartAttachment(); - - $this->expectException(InvalidArgumentException::class); - $attachment->setURL('%MEDIA%/foo/bar.txt'); + $attachment->setExternalPath('https://example.de/test file.txt'); + $this->assertSame('https://example.de/test%20file.txt', $attachment->getExternalPath()); } public function testIsURL(): void diff --git a/tests/Entity/Parameters/PartParameterTest.php b/tests/Entity/Parameters/PartParameterTest.php index c42b3cbe..0e426d52 100644 --- a/tests/Entity/Parameters/PartParameterTest.php +++ b/tests/Entity/Parameters/PartParameterTest.php @@ -67,6 +67,19 @@ class PartParameterTest extends TestCase yield ['10.23 V (9 V ... 11 V) [Test]', 9, 10.23, 11, 'V', 'Test']; } + public function formattedValueWithLatexDataProvider(): \Iterator + { + yield ['Text Test', null, null, null, 'V', 'Text Test']; + yield ['10.23 $\mathrm{V}$', null, 10.23, null, 'V', '']; + yield ['10.23 $\mathrm{V}$ [Text]', null, 10.23, null, 'V', 'Text']; + yield ['max. 10.23 $\mathrm{V}$', null, null, 10.23, 'V', '']; + yield ['max. 10.23 [Text]', null, null, 10.23, '', 'Text']; + yield ['min. 10.23 $\mathrm{V}$', 10.23, null, null, 'V', '']; + yield ['10.23 $\mathrm{V}$ ... 11 $\mathrm{V}$', 10.23, null, 11, 'V', '']; + yield ['10.23 $\mathrm{V}$ (9 $\mathrm{V}$ ... 11 $\mathrm{V}$)', 9, 10.23, 11, 'V', '']; + yield ['10.23 $\mathrm{V}$ (9 $\mathrm{V}$ ... 11 $\mathrm{V}$) [Test]', 9, 10.23, 11, 'V', 'Test']; + } + /** * @dataProvider valueWithUnitDataProvider */ @@ -117,4 +130,22 @@ class PartParameterTest extends TestCase $param->setValueText($text); $this->assertSame($expected, $param->getFormattedValue()); } + + /** + * @dataProvider formattedValueWithLatexDataProvider + * + * @param float $min + * @param float $typical + * @param float $max + */ + public function testGetFormattedValueWithLatex(string $expected, ?float $min, ?float $typical, ?float $max, string $unit, string $text): void + { + $param = new PartParameter(); + $param->setUnit($unit); + $param->setValueMin($min); + $param->setValueTypical($typical); + $param->setValueMax($max); + $param->setValueText($text); + $this->assertSame($expected, $param->getFormattedValue(true)); + } } diff --git a/tests/Helpers/IPAnonymizerTest.php b/tests/Helpers/IPAnonymizerTest.php new file mode 100644 index 00000000..40030ea7 --- /dev/null +++ b/tests/Helpers/IPAnonymizerTest.php @@ -0,0 +1,44 @@ +. + */ + +namespace App\Tests\Helpers; + +use App\Helpers\IPAnonymizer; +use PHPUnit\Framework\TestCase; + +class IPAnonymizerTest extends TestCase +{ + + public function anonymizeDataProvider(): \Generator + { + yield ['127.0.0.0', '127.0.0.23']; + yield ['2001:db8:85a3::', '2001:0db8:85a3:0000:0000:8a2e:0370:7334']; + //RFC 4007 format + yield ['fe80::', 'fe80::1fc4:15d8:78db:2319%enp4s0']; + } + + /** + * @dataProvider anonymizeDataProvider + */ + public function testAnonymize(string $expected, string $input): void + { + $this->assertSame($expected, IPAnonymizer::anonymize($input)); + } +} diff --git a/tests/Serializer/PartNormalizerTest.php b/tests/Serializer/PartNormalizerTest.php index cd93d93c..9baff750 100644 --- a/tests/Serializer/PartNormalizerTest.php +++ b/tests/Serializer/PartNormalizerTest.php @@ -80,7 +80,10 @@ class PartNormalizerTest extends WebTestCase $this->assertFalse($this->service->supportsDenormalization(new \stdClass(), Part::class)); $this->assertFalse($this->service->supportsDenormalization('string', Part::class)); $this->assertFalse($this->service->supportsDenormalization(['a' => 'b'], \stdClass::class)); - $this->assertTrue($this->service->supportsDenormalization(['a' => 'b'], Part::class)); + + //Only support denormalization, if CSV import + $this->assertFalse($this->service->supportsDenormalization(['a' => 'b'], Part::class)); + $this->assertTrue($this->service->supportsDenormalization(['a' => 'b'], Part::class, null, ['partdb_import' => true])); } public function testDenormalize(): void diff --git a/tests/Services/EntityMergers/Mergers/PartMergerTest.php b/tests/Services/EntityMergers/Mergers/PartMergerTest.php index fc60ca23..bf02744a 100644 --- a/tests/Services/EntityMergers/Mergers/PartMergerTest.php +++ b/tests/Services/EntityMergers/Mergers/PartMergerTest.php @@ -148,7 +148,7 @@ class PartMergerTest extends KernelTestCase public function testMergeOfPartLots(): void { $lot1 = (new PartLot())->setAmount(2)->setNeedsRefill(true); - $lot2 = (new PartLot())->setInstockUnknown(true)->setVendorBarcode('test'); + $lot2 = (new PartLot())->setInstockUnknown(true)->setUserBarcode('test'); $lot3 = (new PartLot())->setDescription('lot3')->setAmount(3); $lot4 = (new PartLot())->setDescription('lot4')->setComment('comment'); diff --git a/tests/Services/InfoProviderSystem/DTOs/ParameterDTOTest.php b/tests/Services/InfoProviderSystem/DTOs/ParameterDTOTest.php index 7bbebf0b..ee4ca39a 100644 --- a/tests/Services/InfoProviderSystem/DTOs/ParameterDTOTest.php +++ b/tests/Services/InfoProviderSystem/DTOs/ParameterDTOTest.php @@ -70,6 +70,16 @@ class ParameterDTOTest extends TestCase 'test' ]; + //Test ranges + yield [ + new ParameterDTO('test', value_min: 1.0, value_max: 2.0, unit: 'kg', symbol: 'm', group: 'test'), + 'test', + '1.0..2.0', + 'kg', + 'm', + 'test' + ]; + //Test ranges with tilde yield [ new ParameterDTO('test', value_min: -1.0, value_max: 2.0, unit: 'kg', symbol: 'm', group: 'test'), diff --git a/tests/Services/InfoProviderSystem/DTOtoEntityConverterTest.php b/tests/Services/InfoProviderSystem/DTOtoEntityConverterTest.php index 6c6637c3..396969e2 100644 --- a/tests/Services/InfoProviderSystem/DTOtoEntityConverterTest.php +++ b/tests/Services/InfoProviderSystem/DTOtoEntityConverterTest.php @@ -30,6 +30,7 @@ use App\Services\InfoProviderSystem\DTOs\PartDetailDTO; use App\Services\InfoProviderSystem\DTOs\PriceDTO; use App\Services\InfoProviderSystem\DTOs\PurchaseInfoDTO; use App\Services\InfoProviderSystem\DTOtoEntityConverter; +use PhpParser\Node\Param; use PHPUnit\Framework\TestCase; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; @@ -150,9 +151,9 @@ class DTOtoEntityConverterTest extends WebTestCase public function testConvertPart(): void { - $parameters = [new ParameterDTO('Test', 'Test')]; - $datasheets = [new FileDTO('https://invalid.invalid/file.pdf'), new FileDTO('https://invalid.invalid/file.pdf', name: 'TestFile')]; - $images = [new FileDTO('https://invalid.invalid/image.png'), new FileDTO('https://invalid.invalid/image2.png', name: 'TestImage2'), new FileDTO('https://invalid.invalid/image2.png')]; + $parameters = [new ParameterDTO('Test', 'Test'), new ParameterDTO('Duplicate', 'Test'), new ParameterDTO('Test', 'test', group: "Other"), new ParameterDTO('Duplicate', 'ds')]; + $datasheets = [new FileDTO('https://invalid.invalid/file.pdf'), new FileDTO('https://invalid.invalid/file.pdf', name: 'TestFile'), new FileDTO('https://invalid.invalid/file2.pdf', name: 'Duplicate'), new FileDTO('https://invalid.invalid/file3.pdf', name: 'Duplicate')]; + $images = [new FileDTO('https://invalid.invalid/image.png'), new FileDTO('https://invalid.invalid/image2.png', name: 'TestImage2'), new FileDTO('https://invalid.invalid/image3.png', name: "Duplicate")]; $shopping_infos = [new PurchaseInfoDTO('TestDistributor', 'TestOrderNumber', [new PriceDTO(1, "10.0", 'EUR')])]; $dto = new PartDetailDTO( @@ -182,15 +183,31 @@ class DTOtoEntityConverterTest extends WebTestCase $this->assertCount(count($parameters), $entity->getParameters()); $this->assertCount(count($shopping_infos), $entity->getOrderdetails()); + //Test that duplicate parameters get renamed: + $this->assertSame('Test', $entity->getParameters()[0]->getName()); + $this->assertSame('Duplicate', $entity->getParameters()[1]->getName()); + $this->assertSame('Test', $entity->getParameters()[2]->getName()); + $this->assertSame('Duplicate (2)', $entity->getParameters()[3]->getName()); + //Datasheets and images are stored as attachments and the duplicates, should be filtered out - $this->assertCount(3, $entity->getAttachments()); + $this->assertCount(6, $entity->getAttachments()); //The attachments should have the name of the named duplicate file $image1 = $entity->getAttachments()[0]; $this->assertSame('Main image', $image1->getName()); $image1 = $entity->getAttachments()[1]; + $this->assertSame('TestImage2', $image1->getName()); $datasheet = $entity->getAttachments()[2]; + $this->assertSame('Duplicate', $datasheet->getName()); + + $datasheet = $entity->getAttachments()[3]; $this->assertSame('TestFile', $datasheet->getName()); + + $datasheet = $entity->getAttachments()[4]; + $this->assertSame('Duplicate (2)', $datasheet->getName()); + + $datasheet = $entity->getAttachments()[5]; + $this->assertSame('Duplicate (3)', $datasheet->getName()); } } diff --git a/tests/Services/LabelSystem/Barcodes/BarcodeRedirectorTest.php b/tests/Services/LabelSystem/BarcodeScanner/BarcodeRedirectorTest.php similarity index 76% rename from tests/Services/LabelSystem/Barcodes/BarcodeRedirectorTest.php rename to tests/Services/LabelSystem/BarcodeScanner/BarcodeRedirectorTest.php index b2b94bab..58030f93 100644 --- a/tests/Services/LabelSystem/Barcodes/BarcodeRedirectorTest.php +++ b/tests/Services/LabelSystem/BarcodeScanner/BarcodeRedirectorTest.php @@ -39,12 +39,12 @@ declare(strict_types=1); * along with this program. If not, see . */ -namespace App\Tests\Services\LabelSystem\Barcodes; +namespace App\Tests\Services\LabelSystem\BarcodeScanner; use App\Entity\LabelSystem\LabelSupportedElement; -use App\Services\LabelSystem\Barcodes\BarcodeRedirector; -use App\Services\LabelSystem\Barcodes\BarcodeScanResult; -use App\Services\LabelSystem\Barcodes\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\BarcodeRedirector; +use App\Services\LabelSystem\BarcodeScanner\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\LocalBarcodeScanResult; use Doctrine\ORM\EntityNotFoundException; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; @@ -60,17 +60,17 @@ final class BarcodeRedirectorTest extends KernelTestCase public static function urlDataProvider(): \Iterator { - yield [new BarcodeScanResult(LabelSupportedElement::PART, 1, BarcodeSourceType::INTERNAL), '/en/part/1']; + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 1, BarcodeSourceType::INTERNAL), '/en/part/1']; //Part lot redirects to Part info page (Part lot 1 is associated with part 3) - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 1, BarcodeSourceType::INTERNAL), '/en/part/3']; - yield [new BarcodeScanResult(LabelSupportedElement::STORELOCATION, 1, BarcodeSourceType::INTERNAL), '/en/store_location/1/parts']; + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 1, BarcodeSourceType::INTERNAL), '/en/part/3']; + yield [new LocalBarcodeScanResult(LabelSupportedElement::STORELOCATION, 1, BarcodeSourceType::INTERNAL), '/en/store_location/1/parts']; } /** * @dataProvider urlDataProvider * @group DB */ - public function testGetRedirectURL(BarcodeScanResult $scanResult, string $url): void + public function testGetRedirectURL(LocalBarcodeScanResult $scanResult, string $url): void { $this->assertSame($url, $this->service->getRedirectURL($scanResult)); } @@ -79,7 +79,7 @@ final class BarcodeRedirectorTest extends KernelTestCase { $this->expectException(EntityNotFoundException::class); //If we encounter an invalid lot, we must throw an exception - $this->service->getRedirectURL(new BarcodeScanResult(LabelSupportedElement::PART_LOT, + $this->service->getRedirectURL(new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 12_345_678, BarcodeSourceType::INTERNAL)); } } diff --git a/tests/Services/LabelSystem/Barcodes/BarcodeScanHelperTest.php b/tests/Services/LabelSystem/BarcodeScanner/BarcodeScanHelperTest.php similarity index 56% rename from tests/Services/LabelSystem/Barcodes/BarcodeScanHelperTest.php rename to tests/Services/LabelSystem/BarcodeScanner/BarcodeScanHelperTest.php index 65cb02d4..74ae068a 100644 --- a/tests/Services/LabelSystem/Barcodes/BarcodeScanHelperTest.php +++ b/tests/Services/LabelSystem/BarcodeScanner/BarcodeScanHelperTest.php @@ -39,13 +39,14 @@ declare(strict_types=1); * along with this program. If not, see . */ -namespace App\Tests\Services\LabelSystem\Barcodes; +namespace App\Tests\Services\LabelSystem\BarcodeScanner; use App\Entity\LabelSystem\LabelSupportedElement; -use App\Services\LabelSystem\Barcodes\BarcodeScanHelper; -use App\Services\LabelSystem\Barcodes\BarcodeScanResult; -use App\Services\LabelSystem\Barcodes\BarcodeSourceType; -use Com\Tecnick\Barcode\Barcode; +use App\Services\LabelSystem\BarcodeScanner\BarcodeScanHelper; +use App\Services\LabelSystem\BarcodeScanner\BarcodeScanResultInterface; +use App\Services\LabelSystem\BarcodeScanner\BarcodeSourceType; +use App\Services\LabelSystem\BarcodeScanner\EIGP114BarcodeScanResult; +use App\Services\LabelSystem\BarcodeScanner\LocalBarcodeScanResult; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; class BarcodeScanHelperTest extends WebTestCase @@ -61,56 +62,67 @@ class BarcodeScanHelperTest extends WebTestCase public static function dataProvider(): \Iterator { //QR URL content: - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 1, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 1, BarcodeSourceType::INTERNAL), 'https://localhost:8000/scan/lot/1']; - yield [new BarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), 'https://localhost:8000/scan/part/123']; - yield [new BarcodeScanResult(LabelSupportedElement::STORELOCATION, 4, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::STORELOCATION, 4, BarcodeSourceType::INTERNAL), 'http://foo.bar/part-db/scan/location/4']; //Current Code39 format: - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), 'L0010']; - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 123, BarcodeSourceType::INTERNAL), 'L0123']; - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 123456, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 123456, BarcodeSourceType::INTERNAL), 'L123456']; - yield [new BarcodeScanResult(LabelSupportedElement::PART, 2, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 2, BarcodeSourceType::INTERNAL), 'P0002']; //Development phase Code39 barcodes: - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), 'L-000010']; - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 10, BarcodeSourceType::INTERNAL), 'Lß000010']; - yield [new BarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), 'P-000123']; - yield [new BarcodeScanResult(LabelSupportedElement::STORELOCATION, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::STORELOCATION, 123, BarcodeSourceType::INTERNAL), 'S-000123']; - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 12_345_678, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 12_345_678, BarcodeSourceType::INTERNAL), 'L-12345678']; //Legacy storelocation format - yield [new BarcodeScanResult(LabelSupportedElement::STORELOCATION, 336, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::STORELOCATION, 336, BarcodeSourceType::INTERNAL), '$L00336']; - yield [new BarcodeScanResult(LabelSupportedElement::STORELOCATION, 12_345_678, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::STORELOCATION, 12_345_678, BarcodeSourceType::INTERNAL), '$L12345678']; //Legacy Part format - yield [new BarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), '0000123']; - yield [new BarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 123, BarcodeSourceType::INTERNAL), '00001236']; - yield [new BarcodeScanResult(LabelSupportedElement::PART, 1_234_567, BarcodeSourceType::INTERNAL), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 1_234_567, BarcodeSourceType::INTERNAL), '12345678']; //Test IPN barcode - yield [new BarcodeScanResult(LabelSupportedElement::PART, 2, BarcodeSourceType::IPN), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART, 2, BarcodeSourceType::IPN), 'IPN123']; //Test vendor barcode - yield [new BarcodeScanResult(LabelSupportedElement::PART_LOT, 2,BarcodeSourceType::VENDOR), + yield [new LocalBarcodeScanResult(LabelSupportedElement::PART_LOT, 2,BarcodeSourceType::USER_DEFINED), 'lot2_vendor_barcode']; + + $eigp114Result = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + ]); + + yield [$eigp114Result, "[)>\x1E06\x1DP596-777A1-ND\x1D1PXAF4444\x1DQ3\x1D10D1452\x1D1TBF1103\x1D4LUS\x1E\x04"]; } public static function invalidDataProvider(): \Iterator @@ -131,7 +143,7 @@ class BarcodeScanHelperTest extends WebTestCase /** * @dataProvider dataProvider */ - public function testNormalizeBarcodeContent(BarcodeScanResult $expected, string $input): void + public function testNormalizeBarcodeContent(BarcodeScanResultInterface $expected, string $input): void { $this->assertEquals($expected, $this->service->scanBarcodeContent($input)); } diff --git a/tests/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResultTest.php b/tests/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResultTest.php new file mode 100644 index 00000000..aa5e4fbc --- /dev/null +++ b/tests/Services/LabelSystem/BarcodeScanner/EIGP114BarcodeScanResultTest.php @@ -0,0 +1,154 @@ +. + */ + +namespace App\Tests\Services\LabelSystem\BarcodeScanner; + +use App\Services\LabelSystem\BarcodeScanner\EIGP114BarcodeScanResult; +use PHPUnit\Framework\TestCase; + +class EIGP114BarcodeScanResultTest extends TestCase +{ + + public function testGuessBarcodeVendor(): void + { + //Generic barcode: + + $barcode = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + ]); + + $this->assertNull($barcode->guessBarcodeVendor()); + + //Digikey barcode: + $barcode = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + '13Z' => 'Digi-Key', + ]); + $this->assertEquals('digikey', $barcode->guessBarcodeVendor()); + + //Mouser barcode: + $barcode = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + '1V' => 'Mouser', + ]); + + $this->assertEquals('mouser', $barcode->guessBarcodeVendor()); + + //Farnell barcode: + $barcode = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + '3P' => 'Farnell', + ]); + + $this->assertEquals('element14', $barcode->guessBarcodeVendor()); + } + + public function testIsFormat06Code(): void + { + $this->assertFalse(EIGP114BarcodeScanResult::isFormat06Code('')); + $this->assertFalse(EIGP114BarcodeScanResult::isFormat06Code('test')); + $this->assertFalse(EIGP114BarcodeScanResult::isFormat06Code('12232435ew4rf')); + + //Valid code (with trailer) + $this->assertTrue(EIGP114BarcodeScanResult::isFormat06Code("[)>\x1E06\x1DP596-777A1-ND\x1D1PXAF4444\x1DQ3\x1D10D1452\x1D1TBF1103\x1D4LUS\x1E\x04")); + + //Valid code (digikey, without trailer) + $this->assertTrue(EIGP114BarcodeScanResult::isFormat06Code("[)>\x1e06\x1dPQ1045-ND\x1d1P364019-01\x1d30PQ1045-ND\x1dK12432 TRAVIS FOSS P\x1d1K85732873\x1d10K103332956\x1d9D231013\x1d1TQJ13P\x1d11K1\x1d4LTW\x1dQ3\x1d11ZPICK\x1d12Z7360988\x1d13Z999999\x1d20Z0000000000000000000000000000000000000000000000000000000000000000000000000000000000000")); + } + + public function testParseFormat06CodeInvalid(): void + { + $this->expectException(\InvalidArgumentException::class); + EIGP114BarcodeScanResult::parseFormat06Code(''); + } + + public function testParseFormat06Code(): void + { + $barcode = EIGP114BarcodeScanResult::parseFormat06Code("[)>\x1E06\x1DP596-777A1-ND\x1D1PXAF4444\x1DQ3\x1D10D1452\x1D1TBF1103\x1D4LUS\x1E\x04"); + $this->assertEquals([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + ], $barcode->data); + } + + public function testDataParsing(): void + { + $barcode = new EIGP114BarcodeScanResult([ + 'P' => '596-777A1-ND', + '1P' => 'XAF4444', + 'Q' => '3', + '10D' => '1452', + '1T' => 'BF1103', + '4L' => 'US', + ]); + + $this->assertEquals('596-777A1-ND', $barcode->customerPartNumber); + $this->assertEquals('XAF4444', $barcode->supplierPartNumber); + $this->assertEquals(3, $barcode->quantity); + $this->assertEquals('1452', $barcode->alternativeDateCode); + $this->assertEquals('BF1103', $barcode->lotCode); + $this->assertEquals('US', $barcode->countryOfOrigin); + } + + public function testDigikeyParsing(): void + { + $barcode = EIGP114BarcodeScanResult::parseFormat06Code("[)>\x1e06\x1dPQ1045-ND\x1d1P364019-01\x1d30PQ1045-ND\x1dK12432 TRAVIS FOSS P\x1d1K85732873\x1d10K103332956\x1d9D231013\x1d1TQJ13P\x1d11K1\x1d4LTW\x1dQ3\x1d11ZPICK\x1d12Z7360988\x1d13Z999999\x1d20Z0000000000000000000000000000000000000000000000000000000000000000000000000000000000000"); + + $this->assertEquals('digikey', $barcode->guessBarcodeVendor()); + + $this->assertEquals('Q1045-ND', $barcode->customerPartNumber); + $this->assertEquals('364019-01', $barcode->supplierPartNumber); + $this->assertEquals(3, $barcode->quantity); + $this->assertEquals('231013', $barcode->dateCode); + $this->assertEquals('QJ13P', $barcode->lotCode); + $this->assertEquals('TW', $barcode->countryOfOrigin); + $this->assertEquals('Q1045-ND', $barcode->digikeyPartNumber); + $this->assertEquals('85732873', $barcode->digikeySalesOrderNumber); + $this->assertEquals('103332956', $barcode->digikeyInvoiceNumber); + $this->assertEquals('PICK', $barcode->digikeyLabelType); + $this->assertEquals('7360988', $barcode->digikeyPartID); + $this->assertEquals('999999', $barcode->digikeyNA); + $this->assertEquals('0000000000000000000000000000000000000000000000000000000000000000000000000000000000000', $barcode->digikeyPadding); + } +} diff --git a/tests/Services/LabelSystem/SandboxedTwigFactoryTest.php b/tests/Services/LabelSystem/SandboxedTwigFactoryTest.php index 13a06b54..495a2f45 100644 --- a/tests/Services/LabelSystem/SandboxedTwigFactoryTest.php +++ b/tests/Services/LabelSystem/SandboxedTwigFactoryTest.php @@ -80,10 +80,10 @@ class SandboxedTwigFactoryTest extends WebTestCase ']; yield [' {{ location.isRoot}} {{ location.isChildOf(location) }} {{ location.comment }} {{ location.level }} - {{ location.fullPath }} {% set arr = location.pathArray %} {% set child = location.children %} {{location.childrenNotSelectable}} + {{ location.fullPath }} {% set arr = location.pathArray %} {% set child = location.children %} {{location.notSelectable}} ']; yield [' - {{ part.reviewNeeded }} {{ part.tags }} {{ part.mass }} + {{ part.needsReview }} {{ part.tags }} {{ part.mass }} ']; yield [' {{ entity_type(part) is object }} diff --git a/translations/messages.cs.xlf b/translations/messages.cs.xlf index 19b3e3f4..bde090df 100644 --- a/translations/messages.cs.xlf +++ b/translations/messages.cs.xlf @@ -11196,7 +11196,7 @@ Element 3 log.user_login.ip_anonymize_hint - Pokud poslední číslice IP adresy chybí, je povolen režim GPDR, ve kterém jsou IP adresy anynomizovány. + Pokud poslední číslice IP adresy chybí, je povolen režim GDPR, ve kterém jsou IP adresy anynomizovány. diff --git a/translations/messages.da.xlf b/translations/messages.da.xlf index bc6f7db5..d7258986 100644 --- a/translations/messages.da.xlf +++ b/translations/messages.da.xlf @@ -11201,7 +11201,7 @@ Oversættelsen log.user_login.ip_anonymize_hint - Hvis de sidste cifre i IP-adressen mangler, aktiveres DSGV-tilstanden, hvor IP-adresserne anonymiseres. + Hvis de sidste cifre i IP-adressen mangler, aktiveres databeskyttelsesforordningen mode, hvor IP-adresserne anonymiseres. diff --git a/translations/messages.de.xlf b/translations/messages.de.xlf index a9e9f313..24e140c8 100644 --- a/translations/messages.de.xlf +++ b/translations/messages.de.xlf @@ -779,18 +779,10 @@ Der Benutzer wird alle Zwei-Faktor-Authentifizierungmethoden neu einrichten müs Löschen - - - Part-DB1\templates\AdminPages\_attachments.html.twig:41 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - + - attachment.external - Extern + attachment.external_only + Nur Extern @@ -805,7 +797,7 @@ Der Benutzer wird alle Zwei-Faktor-Authentifizierungmethoden neu einrichten müs Thumbnail des Dateianhanges - + Part-DB1\templates\AdminPages\_attachments.html.twig:52 Part-DB1\templates\Parts\edit\_attachments.html.twig:50 @@ -815,8 +807,8 @@ Der Benutzer wird alle Zwei-Faktor-Authentifizierungmethoden neu einrichten müs Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 - attachment.view - Anzeigen + attachment.view_local + Lokale Datei anzeigen @@ -2118,14 +2110,14 @@ Subelemente werden beim Löschen nach oben verschoben. Vorschaubild - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 - attachment.download - Herunterladen + attachment.download_local + Lokale Datei downloaden @@ -3848,7 +3840,7 @@ Beachten Sie außerdem, dass ihr Account ohne Zwei-Faktor-Authentifizierung nich tfa_trustedDevices.explanation - Bei der Überprüfung des zweiten Faktors, kann der aktuelle Computer als vertrauenswürdig gekennzeichnet werden, daher es werden keine Zwei-Faktor-Überprüfungen mehr an diesem Computer benötigt. + Bei der Überprüfung des zweiten Faktors, kann der aktuelle Computer als vertrauenswürdig gekennzeichnet werden, daher werden keine Zwei-Faktor-Überprüfungen mehr an diesem Computer benötigt. Wenn Sie dies fehlerhafterweise gemacht haben oder ein Computer nicht mehr vertrauenswürdig ist, können Sie hier den Status <i>aller </i>Computer zurücksetzen. @@ -11192,7 +11184,7 @@ Element 3 log.user_login.ip_anonymize_hint - Wenn die letzten Stellen der IP-Adresse fehlen, dann ist der DSGV Modus aktiviert, bei dem IP-Adressen anonymisiert werden. + Wenn die letzten Stellen der IP-Adresse fehlen, dann ist der DSGVO Modus aktiviert, bei dem IP-Adressen anonymisiert werden. @@ -12223,5 +12215,155 @@ Bitte beachten Sie, dass Sie sich nicht als deaktivierter Benutzer ausgeben kön Erzeugter Code + + + info_providers.search.show_existing_part + Bestehendes Bauteil anzeigen + + + + + info_providers.search.edit_existing_part + Bestehendes Bauteil bearbeiten + + + + + info_providers.search.existing_part_found.short + Bauteil existiert bereits + + + + + info_providers.search.existing_part_found + Dieses Bauteil (oder ein sehr ähnliches) existiert bereits in der Datenbank. Bitte überprüfen Sie, ob es das gleiche ist und ob Sie dies erneut erstellen möchten! + + + + + info_providers.search.update_existing_part + Bestehendes Bauteil von Informationsquelle aktualisieren + + + + + part.create_from_info_provider.no_category_yet + Die Kategorie konnte nicht automatisch von der Informationsquelle ermittelt werden. Überprüfen Sie die Daten und wählen Sie die Kategorie händisch aus. + + + + + part_lot.edit.user_barcode + Benutzer-Barcode + + + + + scan_dialog.mode.user + Benutzer definierter Barcode (in Bauteilebestand konfiguriert) + + + + + scan_dialog.mode.eigp + EIGP 114 Barcode (z. B. der Datamatrix code auf Digikey und Mouser Bauteilen) + + + + + scan_dialog.info_mode + Info Modus (Barcode dekodieren und Inhalte anzeigen, aber nicht zum Bauteil weiterleiten) + + + + + label_scanner.decoded_info.title + Dekodierte Informationen + + + + + label_generator.edit_profiles + Profile bearbeiten + + + + + label_generator.profile_name_empty + Der Profilname darf nicht leer sein! + + + + + label_generator.save_profile_name + Profilname + + + + + label_generator.save_profile + Als neues Profil speichern + + + + + label_generator.profile_saved + Profil gespeichert! + + + + + entity.export.flash.error.no_entities + Es gibt keine Entitäten zu exportieren! + + + + + attachment.table.internal_file + Interne Datei + + + + + attachment.table.external_link + Externer link + + + + + attachment.view_external.view_at + Auf %host% anzeigen + + + + + attachment.view_external + Externe Version anzeigen + + + + + part.table.actions.error + Es traten %count% Fehler bei der Aktion auf! + + + + + part.table.actions.error_detail + %part_name% (ID: %part_id%): %message% + + + + + part_list.action.action.change_location + Lagerort ändern (nur für Bauteile mit einzelnem Bestand) + + + + + parts.table.action_handler.error.part_lots_multiple + Dieses Bauteil enthält mehr als einen Bestand. Ändere den Lagerort bei Hand, um auszuwählen, welcher Bestand geändert werden soll. + + diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index 82c3003b..e974d34a 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -242,7 +242,7 @@ part.info.timetravel_hint - Please note that this feature is experimental, so the info may not be correct.]]> + This is how the part appeared before %timestamp%. <i>Please note that this feature is experimental, so the info may not be correct.</i> @@ -731,10 +731,10 @@ user.edit.tfa.disable_tfa_message - all active two-factor authentication methods of the user and delete the backup codes! -
-The user will have to set up all two-factor authentication methods again and print new backup codes!

-Only do this if you are absolutely sure about the identity of the user (seeking help), otherwise the account could be compromised by an attacker!]]>
+ This will disable <b>all active two-factor authentication methods of the user</b> and delete the <b>backup codes</b>! +<br> +The user will have to set up all two-factor authentication methods again and print new backup codes! <br><br> +<b>Only do this if you are absolutely sure about the identity of the user (seeking help), otherwise the account could be compromised by an attacker!</b>
@@ -780,18 +780,10 @@ The user will have to set up all two-factor authentication methods again and pri Delete - - - Part-DB1\templates\AdminPages\_attachments.html.twig:41 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - + - attachment.external - External + attachment.external_only + External only @@ -806,7 +798,7 @@ The user will have to set up all two-factor authentication methods again and pri Attachment thumbnail - + Part-DB1\templates\AdminPages\_attachments.html.twig:52 Part-DB1\templates\Parts\edit\_attachments.html.twig:50 @@ -816,8 +808,8 @@ The user will have to set up all two-factor authentication methods again and pri Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 - attachment.view - View + attachment.view_local + View Local Copy @@ -893,9 +885,9 @@ The user will have to set up all two-factor authentication methods again and pri entity.delete.message - -Sub elements will be moved upwards.]]> + This can not be undone! +<br> +Sub elements will be moved upwards. @@ -1449,7 +1441,7 @@ Sub elements will be moved upwards.]]> homepage.github.text - GitHub project page]]> + Source, downloads, bug reports, to-do-list etc. can be found on <a href="%href%" class="link-external" target="_blank">GitHub project page</a> @@ -1471,7 +1463,7 @@ Sub elements will be moved upwards.]]> homepage.help.text - GitHub page]]> + Help and tips can be found in Wiki the <a href="%href%" class="link-external" target="_blank">GitHub page</a> @@ -1713,7 +1705,7 @@ Sub elements will be moved upwards.]]> email.pw_reset.fallback - %url% and enter the following info]]> + If this does not work for you, go to <a href="%url%">%url%</a> and enter the following info @@ -1743,7 +1735,7 @@ Sub elements will be moved upwards.]]> email.pw_reset.valid_unit %date% - %date%.]]> + The reset token will be valid until <i>%date%</i>. @@ -2119,14 +2111,14 @@ Sub elements will be moved upwards.]]> Preview picture - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 - attachment.download - Download + attachment.download_local + Download Local Copy @@ -3586,8 +3578,8 @@ Sub elements will be moved upwards.]]> tfa_google.disable.confirm_message - -Also note that without two-factor authentication, your account is no longer as well protected against attackers!]]> + If you disable the Authenticator App, all backup codes will be deleted, so you may need to reprint them.<br> +Also note that without two-factor authentication, your account is no longer as well protected against attackers! @@ -3607,7 +3599,7 @@ Also note that without two-factor authentication, your account is no longer as w tfa_google.step.download - Google Authenticator oder FreeOTP Authenticator)]]> + Download an authenticator app (e.g. <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Google Authenticator</a> oder <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=org.fedorahosted.freeotp">FreeOTP Authenticator</a>) @@ -3849,8 +3841,8 @@ Also note that without two-factor authentication, your account is no longer as w tfa_trustedDevices.explanation - all computers here.]]> + When checking the second factor, the current computer can be marked as trustworthy, so no more two-factor checks on this computer are needed. +If you have done this incorrectly or if a computer is no longer trusted, you can reset the status of <i>all </i>computers here. @@ -5321,7 +5313,7 @@ If you have done this incorrectly or if a computer is no longer trusted, you can label_options.lines_mode.help - Twig documentation and Wiki for more information.]]> + If you select Twig here, the content field is interpreted as Twig template. See <a href="https://twig.symfony.com/doc/3.x/templates.html">Twig documentation</a> and <a href="https://docs.part-db.de/usage/labels.html#twig-mode">Wiki</a> for more information. @@ -9312,7 +9304,7 @@ Element 3 part.filter.orderdetails_count - Number of orderdetails + Number of order details @@ -9396,25 +9388,25 @@ Element 3 filter.parameter_value_constraint.operator.< - + Typ. Value < filter.parameter_value_constraint.operator.> - ]]> + Typ. Value > filter.parameter_value_constraint.operator.<= - + Typ. Value <= filter.parameter_value_constraint.operator.>= - =]]> + Typ. Value >= @@ -9522,7 +9514,7 @@ Element 3 parts_list.search.searching_for - %keyword%]]> + Searching parts with keyword <b>%keyword%</b> @@ -10182,13 +10174,13 @@ Element 3 project.builds.number_of_builds_possible - %max_builds% builds of this project.]]> + You have enough stocked to build <b>%max_builds%</b> builds of this project. project.builds.check_project_status - "%project_status%". You should check if you really want to build the project with this status!]]> + The current project status is <b>"%project_status%"</b>. You should check if you really want to build the project with this status! @@ -10290,7 +10282,7 @@ Element 3 entity.select.add_hint - to create nested structures, e.g. "Node 1->Node 1.1"]]> + Use -> to create nested structures, e.g. "Node 1->Node 1.1" @@ -10314,13 +10306,13 @@ Element 3 homepage.first_steps.introduction - documentation or start to creating the following data structures:]]> + Your database is still empty. You might want to read the <a href="%url%">documentation</a> or start to creating the following data structures: homepage.first_steps.create_part - create a new part.]]> + Or you can directly <a href="%url%">create a new part</a>. @@ -10332,7 +10324,7 @@ Element 3 homepage.forum.text - discussion forum]]> + For questions about Part-DB use the <a href="%href%" class="link-external" target="_blank">discussion forum</a> @@ -10986,7 +10978,7 @@ Element 3 parts.import.help_documentation - documentation for more information on the file format.]]> + See the <a href="%link%">documentation</a> for more information on the file format. @@ -11166,7 +11158,7 @@ Element 3 part.filter.lessThanDesired - + In stock less than desired (total amount < min. amount) @@ -11196,7 +11188,7 @@ Element 3 log.user_login.ip_anonymize_hint - If the last digits of the IP address are missing, then the GPDR mode is enabled, in which IP addresses are anynomized. + If the last digits of the IP address are missing, then the GDPR mode is enabled, in which IP addresses are anynomized. @@ -11978,13 +11970,13 @@ Please note, that you can not impersonate a disabled user. If you try you will g part.merge.confirm.title - %other% into %target%?]]> + Do you really want to merge <b>%other%</b> into <b>%target%</b>? part.merge.confirm.message - %other% will be deleted, and the part will be saved with the shown information.]]> + <b>%other%</b> will be deleted, and the part will be saved with the shown information. @@ -12222,10 +12214,160 @@ Please note, that you can not impersonate a disabled user. If you try you will g - + tfa.check.code.confirmation Generated code + + + info_providers.search.show_existing_part + Show existing part + + + + + info_providers.search.edit_existing_part + Edit existing part + + + + + info_providers.search.existing_part_found.short + Part already existing + + + + + info_providers.search.existing_part_found + This part (or a very similar one) was already found in the database. Please check if it is the same and if you want to create it again! + + + + + info_providers.search.update_existing_part + Update existing part from info provider + + + + + part.create_from_info_provider.no_category_yet + Category could not be automatically determined by the info provider. Review the data and select the category manually. + + + + + part_lot.edit.user_barcode + User barcode + + + + + scan_dialog.mode.user + User defined barcode (configured at part lot) + + + + + scan_dialog.mode.eigp + EIGP 114 barcode (e.g. the datamatrix codes on digikey and mouser orders) + + + + + scan_dialog.info_mode + Info mode (Decode barcode and show its contents, but do not redirect to part) + + + + + label_scanner.decoded_info.title + Decoded information + + + + + label_generator.edit_profiles + Edit profiles + + + + + label_generator.profile_name_empty + Profile name must not be empty! + + + + + label_generator.save_profile_name + Profile name + + + + + label_generator.save_profile + Save as new profile + + + + + label_generator.profile_saved + Profile saved! + + + + + entity.export.flash.error.no_entities + There are no entities to export! + + + + + attachment.table.internal_file + Internal file + + + + + attachment.table.external_link + External link + + + + + attachment.view_external.view_at + View at %host% + + + + + attachment.view_external + View external version + + + + + part.table.actions.error + %count% errors occured, while performing action: + + + + + part.table.actions.error_detail + %part_name% (ID: %part_id%): %message% + + + + + part_list.action.action.change_location + Change location (only for parts with single stock) + + + + + parts.table.action_handler.error.part_lots_multiple + This part contains more than one stock. Change the location by hand to select, which stock to choose. + + diff --git a/translations/messages.es.xlf b/translations/messages.es.xlf index df309414..3694a7f3 100644 --- a/translations/messages.es.xlf +++ b/translations/messages.es.xlf @@ -1,7 +1,7 @@ - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 @@ -12,7 +12,7 @@ Tipo de archivo para adjuntos - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:12 new @@ -22,7 +22,7 @@ Editar tipo de archivo - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:16 new @@ -32,7 +32,7 @@ Nuevo tipo de archivo - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 Part-DB1\templates\_sidebar.html.twig:22 @@ -51,7 +51,7 @@ Categorías - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:19 @@ -64,7 +64,7 @@ Opciones - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 @@ -77,7 +77,7 @@ Avanzado - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:13 new @@ -87,7 +87,7 @@ Editar categoría - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:17 new @@ -97,7 +97,7 @@ Nueva categoría - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 @@ -107,7 +107,7 @@ Divisa - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 @@ -117,7 +117,7 @@ Código ISO - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 @@ -127,7 +127,7 @@ Símbolo de divisa - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:29 new @@ -137,7 +137,7 @@ Editar divisa - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:33 new @@ -147,7 +147,7 @@ Nueva divisa - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:4 Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:4 @@ -158,7 +158,7 @@ Proyecto - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:8 new @@ -168,7 +168,7 @@ Editar proyecto - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:12 new @@ -178,7 +178,7 @@ Nuevo proyecto - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 Part-DB1\templates\_navbar_search.html.twig:67 @@ -201,7 +201,7 @@ Buscar - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 Part-DB1\templates\_sidebar.html.twig:3 @@ -214,10 +214,10 @@ expandAll - Expander todo + Expandir todo - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 Part-DB1\templates\_sidebar.html.twig:4 @@ -233,7 +233,7 @@ Reducir todo - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 Part-DB1\templates\Parts\info\_sidebar.html.twig:4 @@ -245,7 +245,7 @@ Así aparecía el componente antes de: %timestamp%. <i>Esta función es experimental, así que la información podría no ser correcta.</i> - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 @@ -256,7 +256,7 @@ Propiedades - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 @@ -267,7 +267,7 @@ Información - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 @@ -278,7 +278,7 @@ Historial - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 @@ -289,7 +289,7 @@ Exportar - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 @@ -300,7 +300,7 @@ Importar / Exportar - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 @@ -310,7 +310,7 @@ Creación en masa - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 @@ -321,7 +321,7 @@ Común - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 @@ -331,7 +331,7 @@ Adjuntos - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:90 @@ -340,7 +340,7 @@ Parámetros - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:179 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:167 @@ -351,7 +351,7 @@ Exportar todos los elementos - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:185 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:173 @@ -361,7 +361,7 @@ Cada línea será interpretada como el nombre de un elemento, el cual será creado. Puedes crear estructuras anidadas con identificadores. - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 @@ -372,7 +372,7 @@ Editar elemento "%name" - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 @@ -383,7 +383,7 @@ Nuevo elemento - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 Part-DB1\templates\_sidebar.html.twig:9 @@ -398,7 +398,7 @@ Footprints - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:13 new @@ -408,7 +408,7 @@ Editar footprint - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:17 new @@ -418,7 +418,7 @@ Nuevo footprint - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 @@ -428,7 +428,7 @@ Grupos - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 @@ -440,7 +440,7 @@ Permisos - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:24 new @@ -450,7 +450,7 @@ Editar grupo - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:28 new @@ -460,7 +460,7 @@ Nuevo grupo - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:4 @@ -469,7 +469,7 @@ Perfiles de etiqueta - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:8 @@ -478,7 +478,7 @@ Avanzado - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:9 @@ -487,7 +487,7 @@ Notas - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:55 new @@ -497,7 +497,7 @@ Editar perfil de etiqueta - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:59 new @@ -507,7 +507,7 @@ Nuevo perfil de etiqueta - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 @@ -518,7 +518,7 @@ Fabricantes - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:8 new @@ -528,7 +528,7 @@ Editar fabricante - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:12 new @@ -538,7 +538,7 @@ Nuevo fabricante - + Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 @@ -548,7 +548,7 @@ Unidad de medida - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:5 Part-DB1\templates\_sidebar.html.twig:8 @@ -563,7 +563,7 @@ Ubicación del almacén - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:32 new @@ -573,7 +573,7 @@ Editar ubicación del almacén - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:36 new @@ -583,7 +583,7 @@ Nueva ubicación de almacén - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 @@ -594,7 +594,7 @@ Proveedores - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:16 new @@ -604,7 +604,7 @@ Editar proveedor - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:20 new @@ -614,7 +614,7 @@ Nuevo proveedor - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 @@ -624,7 +624,7 @@ Usuarios - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 @@ -634,7 +634,7 @@ Configuración - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 @@ -644,7 +644,7 @@ Contraseña - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 @@ -654,7 +654,7 @@ Autenticación en dos pasos - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 @@ -664,7 +664,7 @@ App de autenticación activa - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 Part-DB1\templates\Users\backup_codes.html.twig:15 @@ -678,7 +678,7 @@ Cuenta de códigos backup restantes - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 Part-DB1\templates\Users\backup_codes.html.twig:17 @@ -692,7 +692,7 @@ Fecha de creación de los códigos backup - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 @@ -704,7 +704,7 @@ Método no habilitado - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 @@ -714,7 +714,7 @@ Llaves de seguridad activas - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 @@ -724,7 +724,7 @@ ¿Estás seguro de que quieres continuar? - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 @@ -737,7 +737,7 @@ <b>¡Solo haz esto si estás seguro de la identidad del usuario (buscando ayuda), si no la cuenta podría estar comprometida por ataques externos!</b> - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 @@ -747,7 +747,7 @@ Deshabilitar todos los métodos de autenticación en dos pasos - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:85 new @@ -757,7 +757,7 @@ Editar usuario - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:89 new @@ -767,7 +767,7 @@ Nuevo usuario - + Part-DB1\templates\AdminPages\_attachments.html.twig:4 Part-DB1\templates\Parts\edit\_attachments.html.twig:4 @@ -780,21 +780,13 @@ Eliminar - - - Part-DB1\templates\AdminPages\_attachments.html.twig:41 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - + - attachment.external - Externo + attachment.external_only + Solo externo - + Part-DB1\templates\AdminPages\_attachments.html.twig:49 Part-DB1\templates\Parts\edit\_attachments.html.twig:47 @@ -806,7 +798,7 @@ Miniatura del adjunto - + Part-DB1\templates\AdminPages\_attachments.html.twig:52 Part-DB1\templates\Parts\edit\_attachments.html.twig:50 @@ -816,11 +808,11 @@ Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 - attachment.view - Vista + attachment.view_local + Ver copia local - + Part-DB1\templates\AdminPages\_attachments.html.twig:58 Part-DB1\templates\Parts\edit\_attachments.html.twig:56 @@ -836,7 +828,7 @@ Archivo no encontrado - + Part-DB1\templates\AdminPages\_attachments.html.twig:66 Part-DB1\templates\Parts\edit\_attachments.html.twig:64 @@ -848,7 +840,7 @@ Adjunto privado - + Part-DB1\templates\AdminPages\_attachments.html.twig:79 Part-DB1\templates\Parts\edit\_attachments.html.twig:77 @@ -860,7 +852,7 @@ Añadir adjunto - + Part-DB1\templates\AdminPages\_attachments.html.twig:84 Part-DB1\templates\Parts\edit\_attachments.html.twig:82 @@ -874,7 +866,7 @@ ¿Estás seguro de que quieres eliminar este stock? ¡No se puede deshacer! - + Part-DB1\templates\AdminPages\_delete_form.html.twig:2 Part-DB1\templates\AdminPages\_delete_form.html.twig:2 @@ -885,7 +877,7 @@ ¿Estás seguro de que quieres eliminar %name%? - + Part-DB1\templates\AdminPages\_delete_form.html.twig:3 Part-DB1\templates\AdminPages\_delete_form.html.twig:3 @@ -898,7 +890,7 @@ Subelementos serán desplazados hacia arriba. - + Part-DB1\templates\AdminPages\_delete_form.html.twig:11 Part-DB1\templates\AdminPages\_delete_form.html.twig:11 @@ -909,7 +901,7 @@ Subelementos serán desplazados hacia arriba. Eliminar elemento - + Part-DB1\templates\AdminPages\_delete_form.html.twig:16 Part-DB1\templates\Parts\info\_tools.html.twig:45 @@ -924,7 +916,7 @@ Subelementos serán desplazados hacia arriba. Cambiar comentario - + Part-DB1\templates\AdminPages\_delete_form.html.twig:24 Part-DB1\templates\AdminPages\_delete_form.html.twig:24 @@ -935,7 +927,7 @@ Subelementos serán desplazados hacia arriba. Eliminar recursivamente (todos los subelementos) - + Part-DB1\templates\AdminPages\_duplicate.html.twig:3 @@ -944,7 +936,7 @@ Subelementos serán desplazados hacia arriba. Duplicar elemento - + Part-DB1\templates\AdminPages\_export_form.html.twig:4 Part-DB1\src\Form\AdminPages\ImportType.php:76 @@ -958,7 +950,7 @@ Subelementos serán desplazados hacia arriba. Formato de archivo - + Part-DB1\templates\AdminPages\_export_form.html.twig:16 Part-DB1\templates\AdminPages\_export_form.html.twig:16 @@ -969,7 +961,7 @@ Subelementos serán desplazados hacia arriba. Nivel de verbosidad - + Part-DB1\templates\AdminPages\_export_form.html.twig:19 Part-DB1\templates\AdminPages\_export_form.html.twig:19 @@ -980,7 +972,7 @@ Subelementos serán desplazados hacia arriba. Simple - + Part-DB1\templates\AdminPages\_export_form.html.twig:20 Part-DB1\templates\AdminPages\_export_form.html.twig:20 @@ -991,7 +983,7 @@ Subelementos serán desplazados hacia arriba. Extendido - + Part-DB1\templates\AdminPages\_export_form.html.twig:21 Part-DB1\templates\AdminPages\_export_form.html.twig:21 @@ -1002,7 +994,7 @@ Subelementos serán desplazados hacia arriba. Completo - + Part-DB1\templates\AdminPages\_export_form.html.twig:31 Part-DB1\templates\AdminPages\_export_form.html.twig:31 @@ -1013,7 +1005,7 @@ Subelementos serán desplazados hacia arriba. Incluir elementos hijo en la exportación - + Part-DB1\templates\AdminPages\_export_form.html.twig:39 Part-DB1\templates\AdminPages\_export_form.html.twig:39 @@ -1024,7 +1016,7 @@ Subelementos serán desplazados hacia arriba. Exportar - + Part-DB1\templates\AdminPages\_info.html.twig:4 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 @@ -1043,7 +1035,7 @@ Subelementos serán desplazados hacia arriba. ID - + Part-DB1\templates\AdminPages\_info.html.twig:11 Part-DB1\templates\Parts\info\_attachments_info.html.twig:76 @@ -1067,7 +1059,7 @@ Subelementos serán desplazados hacia arriba. Creado en - + Part-DB1\templates\AdminPages\_info.html.twig:25 Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 @@ -1085,7 +1077,7 @@ Subelementos serán desplazados hacia arriba. Última modificación - + Part-DB1\templates\AdminPages\_info.html.twig:38 Part-DB1\templates\AdminPages\_info.html.twig:38 @@ -1095,7 +1087,7 @@ Subelementos serán desplazados hacia arriba. Número de componentes de este elemento - + Part-DB1\templates\AdminPages\_parameters.html.twig:6 Part-DB1\templates\helper.twig:125 @@ -1106,7 +1098,7 @@ Subelementos serán desplazados hacia arriba. Parámetro - + Part-DB1\templates\AdminPages\_parameters.html.twig:7 Part-DB1\templates\Parts\edit\_specifications.html.twig:7 @@ -1116,7 +1108,7 @@ Subelementos serán desplazados hacia arriba. Símbolo - + Part-DB1\templates\AdminPages\_parameters.html.twig:8 Part-DB1\templates\Parts\edit\_specifications.html.twig:8 @@ -1126,7 +1118,7 @@ Subelementos serán desplazados hacia arriba. Min. - + Part-DB1\templates\AdminPages\_parameters.html.twig:9 Part-DB1\templates\Parts\edit\_specifications.html.twig:9 @@ -1136,7 +1128,7 @@ Subelementos serán desplazados hacia arriba. Typ. - + Part-DB1\templates\AdminPages\_parameters.html.twig:10 Part-DB1\templates\Parts\edit\_specifications.html.twig:10 @@ -1146,7 +1138,7 @@ Subelementos serán desplazados hacia arriba. Max. - + Part-DB1\templates\AdminPages\_parameters.html.twig:11 Part-DB1\templates\Parts\edit\_specifications.html.twig:11 @@ -1156,7 +1148,7 @@ Subelementos serán desplazados hacia arriba. Unidad - + Part-DB1\templates\AdminPages\_parameters.html.twig:12 Part-DB1\templates\Parts\edit\_specifications.html.twig:12 @@ -1166,7 +1158,7 @@ Subelementos serán desplazados hacia arriba. Texto - + Part-DB1\templates\AdminPages\_parameters.html.twig:13 Part-DB1\templates\Parts\edit\_specifications.html.twig:13 @@ -1176,7 +1168,7 @@ Subelementos serán desplazados hacia arriba. Grupo - + Part-DB1\templates\AdminPages\_parameters.html.twig:26 Part-DB1\templates\Parts\edit\_specifications.html.twig:26 @@ -1186,7 +1178,7 @@ Subelementos serán desplazados hacia arriba. Nuevo parámetro - + Part-DB1\templates\AdminPages\_parameters.html.twig:31 Part-DB1\templates\Parts\edit\_specifications.html.twig:31 @@ -1196,7 +1188,7 @@ Subelementos serán desplazados hacia arriba. ¿Estás seguro de que quieres eliminar este parámetro? - + Part-DB1\templates\attachment_list.html.twig:3 Part-DB1\templates\attachment_list.html.twig:3 @@ -1206,7 +1198,7 @@ Subelementos serán desplazados hacia arriba. Lista de adjuntos - + Part-DB1\templates\attachment_list.html.twig:10 Part-DB1\templates\LogSystem\_log_table.html.twig:8 @@ -1220,7 +1212,7 @@ Subelementos serán desplazados hacia arriba. Cargando - + Part-DB1\templates\attachment_list.html.twig:11 Part-DB1\templates\LogSystem\_log_table.html.twig:9 @@ -1234,7 +1226,7 @@ Subelementos serán desplazados hacia arriba. Esto puede llevar unos instantes. Si este mensaje no desaparece, prueba a refrescar la página. - + Part-DB1\templates\base.html.twig:68 Part-DB1\templates\base.html.twig:68 @@ -1245,7 +1237,7 @@ Subelementos serán desplazados hacia arriba. ¡Por favor, activa Javascript para poder usar todas las funciones! - + Part-DB1\templates\base.html.twig:73 Part-DB1\templates\base.html.twig:73 @@ -1255,7 +1247,7 @@ Subelementos serán desplazados hacia arriba. Mostrar/Esconder barra lateral - + Part-DB1\templates\base.html.twig:95 Part-DB1\templates\base.html.twig:95 @@ -1266,7 +1258,7 @@ Subelementos serán desplazados hacia arriba. Cargando: - + Part-DB1\templates\base.html.twig:96 Part-DB1\templates\base.html.twig:96 @@ -1277,7 +1269,7 @@ Subelementos serán desplazados hacia arriba. Esto puede llevar un rato. Si este mensaje tarda mucho en desaparecer, prueba a refrescar la página. - + Part-DB1\templates\base.html.twig:101 Part-DB1\templates\base.html.twig:101 @@ -1288,7 +1280,7 @@ Subelementos serán desplazados hacia arriba. Cargando... - + Part-DB1\templates\base.html.twig:112 Part-DB1\templates\base.html.twig:112 @@ -1299,7 +1291,7 @@ Subelementos serán desplazados hacia arriba. Volver al inicio de la página - + Part-DB1\templates\Form\permissionLayout.html.twig:35 Part-DB1\templates\Form\permissionLayout.html.twig:35 @@ -1309,7 +1301,7 @@ Subelementos serán desplazados hacia arriba. Permisos - + Part-DB1\templates\Form\permissionLayout.html.twig:36 Part-DB1\templates\Form\permissionLayout.html.twig:36 @@ -1319,7 +1311,7 @@ Subelementos serán desplazados hacia arriba. Valor - + Part-DB1\templates\Form\permissionLayout.html.twig:53 Part-DB1\templates\Form\permissionLayout.html.twig:53 @@ -1329,7 +1321,7 @@ Subelementos serán desplazados hacia arriba. Explicación de los estados - + Part-DB1\templates\Form\permissionLayout.html.twig:57 Part-DB1\templates\Form\permissionLayout.html.twig:57 @@ -1339,7 +1331,7 @@ Subelementos serán desplazados hacia arriba. Prohibido - + Part-DB1\templates\Form\permissionLayout.html.twig:61 Part-DB1\templates\Form\permissionLayout.html.twig:61 @@ -1349,7 +1341,7 @@ Subelementos serán desplazados hacia arriba. Autorizado - + Part-DB1\templates\Form\permissionLayout.html.twig:65 Part-DB1\templates\Form\permissionLayout.html.twig:65 @@ -1359,7 +1351,7 @@ Subelementos serán desplazados hacia arriba. Heredar de grupo padre - + Part-DB1\templates\helper.twig:3 Part-DB1\templates\helper.twig:3 @@ -1369,7 +1361,7 @@ Subelementos serán desplazados hacia arriba. Verdadero - + Part-DB1\templates\helper.twig:5 Part-DB1\templates\helper.twig:5 @@ -1379,7 +1371,7 @@ Subelementos serán desplazados hacia arriba. Falso - + Part-DB1\templates\helper.twig:92 Part-DB1\templates\helper.twig:87 @@ -1389,7 +1381,7 @@ Subelementos serán desplazados hacia arriba. - + Part-DB1\templates\helper.twig:94 Part-DB1\templates\helper.twig:89 @@ -1399,7 +1391,7 @@ Subelementos serán desplazados hacia arriba. No - + Part-DB1\templates\helper.twig:126 @@ -1408,7 +1400,7 @@ Subelementos serán desplazados hacia arriba. Valor - + Part-DB1\templates\homepage.html.twig:7 Part-DB1\templates\homepage.html.twig:7 @@ -1419,7 +1411,7 @@ Subelementos serán desplazados hacia arriba. Versión - + Part-DB1\templates\homepage.html.twig:22 Part-DB1\templates\homepage.html.twig:22 @@ -1430,7 +1422,7 @@ Subelementos serán desplazados hacia arriba. Información de licencia - + Part-DB1\templates\homepage.html.twig:31 Part-DB1\templates\homepage.html.twig:31 @@ -1441,7 +1433,7 @@ Subelementos serán desplazados hacia arriba. Página de proyecto - + Part-DB1\templates\homepage.html.twig:31 Part-DB1\templates\homepage.html.twig:31 @@ -1452,7 +1444,7 @@ Subelementos serán desplazados hacia arriba. Fuente, descargas, informes de error, listas de quehaceres etc. pueden ser encontrados en <a href="%href%" class="link-external" target="_blank">GitHub página de proyecto</a> - + Part-DB1\templates\homepage.html.twig:32 Part-DB1\templates\homepage.html.twig:32 @@ -1463,7 +1455,7 @@ Subelementos serán desplazados hacia arriba. Ayuda - + Part-DB1\templates\homepage.html.twig:32 Part-DB1\templates\homepage.html.twig:32 @@ -1474,7 +1466,7 @@ Subelementos serán desplazados hacia arriba. Ayuda y sugerencias pueden ser encontradas en la Wiki de <a href="%href%" class="link-external" target="_blank">GitHub página</a> - + Part-DB1\templates\homepage.html.twig:33 Part-DB1\templates\homepage.html.twig:33 @@ -1485,7 +1477,7 @@ Subelementos serán desplazados hacia arriba. Foro - + Part-DB1\templates\homepage.html.twig:45 Part-DB1\templates\homepage.html.twig:45 @@ -1496,7 +1488,7 @@ Subelementos serán desplazados hacia arriba. Última actividad - + Part-DB1\templates\LabelSystem\dialog.html.twig:3 Part-DB1\templates\LabelSystem\dialog.html.twig:6 @@ -1506,7 +1498,7 @@ Subelementos serán desplazados hacia arriba. Generador de etiquetas - + Part-DB1\templates\LabelSystem\dialog.html.twig:16 @@ -1515,7 +1507,7 @@ Subelementos serán desplazados hacia arriba. Común - + Part-DB1\templates\LabelSystem\dialog.html.twig:20 @@ -1524,7 +1516,7 @@ Subelementos serán desplazados hacia arriba. Avanzado - + Part-DB1\templates\LabelSystem\dialog.html.twig:24 @@ -1533,7 +1525,7 @@ Subelementos serán desplazados hacia arriba. Perfiles - + Part-DB1\templates\LabelSystem\dialog.html.twig:58 @@ -1542,7 +1534,7 @@ Subelementos serán desplazados hacia arriba. Perfil seleccionado - + Part-DB1\templates\LabelSystem\dialog.html.twig:62 @@ -1551,7 +1543,7 @@ Subelementos serán desplazados hacia arriba. Editar perfil - + Part-DB1\templates\LabelSystem\dialog.html.twig:75 @@ -1560,7 +1552,7 @@ Subelementos serán desplazados hacia arriba. Cargar perfil - + Part-DB1\templates\LabelSystem\dialog.html.twig:102 @@ -1569,7 +1561,7 @@ Subelementos serán desplazados hacia arriba. Descargar - + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:3 Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:5 @@ -1579,7 +1571,7 @@ Subelementos serán desplazados hacia arriba. Generar etiqueta - + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:20 @@ -1588,7 +1580,7 @@ Subelementos serán desplazados hacia arriba. Nueva etiqueta vacía - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:3 @@ -1597,7 +1589,7 @@ Subelementos serán desplazados hacia arriba. Lector de etiquetas - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 @@ -1606,7 +1598,7 @@ Subelementos serán desplazados hacia arriba. Webcam no encontrada - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 @@ -1615,7 +1607,7 @@ Subelementos serán desplazados hacia arriba. Necesitas una webcam y dar permiso para utilizar la función del lector. Puedes introducir el código de barras manualmente abajo. - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:27 @@ -1624,7 +1616,7 @@ Subelementos serán desplazados hacia arriba. Selecciona una fuente - + Part-DB1\templates\LogSystem\log_list.html.twig:3 Part-DB1\templates\LogSystem\log_list.html.twig:3 @@ -1634,7 +1626,7 @@ Subelementos serán desplazados hacia arriba. Registro de sistema - + Part-DB1\templates\LogSystem\_log_table.html.twig:1 Part-DB1\templates\LogSystem\_log_table.html.twig:1 @@ -1645,7 +1637,7 @@ Subelementos serán desplazados hacia arriba. ¿Quieres deshacer el cambio / volver a una fecha anterior? - + Part-DB1\templates\LogSystem\_log_table.html.twig:2 Part-DB1\templates\LogSystem\_log_table.html.twig:2 @@ -1656,7 +1648,7 @@ Subelementos serán desplazados hacia arriba. ¿Estás seguro de que quieres deshacer el cambio / reiniciar el elemento a una fecha dada? - + Part-DB1\templates\mail\base.html.twig:24 Part-DB1\templates\mail\base.html.twig:24 @@ -1666,7 +1658,7 @@ Subelementos serán desplazados hacia arriba. Este e-mail fue enviado automáticamente por - + Part-DB1\templates\mail\base.html.twig:24 Part-DB1\templates\mail\base.html.twig:24 @@ -1676,7 +1668,7 @@ Subelementos serán desplazados hacia arriba. No respondas a este e-mail. - + Part-DB1\templates\mail\pw_reset.html.twig:6 Part-DB1\templates\mail\pw_reset.html.twig:6 @@ -1686,7 +1678,7 @@ Subelementos serán desplazados hacia arriba. Hi %name% - + Part-DB1\templates\mail\pw_reset.html.twig:7 Part-DB1\templates\mail\pw_reset.html.twig:7 @@ -1696,7 +1688,7 @@ Subelementos serán desplazados hacia arriba. Alguien (esperemos que tú) ha solicitado cambiar la contraseña. Si tú no lo has solicitado, ignora este email. - + Part-DB1\templates\mail\pw_reset.html.twig:9 Part-DB1\templates\mail\pw_reset.html.twig:9 @@ -1706,7 +1698,7 @@ Subelementos serán desplazados hacia arriba. Pulsa aquí para restablecer la contraseña - + Part-DB1\templates\mail\pw_reset.html.twig:11 Part-DB1\templates\mail\pw_reset.html.twig:11 @@ -1716,7 +1708,7 @@ Subelementos serán desplazados hacia arriba. Si esto no te funciona, ves a <a href="%url%">%url%</a> e introduce la siguiente información - + Part-DB1\templates\mail\pw_reset.html.twig:16 Part-DB1\templates\mail\pw_reset.html.twig:16 @@ -1726,7 +1718,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\mail\pw_reset.html.twig:19 Part-DB1\templates\mail\pw_reset.html.twig:19 @@ -1736,7 +1728,7 @@ Subelementos serán desplazados hacia arriba. Token - + Part-DB1\templates\mail\pw_reset.html.twig:24 Part-DB1\templates\mail\pw_reset.html.twig:24 @@ -1746,7 +1738,7 @@ Subelementos serán desplazados hacia arriba. El token de reinicio será válido hasta <i>%date%</i>. - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:18 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 @@ -1758,7 +1750,7 @@ Subelementos serán desplazados hacia arriba. Eliminar - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 @@ -1768,7 +1760,7 @@ Subelementos serán desplazados hacia arriba. Cantidad mínima de descuento - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 @@ -1778,7 +1770,7 @@ Subelementos serán desplazados hacia arriba. Precio - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 @@ -1788,7 +1780,7 @@ Subelementos serán desplazados hacia arriba. Por la cantidad - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 @@ -1798,7 +1790,7 @@ Subelementos serán desplazados hacia arriba. Añadir precio - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 @@ -1809,7 +1801,7 @@ Subelementos serán desplazados hacia arriba. Editar componente - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 @@ -1820,7 +1812,7 @@ Subelementos serán desplazados hacia arriba. Editar componente - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 @@ -1830,7 +1822,7 @@ Subelementos serán desplazados hacia arriba. Común - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 @@ -1840,7 +1832,7 @@ Subelementos serán desplazados hacia arriba. Fabricante - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 @@ -1850,7 +1842,7 @@ Subelementos serán desplazados hacia arriba. Avanzado - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 @@ -1860,7 +1852,7 @@ Subelementos serán desplazados hacia arriba. Stock - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 @@ -1870,7 +1862,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 @@ -1880,7 +1872,7 @@ Subelementos serán desplazados hacia arriba. Información del pedido - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 @@ -1889,7 +1881,7 @@ Subelementos serán desplazados hacia arriba. Parámetros - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:64 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 @@ -1899,7 +1891,7 @@ Subelementos serán desplazados hacia arriba. Notas - + Part-DB1\templates\Parts\edit\new_part.html.twig:8 Part-DB1\templates\Parts\edit\new_part.html.twig:8 @@ -1910,7 +1902,7 @@ Subelementos serán desplazados hacia arriba. Crear nuevo componente - + Part-DB1\templates\Parts\edit\_lots.html.twig:5 Part-DB1\templates\Parts\edit\_lots.html.twig:5 @@ -1920,7 +1912,7 @@ Subelementos serán desplazados hacia arriba. Eliminar - + Part-DB1\templates\Parts\edit\_lots.html.twig:28 Part-DB1\templates\Parts\edit\_lots.html.twig:28 @@ -1930,7 +1922,7 @@ Subelementos serán desplazados hacia arriba. Añadir stock - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 @@ -1940,7 +1932,7 @@ Subelementos serán desplazados hacia arriba. Añadir distribuidor - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 @@ -1950,7 +1942,7 @@ Subelementos serán desplazados hacia arriba. ¿Estás seguro de que quieres eliminar este precio? No se puede deshacer. - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:62 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:61 @@ -1960,7 +1952,7 @@ Subelementos serán desplazados hacia arriba. ¿Estás seguro de que quieres eliminar la información de este distribuidor? ¡No se puede deshacer! - + Part-DB1\templates\Parts\info\show_part_info.html.twig:4 Part-DB1\templates\Parts\info\show_part_info.html.twig:19 @@ -1974,7 +1966,7 @@ Subelementos serán desplazados hacia arriba. Información detallada del componente - + Part-DB1\templates\Parts\info\show_part_info.html.twig:47 Part-DB1\templates\Parts\info\show_part_info.html.twig:47 @@ -1984,7 +1976,7 @@ Subelementos serán desplazados hacia arriba. Stocks - + Part-DB1\templates\Parts\info\show_part_info.html.twig:56 Part-DB1\templates\Parts\lists\_info_card.html.twig:43 @@ -1999,7 +1991,7 @@ Subelementos serán desplazados hacia arriba. Notas - + Part-DB1\templates\Parts\info\show_part_info.html.twig:64 @@ -2008,7 +2000,7 @@ Subelementos serán desplazados hacia arriba. Parámetros - + Part-DB1\templates\Parts\info\show_part_info.html.twig:74 Part-DB1\templates\Parts\info\show_part_info.html.twig:64 @@ -2019,7 +2011,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\templates\Parts\info\show_part_info.html.twig:83 Part-DB1\templates\Parts\info\show_part_info.html.twig:71 @@ -2030,7 +2022,7 @@ Subelementos serán desplazados hacia arriba. Información de la compra - + Part-DB1\templates\Parts\info\show_part_info.html.twig:91 Part-DB1\templates\Parts\info\show_part_info.html.twig:78 @@ -2041,7 +2033,7 @@ Subelementos serán desplazados hacia arriba. Historial - + Part-DB1\templates\Parts\info\show_part_info.html.twig:97 Part-DB1\templates\_sidebar.html.twig:54 @@ -2060,7 +2052,7 @@ Subelementos serán desplazados hacia arriba. Herramientas - + Part-DB1\templates\Parts\info\show_part_info.html.twig:103 Part-DB1\templates\Parts\info\show_part_info.html.twig:90 @@ -2070,7 +2062,7 @@ Subelementos serán desplazados hacia arriba. Información adicional - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 @@ -2080,7 +2072,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 @@ -2090,7 +2082,7 @@ Subelementos serán desplazados hacia arriba. Tipo de archivo adjunto - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 @@ -2100,7 +2092,7 @@ Subelementos serán desplazados hacia arriba. Nombre de archivo - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 @@ -2110,7 +2102,7 @@ Subelementos serán desplazados hacia arriba. Tamaño de archivo - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:54 @@ -2119,17 +2111,17 @@ Subelementos serán desplazados hacia arriba. Vista previa - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 - attachment.download - Descargar + attachment.download_local + Descargar copia en local - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 @@ -2140,7 +2132,7 @@ Subelementos serán desplazados hacia arriba. Usuario que ha creado este componente - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 @@ -2154,7 +2146,7 @@ Subelementos serán desplazados hacia arriba. Desconocido - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 @@ -2167,7 +2159,7 @@ Subelementos serán desplazados hacia arriba. Acceso denegado - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 @@ -2178,7 +2170,7 @@ Subelementos serán desplazados hacia arriba. Último usuario que ha editado este componente - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 @@ -2188,7 +2180,7 @@ Subelementos serán desplazados hacia arriba. Favorito - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 @@ -2198,7 +2190,7 @@ Subelementos serán desplazados hacia arriba. Cantidad mínima de pedido - + Part-DB1\templates\Parts\info\_main_infos.html.twig:8 Part-DB1\templates\_navbar_search.html.twig:46 @@ -2215,7 +2207,7 @@ Subelementos serán desplazados hacia arriba. Fabricante - + Part-DB1\templates\Parts\info\_main_infos.html.twig:24 Part-DB1\templates\_navbar_search.html.twig:11 @@ -2227,7 +2219,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\templates\Parts\info\_main_infos.html.twig:27 Part-DB1\templates\Parts\info\_main_infos.html.twig:27 @@ -2238,7 +2230,7 @@ Subelementos serán desplazados hacia arriba. Volver a la versión actual - + Part-DB1\templates\Parts\info\_main_infos.html.twig:32 Part-DB1\templates\_navbar_search.html.twig:19 @@ -2253,7 +2245,7 @@ Subelementos serán desplazados hacia arriba. Descripción - + Part-DB1\templates\Parts\info\_main_infos.html.twig:34 Part-DB1\templates\_navbar_search.html.twig:15 @@ -2270,7 +2262,7 @@ Subelementos serán desplazados hacia arriba. Categoría - + Part-DB1\templates\Parts\info\_main_infos.html.twig:39 Part-DB1\templates\Parts\info\_main_infos.html.twig:39 @@ -2282,7 +2274,7 @@ Subelementos serán desplazados hacia arriba. En stock - + Part-DB1\templates\Parts\info\_main_infos.html.twig:41 Part-DB1\templates\Parts\info\_main_infos.html.twig:41 @@ -2294,7 +2286,7 @@ Subelementos serán desplazados hacia arriba. Stock mínimo - + Part-DB1\templates\Parts\info\_main_infos.html.twig:45 Part-DB1\templates\_navbar_search.html.twig:52 @@ -2310,7 +2302,7 @@ Subelementos serán desplazados hacia arriba. Footprint - + Part-DB1\templates\Parts\info\_main_infos.html.twig:56 Part-DB1\templates\Parts\info\_main_infos.html.twig:59 @@ -2323,7 +2315,7 @@ Subelementos serán desplazados hacia arriba. Precio promedio - + Part-DB1\templates\Parts\info\_order_infos.html.twig:5 Part-DB1\templates\Parts\info\_order_infos.html.twig:5 @@ -2333,7 +2325,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\templates\Parts\info\_order_infos.html.twig:6 Part-DB1\templates\Parts\info\_order_infos.html.twig:6 @@ -2343,7 +2335,7 @@ Subelementos serán desplazados hacia arriba. Nº de pedido - + Part-DB1\templates\Parts\info\_order_infos.html.twig:28 Part-DB1\templates\Parts\info\_order_infos.html.twig:28 @@ -2353,7 +2345,7 @@ Subelementos serán desplazados hacia arriba. Cantidad mínima - + Part-DB1\templates\Parts\info\_order_infos.html.twig:29 Part-DB1\templates\Parts\info\_order_infos.html.twig:29 @@ -2363,7 +2355,7 @@ Subelementos serán desplazados hacia arriba. Precio - + Part-DB1\templates\Parts\info\_order_infos.html.twig:31 Part-DB1\templates\Parts\info\_order_infos.html.twig:31 @@ -2373,7 +2365,7 @@ Subelementos serán desplazados hacia arriba. Precio unitario - + Part-DB1\templates\Parts\info\_order_infos.html.twig:71 Part-DB1\templates\Parts\info\_order_infos.html.twig:71 @@ -2383,7 +2375,7 @@ Subelementos serán desplazados hacia arriba. Editar - + Part-DB1\templates\Parts\info\_order_infos.html.twig:72 Part-DB1\templates\Parts\info\_order_infos.html.twig:72 @@ -2393,7 +2385,7 @@ Subelementos serán desplazados hacia arriba. Eliminar - + Part-DB1\templates\Parts\info\_part_lots.html.twig:7 Part-DB1\templates\Parts\info\_part_lots.html.twig:6 @@ -2403,7 +2395,7 @@ Subelementos serán desplazados hacia arriba. Descripción - + Part-DB1\templates\Parts\info\_part_lots.html.twig:8 Part-DB1\templates\Parts\info\_part_lots.html.twig:7 @@ -2413,7 +2405,7 @@ Subelementos serán desplazados hacia arriba. Ubicación de almacenamiento - + Part-DB1\templates\Parts\info\_part_lots.html.twig:9 Part-DB1\templates\Parts\info\_part_lots.html.twig:8 @@ -2423,7 +2415,7 @@ Subelementos serán desplazados hacia arriba. Cantidad - + Part-DB1\templates\Parts\info\_part_lots.html.twig:24 Part-DB1\templates\Parts\info\_part_lots.html.twig:22 @@ -2433,7 +2425,7 @@ Subelementos serán desplazados hacia arriba. Ubicación del almacén desconocida - + Part-DB1\templates\Parts\info\_part_lots.html.twig:31 Part-DB1\templates\Parts\info\_part_lots.html.twig:29 @@ -2443,7 +2435,7 @@ Subelementos serán desplazados hacia arriba. Cantidad desconocida - + Part-DB1\templates\Parts\info\_part_lots.html.twig:40 Part-DB1\templates\Parts\info\_part_lots.html.twig:38 @@ -2453,7 +2445,7 @@ Subelementos serán desplazados hacia arriba. Fecha de vencimiento - + Part-DB1\templates\Parts\info\_part_lots.html.twig:48 Part-DB1\templates\Parts\info\_part_lots.html.twig:46 @@ -2463,7 +2455,7 @@ Subelementos serán desplazados hacia arriba. Caducado - + Part-DB1\templates\Parts\info\_part_lots.html.twig:55 Part-DB1\templates\Parts\info\_part_lots.html.twig:53 @@ -2473,7 +2465,7 @@ Subelementos serán desplazados hacia arriba. Necesita ser recargado - + Part-DB1\templates\Parts\info\_picture.html.twig:15 Part-DB1\templates\Parts\info\_picture.html.twig:15 @@ -2483,7 +2475,7 @@ Subelementos serán desplazados hacia arriba. Imagen previa - + Part-DB1\templates\Parts\info\_picture.html.twig:19 Part-DB1\templates\Parts\info\_picture.html.twig:19 @@ -2493,7 +2485,7 @@ Subelementos serán desplazados hacia arriba. Siguiente imagen - + Part-DB1\templates\Parts\info\_sidebar.html.twig:21 Part-DB1\templates\Parts\info\_sidebar.html.twig:21 @@ -2503,7 +2495,7 @@ Subelementos serán desplazados hacia arriba. Peso - + Part-DB1\templates\Parts\info\_sidebar.html.twig:30 Part-DB1\templates\Parts\info\_sidebar.html.twig:30 @@ -2513,7 +2505,7 @@ Subelementos serán desplazados hacia arriba. Necesita revisión - + Part-DB1\templates\Parts\info\_sidebar.html.twig:39 Part-DB1\templates\Parts\info\_sidebar.html.twig:39 @@ -2523,7 +2515,7 @@ Subelementos serán desplazados hacia arriba. Favorito - + Part-DB1\templates\Parts\info\_sidebar.html.twig:47 Part-DB1\templates\Parts\info\_sidebar.html.twig:47 @@ -2533,7 +2525,7 @@ Subelementos serán desplazados hacia arriba. No disponible - + Part-DB1\templates\Parts\info\_specifications.html.twig:10 @@ -2542,7 +2534,7 @@ Subelementos serán desplazados hacia arriba. Extraído automáticamente de la descripción - + Part-DB1\templates\Parts\info\_specifications.html.twig:15 @@ -2551,7 +2543,7 @@ Subelementos serán desplazados hacia arriba. Extraído automáticamente de las notas - + Part-DB1\templates\Parts\info\_tools.html.twig:6 Part-DB1\templates\Parts\info\_tools.html.twig:4 @@ -2562,7 +2554,7 @@ Subelementos serán desplazados hacia arriba. Editar componente - + Part-DB1\templates\Parts\info\_tools.html.twig:16 Part-DB1\templates\Parts\info\_tools.html.twig:14 @@ -2573,7 +2565,7 @@ Subelementos serán desplazados hacia arriba. Clonar componente - + Part-DB1\templates\Parts\info\_tools.html.twig:24 Part-DB1\templates\Parts\lists\_action_bar.html.twig:4 @@ -2584,7 +2576,7 @@ Subelementos serán desplazados hacia arriba. Crear nuevo componente - + Part-DB1\templates\Parts\info\_tools.html.twig:31 Part-DB1\templates\Parts\info\_tools.html.twig:29 @@ -2594,7 +2586,7 @@ Subelementos serán desplazados hacia arriba. ¿De verdad quieres eliminar este componente? - + Part-DB1\templates\Parts\info\_tools.html.twig:32 Part-DB1\templates\Parts\info\_tools.html.twig:30 @@ -2604,7 +2596,7 @@ Subelementos serán desplazados hacia arriba. Este componente y la información asociada (adjuntos, precio, etc.) serán eliminados. ¡Esto no se puede deshacer! - + Part-DB1\templates\Parts\info\_tools.html.twig:39 Part-DB1\templates\Parts\info\_tools.html.twig:37 @@ -2614,7 +2606,7 @@ Subelementos serán desplazados hacia arriba. Eliminar componente - + Part-DB1\templates\Parts\lists\all_list.html.twig:4 Part-DB1\templates\Parts\lists\all_list.html.twig:4 @@ -2624,7 +2616,7 @@ Subelementos serán desplazados hacia arriba. Todos los componentes - + Part-DB1\templates\Parts\lists\category_list.html.twig:4 Part-DB1\templates\Parts\lists\category_list.html.twig:4 @@ -2634,7 +2626,7 @@ Subelementos serán desplazados hacia arriba. Componentes con categoría - + Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 @@ -2644,7 +2636,7 @@ Subelementos serán desplazados hacia arriba. Componentes con footprint - + Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 @@ -2654,7 +2646,7 @@ Subelementos serán desplazados hacia arriba. Componentes con fabricante - + Part-DB1\templates\Parts\lists\search_list.html.twig:4 Part-DB1\templates\Parts\lists\search_list.html.twig:4 @@ -2664,7 +2656,7 @@ Subelementos serán desplazados hacia arriba. Buscar componentes - + Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 @@ -2674,7 +2666,7 @@ Subelementos serán desplazados hacia arriba. Componentes con ubicación de almacenaje - + Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 @@ -2684,7 +2676,7 @@ Subelementos serán desplazados hacia arriba. Componentes con proveedor - + Part-DB1\templates\Parts\lists\tags_list.html.twig:4 Part-DB1\templates\Parts\lists\tags_list.html.twig:4 @@ -2694,7 +2686,7 @@ Subelementos serán desplazados hacia arriba. Componentes con etiqueta - + Part-DB1\templates\Parts\lists\_info_card.html.twig:22 Part-DB1\templates\Parts\lists\_info_card.html.twig:17 @@ -2704,7 +2696,7 @@ Subelementos serán desplazados hacia arriba. General - + Part-DB1\templates\Parts\lists\_info_card.html.twig:26 Part-DB1\templates\Parts\lists\_info_card.html.twig:20 @@ -2714,7 +2706,7 @@ Subelementos serán desplazados hacia arriba. Estadísticas - + Part-DB1\templates\Parts\lists\_info_card.html.twig:31 @@ -2723,7 +2715,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\templates\Parts\lists\_info_card.html.twig:37 @@ -2732,7 +2724,7 @@ Subelementos serán desplazados hacia arriba. Parámetros - + Part-DB1\templates\Parts\lists\_info_card.html.twig:54 Part-DB1\templates\Parts\lists\_info_card.html.twig:30 @@ -2742,7 +2734,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\templates\Parts\lists\_info_card.html.twig:58 Part-DB1\templates\Parts\lists\_info_card.html.twig:96 @@ -2754,7 +2746,7 @@ Subelementos serán desplazados hacia arriba. Padre - + Part-DB1\templates\Parts\lists\_info_card.html.twig:70 Part-DB1\templates\Parts\lists\_info_card.html.twig:46 @@ -2764,7 +2756,7 @@ Subelementos serán desplazados hacia arriba. Editar - + Part-DB1\templates\Parts\lists\_info_card.html.twig:92 Part-DB1\templates\Parts\lists\_info_card.html.twig:63 @@ -2774,7 +2766,7 @@ Subelementos serán desplazados hacia arriba. Número de elementos hijo - + Part-DB1\templates\security\2fa_base_form.html.twig:3 Part-DB1\templates\security\2fa_base_form.html.twig:5 @@ -2786,7 +2778,7 @@ Subelementos serán desplazados hacia arriba. Autenticación en dos pasos requerida - + Part-DB1\templates\security\2fa_base_form.html.twig:39 Part-DB1\templates\security\2fa_base_form.html.twig:39 @@ -2796,7 +2788,7 @@ Subelementos serán desplazados hacia arriba. Este es un dispositivo fiable (si esto se habilita, no se realizarán más consultas en dos pasos en este dispositivo) - + Part-DB1\templates\security\2fa_base_form.html.twig:52 Part-DB1\templates\security\login.html.twig:58 @@ -2808,7 +2800,7 @@ Subelementos serán desplazados hacia arriba. Login - + Part-DB1\templates\security\2fa_base_form.html.twig:53 Part-DB1\templates\security\U2F\u2f_login.html.twig:13 @@ -2822,7 +2814,7 @@ Subelementos serán desplazados hacia arriba. Cerrar sesión - + Part-DB1\templates\security\2fa_form.html.twig:6 Part-DB1\templates\security\2fa_form.html.twig:6 @@ -2832,7 +2824,7 @@ Subelementos serán desplazados hacia arriba. Código de la app de autenticación - + Part-DB1\templates\security\2fa_form.html.twig:10 Part-DB1\templates\security\2fa_form.html.twig:10 @@ -2842,7 +2834,7 @@ Subelementos serán desplazados hacia arriba. Introduce tu código de seis dígitos de tu app de autenticación o de uno de tus códigos backup si el autenticador no está disponible. - + Part-DB1\templates\security\login.html.twig:3 Part-DB1\templates\security\login.html.twig:3 @@ -2853,7 +2845,7 @@ Subelementos serán desplazados hacia arriba. Login - + Part-DB1\templates\security\login.html.twig:7 Part-DB1\templates\security\login.html.twig:7 @@ -2864,7 +2856,7 @@ Subelementos serán desplazados hacia arriba. Login - + Part-DB1\templates\security\login.html.twig:31 Part-DB1\templates\security\login.html.twig:31 @@ -2875,7 +2867,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\security\login.html.twig:34 Part-DB1\templates\security\login.html.twig:34 @@ -2886,7 +2878,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\security\login.html.twig:38 Part-DB1\templates\security\login.html.twig:38 @@ -2897,7 +2889,7 @@ Subelementos serán desplazados hacia arriba. Contraseña - + Part-DB1\templates\security\login.html.twig:40 Part-DB1\templates\security\login.html.twig:40 @@ -2908,7 +2900,7 @@ Subelementos serán desplazados hacia arriba. Contraseña - + Part-DB1\templates\security\login.html.twig:50 Part-DB1\templates\security\login.html.twig:50 @@ -2919,7 +2911,7 @@ Subelementos serán desplazados hacia arriba. Recuérdame (no aconsejado en dispositivos compartidos) - + Part-DB1\templates\security\login.html.twig:64 Part-DB1\templates\security\login.html.twig:64 @@ -2929,7 +2921,7 @@ Subelementos serán desplazados hacia arriba. ¿Has olvidado el nombre de usuario/contraseña? - + Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 @@ -2939,7 +2931,7 @@ Subelementos serán desplazados hacia arriba. Establecer nueva contraseña - + Part-DB1\templates\security\pw_reset_request.html.twig:5 Part-DB1\templates\security\pw_reset_request.html.twig:5 @@ -2949,7 +2941,7 @@ Subelementos serán desplazados hacia arriba. Solicitar nueva contraseña - + Part-DB1\templates\security\U2F\u2f_login.html.twig:7 Part-DB1\templates\security\U2F\u2f_register.html.twig:10 @@ -2961,7 +2953,7 @@ Subelementos serán desplazados hacia arriba. Estás accediendo a esta página usando el método inseguro HTTP, por lo que seguramente U2F no funcione correctamente (mensaje de error Bad Request). Pídele a un administrador que establezca el método seguro HTTPS si quieres utilizar claves de seguridad. - + Part-DB1\templates\security\U2F\u2f_login.html.twig:10 Part-DB1\templates\security\U2F\u2f_register.html.twig:22 @@ -2973,7 +2965,7 @@ Subelementos serán desplazados hacia arriba. ¡Por favor, introduce tu clave de seguridad y pulsa el botón! - + Part-DB1\templates\security\U2F\u2f_register.html.twig:3 Part-DB1\templates\security\U2F\u2f_register.html.twig:3 @@ -2983,7 +2975,7 @@ Subelementos serán desplazados hacia arriba. Añadir clave de seguridad - + Part-DB1\templates\security\U2F\u2f_register.html.twig:6 Part-DB1\templates\Users\_2fa_settings.html.twig:111 @@ -2995,7 +2987,7 @@ Subelementos serán desplazados hacia arriba. Con la ayuda de una clave de seguridad U2F/FIDO compatible (e.g. YubiKey o NitroKey), se puede obtener una autentiación en dos pasos segura y fácil de usar. Las claves de seguridad pueden ser registradas aquí, y si se requiere una verificación en dos pasos, solo necesitarás insertar la clave vía USB o introducirla en el dispositivo mediante NFC. - + Part-DB1\templates\security\U2F\u2f_register.html.twig:7 Part-DB1\templates\security\U2F\u2f_register.html.twig:7 @@ -3005,7 +2997,7 @@ Subelementos serán desplazados hacia arriba. Para garantizar el acceso incluso si has perdido la clave, ¡se recomienda registrar una segunda clave como copia de seguridad y guardarla en un lugar seguro! - + Part-DB1\templates\security\U2F\u2f_register.html.twig:16 Part-DB1\templates\security\U2F\u2f_register.html.twig:16 @@ -3015,7 +3007,7 @@ Subelementos serán desplazados hacia arriba. Nombre de la clave vista (e.g. Backup) - + Part-DB1\templates\security\U2F\u2f_register.html.twig:19 Part-DB1\templates\security\U2F\u2f_register.html.twig:19 @@ -3025,7 +3017,7 @@ Subelementos serán desplazados hacia arriba. Añadir clave de seguridad - + Part-DB1\templates\security\U2F\u2f_register.html.twig:27 Part-DB1\templates\security\U2F\u2f_register.html.twig:27 @@ -3035,7 +3027,7 @@ Subelementos serán desplazados hacia arriba. Volver a ajustes - + Part-DB1\templates\Statistics\statistics.html.twig:5 Part-DB1\templates\Statistics\statistics.html.twig:8 @@ -3048,7 +3040,7 @@ Subelementos serán desplazados hacia arriba. Estadísticas - + Part-DB1\templates\Statistics\statistics.html.twig:14 Part-DB1\templates\Statistics\statistics.html.twig:14 @@ -3059,7 +3051,7 @@ Subelementos serán desplazados hacia arriba. Componentes - + Part-DB1\templates\Statistics\statistics.html.twig:19 Part-DB1\templates\Statistics\statistics.html.twig:19 @@ -3070,7 +3062,7 @@ Subelementos serán desplazados hacia arriba. Estructuras de datos - + Part-DB1\templates\Statistics\statistics.html.twig:24 Part-DB1\templates\Statistics\statistics.html.twig:24 @@ -3081,7 +3073,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\templates\Statistics\statistics.html.twig:34 Part-DB1\templates\Statistics\statistics.html.twig:59 @@ -3096,7 +3088,7 @@ Subelementos serán desplazados hacia arriba. Propiedad - + Part-DB1\templates\Statistics\statistics.html.twig:35 Part-DB1\templates\Statistics\statistics.html.twig:60 @@ -3111,7 +3103,7 @@ Subelementos serán desplazados hacia arriba. Valor - + Part-DB1\templates\Statistics\statistics.html.twig:40 Part-DB1\templates\Statistics\statistics.html.twig:40 @@ -3122,7 +3114,7 @@ Subelementos serán desplazados hacia arriba. Número de componentes distintos - + Part-DB1\templates\Statistics\statistics.html.twig:44 Part-DB1\templates\Statistics\statistics.html.twig:44 @@ -3133,7 +3125,7 @@ Subelementos serán desplazados hacia arriba. Suma de todos los componentes en stock - + Part-DB1\templates\Statistics\statistics.html.twig:48 Part-DB1\templates\Statistics\statistics.html.twig:48 @@ -3144,7 +3136,7 @@ Subelementos serán desplazados hacia arriba. Número de componentes con información de precio - + Part-DB1\templates\Statistics\statistics.html.twig:65 Part-DB1\templates\Statistics\statistics.html.twig:65 @@ -3155,7 +3147,7 @@ Subelementos serán desplazados hacia arriba. Número de categorías - + Part-DB1\templates\Statistics\statistics.html.twig:69 Part-DB1\templates\Statistics\statistics.html.twig:69 @@ -3166,7 +3158,7 @@ Subelementos serán desplazados hacia arriba. Número de footprints - + Part-DB1\templates\Statistics\statistics.html.twig:73 Part-DB1\templates\Statistics\statistics.html.twig:73 @@ -3177,7 +3169,7 @@ Subelementos serán desplazados hacia arriba. Número de fabricantes - + Part-DB1\templates\Statistics\statistics.html.twig:77 Part-DB1\templates\Statistics\statistics.html.twig:77 @@ -3188,7 +3180,7 @@ Subelementos serán desplazados hacia arriba. Número de ubicaciones de almacenaje - + Part-DB1\templates\Statistics\statistics.html.twig:81 Part-DB1\templates\Statistics\statistics.html.twig:81 @@ -3199,7 +3191,7 @@ Subelementos serán desplazados hacia arriba. Número de proveedores - + Part-DB1\templates\Statistics\statistics.html.twig:85 Part-DB1\templates\Statistics\statistics.html.twig:85 @@ -3210,7 +3202,7 @@ Subelementos serán desplazados hacia arriba. Número de divisas - + Part-DB1\templates\Statistics\statistics.html.twig:89 Part-DB1\templates\Statistics\statistics.html.twig:89 @@ -3221,7 +3213,7 @@ Subelementos serán desplazados hacia arriba. Número de unidades de medida - + Part-DB1\templates\Statistics\statistics.html.twig:93 Part-DB1\templates\Statistics\statistics.html.twig:93 @@ -3232,7 +3224,7 @@ Subelementos serán desplazados hacia arriba. Número de proyectos - + Part-DB1\templates\Statistics\statistics.html.twig:110 Part-DB1\templates\Statistics\statistics.html.twig:110 @@ -3243,7 +3235,7 @@ Subelementos serán desplazados hacia arriba. Número de tipos de adjunto - + Part-DB1\templates\Statistics\statistics.html.twig:114 Part-DB1\templates\Statistics\statistics.html.twig:114 @@ -3254,7 +3246,7 @@ Subelementos serán desplazados hacia arriba. Número de adjuntos - + Part-DB1\templates\Statistics\statistics.html.twig:118 Part-DB1\templates\Statistics\statistics.html.twig:118 @@ -3265,7 +3257,7 @@ Subelementos serán desplazados hacia arriba. Número de adjuntos subidos por usuarios - + Part-DB1\templates\Statistics\statistics.html.twig:122 Part-DB1\templates\Statistics\statistics.html.twig:122 @@ -3276,7 +3268,7 @@ Subelementos serán desplazados hacia arriba. Número de adjuntos privados - + Part-DB1\templates\Statistics\statistics.html.twig:126 Part-DB1\templates\Statistics\statistics.html.twig:126 @@ -3287,7 +3279,7 @@ Subelementos serán desplazados hacia arriba. Número de adjuntos externos (URL) - + Part-DB1\templates\Users\backup_codes.html.twig:3 Part-DB1\templates\Users\backup_codes.html.twig:9 @@ -3299,7 +3291,7 @@ Subelementos serán desplazados hacia arriba. Códigos backup - + Part-DB1\templates\Users\backup_codes.html.twig:12 Part-DB1\templates\Users\backup_codes.html.twig:12 @@ -3309,7 +3301,7 @@ Subelementos serán desplazados hacia arriba. ¡Imprime estos códigos y guárdalos en un lugar seguro! - + Part-DB1\templates\Users\backup_codes.html.twig:13 Part-DB1\templates\Users\backup_codes.html.twig:13 @@ -3319,7 +3311,7 @@ Subelementos serán desplazados hacia arriba. Si ya no tienes acceso a tu dispositivo con la app de autenticación (has perdido el teléfono, pérdida de datos, etc.) puedes usar uno de estos códigos para acceder a tu cuenta y configurar una nueva app de autenticación. Cada uno de estos códigos puede usarse una única vez. Se recomienda eliminar dichos códigos. Cualquiera con acceso a estos códigos podría acceder a tu cuenta, así que guárdalos en un lugar seguro. - + Part-DB1\templates\Users\backup_codes.html.twig:16 Part-DB1\templates\Users\backup_codes.html.twig:16 @@ -3329,7 +3321,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\Users\backup_codes.html.twig:29 Part-DB1\templates\Users\backup_codes.html.twig:29 @@ -3339,7 +3331,7 @@ Subelementos serán desplazados hacia arriba. Página generada el %date% - + Part-DB1\templates\Users\backup_codes.html.twig:32 Part-DB1\templates\Users\backup_codes.html.twig:32 @@ -3349,7 +3341,7 @@ Subelementos serán desplazados hacia arriba. Imprimir - + Part-DB1\templates\Users\backup_codes.html.twig:35 Part-DB1\templates\Users\backup_codes.html.twig:35 @@ -3359,7 +3351,7 @@ Subelementos serán desplazados hacia arriba. Copiar al portapapeles - + Part-DB1\templates\Users\user_info.html.twig:3 Part-DB1\templates\Users\user_info.html.twig:6 @@ -3376,7 +3368,7 @@ Subelementos serán desplazados hacia arriba. Información del usuario - + Part-DB1\templates\Users\user_info.html.twig:18 Part-DB1\src\Form\UserSettingsType.php:77 @@ -3390,7 +3382,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\templates\Users\user_info.html.twig:24 Part-DB1\src\Form\UserSettingsType.php:82 @@ -3404,7 +3396,7 @@ Subelementos serán desplazados hacia arriba. Apellido - + Part-DB1\templates\Users\user_info.html.twig:30 Part-DB1\src\Form\UserSettingsType.php:92 @@ -3418,7 +3410,7 @@ Subelementos serán desplazados hacia arriba. Email - + Part-DB1\templates\Users\user_info.html.twig:37 Part-DB1\src\Form\UserSettingsType.php:87 @@ -3432,7 +3424,7 @@ Subelementos serán desplazados hacia arriba. Departamento - + Part-DB1\templates\Users\user_info.html.twig:47 Part-DB1\src\Form\UserSettingsType.php:73 @@ -3446,7 +3438,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\Users\user_info.html.twig:53 Part-DB1\src\Services\ElementTypeNameGenerator.php:93 @@ -3459,7 +3451,7 @@ Subelementos serán desplazados hacia arriba. Grupo: - + Part-DB1\templates\Users\user_info.html.twig:67 Part-DB1\templates\Users\user_info.html.twig:67 @@ -3469,7 +3461,7 @@ Subelementos serán desplazados hacia arriba. Permisos - + Part-DB1\templates\Users\user_settings.html.twig:3 Part-DB1\templates\Users\user_settings.html.twig:6 @@ -3486,7 +3478,7 @@ Subelementos serán desplazados hacia arriba. Configuración del usuario - + Part-DB1\templates\Users\user_settings.html.twig:18 Part-DB1\templates\Users\user_settings.html.twig:18 @@ -3497,7 +3489,7 @@ Subelementos serán desplazados hacia arriba. Información personal - + Part-DB1\templates\Users\user_settings.html.twig:22 Part-DB1\templates\Users\user_settings.html.twig:22 @@ -3508,7 +3500,7 @@ Subelementos serán desplazados hacia arriba. Configuración - + Part-DB1\templates\Users\user_settings.html.twig:55 Part-DB1\templates\Users\user_settings.html.twig:55 @@ -3519,7 +3511,7 @@ Subelementos serán desplazados hacia arriba. Restablecer contraseña - + Part-DB1\templates\Users\_2fa_settings.html.twig:6 Part-DB1\templates\Users\_2fa_settings.html.twig:6 @@ -3529,7 +3521,7 @@ Subelementos serán desplazados hacia arriba. Autenticación en dos pasos - + Part-DB1\templates\Users\_2fa_settings.html.twig:13 Part-DB1\templates\Users\_2fa_settings.html.twig:13 @@ -3539,7 +3531,7 @@ Subelementos serán desplazados hacia arriba. App de autenticación - + Part-DB1\templates\Users\_2fa_settings.html.twig:17 Part-DB1\templates\Users\_2fa_settings.html.twig:17 @@ -3549,7 +3541,7 @@ Subelementos serán desplazados hacia arriba. Códigos backup - + Part-DB1\templates\Users\_2fa_settings.html.twig:21 Part-DB1\templates\Users\_2fa_settings.html.twig:21 @@ -3559,7 +3551,7 @@ Subelementos serán desplazados hacia arriba. Claves de seguridad (U2F) - + Part-DB1\templates\Users\_2fa_settings.html.twig:25 Part-DB1\templates\Users\_2fa_settings.html.twig:25 @@ -3569,7 +3561,7 @@ Subelementos serán desplazados hacia arriba. Dispositivos confiables - + Part-DB1\templates\Users\_2fa_settings.html.twig:33 Part-DB1\templates\Users\_2fa_settings.html.twig:33 @@ -3579,7 +3571,7 @@ Subelementos serán desplazados hacia arriba. ¿Estás seguro de que quieres deshabilitar la app de autenticación? - + Part-DB1\templates\Users\_2fa_settings.html.twig:33 Part-DB1\templates\Users\_2fa_settings.html.twig:33 @@ -3590,7 +3582,7 @@ Subelementos serán desplazados hacia arriba. ¡Ten en cuenta que sin la autenticación en dos pasos tu cuenta no estará tan protegida contra atacantes! - + Part-DB1\templates\Users\_2fa_settings.html.twig:39 Part-DB1\templates\Users\_2fa_settings.html.twig:39 @@ -3600,7 +3592,7 @@ Subelementos serán desplazados hacia arriba. ¡App de autenticación desactivada! - + Part-DB1\templates\Users\_2fa_settings.html.twig:48 Part-DB1\templates\Users\_2fa_settings.html.twig:48 @@ -3610,7 +3602,7 @@ Subelementos serán desplazados hacia arriba. Descarga una app de autenticación (e.g. <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Google Authenticator</a> oder <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=org.fedorahosted.freeotp">FreeOTP Authenticator</a>) - + Part-DB1\templates\Users\_2fa_settings.html.twig:49 Part-DB1\templates\Users\_2fa_settings.html.twig:49 @@ -3620,7 +3612,7 @@ Subelementos serán desplazados hacia arriba. Escanea el código QR adjunto con la app o introduce los datos manualmente - + Part-DB1\templates\Users\_2fa_settings.html.twig:50 Part-DB1\templates\Users\_2fa_settings.html.twig:50 @@ -3630,7 +3622,7 @@ Subelementos serán desplazados hacia arriba. Introduce el código generado en el campo de abajo y confirma - + Part-DB1\templates\Users\_2fa_settings.html.twig:51 Part-DB1\templates\Users\_2fa_settings.html.twig:51 @@ -3640,7 +3632,7 @@ Subelementos serán desplazados hacia arriba. Imprime tus códigos backup y guárdalos en un lugar seguro - + Part-DB1\templates\Users\_2fa_settings.html.twig:58 Part-DB1\templates\Users\_2fa_settings.html.twig:58 @@ -3650,7 +3642,7 @@ Subelementos serán desplazados hacia arriba. Configuración manual - + Part-DB1\templates\Users\_2fa_settings.html.twig:62 Part-DB1\templates\Users\_2fa_settings.html.twig:62 @@ -3660,7 +3652,7 @@ Subelementos serán desplazados hacia arriba. Tipo - + Part-DB1\templates\Users\_2fa_settings.html.twig:63 Part-DB1\templates\Users\_2fa_settings.html.twig:63 @@ -3670,7 +3662,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\templates\Users\_2fa_settings.html.twig:64 Part-DB1\templates\Users\_2fa_settings.html.twig:64 @@ -3680,7 +3672,7 @@ Subelementos serán desplazados hacia arriba. Secreto - + Part-DB1\templates\Users\_2fa_settings.html.twig:65 Part-DB1\templates\Users\_2fa_settings.html.twig:65 @@ -3690,7 +3682,7 @@ Subelementos serán desplazados hacia arriba. Número de caracteres - + Part-DB1\templates\Users\_2fa_settings.html.twig:74 Part-DB1\templates\Users\_2fa_settings.html.twig:74 @@ -3700,7 +3692,7 @@ Subelementos serán desplazados hacia arriba. App de autenticación activada - + Part-DB1\templates\Users\_2fa_settings.html.twig:83 Part-DB1\templates\Users\_2fa_settings.html.twig:83 @@ -3710,7 +3702,7 @@ Subelementos serán desplazados hacia arriba. Códigos backup desactivados. Configura la app de autenticación para activar los códigos backup de nuevo. - + Part-DB1\templates\Users\_2fa_settings.html.twig:84 Part-DB1\templates\Users\_2fa_settings.html.twig:92 @@ -3722,7 +3714,7 @@ Subelementos serán desplazados hacia arriba. Puedes usar estos códigos backup para acceder a tu cuenta incluso si pierdes el dispositivo con la app de autenticación. Imprime los códigos y guárdalos en un lugar seguro. - + Part-DB1\templates\Users\_2fa_settings.html.twig:88 Part-DB1\templates\Users\_2fa_settings.html.twig:88 @@ -3732,7 +3724,7 @@ Subelementos serán desplazados hacia arriba. ¿Quieres restablecer los códigos? - + Part-DB1\templates\Users\_2fa_settings.html.twig:88 Part-DB1\templates\Users\_2fa_settings.html.twig:88 @@ -3742,7 +3734,7 @@ Subelementos serán desplazados hacia arriba. Esto eliminará los códigos previos y generará un nuevo conjunto de códigos. Esto no se puede deshacer. ¡Recuerda imprimir los nuevos códigos y guárdalos en un lugar seguro! - + Part-DB1\templates\Users\_2fa_settings.html.twig:91 Part-DB1\templates\Users\_2fa_settings.html.twig:91 @@ -3752,7 +3744,7 @@ Subelementos serán desplazados hacia arriba. Códigos backup activados - + Part-DB1\templates\Users\_2fa_settings.html.twig:99 Part-DB1\templates\Users\_2fa_settings.html.twig:99 @@ -3762,7 +3754,7 @@ Subelementos serán desplazados hacia arriba. Mostrar códigos backup - + Part-DB1\templates\Users\_2fa_settings.html.twig:114 Part-DB1\templates\Users\_2fa_settings.html.twig:114 @@ -3772,7 +3764,7 @@ Subelementos serán desplazados hacia arriba. Claves de seguridad registradas - + Part-DB1\templates\Users\_2fa_settings.html.twig:115 Part-DB1\templates\Users\_2fa_settings.html.twig:115 @@ -3782,7 +3774,7 @@ Subelementos serán desplazados hacia arriba. ¿Quieres eliminar esta clave de seguridad? - + Part-DB1\templates\Users\_2fa_settings.html.twig:116 Part-DB1\templates\Users\_2fa_settings.html.twig:116 @@ -3792,7 +3784,7 @@ Subelementos serán desplazados hacia arriba. Si eliminas esta clave, ya no podrás iniciar sesión con esta clave. Si no quedan claves de seguridad, la autenticación en dos pasos se desactivará. - + Part-DB1\templates\Users\_2fa_settings.html.twig:123 Part-DB1\templates\Users\_2fa_settings.html.twig:123 @@ -3802,7 +3794,7 @@ Subelementos serán desplazados hacia arriba. Nombre de la clave - + Part-DB1\templates\Users\_2fa_settings.html.twig:124 Part-DB1\templates\Users\_2fa_settings.html.twig:124 @@ -3812,7 +3804,7 @@ Subelementos serán desplazados hacia arriba. Fecha de registro - + Part-DB1\templates\Users\_2fa_settings.html.twig:134 Part-DB1\templates\Users\_2fa_settings.html.twig:134 @@ -3822,7 +3814,7 @@ Subelementos serán desplazados hacia arriba. Eliminar clave - + Part-DB1\templates\Users\_2fa_settings.html.twig:141 Part-DB1\templates\Users\_2fa_settings.html.twig:141 @@ -3832,7 +3824,7 @@ Subelementos serán desplazados hacia arriba. No hay claves registradas. - + Part-DB1\templates\Users\_2fa_settings.html.twig:144 Part-DB1\templates\Users\_2fa_settings.html.twig:144 @@ -3842,7 +3834,7 @@ Subelementos serán desplazados hacia arriba. Registrar una nueva clave de seguridad - + Part-DB1\templates\Users\_2fa_settings.html.twig:148 Part-DB1\templates\Users\_2fa_settings.html.twig:148 @@ -3852,7 +3844,7 @@ Subelementos serán desplazados hacia arriba. Cuando compruebes el segundo factor, el dispositivo actual será marcado como fiable, por lo que no se necesitará comprobarlo más en el mismo dispositivo. - + Part-DB1\templates\Users\_2fa_settings.html.twig:149 Part-DB1\templates\Users\_2fa_settings.html.twig:149 @@ -3862,7 +3854,7 @@ Subelementos serán desplazados hacia arriba. ¿Quieres eliminar todos los dispositivos fiables? - + Part-DB1\templates\Users\_2fa_settings.html.twig:150 Part-DB1\templates\Users\_2fa_settings.html.twig:150 @@ -3872,7 +3864,7 @@ Subelementos serán desplazados hacia arriba. Tendrás que realizar de nuevo la autenticación en dos pasos en todos los dispositivos. Asegúrate de que tienes el dispositivo autenticador a mano. - + Part-DB1\templates\Users\_2fa_settings.html.twig:154 Part-DB1\templates\Users\_2fa_settings.html.twig:154 @@ -3882,7 +3874,7 @@ Subelementos serán desplazados hacia arriba. Restablecer los dispositivos fiables - + Part-DB1\templates\_navbar.html.twig:4 Part-DB1\templates\_navbar.html.twig:4 @@ -3893,7 +3885,7 @@ Subelementos serán desplazados hacia arriba. Activar/desactivar la barra lateral - + Part-DB1\templates\_navbar.html.twig:22 @@ -3902,7 +3894,7 @@ Subelementos serán desplazados hacia arriba. Escáner - + Part-DB1\templates\_navbar.html.twig:38 Part-DB1\templates\_navbar.html.twig:36 @@ -3913,7 +3905,7 @@ Subelementos serán desplazados hacia arriba. Se ha iniciado sesión como - + Part-DB1\templates\_navbar.html.twig:44 Part-DB1\templates\_navbar.html.twig:42 @@ -3924,7 +3916,7 @@ Subelementos serán desplazados hacia arriba. Iniciar sesión - + Part-DB1\templates\_navbar.html.twig:50 Part-DB1\templates\_navbar.html.twig:48 @@ -3934,7 +3926,7 @@ Subelementos serán desplazados hacia arriba. Modo oscuro - + Part-DB1\templates\_navbar.html.twig:54 Part-DB1\src\Form\UserSettingsType.php:97 @@ -3948,7 +3940,7 @@ Subelementos serán desplazados hacia arriba. Cambiar idioma - + Part-DB1\templates\_navbar_search.html.twig:4 Part-DB1\templates\_navbar_search.html.twig:4 @@ -3959,7 +3951,7 @@ Subelementos serán desplazados hacia arriba. Opciones de búsqueda - + Part-DB1\templates\_navbar_search.html.twig:23 @@ -3968,7 +3960,7 @@ Subelementos serán desplazados hacia arriba. Etiquetas - + Part-DB1\templates\_navbar_search.html.twig:27 Part-DB1\src\Form\LabelOptionsType.php:68 @@ -3983,7 +3975,7 @@ Subelementos serán desplazados hacia arriba. Ubicación de almacenaje - + Part-DB1\templates\_navbar_search.html.twig:36 Part-DB1\templates\_navbar_search.html.twig:31 @@ -3994,7 +3986,7 @@ Subelementos serán desplazados hacia arriba. Código del proveedor - + Part-DB1\templates\_navbar_search.html.twig:40 Part-DB1\src\Services\ElementTypeNameGenerator.php:89 @@ -4007,7 +3999,7 @@ Subelementos serán desplazados hacia arriba. Proveedor - + Part-DB1\templates\_navbar_search.html.twig:57 Part-DB1\templates\_navbar_search.html.twig:52 @@ -4018,7 +4010,7 @@ Subelementos serán desplazados hacia arriba. Desactivar código de barras - + Part-DB1\templates\_navbar_search.html.twig:61 Part-DB1\templates\_navbar_search.html.twig:56 @@ -4029,7 +4021,7 @@ Subelementos serán desplazados hacia arriba. Reg.Ex. Matching - + Part-DB1\templates\_navbar_search.html.twig:68 Part-DB1\templates\_navbar_search.html.twig:62 @@ -4039,7 +4031,7 @@ Subelementos serán desplazados hacia arriba. ¡Vamos! - + Part-DB1\templates\_sidebar.html.twig:37 Part-DB1\templates\_sidebar.html.twig:12 @@ -4055,7 +4047,7 @@ Subelementos serán desplazados hacia arriba. Proyectos - + Part-DB1\templates\_sidebar.html.twig:2 Part-DB1\templates\_sidebar.html.twig:2 @@ -4068,7 +4060,7 @@ Subelementos serán desplazados hacia arriba. Acciones - + Part-DB1\templates\_sidebar.html.twig:6 Part-DB1\templates\_sidebar.html.twig:6 @@ -4081,7 +4073,7 @@ Subelementos serán desplazados hacia arriba. Fuente de datos - + Part-DB1\templates\_sidebar.html.twig:10 Part-DB1\templates\_sidebar.html.twig:10 @@ -4094,7 +4086,7 @@ Subelementos serán desplazados hacia arriba. Fabricantes - + Part-DB1\templates\_sidebar.html.twig:11 Part-DB1\templates\_sidebar.html.twig:11 @@ -4107,7 +4099,7 @@ Subelementos serán desplazados hacia arriba. Proveedores - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:213 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:293 @@ -4123,7 +4115,7 @@ Subelementos serán desplazados hacia arriba. Descarga fallida de adjuntos externos - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:222 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:190 @@ -4133,7 +4125,7 @@ Subelementos serán desplazados hacia arriba. Cambios guardados con éxito. - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:231 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:196 @@ -4143,7 +4135,7 @@ Subelementos serán desplazados hacia arriba. Los cambios no han podido guardarse. ¡Por favor, comprueba la información! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:302 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:252 @@ -4153,7 +4145,7 @@ Subelementos serán desplazados hacia arriba. Elemento creado - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:308 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:258 @@ -4163,7 +4155,7 @@ Subelementos serán desplazados hacia arriba. No se ha podido crear el elemento. ¡Por favor, comprueba los datos! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:399 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:352 @@ -4174,7 +4166,7 @@ Subelementos serán desplazados hacia arriba. ¡Elemento eliminado! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:401 Part-DB1\src\Controller\UserController.php:109 @@ -4190,7 +4182,7 @@ Subelementos serán desplazados hacia arriba. Token CSFR no válido. Por favor, refresca esta página o contacta con un administrador si este mensaje no desaparece. - + Part-DB1\src\Controller\LabelController.php:125 @@ -4199,7 +4191,7 @@ Subelementos serán desplazados hacia arriba. No se encontraron entidades que coincidan. - + Part-DB1\src\Controller\LogController.php:149 Part-DB1\src\Controller\LogController.php:154 @@ -4210,7 +4202,7 @@ Subelementos serán desplazados hacia arriba. ¡No se pudo encontrar el elemento en la base de datos! - + Part-DB1\src\Controller\LogController.php:156 Part-DB1\src\Controller\LogController.php:160 @@ -4221,7 +4213,7 @@ Subelementos serán desplazados hacia arriba. Componente restablecido con éxito. - + Part-DB1\src\Controller\LogController.php:176 Part-DB1\src\Controller\LogController.php:180 @@ -4232,7 +4224,7 @@ Subelementos serán desplazados hacia arriba. Elemento recuperado con éxito. - + Part-DB1\src\Controller\LogController.php:178 Part-DB1\src\Controller\LogController.php:182 @@ -4243,7 +4235,7 @@ Subelementos serán desplazados hacia arriba. ¡El elemento ya ha sido recuperado! - + Part-DB1\src\Controller\LogController.php:185 Part-DB1\src\Controller\LogController.php:189 @@ -4254,7 +4246,7 @@ Subelementos serán desplazados hacia arriba. Elemento eliminado con éxito. - + Part-DB1\src\Controller\LogController.php:187 Part-DB1\src\Controller\LogController.php:191 @@ -4265,7 +4257,7 @@ Subelementos serán desplazados hacia arriba. ¡El elemento ya ha sido eliminado! - + Part-DB1\src\Controller\LogController.php:194 Part-DB1\src\Controller\LogController.php:198 @@ -4276,7 +4268,7 @@ Subelementos serán desplazados hacia arriba. ¡Cambio deshecho con éxito! - + Part-DB1\src\Controller\LogController.php:196 Part-DB1\src\Controller\LogController.php:200 @@ -4287,7 +4279,7 @@ Subelementos serán desplazados hacia arriba. ¡Debes recuperar el elemento antes de poder deshacer el cambio! - + Part-DB1\src\Controller\LogController.php:199 Part-DB1\src\Controller\LogController.php:203 @@ -4298,7 +4290,7 @@ Subelementos serán desplazados hacia arriba. ¡Esta entrada del registro no se puede deshacer! - + Part-DB1\src\Controller\PartController.php:182 Part-DB1\src\Controller\PartController.php:182 @@ -4309,7 +4301,7 @@ Subelementos serán desplazados hacia arriba. ¡Los cambios han sido guardados! - + Part-DB1\src\Controller\PartController.php:186 Part-DB1\src\Controller\PartController.php:186 @@ -4319,7 +4311,7 @@ Subelementos serán desplazados hacia arriba. Error en el guardado: ¡Por favor, comprueba los datos! - + Part-DB1\src\Controller\PartController.php:216 Part-DB1\src\Controller\PartController.php:219 @@ -4329,7 +4321,7 @@ Subelementos serán desplazados hacia arriba. Componente eliminado con éxito. - + Part-DB1\src\Controller\PartController.php:302 Part-DB1\src\Controller\PartController.php:277 @@ -4342,7 +4334,7 @@ Subelementos serán desplazados hacia arriba. ¡Componente creado! - + Part-DB1\src\Controller\PartController.php:308 Part-DB1\src\Controller\PartController.php:283 @@ -4352,7 +4344,7 @@ Subelementos serán desplazados hacia arriba. Error durante la creación: ¡Por favor, comprueba los datos! - + Part-DB1\src\Controller\ScanController.php:68 Part-DB1\src\Controller\ScanController.php:90 @@ -4362,7 +4354,7 @@ Subelementos serán desplazados hacia arriba. No se ha encontrado elemento con ese código de barras. - + Part-DB1\src\Controller\ScanController.php:71 @@ -4371,7 +4363,7 @@ Subelementos serán desplazados hacia arriba. ¡Formato desconocido! - + Part-DB1\src\Controller\ScanController.php:86 @@ -4380,7 +4372,7 @@ Subelementos serán desplazados hacia arriba. ¡Elemento encontrado! - + Part-DB1\src\Controller\SecurityController.php:114 Part-DB1\src\Controller\SecurityController.php:109 @@ -4390,7 +4382,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario / Email - + Part-DB1\src\Controller\SecurityController.php:131 Part-DB1\src\Controller\SecurityController.php:126 @@ -4400,7 +4392,7 @@ Subelementos serán desplazados hacia arriba. ¡La solicitud de reinicio fue exitosa! Por favor, comprueba tus emails para más instrucciones. - + Part-DB1\src\Controller\SecurityController.php:162 Part-DB1\src\Controller\SecurityController.php:160 @@ -4410,7 +4402,7 @@ Subelementos serán desplazados hacia arriba. Nombre de usuario - + Part-DB1\src\Controller\SecurityController.php:165 Part-DB1\src\Controller\SecurityController.php:163 @@ -4420,7 +4412,7 @@ Subelementos serán desplazados hacia arriba. Token - + Part-DB1\src\Controller\SecurityController.php:194 Part-DB1\src\Controller\SecurityController.php:192 @@ -4430,7 +4422,7 @@ Subelementos serán desplazados hacia arriba. ¡Nombre de usuario o token no válidos! Por favor, comprueba los datos. - + Part-DB1\src\Controller\SecurityController.php:196 Part-DB1\src\Controller\SecurityController.php:194 @@ -4440,7 +4432,7 @@ Subelementos serán desplazados hacia arriba. La contraseña ha sido restablecida con éxito. Puedes ahora iniciar sesión con tu nueva contraseña. - + Part-DB1\src\Controller\UserController.php:107 Part-DB1\src\Controller\UserController.php:99 @@ -4450,7 +4442,7 @@ Subelementos serán desplazados hacia arriba. Todos los métodos de autenticación en dos pasos han sido desactivados. - + Part-DB1\src\Controller\UserSettingsController.php:101 Part-DB1\src\Controller\UserSettingsController.php:92 @@ -4460,7 +4452,7 @@ Subelementos serán desplazados hacia arriba. ¡No hay ningún código backup activado! - + Part-DB1\src\Controller\UserSettingsController.php:138 Part-DB1\src\Controller\UserSettingsController.php:132 @@ -4470,7 +4462,7 @@ Subelementos serán desplazados hacia arriba. No existe ninguna clave de seguridad con este ID. - + Part-DB1\src\Controller\UserSettingsController.php:145 Part-DB1\src\Controller\UserSettingsController.php:139 @@ -4480,7 +4472,7 @@ Subelementos serán desplazados hacia arriba. ¡No puedes eliminar las claves de seguridad de otros usuarios! - + Part-DB1\src\Controller\UserSettingsController.php:153 Part-DB1\src\Controller\UserSettingsController.php:147 @@ -4490,7 +4482,7 @@ Subelementos serán desplazados hacia arriba. La clave de seguridad ha sido eliminada con éxito. - + Part-DB1\src\Controller\UserSettingsController.php:188 Part-DB1\src\Controller\UserSettingsController.php:180 @@ -4500,7 +4492,7 @@ Subelementos serán desplazados hacia arriba. Los dispositivos fiables han sido restablecidos con éxito. - + Part-DB1\src\Controller\UserSettingsController.php:235 Part-DB1\src\Controller\UserSettingsController.php:226 @@ -4511,7 +4503,7 @@ Subelementos serán desplazados hacia arriba. ¡Configuración guardada! - + Part-DB1\src\Controller\UserSettingsController.php:297 Part-DB1\src\Controller\UserSettingsController.php:288 @@ -4522,7 +4514,7 @@ Subelementos serán desplazados hacia arriba. ¡Contraseña cambiada! - + Part-DB1\src\Controller\UserSettingsController.php:317 Part-DB1\src\Controller\UserSettingsController.php:306 @@ -4532,7 +4524,7 @@ Subelementos serán desplazados hacia arriba. La app de autenticación ha sido activada con éxito. - + Part-DB1\src\Controller\UserSettingsController.php:328 Part-DB1\src\Controller\UserSettingsController.php:315 @@ -4542,7 +4534,7 @@ Subelementos serán desplazados hacia arriba. La app de autenticación ha sido desactivada con éxito. - + Part-DB1\src\Controller\UserSettingsController.php:346 Part-DB1\src\Controller\UserSettingsController.php:332 @@ -4552,7 +4544,7 @@ Subelementos serán desplazados hacia arriba. Se han generado nuevos códigos backup con éxito. - + Part-DB1\src\DataTables\AttachmentDataTable.php:148 Part-DB1\src\DataTables\AttachmentDataTable.php:148 @@ -4562,7 +4554,7 @@ Subelementos serán desplazados hacia arriba. Nombre del archivo - + Part-DB1\src\DataTables\AttachmentDataTable.php:153 Part-DB1\src\DataTables\AttachmentDataTable.php:153 @@ -4572,7 +4564,7 @@ Subelementos serán desplazados hacia arriba. Tamaño del archivo - + Part-DB1\src\DataTables\AttachmentDataTable.php:183 Part-DB1\src\DataTables\AttachmentDataTable.php:191 @@ -4592,7 +4584,7 @@ Subelementos serán desplazados hacia arriba. Verdadero - + Part-DB1\src\DataTables\AttachmentDataTable.php:184 Part-DB1\src\DataTables\AttachmentDataTable.php:192 @@ -4614,7 +4606,7 @@ Subelementos serán desplazados hacia arriba. Falso - + Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:128 Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:119 @@ -4624,7 +4616,7 @@ Subelementos serán desplazados hacia arriba. Eliminado - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:57 Part-DB1\src\DataTables\Column\RevertLogColumn.php:60 @@ -4635,7 +4627,7 @@ Subelementos serán desplazados hacia arriba. Recuperar elemento - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:63 Part-DB1\src\DataTables\Column\RevertLogColumn.php:66 @@ -4646,7 +4638,7 @@ Subelementos serán desplazados hacia arriba. Deshacer cambio - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:83 Part-DB1\src\DataTables\Column\RevertLogColumn.php:86 @@ -4657,7 +4649,7 @@ Subelementos serán desplazados hacia arriba. Restablecer elemento a esta fecha - + Part-DB1\src\DataTables\LogDataTable.php:173 Part-DB1\src\DataTables\LogDataTable.php:161 @@ -4667,7 +4659,7 @@ Subelementos serán desplazados hacia arriba. ID - + Part-DB1\src\DataTables\LogDataTable.php:178 Part-DB1\src\DataTables\LogDataTable.php:166 @@ -4677,7 +4669,7 @@ Subelementos serán desplazados hacia arriba. Fecha - + Part-DB1\src\DataTables\LogDataTable.php:183 Part-DB1\src\DataTables\LogDataTable.php:171 @@ -4687,7 +4679,7 @@ Subelementos serán desplazados hacia arriba. Evento - + Part-DB1\src\DataTables\LogDataTable.php:191 Part-DB1\src\DataTables\LogDataTable.php:179 @@ -4697,7 +4689,7 @@ Subelementos serán desplazados hacia arriba. Nivel - + Part-DB1\src\DataTables\LogDataTable.php:200 Part-DB1\src\DataTables\LogDataTable.php:188 @@ -4707,7 +4699,7 @@ Subelementos serán desplazados hacia arriba. Usuario - + Part-DB1\src\DataTables\LogDataTable.php:213 Part-DB1\src\DataTables\LogDataTable.php:201 @@ -4717,7 +4709,7 @@ Subelementos serán desplazados hacia arriba. Tipo de objetivo - + Part-DB1\src\DataTables\LogDataTable.php:226 Part-DB1\src\DataTables\LogDataTable.php:214 @@ -4727,7 +4719,7 @@ Subelementos serán desplazados hacia arriba. Objetivo - + Part-DB1\src\DataTables\LogDataTable.php:231 Part-DB1\src\DataTables\LogDataTable.php:218 @@ -4738,7 +4730,7 @@ Subelementos serán desplazados hacia arriba. Extra - + Part-DB1\src\DataTables\PartsDataTable.php:168 Part-DB1\src\DataTables\PartsDataTable.php:116 @@ -4748,7 +4740,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\src\DataTables\PartsDataTable.php:178 Part-DB1\src\DataTables\PartsDataTable.php:126 @@ -4758,7 +4750,7 @@ Subelementos serán desplazados hacia arriba. Id - + Part-DB1\src\DataTables\PartsDataTable.php:182 Part-DB1\src\DataTables\PartsDataTable.php:130 @@ -4768,7 +4760,7 @@ Subelementos serán desplazados hacia arriba. Descripción - + Part-DB1\src\DataTables\PartsDataTable.php:185 Part-DB1\src\DataTables\PartsDataTable.php:133 @@ -4778,7 +4770,7 @@ Subelementos serán desplazados hacia arriba. Categoría - + Part-DB1\src\DataTables\PartsDataTable.php:190 Part-DB1\src\DataTables\PartsDataTable.php:138 @@ -4788,7 +4780,7 @@ Subelementos serán desplazados hacia arriba. Footprint - + Part-DB1\src\DataTables\PartsDataTable.php:194 Part-DB1\src\DataTables\PartsDataTable.php:142 @@ -4798,7 +4790,7 @@ Subelementos serán desplazados hacia arriba. Fabricante - + Part-DB1\src\DataTables\PartsDataTable.php:197 Part-DB1\src\DataTables\PartsDataTable.php:145 @@ -4808,7 +4800,7 @@ Subelementos serán desplazados hacia arriba. Ubicación de almacenaje - + Part-DB1\src\DataTables\PartsDataTable.php:216 Part-DB1\src\DataTables\PartsDataTable.php:164 @@ -4818,7 +4810,7 @@ Subelementos serán desplazados hacia arriba. Cantidad - + Part-DB1\src\DataTables\PartsDataTable.php:224 Part-DB1\src\DataTables\PartsDataTable.php:172 @@ -4828,7 +4820,7 @@ Subelementos serán desplazados hacia arriba. Cantidad mínima - + Part-DB1\src\DataTables\PartsDataTable.php:232 Part-DB1\src\DataTables\PartsDataTable.php:180 @@ -4838,7 +4830,7 @@ Subelementos serán desplazados hacia arriba. Unidad de Medida - + Part-DB1\src\DataTables\PartsDataTable.php:236 Part-DB1\src\DataTables\PartsDataTable.php:184 @@ -4848,7 +4840,7 @@ Subelementos serán desplazados hacia arriba. Creado en - + Part-DB1\src\DataTables\PartsDataTable.php:240 Part-DB1\src\DataTables\PartsDataTable.php:188 @@ -4858,7 +4850,7 @@ Subelementos serán desplazados hacia arriba. Última edición - + Part-DB1\src\DataTables\PartsDataTable.php:244 Part-DB1\src\DataTables\PartsDataTable.php:192 @@ -4868,7 +4860,7 @@ Subelementos serán desplazados hacia arriba. Necesita revisión - + Part-DB1\src\DataTables\PartsDataTable.php:251 Part-DB1\src\DataTables\PartsDataTable.php:199 @@ -4878,7 +4870,7 @@ Subelementos serán desplazados hacia arriba. Favorito - + Part-DB1\src\DataTables\PartsDataTable.php:258 Part-DB1\src\DataTables\PartsDataTable.php:206 @@ -4888,7 +4880,7 @@ Subelementos serán desplazados hacia arriba. Estado - + Part-DB1\src\DataTables\PartsDataTable.php:260 Part-DB1\src\DataTables\PartsDataTable.php:262 @@ -4902,7 +4894,7 @@ Subelementos serán desplazados hacia arriba. Desconocido - + Part-DB1\src\DataTables\PartsDataTable.php:263 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4914,7 +4906,7 @@ Subelementos serán desplazados hacia arriba. Anunciado - + Part-DB1\src\DataTables\PartsDataTable.php:264 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4926,7 +4918,7 @@ Subelementos serán desplazados hacia arriba. Activo - + Part-DB1\src\DataTables\PartsDataTable.php:265 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4938,7 +4930,7 @@ Subelementos serán desplazados hacia arriba. No recomendado para nuevos diseños - + Part-DB1\src\DataTables\PartsDataTable.php:266 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4950,7 +4942,7 @@ Subelementos serán desplazados hacia arriba. Final de vida - + Part-DB1\src\DataTables\PartsDataTable.php:267 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4962,7 +4954,7 @@ Subelementos serán desplazados hacia arriba. Descontinuado - + Part-DB1\src\DataTables\PartsDataTable.php:271 Part-DB1\src\DataTables\PartsDataTable.php:219 @@ -4972,7 +4964,7 @@ Subelementos serán desplazados hacia arriba. MPN - + Part-DB1\src\DataTables\PartsDataTable.php:275 Part-DB1\src\DataTables\PartsDataTable.php:223 @@ -4982,7 +4974,7 @@ Subelementos serán desplazados hacia arriba. Peso - + Part-DB1\src\DataTables\PartsDataTable.php:279 Part-DB1\src\DataTables\PartsDataTable.php:227 @@ -4992,7 +4984,7 @@ Subelementos serán desplazados hacia arriba. Etiquetas - + Part-DB1\src\DataTables\PartsDataTable.php:283 Part-DB1\src\DataTables\PartsDataTable.php:231 @@ -5002,7 +4994,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\src\EventSubscriber\UserSystem\LoginSuccessSubscriber.php:82 Part-DB1\src\EventSubscriber\LoginSuccessListener.php:82 @@ -5012,7 +5004,7 @@ Subelementos serán desplazados hacia arriba. Se ha iniciado sesión correctamente - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5023,7 +5015,7 @@ Subelementos serán desplazados hacia arriba. JSON - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5034,7 +5026,7 @@ Subelementos serán desplazados hacia arriba. XML - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5045,7 +5037,7 @@ Subelementos serán desplazados hacia arriba. CSV - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5056,7 +5048,7 @@ Subelementos serán desplazados hacia arriba. YAML - + Part-DB1\src\Form\AdminPages\ImportType.php:124 Part-DB1\src\Form\AdminPages\ImportType.php:124 @@ -5066,7 +5058,7 @@ Subelementos serán desplazados hacia arriba. Cuando esta opción se active, el proceso de importación será abortado si se selecciona información no válida. Si no se ha seleccionado, la información incorrecta se ignorará y el importador intentará importar el resto de elementos. - + Part-DB1\src\Form\AdminPages\ImportType.php:86 Part-DB1\src\Form\AdminPages\ImportType.php:86 @@ -5077,7 +5069,7 @@ Subelementos serán desplazados hacia arriba. Separador CSV - + Part-DB1\src\Form\AdminPages\ImportType.php:93 Part-DB1\src\Form\AdminPages\ImportType.php:93 @@ -5088,7 +5080,7 @@ Subelementos serán desplazados hacia arriba. Elemento padre - + Part-DB1\src\Form\AdminPages\ImportType.php:101 Part-DB1\src\Form\AdminPages\ImportType.php:101 @@ -5099,7 +5091,7 @@ Subelementos serán desplazados hacia arriba. Archivo - + Part-DB1\src\Form\AdminPages\ImportType.php:111 Part-DB1\src\Form\AdminPages\ImportType.php:111 @@ -5110,7 +5102,7 @@ Subelementos serán desplazados hacia arriba. Preservar elementos hijos al importar - + Part-DB1\src\Form\AdminPages\ImportType.php:120 Part-DB1\src\Form\AdminPages\ImportType.php:120 @@ -5121,7 +5113,7 @@ Subelementos serán desplazados hacia arriba. Anular en caso de datos inválidos - + Part-DB1\src\Form\AdminPages\ImportType.php:132 Part-DB1\src\Form\AdminPages\ImportType.php:132 @@ -5132,7 +5124,7 @@ Subelementos serán desplazados hacia arriba. Importar - + Part-DB1\src\Form\AttachmentFormType.php:113 Part-DB1\src\Form\AttachmentFormType.php:109 @@ -5142,7 +5134,7 @@ Subelementos serán desplazados hacia arriba. Un adjunto marcado como privado solo puede ser accedido por usuarios autenticados que tengan el permiso necesario. Si esta opción es activada, ninguna miniatura será generada y el acceso al archivo será más lento. - + Part-DB1\src\Form\AttachmentFormType.php:127 Part-DB1\src\Form\AttachmentFormType.php:123 @@ -5152,7 +5144,7 @@ Subelementos serán desplazados hacia arriba. Puedes especificar una URL a un archivo externo aquí, o introducir una palabra clave para buscar recursos incorporados (p.ej. footprints) - + Part-DB1\src\Form\AttachmentFormType.php:82 Part-DB1\src\Form\AttachmentFormType.php:79 @@ -5162,7 +5154,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\src\Form\AttachmentFormType.php:85 Part-DB1\src\Form\AttachmentFormType.php:82 @@ -5172,7 +5164,7 @@ Subelementos serán desplazados hacia arriba. Tipo de adjunto - + Part-DB1\src\Form\AttachmentFormType.php:94 Part-DB1\src\Form\AttachmentFormType.php:91 @@ -5182,7 +5174,7 @@ Subelementos serán desplazados hacia arriba. Mostrar en la tabla - + Part-DB1\src\Form\AttachmentFormType.php:105 Part-DB1\src\Form\AttachmentFormType.php:102 @@ -5192,7 +5184,7 @@ Subelementos serán desplazados hacia arriba. Adjunto privado - + Part-DB1\src\Form\AttachmentFormType.php:119 Part-DB1\src\Form\AttachmentFormType.php:115 @@ -5202,7 +5194,7 @@ Subelementos serán desplazados hacia arriba. URL - + Part-DB1\src\Form\AttachmentFormType.php:133 Part-DB1\src\Form\AttachmentFormType.php:129 @@ -5212,7 +5204,7 @@ Subelementos serán desplazados hacia arriba. Descargar archivo externo - + Part-DB1\src\Form\AttachmentFormType.php:146 Part-DB1\src\Form\AttachmentFormType.php:142 @@ -5222,7 +5214,7 @@ Subelementos serán desplazados hacia arriba. Subir archivo - + Part-DB1\src\Form\LabelOptionsType.php:68 Part-DB1\src\Services\ElementTypeNameGenerator.php:86 @@ -5232,7 +5224,7 @@ Subelementos serán desplazados hacia arriba. Componente - + Part-DB1\src\Form\LabelOptionsType.php:68 Part-DB1\src\Services\ElementTypeNameGenerator.php:87 @@ -5242,7 +5234,7 @@ Subelementos serán desplazados hacia arriba. Lote del componente - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5251,7 +5243,7 @@ Subelementos serán desplazados hacia arriba. Ninguno - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5260,7 +5252,7 @@ Subelementos serán desplazados hacia arriba. Código QR (recomendado) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5269,7 +5261,7 @@ Subelementos serán desplazados hacia arriba. Código 128 (recomendado) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5278,7 +5270,7 @@ Subelementos serán desplazados hacia arriba. Código 39 (recomendado) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5287,7 +5279,7 @@ Subelementos serán desplazados hacia arriba. Código 93 - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5296,7 +5288,7 @@ Subelementos serán desplazados hacia arriba. Datamatrix - + Part-DB1\src\Form\LabelOptionsType.php:122 @@ -5305,7 +5297,7 @@ Subelementos serán desplazados hacia arriba. Marcador de posición - + Part-DB1\src\Form\LabelOptionsType.php:122 @@ -5314,7 +5306,7 @@ Subelementos serán desplazados hacia arriba. Twig - + Part-DB1\src\Form\LabelOptionsType.php:126 @@ -5323,7 +5315,7 @@ Subelementos serán desplazados hacia arriba. Si aquí seleccionas Twig, el campo de contenido se interpreta como una plantilla Twig. Visita <a href="https://twig.symfony.com/doc/3.x/templates.html">Twig documentation</a> y <a href="https://docs.part-db.de/usage/labels.html#twig-mode">Wiki</a> para más información. - + Part-DB1\src\Form\LabelOptionsType.php:47 @@ -5332,7 +5324,7 @@ Subelementos serán desplazados hacia arriba. Tamaño de etiqueta - + Part-DB1\src\Form\LabelOptionsType.php:66 @@ -5341,7 +5333,7 @@ Subelementos serán desplazados hacia arriba. Tipo de objetivo - + Part-DB1\src\Form\LabelOptionsType.php:75 @@ -5350,7 +5342,7 @@ Subelementos serán desplazados hacia arriba. Código de barras - + Part-DB1\src\Form\LabelOptionsType.php:102 @@ -5359,7 +5351,7 @@ Subelementos serán desplazados hacia arriba. Contenido - + Part-DB1\src\Form\LabelOptionsType.php:111 @@ -5368,7 +5360,7 @@ Subelementos serán desplazados hacia arriba. Estilos adicionales (CSS) - + Part-DB1\src\Form\LabelOptionsType.php:120 @@ -5377,7 +5369,7 @@ Subelementos serán desplazados hacia arriba. Modo parser - + Part-DB1\src\Form\LabelOptionsType.php:51 @@ -5386,7 +5378,7 @@ Subelementos serán desplazados hacia arriba. Anchura - + Part-DB1\src\Form\LabelOptionsType.php:60 @@ -5395,7 +5387,7 @@ Subelementos serán desplazados hacia arriba. Altura - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:49 @@ -5404,7 +5396,7 @@ Subelementos serán desplazados hacia arriba. Puedes especificar múltiples ID (ej. 1, 2, 3) y/o un intervalo (1-3) aquí para generar etiquetas para múltiples elementos a la vez. - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:46 @@ -5413,7 +5405,7 @@ Subelementos serán desplazados hacia arriba. ID del objetivo - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:59 @@ -5422,7 +5414,7 @@ Subelementos serán desplazados hacia arriba. Actualizar - + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:36 @@ -5431,7 +5423,7 @@ Subelementos serán desplazados hacia arriba. Input - + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:44 @@ -5440,7 +5432,7 @@ Subelementos serán desplazados hacia arriba. Subir - + Part-DB1\src\Form\ParameterType.php:41 @@ -5449,7 +5441,7 @@ Subelementos serán desplazados hacia arriba. p.ej. DC Current Gain - + Part-DB1\src\Form\ParameterType.php:50 @@ -5458,7 +5450,7 @@ Subelementos serán desplazados hacia arriba. p.ej. h_{FE} - + Part-DB1\src\Form\ParameterType.php:60 @@ -5467,7 +5459,7 @@ Subelementos serán desplazados hacia arriba. p.ej. Test conditions - + Part-DB1\src\Form\ParameterType.php:71 @@ -5476,7 +5468,7 @@ Subelementos serán desplazados hacia arriba. p.ej. 350 - + Part-DB1\src\Form\ParameterType.php:82 @@ -5485,7 +5477,7 @@ Subelementos serán desplazados hacia arriba. p.ej. 100 - + Part-DB1\src\Form\ParameterType.php:93 @@ -5494,7 +5486,7 @@ Subelementos serán desplazados hacia arriba. p.ej. 200 - + Part-DB1\src\Form\ParameterType.php:103 @@ -5503,7 +5495,7 @@ Subelementos serán desplazados hacia arriba. p.ej. V - + Part-DB1\src\Form\ParameterType.php:114 @@ -5512,7 +5504,7 @@ Subelementos serán desplazados hacia arriba. p.ej. Especificaciones técnicas - + Part-DB1\src\Form\Part\OrderdetailType.php:72 Part-DB1\src\Form\Part\OrderdetailType.php:75 @@ -5522,7 +5514,7 @@ Subelementos serán desplazados hacia arriba. Número de componente de proveedor - + Part-DB1\src\Form\Part\OrderdetailType.php:81 Part-DB1\src\Form\Part\OrderdetailType.php:84 @@ -5532,7 +5524,7 @@ Subelementos serán desplazados hacia arriba. Proveedor - + Part-DB1\src\Form\Part\OrderdetailType.php:87 Part-DB1\src\Form\Part\OrderdetailType.php:90 @@ -5542,7 +5534,7 @@ Subelementos serán desplazados hacia arriba. Enlace a la oferta - + Part-DB1\src\Form\Part\OrderdetailType.php:93 Part-DB1\src\Form\Part\OrderdetailType.php:96 @@ -5552,7 +5544,7 @@ Subelementos serán desplazados hacia arriba. Ya no disponible - + Part-DB1\src\Form\Part\OrderdetailType.php:75 Part-DB1\src\Form\Part\OrderdetailType.php:78 @@ -5562,7 +5554,7 @@ Subelementos serán desplazados hacia arriba. p.ej. BC 547C - + Part-DB1\src\Form\Part\PartBaseType.php:101 Part-DB1\src\Form\Part\PartBaseType.php:99 @@ -5572,7 +5564,7 @@ Subelementos serán desplazados hacia arriba. Nombre - + Part-DB1\src\Form\Part\PartBaseType.php:109 Part-DB1\src\Form\Part\PartBaseType.php:107 @@ -5582,7 +5574,7 @@ Subelementos serán desplazados hacia arriba. Descripción - + Part-DB1\src\Form\Part\PartBaseType.php:120 Part-DB1\src\Form\Part\PartBaseType.php:118 @@ -5592,7 +5584,7 @@ Subelementos serán desplazados hacia arriba. Stock mínimo - + Part-DB1\src\Form\Part\PartBaseType.php:129 Part-DB1\src\Form\Part\PartBaseType.php:127 @@ -5602,7 +5594,7 @@ Subelementos serán desplazados hacia arriba. Categoría - + Part-DB1\src\Form\Part\PartBaseType.php:135 Part-DB1\src\Form\Part\PartBaseType.php:133 @@ -5612,7 +5604,7 @@ Subelementos serán desplazados hacia arriba. Footprint - + Part-DB1\src\Form\Part\PartBaseType.php:142 Part-DB1\src\Form\Part\PartBaseType.php:140 @@ -5622,7 +5614,7 @@ Subelementos serán desplazados hacia arriba. Etiquetas - + Part-DB1\src\Form\Part\PartBaseType.php:154 Part-DB1\src\Form\Part\PartBaseType.php:152 @@ -5632,7 +5624,7 @@ Subelementos serán desplazados hacia arriba. Fabricante - + Part-DB1\src\Form\Part\PartBaseType.php:161 Part-DB1\src\Form\Part\PartBaseType.php:159 @@ -5642,7 +5634,7 @@ Subelementos serán desplazados hacia arriba. Link a la página del producto - + Part-DB1\src\Form\Part\PartBaseType.php:167 Part-DB1\src\Form\Part\PartBaseType.php:165 @@ -5652,7 +5644,7 @@ Subelementos serán desplazados hacia arriba. Número del fabricante del componente - + Part-DB1\src\Form\Part\PartBaseType.php:173 Part-DB1\src\Form\Part\PartBaseType.php:171 @@ -5662,7 +5654,7 @@ Subelementos serán desplazados hacia arriba. Estado de fabricación - + Part-DB1\src\Form\Part\PartBaseType.php:181 Part-DB1\src\Form\Part\PartBaseType.php:179 @@ -5672,7 +5664,7 @@ Subelementos serán desplazados hacia arriba. Necesita revisión - + Part-DB1\src\Form\Part\PartBaseType.php:189 Part-DB1\src\Form\Part\PartBaseType.php:187 @@ -5682,7 +5674,7 @@ Subelementos serán desplazados hacia arriba. Favorito - + Part-DB1\src\Form\Part\PartBaseType.php:197 Part-DB1\src\Form\Part\PartBaseType.php:195 @@ -5692,7 +5684,7 @@ Subelementos serán desplazados hacia arriba. Peso - + Part-DB1\src\Form\Part\PartBaseType.php:203 Part-DB1\src\Form\Part\PartBaseType.php:201 @@ -5702,7 +5694,7 @@ Subelementos serán desplazados hacia arriba. Unidad de medida - + Part-DB1\src\Form\Part\PartBaseType.php:212 Part-DB1\src\Form\Part\PartBaseType.php:210 @@ -5712,7 +5704,7 @@ Subelementos serán desplazados hacia arriba. Notas - + Part-DB1\src\Form\Part\PartBaseType.php:250 Part-DB1\src\Form\Part\PartBaseType.php:246 @@ -5722,7 +5714,7 @@ Subelementos serán desplazados hacia arriba. Vista previa - + Part-DB1\src\Form\Part\PartBaseType.php:295 Part-DB1\src\Form\Part\PartBaseType.php:276 @@ -5733,7 +5725,7 @@ Subelementos serán desplazados hacia arriba. Guardar cambios - + Part-DB1\src\Form\Part\PartBaseType.php:296 Part-DB1\src\Form\Part\PartBaseType.php:277 @@ -5744,7 +5736,7 @@ Subelementos serán desplazados hacia arriba. Restablecer cambios - + Part-DB1\src\Form\Part\PartBaseType.php:105 Part-DB1\src\Form\Part\PartBaseType.php:103 @@ -5754,7 +5746,7 @@ Subelementos serán desplazados hacia arriba. p.ej. BC547 - + Part-DB1\src\Form\Part\PartBaseType.php:115 Part-DB1\src\Form\Part\PartBaseType.php:113 @@ -5764,7 +5756,7 @@ Subelementos serán desplazados hacia arriba. p.ej NPN 45V, 0,1A, 0,5W - + Part-DB1\src\Form\Part\PartBaseType.php:123 Part-DB1\src\Form\Part\PartBaseType.php:121 @@ -5774,7 +5766,7 @@ Subelementos serán desplazados hacia arriba. p.ej. 1 - + Part-DB1\src\Form\Part\PartLotType.php:69 Part-DB1\src\Form\Part\PartLotType.php:69 @@ -5784,7 +5776,7 @@ Subelementos serán desplazados hacia arriba. Descripción - + Part-DB1\src\Form\Part\PartLotType.php:78 Part-DB1\src\Form\Part\PartLotType.php:78 @@ -5794,7 +5786,7 @@ Subelementos serán desplazados hacia arriba. Ubicación de almacenaje - + Part-DB1\src\Form\Part\PartLotType.php:89 Part-DB1\src\Form\Part\PartLotType.php:89 @@ -5804,7 +5796,7 @@ Subelementos serán desplazados hacia arriba. Cantidad - + Part-DB1\src\Form\Part\PartLotType.php:98 Part-DB1\src\Form\Part\PartLotType.php:97 @@ -5814,7 +5806,7 @@ Subelementos serán desplazados hacia arriba. Cantidad desconocida - + Part-DB1\src\Form\Part\PartLotType.php:109 Part-DB1\src\Form\Part\PartLotType.php:108 @@ -5824,7 +5816,7 @@ Subelementos serán desplazados hacia arriba. Necesita repuesto - + Part-DB1\src\Form\Part\PartLotType.php:120 Part-DB1\src\Form\Part\PartLotType.php:119 @@ -5834,7 +5826,7 @@ Subelementos serán desplazados hacia arriba. Fecha de caducidad - + Part-DB1\src\Form\Part\PartLotType.php:128 Part-DB1\src\Form\Part\PartLotType.php:125 @@ -5844,7 +5836,7 @@ Subelementos serán desplazados hacia arriba. Comentarios - + Part-DB1\src\Form\Permissions\PermissionsType.php:99 Part-DB1\src\Form\Permissions\PermissionsType.php:99 @@ -5854,7 +5846,7 @@ Subelementos serán desplazados hacia arriba. Varios - + Part-DB1\src\Form\TFAGoogleSettingsType.php:97 Part-DB1\src\Form\TFAGoogleSettingsType.php:97 @@ -5864,7 +5856,7 @@ Subelementos serán desplazados hacia arriba. Habilitar app de autenticación - + Part-DB1\src\Form\TFAGoogleSettingsType.php:101 Part-DB1\src\Form\TFAGoogleSettingsType.php:101 @@ -5874,7 +5866,7 @@ Subelementos serán desplazados hacia arriba. Desactivar aplicación de autenticación - + Part-DB1\src\Form\TFAGoogleSettingsType.php:74 Part-DB1\src\Form\TFAGoogleSettingsType.php:74 @@ -5884,7 +5876,7 @@ Subelementos serán desplazados hacia arriba. Código de confirmación - + Part-DB1\src\Form\UserSettingsType.php:108 Part-DB1\src\Form\UserSettingsType.php:108 @@ -5895,7 +5887,7 @@ Subelementos serán desplazados hacia arriba. Zona horaria - + Part-DB1\src\Form\UserSettingsType.php:133 Part-DB1\src\Form\UserSettingsType.php:132 @@ -5905,7 +5897,7 @@ Subelementos serán desplazados hacia arriba. Divisa preferida - + Part-DB1\src\Form\UserSettingsType.php:140 Part-DB1\src\Form\UserSettingsType.php:139 @@ -5916,7 +5908,7 @@ Subelementos serán desplazados hacia arriba. Aplicar cambios - + Part-DB1\src\Form\UserSettingsType.php:141 Part-DB1\src\Form\UserSettingsType.php:140 @@ -5927,7 +5919,7 @@ Subelementos serán desplazados hacia arriba. Descartar cambios - + Part-DB1\src\Form\UserSettingsType.php:104 Part-DB1\src\Form\UserSettingsType.php:104 @@ -5938,7 +5930,7 @@ Subelementos serán desplazados hacia arriba. Idioma del servidor - + Part-DB1\src\Form\UserSettingsType.php:115 Part-DB1\src\Form\UserSettingsType.php:115 @@ -5949,7 +5941,7 @@ Subelementos serán desplazados hacia arriba. Zona horaria del servidor - + Part-DB1\src\Services\ElementTypeNameGenerator.php:79 Part-DB1\src\Services\ElementTypeNameGenerator.php:79 @@ -5959,7 +5951,7 @@ Subelementos serán desplazados hacia arriba. Adjunto - + Part-DB1\src\Services\ElementTypeNameGenerator.php:81 Part-DB1\src\Services\ElementTypeNameGenerator.php:81 @@ -5969,7 +5961,7 @@ Subelementos serán desplazados hacia arriba. Tipo de adjunto - + Part-DB1\src\Services\ElementTypeNameGenerator.php:82 Part-DB1\src\Services\ElementTypeNameGenerator.php:82 @@ -5979,7 +5971,7 @@ Subelementos serán desplazados hacia arriba. Proyecto - + Part-DB1\src\Services\ElementTypeNameGenerator.php:85 Part-DB1\src\Services\ElementTypeNameGenerator.php:85 @@ -5989,7 +5981,7 @@ Subelementos serán desplazados hacia arriba. Unidad de medida - + Part-DB1\src\Services\ElementTypeNameGenerator.php:90 Part-DB1\src\Services\ElementTypeNameGenerator.php:90 @@ -5999,7 +5991,7 @@ Subelementos serán desplazados hacia arriba. Divisa - + Part-DB1\src\Services\ElementTypeNameGenerator.php:91 Part-DB1\src\Services\ElementTypeNameGenerator.php:91 @@ -6009,7 +6001,7 @@ Subelementos serán desplazados hacia arriba. Información del pedido - + Part-DB1\src\Services\ElementTypeNameGenerator.php:92 Part-DB1\src\Services\ElementTypeNameGenerator.php:92 @@ -6019,7 +6011,7 @@ Subelementos serán desplazados hacia arriba. Información del precio - + Part-DB1\src\Services\ElementTypeNameGenerator.php:94 Part-DB1\src\Services\ElementTypeNameGenerator.php:94 @@ -6029,7 +6021,7 @@ Subelementos serán desplazados hacia arriba. Usuario - + Part-DB1\src\Services\ElementTypeNameGenerator.php:95 @@ -6038,7 +6030,7 @@ Subelementos serán desplazados hacia arriba. Parámetro - + Part-DB1\src\Services\ElementTypeNameGenerator.php:96 @@ -6047,7 +6039,7 @@ Subelementos serán desplazados hacia arriba. Perfil de etiqueta - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:176 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:161 @@ -6058,7 +6050,7 @@ Subelementos serán desplazados hacia arriba. Desconocido - + Part-DB1\src\Services\MarkdownParser.php:73 Part-DB1\src\Services\MarkdownParser.php:73 @@ -6068,7 +6060,7 @@ Subelementos serán desplazados hacia arriba. Cargando markdown. Si este mensaje no desaparece, prueba a refrescar la página. - + Part-DB1\src\Services\PasswordResetManager.php:98 Part-DB1\src\Services\PasswordResetManager.php:98 @@ -6078,7 +6070,7 @@ Subelementos serán desplazados hacia arriba. Restablecer contraseña de tu cuenta Part-DB. - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 @@ -6087,7 +6079,7 @@ Subelementos serán desplazados hacia arriba. Herramientas - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:107 @@ -6098,7 +6090,7 @@ Subelementos serán desplazados hacia arriba. Editar - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:110 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 @@ -6109,7 +6101,7 @@ Subelementos serán desplazados hacia arriba. Visualizar - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:111 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 @@ -6119,7 +6111,7 @@ Subelementos serán desplazados hacia arriba. Sistema - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:123 @@ -6128,7 +6120,7 @@ Subelementos serán desplazados hacia arriba. Generador de etiquetas - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:130 @@ -6137,7 +6129,7 @@ Subelementos serán desplazados hacia arriba. Escáner - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:149 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:126 @@ -6148,7 +6140,7 @@ Subelementos serán desplazados hacia arriba. Tipos de adjunto - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:155 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:132 @@ -6159,7 +6151,7 @@ Subelementos serán desplazados hacia arriba. Categorías - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:161 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:138 @@ -6170,7 +6162,7 @@ Subelementos serán desplazados hacia arriba. Proyectos - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:167 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:144 @@ -6181,7 +6173,7 @@ Subelementos serán desplazados hacia arriba. Proveedores - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:173 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:150 @@ -6192,7 +6184,7 @@ Subelementos serán desplazados hacia arriba. Fabricantes - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:179 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:156 @@ -6202,7 +6194,7 @@ Subelementos serán desplazados hacia arriba. Ubicaciones de almacenamiento - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:185 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:162 @@ -6212,7 +6204,7 @@ Subelementos serán desplazados hacia arriba. Footprints - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:191 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:168 @@ -6222,7 +6214,7 @@ Subelementos serán desplazados hacia arriba. Divisas - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:174 @@ -6232,7 +6224,7 @@ Subelementos serán desplazados hacia arriba. Unidad de medida - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 @@ -6241,7 +6233,7 @@ Subelementos serán desplazados hacia arriba. Perfiles de etiqueta - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:209 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:180 @@ -6251,7 +6243,7 @@ Subelementos serán desplazados hacia arriba. Nuevo componente - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:226 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 @@ -6262,7 +6254,7 @@ Subelementos serán desplazados hacia arriba. Visualizar todos los componentes - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:232 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 @@ -6272,7 +6264,7 @@ Subelementos serán desplazados hacia arriba. Adjuntos - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:239 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:210 @@ -6283,7 +6275,7 @@ Subelementos serán desplazados hacia arriba. Estadísticas - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:258 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:229 @@ -6293,7 +6285,7 @@ Subelementos serán desplazados hacia arriba. Usuarios - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:264 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:235 @@ -6303,7 +6295,7 @@ Subelementos serán desplazados hacia arriba. Grupos - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:271 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:242 @@ -6314,7 +6306,7 @@ Subelementos serán desplazados hacia arriba. Registro de eventos - + Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 @@ -6325,7 +6317,7 @@ Subelementos serán desplazados hacia arriba. Nuevo elemento - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:34 obsolete @@ -6335,7 +6327,7 @@ Subelementos serán desplazados hacia arriba. Archivo externo - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 obsolete @@ -6345,7 +6337,7 @@ Subelementos serán desplazados hacia arriba. Editar - + Part-DB1\templates\_navbar.html.twig:27 templates\base.html.twig:88 @@ -6356,7 +6348,7 @@ Subelementos serán desplazados hacia arriba. Escanear código de barras - + Part-DB1\src\Form\UserSettingsType.php:119 src\Form\UserSettingsType.php:49 @@ -6367,7 +6359,7 @@ Subelementos serán desplazados hacia arriba. Tema - + Part-DB1\src\Form\UserSettingsType.php:129 src\Form\UserSettingsType.php:50 @@ -6378,7 +6370,7 @@ Subelementos serán desplazados hacia arriba. Tema del servidor - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:100 new @@ -6389,7 +6381,7 @@ Subelementos serán desplazados hacia arriba. IP - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:128 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:150 @@ -6403,7 +6395,7 @@ Subelementos serán desplazados hacia arriba. Cambio deshecho - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:130 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:152 @@ -6417,7 +6409,7 @@ Subelementos serán desplazados hacia arriba. Elemento restablecido - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:139 new @@ -6428,7 +6420,7 @@ Subelementos serán desplazados hacia arriba. Instock antiguo - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:160 new @@ -6439,7 +6431,7 @@ Subelementos serán desplazados hacia arriba. Nombre antiguo - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:184 new @@ -6450,7 +6442,7 @@ Subelementos serán desplazados hacia arriba. Campos editados - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:198 new @@ -6461,7 +6453,7 @@ Subelementos serán desplazados hacia arriba. Comentario - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:214 new @@ -6472,7 +6464,7 @@ Subelementos serán desplazados hacia arriba. Elemento eliminado: - + templates\base.html.twig:81 obsolete @@ -6483,7 +6475,7 @@ Subelementos serán desplazados hacia arriba. ¡Vamos! - + templates\base.html.twig:109 obsolete @@ -6494,7 +6486,7 @@ Subelementos serán desplazados hacia arriba. Inglés - + templates\base.html.twig:112 obsolete @@ -6505,7 +6497,7 @@ Subelementos serán desplazados hacia arriba. Alemán - + obsolete obsolete @@ -6515,7 +6507,7 @@ Subelementos serán desplazados hacia arriba. ¡Se necesita cambiar la contraseña! - + obsolete obsolete @@ -6525,7 +6517,7 @@ Subelementos serán desplazados hacia arriba. Tipo de adjunto - + obsolete obsolete @@ -6535,7 +6527,7 @@ Subelementos serán desplazados hacia arriba. Elemento asociado - + obsolete obsolete @@ -6545,7 +6537,7 @@ Subelementos serán desplazados hacia arriba. ¿Imagen? - + obsolete obsolete @@ -6555,7 +6547,7 @@ Subelementos serán desplazados hacia arriba. ¿Modelo 3D? - + obsolete obsolete @@ -6565,7 +6557,7 @@ Subelementos serán desplazados hacia arriba. ¿Integrado? - + obsolete obsolete @@ -6575,7 +6567,7 @@ Subelementos serán desplazados hacia arriba. p.ej. útil para cambiar - + obsolete obsolete @@ -6585,7 +6577,7 @@ Subelementos serán desplazados hacia arriba. Generar nuevos códigos backup - + obsolete obsolete @@ -6595,7 +6587,7 @@ Subelementos serán desplazados hacia arriba. Un elemento no puede ser su propio padre. - + obsolete obsolete @@ -6605,7 +6597,7 @@ Subelementos serán desplazados hacia arriba. El elemento padre no puede ser uno de sus propios hijos. - + obsolete obsolete @@ -6615,7 +6607,7 @@ Subelementos serán desplazados hacia arriba. La ubicación de almacenaje ha sido marcada como llena, así que no puedes incrementar la cantidad de instock. (Nueva cantidad máxima. {{ old_amount }}) - + obsolete obsolete @@ -6625,7 +6617,7 @@ Subelementos serán desplazados hacia arriba. La ubicación de almacenaje ha sido marcada como llena, así que no puedes añadir un nuevo componente. - + obsolete obsolete @@ -6635,7 +6627,7 @@ Subelementos serán desplazados hacia arriba. La ubicación de almacenaje ha sido marcada como "solo existente", así que no puedes añadir un nuevo componente. - + obsolete obsolete @@ -6645,7 +6637,7 @@ Subelementos serán desplazados hacia arriba. La ubicación de almacenaje ha sido marcada como "solo un componente", así que no puedes añadir un nuevo componente. - + obsolete obsolete @@ -6655,7 +6647,7 @@ Subelementos serán desplazados hacia arriba. El componente se encuentra actualmente y durante el futuro próximo bajo producción. - + obsolete obsolete @@ -6665,7 +6657,7 @@ Subelementos serán desplazados hacia arriba. El componente fue anunciado pero aún no está disponible. - + obsolete obsolete @@ -6675,7 +6667,7 @@ Subelementos serán desplazados hacia arriba. El componente se encuentra descontinuado y ya no se produce. - + obsolete obsolete @@ -6685,7 +6677,7 @@ Subelementos serán desplazados hacia arriba. El producto ha alcanzado el final de su vida y su producción se detendrá pronto. - + obsolete obsolete @@ -6695,7 +6687,7 @@ Subelementos serán desplazados hacia arriba. El componente está actualmente en producción pero no está recomendado para diseños nuevos. - + obsolete obsolete @@ -6705,7 +6697,7 @@ Subelementos serán desplazados hacia arriba. El estatus de producción del componente es desconocido. - + obsolete obsolete @@ -6715,7 +6707,7 @@ Subelementos serán desplazados hacia arriba. Éxito - + obsolete obsolete @@ -6725,7 +6717,7 @@ Subelementos serán desplazados hacia arriba. Error - + obsolete obsolete @@ -6735,7 +6727,7 @@ Subelementos serán desplazados hacia arriba. Atención - + obsolete obsolete @@ -6745,7 +6737,7 @@ Subelementos serán desplazados hacia arriba. Aviso - + obsolete obsolete @@ -6755,7 +6747,7 @@ Subelementos serán desplazados hacia arriba. Info - + obsolete obsolete @@ -6765,7 +6757,7 @@ Subelementos serán desplazados hacia arriba. No puedes retirarte del permiso "cambio de permiso" para evitar que te bloquees a ti mismo. - + obsolete obsolete @@ -6775,7 +6767,7 @@ Subelementos serán desplazados hacia arriba. Tipos de fichero autorizados - + obsolete obsolete @@ -6785,7 +6777,7 @@ Subelementos serán desplazados hacia arriba. Aquí puedes especificar una lista separada por comas de extensiones de fichero o tipos mime. Debe de ponerse en un fichero subido cuando se le asigna este tipo de adjunto. Para permitir todos los tipos de imágenes soportadas, puedes usar imagen/*. - + obsolete obsolete @@ -6795,7 +6787,7 @@ Subelementos serán desplazados hacia arriba. p.ej. .txt, application/pdf, image/* - + src\Form\PartType.php:63 obsolete @@ -6806,7 +6798,7 @@ Subelementos serán desplazados hacia arriba. p.ej. BC547 - + obsolete obsolete @@ -6816,7 +6808,7 @@ Subelementos serán desplazados hacia arriba. No seleccionable - + obsolete obsolete @@ -6826,7 +6818,7 @@ Subelementos serán desplazados hacia arriba. Si esta opción se activa, este elemento no puede ser asignado como una propiedad de un componente. Útil si este elemento se va a usar para agrupamiento. - + obsolete obsolete @@ -6836,7 +6828,7 @@ Subelementos serán desplazados hacia arriba. Puedes usar BBCode aquí (p.ej. [b]Bold[/b]) - + obsolete obsolete @@ -6846,7 +6838,7 @@ Subelementos serán desplazados hacia arriba. Crear elemento - + obsolete obsolete @@ -6856,7 +6848,7 @@ Subelementos serán desplazados hacia arriba. Guardar - + obsolete obsolete @@ -6866,7 +6858,7 @@ Subelementos serán desplazados hacia arriba. Desactivar footprints - + obsolete obsolete @@ -6876,7 +6868,7 @@ Subelementos serán desplazados hacia arriba. Si se activa esta opción, la propiedad footprint se desactivará para todos los componentes con esta categoría - + obsolete obsolete @@ -6886,7 +6878,7 @@ Subelementos serán desplazados hacia arriba. Desactivar fabricantes - + obsolete obsolete @@ -6896,7 +6888,7 @@ Subelementos serán desplazados hacia arriba. Si se activa esta opción, la propiedad fabricante se desactivará para todos los componentes con esta categoría. - + obsolete obsolete @@ -6906,7 +6898,7 @@ Subelementos serán desplazados hacia arriba. Desactivar enlaces automáticos a la hoja de datos - + obsolete obsolete @@ -6916,7 +6908,7 @@ Subelementos serán desplazados hacia arriba. Si se activa esta opción, no se crearán enlaces a la hoja de datos de forma automática para esta categoría. - + obsolete obsolete @@ -6926,7 +6918,7 @@ Subelementos serán desplazados hacia arriba. Desactivar propiedades - + obsolete obsolete @@ -6936,7 +6928,7 @@ Subelementos serán desplazados hacia arriba. Si se activa esta opción, las propiedades de los componentes se desactivarán para esta categoría. - + obsolete obsolete @@ -6946,7 +6938,7 @@ Subelementos serán desplazados hacia arriba. Sugerencia para nombre del componente - + obsolete obsolete @@ -6956,7 +6948,7 @@ Subelementos serán desplazados hacia arriba. p.ej. 100nF - + obsolete obsolete @@ -6966,7 +6958,7 @@ Subelementos serán desplazados hacia arriba. Filtro de nombre - + obsolete obsolete @@ -6976,7 +6968,7 @@ Subelementos serán desplazados hacia arriba. Descripción por defecto - + obsolete obsolete @@ -6986,7 +6978,7 @@ Subelementos serán desplazados hacia arriba. p.ej. Condensador, 10mm x 10mm, SMD - + obsolete obsolete @@ -6996,7 +6988,7 @@ Subelementos serán desplazados hacia arriba. Notas por defecto - + obsolete obsolete @@ -7006,7 +6998,7 @@ Subelementos serán desplazados hacia arriba. Dirección - + obsolete obsolete @@ -7017,7 +7009,7 @@ Subelementos serán desplazados hacia arriba. Ciudadejemplo - + obsolete obsolete @@ -7027,7 +7019,7 @@ Ciudadejemplo Número de teléfono - + obsolete obsolete @@ -7037,7 +7029,7 @@ Ciudadejemplo +34 123 45 67 89 - + obsolete obsolete @@ -7047,7 +7039,7 @@ Ciudadejemplo Número de fax - + obsolete obsolete @@ -7057,7 +7049,7 @@ Ciudadejemplo Email - + obsolete obsolete @@ -7067,7 +7059,7 @@ Ciudadejemplo p.ej. contact@foo.bar - + obsolete obsolete @@ -7077,7 +7069,7 @@ Ciudadejemplo Sitio web - + obsolete obsolete @@ -7087,7 +7079,7 @@ Ciudadejemplo https://www.foo.bar - + obsolete obsolete @@ -7097,7 +7089,7 @@ Ciudadejemplo URL del producto - + obsolete obsolete @@ -7107,7 +7099,7 @@ Ciudadejemplo Este campo se usa para determinar un link al componente en la web de la empresa. %PARTNUMBER% será reemplazado por número del pedido. - + obsolete obsolete @@ -7117,7 +7109,7 @@ Ciudadejemplo https://foo.bar/product/%PARTNUMBER% - + obsolete obsolete @@ -7127,7 +7119,7 @@ Ciudadejemplo Código ISO - + obsolete obsolete @@ -7137,7 +7129,7 @@ Ciudadejemplo Tasa de cambio - + obsolete obsolete @@ -7147,7 +7139,7 @@ Ciudadejemplo Modelo 3D - + obsolete obsolete @@ -7157,7 +7149,7 @@ Ciudadejemplo Entrada - + obsolete obsolete @@ -7172,7 +7164,7 @@ Elemento 2 Elemento 3 - + obsolete obsolete @@ -7182,7 +7174,7 @@ Elemento 3 Crear - + obsolete obsolete @@ -7192,7 +7184,7 @@ Elemento 3 Número entero - + obsolete obsolete @@ -7202,7 +7194,7 @@ Elemento 3 Si esta opción está activada, todos los valores con esta unidad serán redondeados a un número entero. - + obsolete obsolete @@ -7212,7 +7204,7 @@ Elemento 3 Utilizar prefijos SI - + obsolete obsolete @@ -7222,7 +7214,7 @@ Elemento 3 Si esta opción está activada, los valores de salida utilizarán prefijos SI (p.ej. 1,2kg en vez de 1200g) - + obsolete obsolete @@ -7232,7 +7224,7 @@ Elemento 3 Símbolo de la unidad - + obsolete obsolete @@ -7242,7 +7234,7 @@ Elemento 3 p.ej. m - + obsolete obsolete @@ -7252,7 +7244,7 @@ Elemento 3 Ubicación llena - + obsolete obsolete @@ -7262,7 +7254,7 @@ Elemento 3 Si esta opción es seleccionada, no será posible añadir componentes nuevas a esta ubicación o incrementar el número de componentes existentes. - + obsolete obsolete @@ -7272,7 +7264,7 @@ Elemento 3 Limitar a componentes existentes - + obsolete obsolete @@ -7282,7 +7274,7 @@ Elemento 3 Si esta opción se activa, no será posible añadir componentes nuevos a esta ubicación, pero el número de componentes existentes se podrá incrementar. - + obsolete obsolete @@ -7292,7 +7284,7 @@ Elemento 3 Solo un componente - + obsolete obsolete @@ -7302,7 +7294,7 @@ Elemento 3 Si esta opción se activa, solo un componente (de cualquier cantidad) podrá ser asignado a esta ubicación de almacenaje. Útil para cajas SMD pequeñas o alimentadores automáticos. - + obsolete obsolete @@ -7312,7 +7304,7 @@ Elemento 3 Tipo de almacén - + obsolete obsolete @@ -7322,7 +7314,7 @@ Elemento 3 Puedes seleccionar una unidad de medida aquí, la cual debe poderse asignar a esta ubicación de almacenaje. - + obsolete obsolete @@ -7332,7 +7324,7 @@ Elemento 3 Divisa predeterminada - + obsolete obsolete @@ -7342,7 +7334,7 @@ Elemento 3 Costes de envío - + obsolete obsolete @@ -7352,7 +7344,7 @@ Elemento 3 p.ej. j.doe - + obsolete obsolete @@ -7362,7 +7354,7 @@ Elemento 3 p.ej. Mario - + obsolete obsolete @@ -7372,7 +7364,7 @@ Elemento 3 p.ej. Gómez - + obsolete obsolete @@ -7382,7 +7374,7 @@ Elemento 3 p.ej. m.gomez@ecorp.com - + obsolete obsolete @@ -7392,7 +7384,7 @@ Elemento 3 p.ej. Desarrollo - + obsolete obsolete @@ -7402,7 +7394,7 @@ Elemento 3 Nueva contraseña - + obsolete obsolete @@ -7412,7 +7404,7 @@ Elemento 3 Confirmar nueva contraseña - + obsolete obsolete @@ -7422,7 +7414,7 @@ Elemento 3 El usuario ha de cambiar su contraseña - + obsolete obsolete @@ -7432,7 +7424,7 @@ Elemento 3 Usuario desactivado (no es posible iniciar sesión) - + obsolete obsolete @@ -7442,7 +7434,7 @@ Elemento 3 Crear usuario - + obsolete obsolete @@ -7452,7 +7444,7 @@ Elemento 3 Guardar - + obsolete obsolete @@ -7462,7 +7454,7 @@ Elemento 3 Descartar cambios - + templates\Parts\show_part_info.html.twig:166 obsolete @@ -7473,7 +7465,7 @@ Elemento 3 Retirar - + templates\Parts\show_part_info.html.twig:171 obsolete @@ -7484,7 +7476,7 @@ Elemento 3 Comentario/Propósito - + templates\Parts\show_part_info.html.twig:189 obsolete @@ -7495,7 +7487,7 @@ Elemento 3 Añadir componentes - + templates\Parts\show_part_info.html.twig:194 obsolete @@ -7506,7 +7498,7 @@ Elemento 3 Agregar - + templates\Parts\show_part_info.html.twig:199 obsolete @@ -7517,7 +7509,7 @@ Elemento 3 Comentario/Propósito - + templates\AdminPages\CompanyAdminBase.html.twig:15 obsolete @@ -7528,7 +7520,7 @@ Elemento 3 Notas - + src\Form\PartType.php:83 obsolete @@ -7539,7 +7531,7 @@ Elemento 3 Enlace al fabricante - + src\Form\PartType.php:66 obsolete @@ -7550,7 +7542,7 @@ Elemento 3 ej. NPN 45V 0,1A 0,5W - + src\Form\PartType.php:69 obsolete @@ -7561,7 +7553,7 @@ Elemento 3 ej. 10 - + src\Form\PartType.php:72 obsolete @@ -7572,7 +7564,7 @@ Elemento 3 ej. 5 - + obsolete obsolete @@ -7582,7 +7574,7 @@ Elemento 3 Precio por - + obsolete obsolete @@ -7592,7 +7584,7 @@ Elemento 3 Retirar componentes - + obsolete obsolete @@ -7602,7 +7594,7 @@ Elemento 3 _MENU_ - + obsolete obsolete @@ -7612,7 +7604,7 @@ Elemento 3 Componentes - + obsolete obsolete @@ -7622,7 +7614,7 @@ Elemento 3 Estructura de datos - + obsolete obsolete @@ -7632,7 +7624,7 @@ Elemento 3 Sistema - + obsolete obsolete @@ -7642,7 +7634,7 @@ Elemento 3 Componentes - + obsolete obsolete @@ -7652,7 +7644,7 @@ Elemento 3 Ver - + obsolete obsolete @@ -7662,7 +7654,7 @@ Elemento 3 Editar - + obsolete obsolete @@ -7672,7 +7664,7 @@ Elemento 3 Crear - + obsolete obsolete @@ -7682,7 +7674,7 @@ Elemento 3 Cambiar categoría - + obsolete obsolete @@ -7692,7 +7684,7 @@ Elemento 3 Eliminar - + obsolete obsolete @@ -7702,7 +7694,7 @@ Elemento 3 Buscar - + obsolete obsolete @@ -7712,7 +7704,7 @@ Elemento 3 Lista de todos los componentes - + obsolete obsolete @@ -7722,7 +7714,7 @@ Elemento 3 Lista de componentes con precio - + obsolete obsolete @@ -7732,7 +7724,7 @@ Elemento 3 Lista de componentes obsoletos - + obsolete obsolete @@ -7742,7 +7734,7 @@ Elemento 3 Mostar componentes con stock desconocido - + obsolete obsolete @@ -7752,7 +7744,7 @@ Elemento 3 Cambiar a estado de favorito - + obsolete obsolete @@ -7762,7 +7754,7 @@ Elemento 3 Lista de componentes favoritos - + obsolete obsolete @@ -7772,7 +7764,7 @@ Elemento 3 Mostar los últimos componentes editados/añadidos - + obsolete obsolete @@ -7782,7 +7774,7 @@ Elemento 3 Mostar el último usuario modificado - + obsolete obsolete @@ -7792,7 +7784,7 @@ Elemento 3 Mostrar historial - + obsolete obsolete @@ -7802,7 +7794,7 @@ Elemento 3 Nombre - + obsolete obsolete @@ -7812,7 +7804,7 @@ Elemento 3 Descripción - + obsolete obsolete @@ -7822,7 +7814,7 @@ Elemento 3 Disponibilidad - + obsolete obsolete @@ -7832,7 +7824,7 @@ Elemento 3 Disponibilidad mínima - + obsolete obsolete @@ -7842,7 +7834,7 @@ Elemento 3 Notas - + obsolete obsolete @@ -7852,7 +7844,7 @@ Elemento 3 Ubicación - + obsolete obsolete @@ -7862,7 +7854,7 @@ Elemento 3 Fabricante - + obsolete obsolete @@ -7872,7 +7864,7 @@ Elemento 3 Información ordenada - + obsolete obsolete @@ -7882,7 +7874,7 @@ Elemento 3 Precio - + obsolete obsolete @@ -7892,7 +7884,7 @@ Elemento 3 Adjuntos de fichero - + obsolete obsolete @@ -7902,7 +7894,7 @@ Elemento 3 Pedidos - + obsolete obsolete @@ -7912,7 +7904,7 @@ Elemento 3 Ubicaciones de almacén - + obsolete obsolete @@ -7922,7 +7914,7 @@ Elemento 3 Mover - + obsolete obsolete @@ -7932,7 +7924,7 @@ Elemento 3 Lista de componentes - + obsolete obsolete @@ -7942,7 +7934,7 @@ Elemento 3 Footprints - + obsolete obsolete @@ -7952,7 +7944,7 @@ Elemento 3 Categorías - + obsolete obsolete @@ -7962,7 +7954,7 @@ Elemento 3 Proveedores - + obsolete obsolete @@ -7972,7 +7964,7 @@ Elemento 3 Fabricantes - + obsolete obsolete @@ -7982,7 +7974,7 @@ Elemento 3 Proyectos - + obsolete obsolete @@ -7992,7 +7984,7 @@ Elemento 3 Tipos de adjunto - + obsolete obsolete @@ -8002,7 +7994,7 @@ Elemento 3 Importar - + obsolete obsolete @@ -8012,7 +8004,7 @@ Elemento 3 Etiquetas - + obsolete obsolete @@ -8022,7 +8014,7 @@ Elemento 3 Calculadora de resistencia - + obsolete obsolete @@ -8032,7 +8024,7 @@ Elemento 3 Footprints - + obsolete obsolete @@ -8042,7 +8034,7 @@ Elemento 3 Logos IC - + obsolete obsolete @@ -8052,7 +8044,7 @@ Elemento 3 Estadísticas - + obsolete obsolete @@ -8062,7 +8054,7 @@ Elemento 3 Editar autorizaciones - + obsolete obsolete @@ -8072,7 +8064,7 @@ Elemento 3 Editar nombre de usuario - + obsolete obsolete @@ -8082,7 +8074,7 @@ Elemento 3 Modificar grupo - + obsolete obsolete @@ -8092,7 +8084,7 @@ Elemento 3 Editar información - + obsolete obsolete @@ -8102,7 +8094,7 @@ Elemento 3 Editar permisos - + obsolete obsolete @@ -8112,7 +8104,7 @@ Elemento 3 Configurar contraseña - + obsolete obsolete @@ -8122,7 +8114,7 @@ Elemento 3 Cambiar ajustes de usuario - + obsolete obsolete @@ -8132,7 +8124,7 @@ Elemento 3 Ver estado - + obsolete obsolete @@ -8142,7 +8134,7 @@ Elemento 3 Actualizar base de datos - + obsolete obsolete @@ -8152,7 +8144,7 @@ Elemento 3 Leer ajustes de la base de datos - + obsolete obsolete @@ -8162,7 +8154,7 @@ Elemento 3 Escribir ajustes de la base de datos - + obsolete obsolete @@ -8172,7 +8164,7 @@ Elemento 3 Leer configuración - + obsolete obsolete @@ -8182,7 +8174,7 @@ Elemento 3 Editar configuración - + obsolete obsolete @@ -8192,7 +8184,7 @@ Elemento 3 Información del servidor - + obsolete obsolete @@ -8202,7 +8194,7 @@ Elemento 3 Usar herramientas de depuración - + obsolete obsolete @@ -8212,7 +8204,7 @@ Elemento 3 Mostrar registros - + obsolete obsolete @@ -8222,7 +8214,7 @@ Elemento 3 Borrar registros - + obsolete obsolete @@ -8232,7 +8224,7 @@ Elemento 3 Editar información - + obsolete obsolete @@ -8242,7 +8234,7 @@ Elemento 3 Editar nombre de usuario - + obsolete obsolete @@ -8252,7 +8244,7 @@ Elemento 3 Mostrar permisos - + obsolete obsolete @@ -8262,7 +8254,7 @@ Elemento 3 Mostrar entradas de registro propias - + obsolete obsolete @@ -8272,7 +8264,7 @@ Elemento 3 Crear etiquetas - + obsolete obsolete @@ -8282,7 +8274,7 @@ Elemento 3 Editar opciones - + obsolete obsolete @@ -8292,7 +8284,7 @@ Elemento 3 Borrar perfiles - + obsolete obsolete @@ -8302,7 +8294,7 @@ Elemento 3 Editar perfiles - + obsolete obsolete @@ -8312,7 +8304,7 @@ Elemento 3 Herramientas - + obsolete obsolete @@ -8322,7 +8314,7 @@ Elemento 3 Grupos - + obsolete obsolete @@ -8332,7 +8324,7 @@ Elemento 3 Usuarios - + obsolete obsolete @@ -8342,7 +8334,7 @@ Elemento 3 Base de datos - + obsolete obsolete @@ -8352,7 +8344,7 @@ Elemento 3 Configuración - + obsolete obsolete @@ -8362,7 +8354,7 @@ Elemento 3 Sistema - + obsolete obsolete @@ -8372,7 +8364,7 @@ Elemento 3 Edita tu propio usuario - + obsolete obsolete @@ -8382,7 +8374,7 @@ Elemento 3 Etiquetas - + obsolete obsolete @@ -8392,7 +8384,7 @@ Elemento 3 Categoría - + obsolete obsolete @@ -8402,7 +8394,7 @@ Elemento 3 Cantidad mínima - + obsolete obsolete @@ -8412,7 +8404,7 @@ Elemento 3 Footprint - + obsolete obsolete @@ -8422,7 +8414,7 @@ Elemento 3 MPN - + obsolete obsolete @@ -8432,7 +8424,7 @@ Elemento 3 Estado de producción - + obsolete obsolete @@ -8442,7 +8434,7 @@ Elemento 3 Tags - + obsolete obsolete @@ -8452,7 +8444,7 @@ Elemento 3 Unidad de medida - + obsolete obsolete @@ -8462,7 +8454,7 @@ Elemento 3 Peso - + obsolete obsolete @@ -8472,7 +8464,7 @@ Elemento 3 Lote de componentes - + obsolete obsolete @@ -8482,7 +8474,7 @@ Elemento 3 Mostrar último usuario que ha modificado - + obsolete obsolete @@ -8492,7 +8484,7 @@ Elemento 3 Divisas - + obsolete obsolete @@ -8502,7 +8494,7 @@ Elemento 3 Unidad de medida - + obsolete obsolete @@ -8512,7 +8504,7 @@ Elemento 3 Contraseña antigua - + obsolete obsolete @@ -8522,7 +8514,7 @@ Elemento 3 Resetear la contraseña - + obsolete obsolete @@ -8532,7 +8524,7 @@ Elemento 3 Clave de seguridad (U2F) - + obsolete obsolete @@ -8542,13 +8534,13 @@ Elemento 3 Google - + tfa.provider.webauthn_two_factor_provider Clave de seguridad - + obsolete obsolete @@ -8558,7 +8550,7 @@ Elemento 3 App de autenticación - + obsolete obsolete @@ -8568,7 +8560,7 @@ Elemento 3 Inicio de sesión correcto - + obsolete obsolete @@ -8578,7 +8570,7 @@ Elemento 3 Excepción - + obsolete obsolete @@ -8588,7 +8580,7 @@ Elemento 3 Inicio de sesión de usuario - + obsolete obsolete @@ -8598,7 +8590,7 @@ Elemento 3 Cerrar sesión de usuario - + obsolete obsolete @@ -8608,7 +8600,7 @@ Elemento 3 Desconocido - + obsolete obsolete @@ -8618,7 +8610,7 @@ Elemento 3 Elemento creado - + obsolete obsolete @@ -8628,7 +8620,7 @@ Elemento 3 Elemento modificado - + obsolete obsolete @@ -8638,7 +8630,7 @@ Elemento 3 Elemento eliminado - + obsolete obsolete @@ -8648,7 +8640,7 @@ Elemento 3 Base de datos actualizada - + obsolete @@ -8657,7 +8649,7 @@ Elemento 3 Restaurar elemento - + obsolete @@ -8666,7 +8658,7 @@ Elemento 3 Ver historial - + obsolete @@ -8675,7 +8667,7 @@ Elemento 3 Mostrar última actividad - + obsolete @@ -8684,7 +8676,7 @@ Elemento 3 Mostrar versiones antiguas de elementos (time travel) - + obsolete @@ -8693,7 +8685,7 @@ Elemento 3 Clave de seguridad añadida correctamente - + obsolete @@ -8702,7 +8694,7 @@ Elemento 3 Nombre de usuario - + obsolete @@ -8711,7 +8703,7 @@ Elemento 3 App de autenticación desactivada - + obsolete @@ -8720,7 +8712,7 @@ Elemento 3 Clave de seguridad eliminada - + obsolete @@ -8729,7 +8721,7 @@ Elemento 3 Clave de seguridad añadida - + obsolete @@ -8738,7 +8730,7 @@ Elemento 3 Claves de respaldo regeneradas - + obsolete @@ -8747,7 +8739,7 @@ Elemento 3 App de autenticación activada - + obsolete @@ -8756,7 +8748,7 @@ Elemento 3 Contraseña cambiada - + obsolete @@ -8765,7 +8757,7 @@ Elemento 3 Dispositivos de confianza reseteados - + obsolete @@ -8774,7 +8766,7 @@ Elemento 3 Elemento de colección eliminado - + obsolete @@ -8783,7 +8775,7 @@ Elemento 3 Restablecer contraseña - + obsolete @@ -8792,7 +8784,7 @@ Elemento 3 Autenticación de dos pasos reseteado por Administrador - + obsolete @@ -8801,7 +8793,7 @@ Elemento 3 Intento de acceso no autorizado - + obsolete @@ -8810,7 +8802,7 @@ Elemento 3 Éxito - + obsolete @@ -8819,7 +8811,7 @@ Elemento 3 2D - + obsolete @@ -8828,7 +8820,7 @@ Elemento 3 1D - + obsolete @@ -8837,7 +8829,7 @@ Elemento 3 Parámetros - + obsolete @@ -8846,7 +8838,7 @@ Elemento 3 Ver adjuntos privados - + obsolete @@ -8855,7 +8847,7 @@ Elemento 3 Escáner de etiquetas - + obsolete @@ -8864,7 +8856,7 @@ Elemento 3 Leer perfiles - + obsolete @@ -8873,7 +8865,7 @@ Elemento 3 Crear perfiles - + obsolete @@ -8882,2545 +8874,2545 @@ Elemento 3 Usar modo Twig - + label_profile.showInDropdown Mostrar en selección rápida - + group.edit.enforce_2fa Forzar autenticación de dos pasos (2FA) - + group.edit.enforce_2fa.help Si está opción está activada, todos los miembros directos de este grupo tendrá que configurar como mínimo un factor de autenticación de dos pasos. Recomendado para grupos administrativos con muchos permisos. - + selectpicker.empty Nada seleccionado - + selectpicker.nothing_selected Nada seleccionado - + entity.delete.must_not_contain_parts ¡Elemento "%PATH%" aún contiene partes! Tienes que mover las partes para poder eliminar este elemento. - + entity.delete.must_not_contain_attachments Tipo de adjunto aún contiene adjuntos. Cambia su tipo para ser capaz de borrar este tipo de adjunto. - + entity.delete.must_not_contain_prices Divisa aún contiene detalles de precios. Tienes que cambiar su divisa para poder eliminar este elemento. - + entity.delete.must_not_contain_users ¡Usuarios aún usan este grupo! Cambia su grupo para ser capaz de borrar este grupo. - + part.table.edit Editar - + part.table.edit.title Editar componente - + part_list.action.action.title Seleccionar acción - + part_list.action.action.group.favorite Favorito - + part_list.action.action.favorite Componente favorito - + part_list.action.action.unfavorite Anular indicación de favorito - + part_list.action.action.group.change_field Cambiar campo - + part_list.action.action.change_category Cambiar categoría - + part_list.action.action.change_footprint Cambiar footprint - + part_list.action.action.change_manufacturer Cambiar fabricante - + part_list.action.action.change_unit Cambiar unidad de componente - + part_list.action.action.delete Borrar - + part_list.action.submit Ok - + part_list.action.part_count ¡%count% componentes seleccionadas! - + company.edit.quick.website Abrir sitio web - + company.edit.quick.email Enviar e-mail - + company.edit.quick.phone Teléfono - + company.edit.quick.fax Enviar fax - + company.fax_number.placeholder ej. +34 123 45 67 89 - + part.edit.save_and_clone Guardar y duplicar - + validator.file_ext_not_allowed Extensión de archivo no permitido para este tipo de adjunto. - + tools.reel_calc.title Calculadora de cintas SMD - + tools.reel_calc.inner_dia Diámetro interno - + tools.reel_calc.outer_dia Diámetro externo - + tools.reel_calc.tape_thick Espesor de cinta - + tools.reel_calc.part_distance Distancia de componentes - + tools.reel_calc.update Actualizar - + tools.reel_calc.parts_per_meter Componentes por metro - + tools.reel_calc.result_length Longitud de la cinta - + tools.reel_calc.result_amount Número aproximado de componentes - + tools.reel_calc.outer_greater_inner_error Error: Diámetro exterior debe ser mayor que el diámetro interior! - + tools.reel_calc.missing_values.error ¡Por favor rellena todos los valores! - + tools.reel_calc.load_preset Cargar preset - + tools.reel_calc.explanation Esta calculadora da una estimación de cuántas piezas quedan en un carrete SMD. Mide las dimensiones anotadas en el carrete (o use algunos de los ajustes preestablecidos) y haz clic en "Actualizar" para obtener un resultado. - + perm.tools.reel_calculator Calculadora de carrete SMD - + tree.tools.tools.reel_calculator Calculadora de carrete SMD - + user.pw_change_needed.flash ¡Tienes que cambiar tu contraseña! Por favor establece una nueva contraseña. - + tree.root_node.text Nodo raíz - + part_list.action.select_null Elemento vacío - + part_list.action.delete-title ¿Estás seguro de que quieres eliminar estos elementos? - + part_list.action.delete-message Estos elementos y cualquier información asociada (como adjuntos, información de precios, etc.) serán eliminados. ¡Esto no se podrá deshacer! - + part.table.actions.success Acciones terminadas exitosamente. - + attachment.edit.delete.confirm ¿Estás seguro de que quieres borrar este adjunto? - + filter.text_constraint.value.operator.EQ Es - + filter.text_constraint.value.operator.NEQ No es - + filter.text_constraint.value.operator.STARTS Empieza con - + filter.text_constraint.value.operator.CONTAINS Contiene - + filter.text_constraint.value.operator.ENDS Termina con - + filter.text_constraint.value.operator.LIKE Patrón LIKE - + filter.text_constraint.value.operator.REGEX Expresión regular - + filter.number_constraint.value.operator.BETWEEN Entre - + filter.number_constraint.AND y - + filter.entity_constraint.operator.EQ Es (excluyendo hijos) - + filter.entity_constraint.operator.NEQ No es (excluyendo hijos) - + filter.entity_constraint.operator.INCLUDING_CHILDREN Es (incluyendo hijos) - + filter.entity_constraint.operator.EXCLUDING_CHILDREN No es (incluyendo hijos) - + part.filter.dbId ID de la base de datos - + filter.tags_constraint.operator.ANY Cualquiera de las etiquetas - + filter.tags_constraint.operator.ALL Todas las etiquetas - + filter.tags_constraint.operator.NONE Ninguna de las etiquetas - + part.filter.lot_count Número de lotes - + part.filter.attachments_count Número de adjuntos - + part.filter.orderdetails_count Número de información del pedido - + part.filter.lotExpirationDate Fecha de caducidad del lote - + part.filter.lotNeedsRefill Cualquier lote necesita ser rellenado - + part.filter.lotUnknwonAmount Cualquier lote tiene una cantidad desconocida - + part.filter.attachmentName Nombre del adjunto - + filter.choice_constraint.operator.ANY Cualquiera de - + filter.choice_constraint.operator.NONE Ninguno de - + part.filter.amount_sum Cantidad total - + filter.submit Actualizar - + filter.discard Descartar cambios - + filter.clear_filters Limpiar filtros - + filter.title Filtro - + filter.parameter_value_constraint.operator.= Tipo de valor = - + filter.parameter_value_constraint.operator.!= Tipo de valor != - + filter.parameter_value_constraint.operator.< Tipo de valor < - + filter.parameter_value_constraint.operator.> Tipo de valor > - + filter.parameter_value_constraint.operator.<= Tipo de valor <= - + filter.parameter_value_constraint.operator.>= Tipo de valor >= - + filter.parameter_value_constraint.operator.BETWEEN Tipo de valor está entre - + filter.parameter_value_constraint.operator.IN_RANGE En rango de valor - + filter.parameter_value_constraint.operator.NOT_IN_RANGE Fuera de rango de valor - + filter.parameter_value_constraint.operator.GREATER_THAN_RANGE Mayor que el rango de valor - + filter.parameter_value_constraint.operator.GREATER_EQUAL_RANGE Mayor igual al rango de valor - + filter.parameter_value_constraint.operator.LESS_THAN_RANGE Menor al rango de valor - + filter.parameter_value_constraint.operator.LESS_EQUAL_RANGE Menor igual al rango de valor - + filter.parameter_value_constraint.operator.RANGE_IN_RANGE Rango está completamente en rango de valor - + filter.parameter_value_constraint.operator.RANGE_INTERSECT_RANGE El rango intersecta el rango de valores - + filter.text_constraint.value Sin valor establecido - + filter.number_constraint.value1 Sin valor establecido - + filter.number_constraint.value2 Valor máximo - + filter.datetime_constraint.value1 No hay fecha/hora establecidas - + filter.datetime_constraint.value2 Máxima fecha/hora - + filter.constraint.add Añadir filtro - + part.filter.parameters_count Número de parámetros - + part.filter.lotDescription Descripción del lote del componente - + parts_list.search.searching_for Buscar componentes con palabra clave <b>%keyword%</b> - + parts_list.search_options.caption Opciones de búsqueda activadas - + attachment.table.element_type Tipo de elemento asociado - + log.level.debug Debug - + log.level.info Info - + log.level.notice Notificación - + log.level.warning Aviso - + log.level.error Error - + log.level.critical Crítico - + log.level.alert Alerta - + log.level.emergency Emergencia - + log.type.security Evento relacionado con seguridad - + log.type.instock_changed [ALT] Stock modificado - + log.target_id ID del elemento objetivo - + entity.info.parts_count_recursive Número de componentes con este elemento o sus subelementos - + tools.server_infos.title Información del servidor - + permission.preset.read_only Solo lectura - + permission.preset.read_only.desc Permitir solo operaciones de lectura sobre los datos - + permission.preset.all_inherit Heredar todo - + permission.preset.all_inherit.desc Cambiar todos los permisos a Heredar - + permission.preset.all_forbid Prohibir todo - + permission.preset.all_forbid.desc Cambiar todos los permisos a Prohibir - + permission.preset.all_allow Mostrar todo - + permission.preset.all_allow.desc Cambiar todos los permisos a permitir - + perm.server_infos Información de servidor - + permission.preset.editor Editor - + permission.preset.editor.desc Permitir cambiar elementos y estructuras de datos - + permission.preset.admin Admin - + permission.preset.admin.desc Permitir acciones administrativas - + permission.preset.button Aplicar preset - + perm.attachments.show_private Mostrar adjuntos privados - + perm.attachments.list_attachments Mostrar lista de todos los adjuntos - + user.edit.permission_success El permiso preestablecido se aplicó correctamente. Compruebe si los nuevos permisos se ajustan a tus necesidades. - + perm.group.data Datos - + part_list.action.action.group.needs_review Necesita revisión - + part_list.action.action.set_needs_review Establecer estado "necesita revisión" - + part_list.action.action.unset_needs_review Eliminar estatus "necesita revisión" - + part.edit.ipn Número de Componente Interno (IPN) - + part.ipn.not_defined No definido - + part.table.ipn IPN - + currency.edit.update_rate Recuperar tasa de cambio - + currency.edit.exchange_rate_update.unsupported_currency La divisa no está respaldada por el proveedor de tasas de cambio. Verifica la configuración de tu proveedor de tasas de cambio. - + currency.edit.exchange_rate_update.generic_error Imposible de recuperar la tasa de cambio. Verifica la configuración de tu proveedor de tasas de cambio. - + currency.edit.exchange_rate_updated.success Tasa de cambio recuperada con éxito. - + project.bom.quantity Cantidad BOM - + project.bom.mountnames Nombres de ensamblaje - + project.bom.name Nombre - + project.bom.comment Notas - + project.bom.part Componente - + project.bom.add_entry Añadir entrada - + part_list.action.group.projects Proyectos - + part_list.action.projects.add_to_project Añadir componentes al proyecto - + project.bom.delete.confirm ¿Estás seguro de que quieres eliminar esta entrada BOM? - + project.add_parts_to_project Añadir componentes al proyecto BOM - + part.info.add_part_to_project Añadir este componente a un proyecto - + project_bom_entry.label Entrada BOM - + project.edit.status Estatus de proyecto - + project.status.draft Esbozo - + project.status.planning En planificación - + project.status.in_production En producción - + project.status.finished Completado - + project.status.archived Archivado - + part.new_build_part.error.build_part_already_exists ¡Este proyecto ya tiene un componente vinculado! - + project.edit.associated_build_part Componente de producción vinculado - + project.edit.associated_build_part.add Añadir parte de producción - + project.edit.associated_build.hint Este componente representa las instancias construidas del proyecto, que están almacenadas en algún lugar - + part.info.projectBuildPart.hint Este componente representa las instancias construidas del siguiente proyecto y está vinculado a él. - + part.is_build_part Es un componente de producción - + project.info.title Información de proyecto - + project.info.bom_entries_count Entradas BOM - + project.info.sub_projects_count Subproyectos - + project.info.bom_add_parts Añadir entradas BOM - + project.info.info.label Info - + project.info.sub_projects.label Subproyectos - + project.bom.price Precio - + part.info.withdraw_modal.title.withdraw Retirar componentes del lote - + part.info.withdraw_modal.title.add Añadir componentes al lote - + part.info.withdraw_modal.title.move Mover componentes a un lote diferente - + part.info.withdraw_modal.amount Cantidad - + part.info.withdraw_modal.move_to Mover a - + part.info.withdraw_modal.comment Comentar - + part.info.withdraw_modal.comment.hint Puedes añadir un comentario aquí describiendo por qué estás haciendo esta operación (p.ej. por qué necesitas este componente). Esta información se almacenará en el registro. - + modal.close Cerrar - + modal.submit Entregar - + part.withdraw.success Componentes añadidos/movidos/retirados con éxito. - + perm.parts_stock Inventario de componentes - + perm.parts_stock.withdraw Retirar componentes del inventario. - + perm.parts_stock.add Añadir componentes a stock - + perm.parts_stock.move Mover componentes entre lotes - + user.permissions_schema_updated El esquema de permisos de tu usuario han sido actualizados a la última versión. - + log.type.part_stock_changed Stock de componente modificado - + log.part_stock_changed.withdraw Stock retirado - + log.part_stock_changed.add Stock añadido - + log.part_stock_changed.move Stock movido - + log.part_stock_changed.comment Comentario - + log.part_stock_changed.change Cambiar - + log.part_stock_changed.move_target Trasladado a - + tools.builtin_footprints_viewer.title Imágenes de footprints incluidas. - + tools.builtin_footprints_viewer.hint Esta galería enumera todas las imágenes de footprints incluidas. Si desea utilizar esto en un archivo adjunto, escriba el nombre (o una palabra clave) en el campo URL del archivo adjunto y seleccione la imagen deseada en el menú desplegable. - + tools.ic_logos.title Logo IC - + part_list.action.group.labels Etiquetas - + part_list.action.projects.generate_label Crear etiquetas (por partes) - + part_list.action.projects.generate_label_lot Crear etiquetas (por partes de lote) - + part_list.action.generate_label.empty Vaciar etiquetas - + project.info.builds.label Construir - + project.builds.build_not_possible Construcción no es posible: Faltan componentes - + project.builds.following_bom_entries_miss_instock Los siguientes componentes no tienen suficiente cantidad para construir este proyecto al menos una vez: - + project.builds.stocked Almacenado - + project.builds.needed Necesitado - + project.builds.build_possible Construcción posible - + project.builds.number_of_builds_possible Tienes suficiente inventario para construir <b>%max_builds%</b></b> construcciones de este proyecto - + project.builds.check_project_status El estado del proyecto actual es <b>"%project_status%"</b>. ¡Deberías comprobar si de verdad quieres crear este proyecto con este estado! - + project.builds.following_bom_entries_miss_instock_n No tienes suficientes componentes en stock para crear este proyecto %number_of_builds% veces. A los siguientes componentes les falta instock: - + project.build.flash.invalid_input No se pudo crear el proyecto. ¡Comprueba los datos de entrada! - + project.build.required_qty Cantidad requerida - + project.build.btn_build Construir - + project.build.help Elija de qué lotes se debe tomar el stock para construir este proyecto (y en qué cantidad). Comprueba la casilla para cada entrada BOM cuando hayas terminado de retirar los componentes, o utiliza la casilla de arriba para seleccionar todas las casillas a la vez. - + project.build.buildsPartLot.new_lot Crear nuevo lote - + project.build.add_builds_to_builds_part Añadir creaciones a las creaciones del proyecto - + project.build.builds_part_lot Lote objetivo - + project.builds.number_of_builds Cantidad de construcciones - + project.builds.no_stocked_builds Número de construcciones en stock - + user.change_avatar.label Cambiar foto de perfil - + user_settings.change_avatar.label Cambiar foto de perfil - + user_settings.remove_avatar.label Eliminar foto de perfil - + part.edit.name.category_hint Sugerencia de categoría - + category.edit.partname_regex.placeholder p.ej. "/Condensador \d+ nF/i" - + category.edit.partname_regex.help Una expresión regular compatible con PCRE, la cual debe coincidir con el nombre de un componente. - + entity.select.add_hint Usar -> para crear estructuras anidadas, p.ej. "Node 1->Node 1.1" - + entity.select.group.new_not_added_to_DB Nuevo (no añadido a la base de datos) - + part.edit.save_and_new Guardar y crear nuevo componente vacío. - + homepage.first_steps.title Primeros pasos - + homepage.first_steps.introduction Tu base de datos está aún vacía. Quizá quieras leer la <a href="%url%">documentation</a> o empezar a crear las siguientes estructuras de datos: - + homepage.first_steps.create_part O puedes directamente <a href="%url%">crear un nuevo componente</a> - + homepage.first_steps.hide_hint Esta casilla desaparecerá cuando hayas creado tu primer componente. - + homepage.forum.text Para preguntas sobre Part-DB utiliza el <a href="%href%" class="link-external" target="_blank">foro de debate</a> - + log.element_edited.changed_fields.category Categoría - + log.element_edited.changed_fields.footprint Footprint - + log.element_edited.changed_fields.manufacturer Fabricante - + log.element_edited.changed_fields.value_typical Tip. valor - + log.element_edited.changed_fields.pw_reset_expires Restablecer contraseña - + log.element_edited.changed_fields.comment Notas - + log.element_edited.changed_fields.supplierpartnr Número del distribuidor del componente - + log.element_edited.changed_fields.supplier_product_url URL del producto - + log.element_edited.changed_fields.price Precio - + log.element_edited.changed_fields.min_discount_quantity Cantidad mínima de descuento - + log.element_edited.changed_fields.original_filename Nombre de archivo original - + log.element_edited.changed_fields.path Ruta de fichero - + log.element_edited.changed_fields.description Descripción - + log.element_edited.changed_fields.manufacturing_status Estatus de producción - + log.element_edited.changed_fields.options.barcode_type Tipo de código de barras - + log.element_edited.changed_fields.status Estatus - + log.element_edited.changed_fields.quantity Cantidad BOM - + log.element_edited.changed_fields.mountnames Nombres de ensamblaje - + log.element_edited.changed_fields.name Nombre - + log.element_edited.changed_fields.part Componente - + log.element_edited.changed_fields.price_currency Precio de la divisa - + log.element_edited.changed_fields.partname_hint Sugerencia de nombre de componente - + log.element_edited.changed_fields.partname_regex Filtro de nombre - + log.element_edited.changed_fields.disable_footprints Desactivar footprints - + log.element_edited.changed_fields.disable_manufacturers Desactivar fabricantes - + log.element_edited.changed_fields.disable_autodatasheets Desactivar links automáticos a datasheets - + log.element_edited.changed_fields.disable_properties Desactivar propiedades - + log.element_edited.changed_fields.default_description Descripción predeterminada - + log.element_edited.changed_fields.default_comment Comentario predeterminado - + log.element_edited.changed_fields.filetype_filter Extensiones de archivo permitidas - + log.element_edited.changed_fields.not_selectable No seleccionado - + log.element_edited.changed_fields.parent Elemento padre - + log.element_edited.changed_fields.shipping_costs Costes de envío - + log.element_edited.changed_fields.default_currency Divisa predeterminada - + log.element_edited.changed_fields.address Dirección - + log.element_edited.changed_fields.phone_number Número de teléfono - + log.element_edited.changed_fields.fax_number Número fax - + log.element_edited.changed_fields.email_address E-mail - + log.element_edited.changed_fields.website Sitio web - + log.element_edited.changed_fields.auto_product_url URL de producto - + log.element_edited.changed_fields.is_full Ubicación de almacenaje llena - + log.element_edited.changed_fields.limit_to_existing_parts Límite a componentes existentes - + log.element_edited.changed_fields.only_single_part Solo componentes individuales - + log.element_edited.changed_fields.storage_type Tipo de almacenaje - + log.element_edited.changed_fields.footprint_3d Modelo 3D - + log.element_edited.changed_fields.master_picture_attachment Previsualización de imagen - + log.element_edited.changed_fields.exchange_rate Tasa de cambio - + log.element_edited.changed_fields.iso_code Código ISO - + log.element_edited.changed_fields.unit Símbolo de unidad - + log.element_edited.changed_fields.is_integer Es entero - + log.element_edited.changed_fields.use_si_prefix Usar prefijo SI - + log.element_edited.changed_fields.options.width Anchura - + log.element_edited.changed_fields.options.height Altura - + log.element_edited.changed_fields.options.supported_element Tipo de elemento - + log.element_edited.changed_fields.options.additional_css Estilos adicionales (CSS) - + log.element_edited.changed_fields.options.lines Contenido - + log.element_edited.changed_fields.permissions.data Permisos - + log.element_edited.changed_fields.disabled Deshabilitado - + log.element_edited.changed_fields.theme Tema - + log.element_edited.changed_fields.timezone Zona horaria - + log.element_edited.changed_fields.language Idioma - + log.element_edited.changed_fields.email E-mail - + log.element_edited.changed_fields.department Departamento - + log.element_edited.changed_fields.last_name Apellidos - + log.element_edited.changed_fields.first_name Nombre - + log.element_edited.changed_fields.group Grupo - + log.element_edited.changed_fields.currency Divisa preferida - + log.element_edited.changed_fields.enforce2FA Forzar 2FA - + log.element_edited.changed_fields.symbol Símbolo - + log.element_edited.changed_fields.value_min Valor mín. - + log.element_edited.changed_fields.value_max Valor máx. - + log.element_edited.changed_fields.value_text Valor de texto - + log.element_edited.changed_fields.show_in_table Mostrar en tabla - + log.element_edited.changed_fields.attachment_type Tipo de archivo - + log.element_edited.changed_fields.needs_review Necesita revisión - + log.element_edited.changed_fields.tags Etiquetas - + log.element_edited.changed_fields.mass Masa - + log.element_edited.changed_fields.ipn IPN - + log.element_edited.changed_fields.favorite Favorito - + log.element_edited.changed_fields.minamount Stock mínimo - + log.element_edited.changed_fields.manufacturer_product_url Link a página del producto - + log.element_edited.changed_fields.manufacturer_product_number MPN - + log.element_edited.changed_fields.partUnit Unidad de medida - + log.element_edited.changed_fields.expiration_date Fecha de expiración - + log.element_edited.changed_fields.amount Cantidad - + log.element_edited.changed_fields.storage_location Ubicación - + attachment.max_file_size Tamaño máximo de archivo - + user.saml_user usuario SSO / SAML - + user.saml_user.pw_change_hint Tu usuario usa Single Sign-On (SSO). No puedes cambiar la contraseña ni los ajustes 2FA. ¡Configúralos en tu proveedor central SSO! - + login.sso_saml_login Single Sign-On Login (SSO) - + login.local_login_hint El formulario de debajo solo sirve para registrarte con un usuario local. Si quieres registrarte mediante sign-on, pulsa el botón de arriba. - + part_list.action.action.export Exportar componentes - + part_list.action.export_json Exportar a JSON - + part_list.action.export_csv Exportar a CSV - + part_list.action.export_yaml Exportar a YAML - + part_list.action.export_xml Exportar a XML - + parts.import.title Importar componentes - + parts.import.errors.title Problemas con las importaciones - + parts.import.flash.error Error en importe. Probablemente esto haya sido causado por datos inválidos. - + parts.import.format.auto Automático (basado en extensión de archivo) - + parts.import.flash.error.unknown_format ¡No se pudo determinar el formato del archivo dado! - + parts.import.flash.error.invalid_file Archivo inválido. ¡Por favor comprueba que has seleccionado el formato adecuado! - + parts.import.part_category.label Sobreescribir categoría - + parts.import.part_category.help Si seleccionas un valor aquí, todos los componentes importados serán asignados a esta categoría. Sin importar que fuera seleccionado en los datos. - + import.create_unknown_datastructures Crear estructuras de datos desconocidas - + import.create_unknown_datastructures.help Si esto es seleccionado, las estructuras de datos (como categorías, footprints, etc.) que no existan en la base de datos serán creadas automáticamente. Si no es seleccionado, solo se crearan estructuras de datos existentes, y si no se encuentra ninguna estructura de datos compatible, el componente no será asignado a nada. - + import.path_delimiter Delimitador de camino - + import.path_delimiter.help Delimitador usado para marcar diferentes niveles en caminos de estructuras de datos como categoría, footprint, etc. - + parts.import.help_documentation Vea la <a href="%link%">documentación</a> para más información sobre el formato de archivo. - + parts.import.help Puedes importar componentes desde archivos con esta herramienta. Los componentes serán añadidos directamente a la base de datos, así que por favor comprueba que el archivo es correcto antes de subirlo aquí. - + parts.import.flash.success ¡Componente importado correctamente! - + parts.import.errors.imported_entities Componentes importados - + perm.import Importar datos - + parts.import.part_needs_review.label Marcar todos los componentes importados como "Necesita revisión" - + parts.import.part_needs_review.help Si se selecciona esta opción, todos los componentes serán marcados como "Necesita revisión", independientemente de lo que indiquen los datos. - + project.bom_import.flash.success Se han importado %count% entradas BOM correctamente. - + project.bom_import.type Tipo - + project.bom_import.type.kicad_pcbnew KiCAD Pcbnew BOM (archivo CSV) - + project.bom_import.clear_existing_bom Eliminar entradas BOM existentes antes de importar - + project.bom_import.clear_existing_bom.help ¡Seleccionar esta opción eliminará todas las entradas BOM existentes en el proyecto y las sobreescribirá con el archivo BOM importado! - + project.bom_import.flash.invalid_file No se pudo importar el archivo. Por favor, comprueba que has seleccionado el tipo de archivo adecuado. Mensaje de error: %message% - + project.bom_import.flash.invalid_entries ¡Error de validación! ¡Por favor comprueba tus datos! - + project.import_bom Importar BOM para el proyecto - + project.edit.bom.import_bom Importar BOM - + measurement_unit.new Nueva Unidad de Medida - + measurement_unit.edit Editar Unidad de Medida - + user.aboutMe.label Sobre mí - + storelocation.owner.label Propietario - + storelocation.part_owner_must_match.label Lote de Componente debe coincidir con el propietario de la ubicación de almacenaje - + part_lot.owner Propietario - + part_lot.owner.help Solo el propietario puede quitar o añadir stock a este lote. - + log.element_edited.changed_fields.owner Propietario - + log.element_edited.changed_fields.instock_unknown Cantidad desconocida - + log.element_edited.changed_fields.needs_refill Necesita relleno - + part.withdraw.access_denied No se permite realizar la acción deseada. Por favor comprueba tus permisos y el propietario de los lotes de la parte. - + part.info.amount.less_than_desired Menos de lo deseado - + log.cli_user Usuario CLI - + log.element_edited.changed_fields.part_owner_must_match El propietario del componente debe coincidir con el propietario de la ubicación de almacenaje - + part.filter.lessThanDesired Stock menor de lo deseado (cantidad total < cantidad mínima) - + part.filter.lotOwner Propietario del lote - + user.show_email_on_profile.label Mostrar email en la página de perfil pública - + log.details.title Detalles del log - + log.user_login.login_from_ip Iniciar sesión con dirección IP - + log.user_login.ip_anonymize_hint Si los últimos dígitos de la dirección IP no aparecen, entonces se activa el modo RGPD, en el cual las direcciones IP son anonimizadas. - + log.user_not_allowed.unauthorized_access_attempt_to Acceso no autorizado a la página - + log.user_not_allowed.hint La petición fue bloqueada. Ninguna acción debería ser requerida. - + log.no_comment Sin comentarios - + log.element_changed.field Campo - + log.element_changed.data_before Datos previos al cambio - + error_table.error Un error ha ocurrido durante tu petición. - + part.table.invalid_regex Expresión regular inválida (regex) - + log.element_changed.data_after Datos después del cambio - + log.element_changed.diff Diferencia - + log.undo.undo.short Deshacer - + log.undo.revert.short Revertir a esta versión - + log.view_version Ver versión - + log.undo.undelete.short Restaurar - + log.element_edited.changed_fields.id ID - + log.element_edited.changed_fields.id_owner Propietario - + log.element_edited.changed_fields.parent_id Padre - + log.details.delete_entry Cancelar la entrada de registro - + log.delete.message.title ¿Realmente quieres borrar la entrada de registro? - + log.delete.message Si esto es una entrada de historia de elemento, ¡esto rompe la historia del elemento! Esto puede conllevar resultados inesperados cuando se use la función de viaje en el tiempo. - + log.collection_deleted.on_collection En colección - + log.element_edited.changed_fields.attachments Adjuntos - + tfa_u2f.add_key.registration_error Hubo un error durante el registro de la clave de seguridad. ¡Vuelve a intentarlo o usa otra clave de seguridad! - + log.target_type.none Ninguno - + ui.darkmode.light Luminoso - + ui.darkmode.dark Oscuro - + ui.darkmode.auto Automático (decidir según los ajustes del sistema) - + label_generator.no_lines_given ¡No se ha dado contenido de texto! Las etiquetas permanecerán vacías. - + user.password_strength.very_weak Muy débil - + user.password_strength.weak Débil - + user.password_strength.medium Medio - + user.password_strength.strong Fuerte - + user.password_strength.very_strong Muy fuerte - + perm.users.impersonate Personificar otros usuarios - + user.impersonated_by.label Personificado por - + user.stop_impersonation Detener la personificación - + user.impersonate.btn Personificar - + user.impersonate.confirm.title ¿Realmente quieres personificar a este usuario? - + user.impersonate.confirm.message Esto será registrado. Haz esto solo por un buen motivo. @@ -11428,785 +11420,929 @@ Elemento 3 Por favor ten en cuenta que no puedes personificar a un usuario deshabilitado. Si lo intentas obtendrás un mensaje de "Acceso denegado". - + log.type.security.user_impersonated Usuario personificado - + info_providers.providers_list.title Proveedor de información - + info_providers.providers_list.active Activo - + info_providers.providers_list.disabled Desactivado - + info_providers.capabilities.basic Básico - + info_providers.capabilities.footprint Footprint - + info_providers.capabilities.picture Imagen - + info_providers.capabilities.datasheet Ficha técnica - + info_providers.capabilities.price Precios - + part.info_provider_reference.badge El proveedor de información usada para crear este componente. - + part.info_provider_reference Creado por proveedor de información - + oauth_client.connect.btn Conectar OAuth - + info_providers.table.provider.label Proveedor - + info_providers.search.keyword Palabra clave - + info_providers.search.submit Buscar - + info_providers.search.providers.help Seleccionar los proveedores que deban ser buscados. - + info_providers.search.providers Proveedores - + info_providers.search.info_providers_list Mostrar todos los proveedores de información disponibles - + info_providers.search.title Crear componentes de proveedor de información - + oauth_client.flash.connection_successful Conectado a la aplicación OAuth con éxito - + perm.part.info_providers Proveedores de información - + perm.part.info_providers.create_parts Crear componentes a partir de proveedor de información - + entity.edit.alternative_names.label Nombres alternativos - + entity.edit.alternative_names.help Los nombres alternativos dados aquí son usados para encontrar este elemento basados en los resultados de los proveedores de información. - + info_providers.form.help_prefix Proveedor - + update_manager.new_version_available.title Nueva versión disponible - + update_manager.new_version_available.text Nueva versión de Part-DB disponible. Más información aquí. - + update_manager.new_version_available.only_administrators_can_see Solo los administradores pueden ver este mensaje. - + perm.system.show_available_updates Mostrar actualizaciones de Part-DB disponibles. - + user.settings.api_tokens Tokens API - + user.settings.api_tokens.description Utilizando un token API, otras aplicaciones pueden acceder a Part-DB con tus derechos de usuario, para realizar las diversas acciones usando el Part-DB REST API. Si borras un token API aquí, la aplicación que use ese token ya no podrá usar Part-DB por ti. - + api_tokens.name Nombre - + api_tokens.access_level Nivel de acceso - + api_tokens.expiration_date Fecha de caducidad - + api_tokens.added_date Añadido a - + api_tokens.last_time_used Última vez usado - + datetime.never Nunca - + api_token.valid Válido - + api_token.expired Caducado - + user.settings.show_api_documentation Mostrar documentación API - + api_token.create_new Crear nuevo token API - + api_token.level.read_only Solo lectura - + api_token.level.edit Editar - + api_token.level.admin Admin - + api_token.level.full Completo - + api_tokens.access_level.help Puedes restringir a qué accede el token API. El acceso siempre estará limitado por los permisos de tu usuario. - + api_tokens.expiration_date.help Después de esta fecha, el token ya no será utilizable. Déjalo en blanco si el token no expira nunca. - + api_tokens.your_token_is Tu token API es - + api_tokens.please_save_it Por favor guárdalo. ¡No serás capaz de volver a verlo! - + api_tokens.create_new.back_to_user_settings Volver a ajustes de usuario - + project.build.dont_check_quantity No comprobar cantidades - + project.build.dont_check_quantity.help Si se selecciona esta opción, las cantidades retiradas serán usadas tal y como se han dado, sin importar que más o menos componentes realmente sean necesarios para construir este proyecto. - + part_list.action.invert_selection Invertir selección - + perm.api API - + perm.api.access_api Acceder API - + perm.api.manage_tokens Gestionar tokens API - + user.settings.api_tokens.delete.title ¿Realmente quieres borrar este token API? - + user.settings.api_tokens.delete Borrar - + user.settings.api_tokens.delete.message La aplicación que usa este token API ya no tendrá acceso a Part-DB. ¡Esta acción no puede ser deshecha! - + api_tokens.deleted ¡Token API borrado con éxito! - + user.settings.api_tokens.no_api_tokens_yet No se ha configurado ningún token API aún. - + api_token.ends_with Termina con - + entity.select.creating_new_entities_not_allowed ¡No tienes permisos para crear nuevas entidades de este tipo! Por favor usa una entidad preexistente. - + scan_dialog.mode Tipo de código de barras - + scan_dialog.mode.auto Detectar automáticamente - + scan_dialog.mode.ipn Código de barras IPN - + scan_dialog.mode.internal Código de barras Part-DB - + part_association.label Asociación de componente - + part.edit.tab.associations Componentes asociados. - + part_association.edit.other_part Componente asociado - + part_association.edit.type Tipo de relación - + part_association.edit.comment Notas - + part_association.edit.type.help Puedes seleccionar aquí como la parte seleccionada se relaciona con el componente. - + part_association.table.from_this_part Asociaciones de este componente a otros. - + part_association.table.from Desde - + part_association.table.type Relación - + part_association.table.to A - + part_association.type.compatible Es compatible con - + part_association.table.to_this_part Asociaciones de este componente de otros - + part_association.type.other Otros (valor personalizable) - + part_association.type.supersedes Reemplaza - + part_association.edit.other_type Tipo personalizable - + part_association.edit.delete.confirm ¿De verdad quieres borrar esta asociación? Esto no puede ser deshecho - + part_lot.edit.advanced Expandir opciones avanzadas - + part_lot.edit.vendor_barcode Código de barras de vendedor - + part_lot.edit.vendor_barcode.help Si este lote ya tiene un código de barras (por ejemplo, puesto por el vendedor), puedes escribir aquí sus contenidos, para escanearlos fácilmente. - + scan_dialog.mode.vendor Código de barras de vendedor (configurados en el lote del componente) - + project.bom.instockAmount Cantidad en stock - + collection_type.new_element.tooltip Este elemento fue creado recientemente y no ha sido guardado aún a la base de datos. - + part.merge.title Combinar componentes - + part.merge.title.into en - + part.merge.confirm.title ¿De verdad quieres juntar <b>%other%</b> into <b>%target%</b>? - + part.merge.confirm.message <b>%other%</b> será borrado, y el componente será guardado con la información mostrada. - + part.info.merge_modal.title Combinar componentes - + part.info.merge_modal.other_part Otro componente - + part.info.merge_modal.other_into_this Combinar otro componente a este (borrar el otro componente, guardar este) - + part.info.merge_modal.this_into_other Combinar este componente a otro (borrar este componente, guardar el otro) - + part.info.merge_btn Combinar componentes - + part.update_part_from_info_provider.btn Actualizar componente con la información de los proveedores - + info_providers.update_part.title Actualizar componente existente con la información del proveedor - + part.merge.flash.please_review Datos no guardados aún. Repasa los cambios y haz click en guardar para guardar los datos nuevos. - + user.edit.flash.permissions_fixed Faltan permisos requeridos por otros permisos. Esto ha sido corregido. Por favor comprueba si los permisos están como quieres. - + permission.legend.dependency_note Por favor ten en cuenta que algunos de los permisos de operaciones dependen de otros. Si te encuentras con un aviso diciendo que los permisos restantes han sido corregidos y un permiso ha sido configurado a permitir otra vez, tienes que configurar también la operación dependiente a prohibido. Las dependencias se suelen encontrar a la derecha de una operación. - + log.part_stock_changed.timestamp Versión - + part.info.withdraw_modal.timestamp Versión de la acción - + part.info.withdraw_modal.timestamp.hint Este campo te permite especificar la fecha real, cuando la operación de stock fue realizada, no cuando fue registrada. Este valor se guarda en el campo extra del registro de entrada. - + part.info.withdraw_modal.delete_lot_if_empty Eliminar este lote, si se vacía - + info_providers.search.error.client_exception Un error ha ocurrido mientras se comunicaba con el proveedor de información. Comprueba la configuración de este proveedor y recarga el token OAuth si es posible. - + eda_info.reference_prefix.placeholder p. ej. R - + eda_info.reference_prefix Prefijo de referencia - + eda_info.kicad_section.title Configuraciones específicas de KiCad - + eda_info.value Valor - + eda_info.value.placeholder p. ej. 100n - + eda_info.exclude_from_bom Excluir componentes de BOM - + eda_info.exclude_from_board Excluir componente de PCB/Tablero - + eda_info.exclude_from_sim Excluir componentes de simulación - + eda_info.kicad_symbol KiCad símbolos esquemáticos - + eda_info.kicad_symbol.placeholder p. ej. Transistor_BJT:BC547 - + eda_info.kicad_footprint KiCad footprint - + eda_info.kicad_footprint.placeholder p. ej. Package_TO_SOT_THT:TO-92 - + part.edit.tab.eda Información EDA - + api.api_endpoints.title Punto final API - + api.api_endpoints.partdb Part-DB API - + api.api_endpoints.kicad_root_url KiCad API root URL - + eda_info.visibility Forzar visibilidad - + eda_info.visibility.help Por defecto, la visibilidad al software EDA está automáticamente determinada. Con esta casilla puedes forzar a que sea visible o invisible. - + part.withdraw.zero_amount ¡Has intentado retirar una cantidad nula! No se ha realizado ninguna acción. - + login.flash.access_denied_please_login ¡Acceso denegado! Por favor inicia sesión para continuar. - + attachment.upload_multiple_files Subir archivos - + entity.mass_creation_flash Creadas %COUNT% entidades con éxito. + + + info_providers.search.number_of_results + %number% Resultados + + + + + info_providers.search.no_results + ¡No se encontraron resultados en las fuentes proporcionadas! Verifique su término de búsqueda o intente seleccionar más fuentes de información. + + + + + tfa.check.code.confirmation + Código generado + + + + + info_providers.search.show_existing_part + Mostrar componente existente + + + + + info_providers.search.edit_existing_part + Editar componente existente + + + + + info_providers.search.existing_part_found.short + Componente ya existente + + + + + info_providers.search.existing_part_found + Este componente (o uno muy similar) ya existe en la base de datos. Por favor, comprueba si es el mismo y si quieres volver a crearlo. + + + + + info_providers.search.update_existing_part + Actualizar componente existente con la información del proveedor + + + + + part.create_from_info_provider.no_category_yet + No se ha podido determinar automáticamente la categoría mediante la información del proveedor. Por favor, revisa la información y selecciona la categoría manualmente. + + + + + part_lot.edit.user_barcode + Utilizar código de barras + + + + + scan_dialog.mode.user + Código de barras definido por el usuario (configurado como parte de un lote) + + + + + scan_dialog.mode.eigp + Código de barras EIGP114 (p.e. los códigos de matriz en pedidos de Digikey y Mouser) + + + + + scan_dialog.info_mode + Modo Informativo (Lee el código de barras y muestra su contenido, pero no redirecciona al componente) + + + + + label_scanner.decoded_info.title + Información decodificada + + + + + label_generator.edit_profiles + Modificar perfiles + + + + + label_generator.profile_name_empty + El nombre del perfil no debe estar vacío + + + + + label_generator.save_profile_name + Nombre de perfil + + + + + label_generator.save_profile + Guardar como nuevo perfil + + + + + label_generator.profile_saved + Perfil guardado + + + + + entity.export.flash.error.no_entities + No hay entidades para exportar + + + + + attachment.table.internal_file + Archivo interno + + + + + attachment.table.external_link + Enlace externo + + + + + attachment.view_external.view_at + Ver en %host% + + + + + attachment.view_external + Ver versión externa + + diff --git a/translations/messages.it.xlf b/translations/messages.it.xlf index a8e9e248..7e05a6f2 100644 --- a/translations/messages.it.xlf +++ b/translations/messages.it.xlf @@ -780,18 +780,10 @@ L'utente dovrà configurare nuovamente tutti i metodi di autenticazione a due fa Eliminare - - - Part-DB1\templates\AdminPages\_attachments.html.twig:41 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - + - attachment.external - Esterno + attachment.external_only + Solo allegato esterno @@ -806,7 +798,7 @@ L'utente dovrà configurare nuovamente tutti i metodi di autenticazione a due fa Miniatura dell'allegato - + Part-DB1\templates\AdminPages\_attachments.html.twig:52 Part-DB1\templates\Parts\edit\_attachments.html.twig:50 @@ -816,8 +808,8 @@ L'utente dovrà configurare nuovamente tutti i metodi di autenticazione a due fa Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 - attachment.view - Visualizzare + attachment.view_local + Visualizza la copia locale @@ -2119,14 +2111,14 @@ I sub elementi saranno spostati verso l'alto. Immagine di anteprima - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 - attachment.download - Download + attachment.download_local + Scarica la copia in locale @@ -12228,5 +12220,155 @@ Notare che non è possibile impersonare un utente disattivato. Quando si prova a Codice generato + + + info_providers.search.show_existing_part + Mostra i componenti esistenti + + + + + info_providers.search.edit_existing_part + Modifica i componenti esistenti + + + + + info_providers.search.existing_part_found.short + Componenti già presenti + + + + + info_providers.search.existing_part_found + Questo componente (o uno molto simile) è già stato trovato nel database. Controlla se è lo stesso e se vuoi crearlo di nuovo! + + + + + info_providers.search.update_existing_part + Aggiorna il componente esistente con le informazioni del provider + + + + + part.create_from_info_provider.no_category_yet + La categoria non può essere determinata automaticamente dal provider di informazioni. Verifica i dati e seleziona manualmente la categoria. + + + + + part_lot.edit.user_barcode + Codice a barre utente + + + + + scan_dialog.mode.user + Codice a barre definito dall'utente (configurato sul lotto del componente) + + + + + scan_dialog.mode.eigp + Codice a barre EIGP 114 (ad esempio, i codici datamatrix sugli ordini di Digikey e Mouser) + + + + + scan_dialog.info_mode + Modalità "info" (Decodifica il codice a barre e mostra il suo contenuto, senza reindirizzare alla parte) + + + + + label_scanner.decoded_info.title + Informazioni decodificate + + + + + label_generator.edit_profiles + Modifica profili + + + + + label_generator.profile_name_empty + Il nome del profilo non può essere vuoto + + + + + label_generator.save_profile_name + Nome profilo + + + + + label_generator.save_profile + Salva come nuovo profilo + + + + + label_generator.profile_saved + Profilo salvato! + + + + + entity.export.flash.error.no_entities + Non ci sono entità da esportare! + + + + + attachment.table.internal_file + File interno + + + + + attachment.table.external_link + Link esterno + + + + + attachment.view_external.view_at + Visualizza da %host% + + + + + attachment.view_external + Visualizza la versione esterna + + + + + part.table.actions.error + Si sono verificati %count% errori durante l'esecuzione dell'azione: + + + + + part.table.actions.error_detail + %part_name% (ID: %part_id%): %message% + + + + + part_list.action.action.change_location + Cambia posizione (solo per componenti con stock singolo) + + + + + parts.table.action_handler.error.part_lots_multiple + Questo componente contiene più di uno stock. Cambia manualmente la posizione per selezionare quale stock scegliere. + + diff --git a/translations/messages.pl.xlf b/translations/messages.pl.xlf index d20d1b9e..5b038410 100644 --- a/translations/messages.pl.xlf +++ b/translations/messages.pl.xlf @@ -11192,7 +11192,7 @@ Element 3 log.user_login.ip_anonymize_hint - Jeśli brakuje ostatnich cyfr adresu IP, włączony jest tryb GPDR, w którym adresy IP są anonimowe. + Jeśli brakuje ostatnich cyfr adresu IP, włączony jest tryb GDPR, w którym adresy IP są anonimowe. diff --git a/translations/messages.ru.xlf b/translations/messages.ru.xlf index cc31308b..2b4a5f70 100644 --- a/translations/messages.ru.xlf +++ b/translations/messages.ru.xlf @@ -1,7 +1,7 @@ - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 @@ -12,7 +12,7 @@ Типы прикрепленных файлов - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:12 new @@ -22,7 +22,7 @@ Изменить тип файла - + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:16 new @@ -32,7 +32,7 @@ Новый тип файла - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 Part-DB1\templates\_sidebar.html.twig:22 @@ -51,7 +51,7 @@ Категории - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:19 @@ -64,7 +64,7 @@ Опции - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 @@ -77,7 +77,7 @@ Расширенные - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:13 new @@ -87,7 +87,7 @@ Изменить категорию - + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:17 new @@ -97,7 +97,7 @@ Новая категория - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 @@ -107,7 +107,7 @@ Валюта - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 @@ -117,7 +117,7 @@ Код ISO - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 @@ -127,7 +127,7 @@ Знак валюты - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:29 new @@ -137,7 +137,7 @@ Изменить валюту - + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:33 new @@ -147,7 +147,7 @@ Новая валюта - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:4 Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:4 @@ -158,7 +158,7 @@ Проект - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:8 new @@ -168,7 +168,7 @@ Редактировать проект - + Part-DB1\templates\AdminPages\DeviceAdmin.html.twig:12 new @@ -178,7 +178,7 @@ Новый проект - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 Part-DB1\templates\_navbar_search.html.twig:67 @@ -201,7 +201,7 @@ Поиск - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 Part-DB1\templates\_sidebar.html.twig:3 @@ -217,7 +217,7 @@ Раскрыть всё - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 Part-DB1\templates\_sidebar.html.twig:4 @@ -233,7 +233,7 @@ Свернуть всё - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 Part-DB1\templates\Parts\info\_sidebar.html.twig:4 @@ -245,7 +245,7 @@ Так этот компонент выглядел до %timestamp%. <i>Это экспериментальная возможность, поэтому информация может быть неверной.</i> - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 @@ -256,7 +256,7 @@ Свойства - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 @@ -267,7 +267,7 @@ Информация - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 @@ -278,7 +278,7 @@ История - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 @@ -289,7 +289,7 @@ Экспорт - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 @@ -300,7 +300,7 @@ Импорт / Экспорт - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 @@ -310,7 +310,7 @@ Создать несколько - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 @@ -321,7 +321,7 @@ Общие - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 @@ -331,7 +331,7 @@ Вложения - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:90 @@ -340,7 +340,7 @@ Параметры - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:179 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:167 @@ -351,7 +351,7 @@ Экспортировать всё - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:185 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:173 @@ -361,7 +361,7 @@ Каждая строка будет интерпретирована как имя создаваемого элемента - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 @@ -372,7 +372,7 @@ Редактировать элемент "%name" - + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 @@ -383,7 +383,7 @@ Новый элемент - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 Part-DB1\templates\_sidebar.html.twig:9 @@ -398,7 +398,7 @@ Посадочные места - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:13 new @@ -408,7 +408,7 @@ Изменить посадочное место - + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:17 new @@ -418,7 +418,7 @@ Новое посадочное место - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 @@ -428,7 +428,7 @@ Группы - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 @@ -440,7 +440,7 @@ Разрешения - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:24 new @@ -450,7 +450,7 @@ Изменить группу - + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:28 new @@ -460,7 +460,7 @@ Новая группа - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:4 @@ -469,7 +469,7 @@ Профили этикеток - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:8 @@ -478,7 +478,7 @@ Расширенные - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:9 @@ -487,7 +487,7 @@ Комментарий - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:55 new @@ -497,7 +497,7 @@ Изменить профиль этикетки - + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:59 new @@ -507,7 +507,7 @@ Новый профиль этикетки - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 @@ -518,7 +518,7 @@ Производители - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:8 new @@ -528,7 +528,7 @@ Изменить производителя - + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:12 new @@ -538,7 +538,7 @@ Новый производитель - + Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 @@ -548,7 +548,7 @@ Единица измерения - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:5 Part-DB1\templates\_sidebar.html.twig:8 @@ -563,7 +563,7 @@ Хранилища - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:32 new @@ -573,7 +573,7 @@ Изменить место хранения - + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:36 new @@ -583,7 +583,7 @@ Новое место хранения - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 @@ -594,7 +594,7 @@ Поставщики - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:16 new @@ -604,7 +604,7 @@ Изменить поставщика - + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:20 new @@ -614,7 +614,7 @@ Новый поставщик - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 @@ -624,7 +624,7 @@ Пользователь - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 @@ -634,7 +634,7 @@ Конфигурация - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 @@ -644,7 +644,7 @@ Пароль - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 @@ -654,7 +654,7 @@ Двухфакторная аутентификация - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 @@ -664,7 +664,7 @@ Приложение аутентификации активно - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 Part-DB1\templates\Users\backup_codes.html.twig:15 @@ -678,7 +678,7 @@ Количество оставшихся резервных кодов - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 Part-DB1\templates\Users\backup_codes.html.twig:17 @@ -692,7 +692,7 @@ Дата создания резервных кодов - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 @@ -704,7 +704,7 @@ Способ выключен - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 @@ -714,7 +714,7 @@ Активные ключи безопасности - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 @@ -724,7 +724,7 @@ Вы действительно хотите продолжить? - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 @@ -737,7 +737,7 @@ <b>Делайте это только в том случае, если вы абсолютно уверены в личности пользователя (обращающегося за помощью), в противном случае учетная запись может быть взломана злоумышленником!</b> - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 @@ -747,7 +747,7 @@ Запретить все способы двухфакторной аутентификации - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:85 new @@ -757,7 +757,7 @@ Изменить пользователя - + Part-DB1\templates\AdminPages\UserAdmin.html.twig:89 new @@ -767,7 +767,7 @@ Новый пользователь - + Part-DB1\templates\AdminPages\_attachments.html.twig:4 Part-DB1\templates\Parts\edit\_attachments.html.twig:4 @@ -780,7 +780,7 @@ Удалить - + Part-DB1\templates\AdminPages\_attachments.html.twig:41 Part-DB1\templates\Parts\edit\_attachments.html.twig:38 @@ -794,7 +794,7 @@ Внешний - + Part-DB1\templates\AdminPages\_attachments.html.twig:49 Part-DB1\templates\Parts\edit\_attachments.html.twig:47 @@ -806,7 +806,7 @@ Значок вложения - + Part-DB1\templates\AdminPages\_attachments.html.twig:52 Part-DB1\templates\Parts\edit\_attachments.html.twig:50 @@ -820,7 +820,7 @@ Посмотреть - + Part-DB1\templates\AdminPages\_attachments.html.twig:58 Part-DB1\templates\Parts\edit\_attachments.html.twig:56 @@ -836,7 +836,7 @@ Файл не найден - + Part-DB1\templates\AdminPages\_attachments.html.twig:66 Part-DB1\templates\Parts\edit\_attachments.html.twig:64 @@ -848,7 +848,7 @@ Личное - + Part-DB1\templates\AdminPages\_attachments.html.twig:79 Part-DB1\templates\Parts\edit\_attachments.html.twig:77 @@ -860,7 +860,7 @@ Добавить вложение - + Part-DB1\templates\AdminPages\_attachments.html.twig:84 Part-DB1\templates\Parts\edit\_attachments.html.twig:82 @@ -874,7 +874,7 @@ Вы уверены, что хотите удалить этот склад? Это не может быть отменено! - + Part-DB1\templates\AdminPages\_delete_form.html.twig:2 Part-DB1\templates\AdminPages\_delete_form.html.twig:2 @@ -885,7 +885,7 @@ Вы действительно хотите удалить %name%? - + Part-DB1\templates\AdminPages\_delete_form.html.twig:3 Part-DB1\templates\AdminPages\_delete_form.html.twig:3 @@ -898,7 +898,7 @@ Подэлементы будут перенесены наверх. - + Part-DB1\templates\AdminPages\_delete_form.html.twig:11 Part-DB1\templates\AdminPages\_delete_form.html.twig:11 @@ -909,7 +909,7 @@ Удалить элемент - + Part-DB1\templates\AdminPages\_delete_form.html.twig:16 Part-DB1\templates\Parts\info\_tools.html.twig:45 @@ -924,7 +924,7 @@ Изменить комментарий - + Part-DB1\templates\AdminPages\_delete_form.html.twig:24 Part-DB1\templates\AdminPages\_delete_form.html.twig:24 @@ -935,7 +935,7 @@ Удалить рекурсивно (все подэлементы) - + Part-DB1\templates\AdminPages\_duplicate.html.twig:3 @@ -944,7 +944,7 @@ Повторный элемент - + Part-DB1\templates\AdminPages\_export_form.html.twig:4 Part-DB1\src\Form\AdminPages\ImportType.php:76 @@ -958,7 +958,7 @@ Формат файла - + Part-DB1\templates\AdminPages\_export_form.html.twig:16 Part-DB1\templates\AdminPages\_export_form.html.twig:16 @@ -969,7 +969,7 @@ Уровень детализации - + Part-DB1\templates\AdminPages\_export_form.html.twig:19 Part-DB1\templates\AdminPages\_export_form.html.twig:19 @@ -980,7 +980,7 @@ Простой - + Part-DB1\templates\AdminPages\_export_form.html.twig:20 Part-DB1\templates\AdminPages\_export_form.html.twig:20 @@ -991,7 +991,7 @@ Расширенный - + Part-DB1\templates\AdminPages\_export_form.html.twig:21 Part-DB1\templates\AdminPages\_export_form.html.twig:21 @@ -1002,7 +1002,7 @@ Полный - + Part-DB1\templates\AdminPages\_export_form.html.twig:31 Part-DB1\templates\AdminPages\_export_form.html.twig:31 @@ -1013,7 +1013,7 @@ Включить подэлементы в экспорт - + Part-DB1\templates\AdminPages\_export_form.html.twig:39 Part-DB1\templates\AdminPages\_export_form.html.twig:39 @@ -1024,7 +1024,7 @@ Экспорт - + Part-DB1\templates\AdminPages\_info.html.twig:4 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 @@ -1043,7 +1043,7 @@ ID - + Part-DB1\templates\AdminPages\_info.html.twig:11 Part-DB1\templates\Parts\info\_attachments_info.html.twig:76 @@ -1067,7 +1067,7 @@ Создан - + Part-DB1\templates\AdminPages\_info.html.twig:25 Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 @@ -1085,7 +1085,7 @@ Последнее изменение - + Part-DB1\templates\AdminPages\_info.html.twig:38 Part-DB1\templates\AdminPages\_info.html.twig:38 @@ -1095,7 +1095,7 @@ Количество компонентов в этом элементе - + Part-DB1\templates\AdminPages\_parameters.html.twig:6 Part-DB1\templates\helper.twig:125 @@ -1106,7 +1106,7 @@ Параметр - + Part-DB1\templates\AdminPages\_parameters.html.twig:7 Part-DB1\templates\Parts\edit\_specifications.html.twig:7 @@ -1116,7 +1116,7 @@ Символ - + Part-DB1\templates\AdminPages\_parameters.html.twig:8 Part-DB1\templates\Parts\edit\_specifications.html.twig:8 @@ -1126,7 +1126,7 @@ Мин. - + Part-DB1\templates\AdminPages\_parameters.html.twig:9 Part-DB1\templates\Parts\edit\_specifications.html.twig:9 @@ -1136,7 +1136,7 @@ Тип. - + Part-DB1\templates\AdminPages\_parameters.html.twig:10 Part-DB1\templates\Parts\edit\_specifications.html.twig:10 @@ -1146,7 +1146,7 @@ Макс. - + Part-DB1\templates\AdminPages\_parameters.html.twig:11 Part-DB1\templates\Parts\edit\_specifications.html.twig:11 @@ -1156,7 +1156,7 @@ Единица - + Part-DB1\templates\AdminPages\_parameters.html.twig:12 Part-DB1\templates\Parts\edit\_specifications.html.twig:12 @@ -1166,7 +1166,7 @@ Текст - + Part-DB1\templates\AdminPages\_parameters.html.twig:13 Part-DB1\templates\Parts\edit\_specifications.html.twig:13 @@ -1176,7 +1176,7 @@ Группа - + Part-DB1\templates\AdminPages\_parameters.html.twig:26 Part-DB1\templates\Parts\edit\_specifications.html.twig:26 @@ -1186,7 +1186,7 @@ Новый Параметр - + Part-DB1\templates\AdminPages\_parameters.html.twig:31 Part-DB1\templates\Parts\edit\_specifications.html.twig:31 @@ -1196,7 +1196,7 @@ Вы точно уверены что хотите удалить этот параметр ? - + Part-DB1\templates\attachment_list.html.twig:3 Part-DB1\templates\attachment_list.html.twig:3 @@ -1206,7 +1206,7 @@ Список вложений - + Part-DB1\templates\attachment_list.html.twig:10 Part-DB1\templates\LogSystem\_log_table.html.twig:8 @@ -1220,7 +1220,7 @@ Загрузка - + Part-DB1\templates\attachment_list.html.twig:11 Part-DB1\templates\LogSystem\_log_table.html.twig:9 @@ -1234,7 +1234,7 @@ Это может занять время. Если это сообщение не пропадает, попробуйте перегрузить страницу. - + Part-DB1\templates\base.html.twig:68 Part-DB1\templates\base.html.twig:68 @@ -1245,7 +1245,7 @@ Включите Javascript чтобы использовать весь функционал! - + Part-DB1\templates\base.html.twig:73 Part-DB1\templates\base.html.twig:73 @@ -1255,7 +1255,7 @@ Показать/Скрыть боковую панель - + Part-DB1\templates\base.html.twig:95 Part-DB1\templates\base.html.twig:95 @@ -1266,7 +1266,7 @@ Загрузка: - + Part-DB1\templates\base.html.twig:96 Part-DB1\templates\base.html.twig:96 @@ -1277,7 +1277,7 @@ Это может занять время. Если это сообщение показывается слишком долго, попробуйте перегрузить страницу. - + Part-DB1\templates\base.html.twig:101 Part-DB1\templates\base.html.twig:101 @@ -1288,7 +1288,7 @@ Загрузка... - + Part-DB1\templates\base.html.twig:112 Part-DB1\templates\base.html.twig:112 @@ -1299,7 +1299,7 @@ Назад на верх страницы - + Part-DB1\templates\Form\permissionLayout.html.twig:35 Part-DB1\templates\Form\permissionLayout.html.twig:35 @@ -1309,7 +1309,7 @@ Разрешения - + Part-DB1\templates\Form\permissionLayout.html.twig:36 Part-DB1\templates\Form\permissionLayout.html.twig:36 @@ -1319,7 +1319,7 @@ Значение - + Part-DB1\templates\Form\permissionLayout.html.twig:53 Part-DB1\templates\Form\permissionLayout.html.twig:53 @@ -1329,7 +1329,7 @@ Объяснение состояний - + Part-DB1\templates\Form\permissionLayout.html.twig:57 Part-DB1\templates\Form\permissionLayout.html.twig:57 @@ -1339,7 +1339,7 @@ Запрещено - + Part-DB1\templates\Form\permissionLayout.html.twig:61 Part-DB1\templates\Form\permissionLayout.html.twig:61 @@ -1349,7 +1349,7 @@ Разрешено - + Part-DB1\templates\Form\permissionLayout.html.twig:65 Part-DB1\templates\Form\permissionLayout.html.twig:65 @@ -1359,7 +1359,7 @@ Наследовать от родительской группы - + Part-DB1\templates\helper.twig:3 Part-DB1\templates\helper.twig:3 @@ -1369,7 +1369,7 @@ Да - + Part-DB1\templates\helper.twig:5 Part-DB1\templates\helper.twig:5 @@ -1379,7 +1379,7 @@ Нет - + Part-DB1\templates\helper.twig:92 Part-DB1\templates\helper.twig:87 @@ -1389,7 +1389,7 @@ Да - + Part-DB1\templates\helper.twig:94 Part-DB1\templates\helper.twig:89 @@ -1399,7 +1399,7 @@ Нет - + Part-DB1\templates\helper.twig:126 @@ -1408,7 +1408,7 @@ Значение - + Part-DB1\templates\homepage.html.twig:7 Part-DB1\templates\homepage.html.twig:7 @@ -1419,7 +1419,7 @@ Версия - + Part-DB1\templates\homepage.html.twig:22 Part-DB1\templates\homepage.html.twig:22 @@ -1430,7 +1430,7 @@ Информация о лицензии - + Part-DB1\templates\homepage.html.twig:31 Part-DB1\templates\homepage.html.twig:31 @@ -1441,7 +1441,7 @@ Страница проекта - + Part-DB1\templates\homepage.html.twig:31 Part-DB1\templates\homepage.html.twig:31 @@ -1452,7 +1452,7 @@ Загрузки, отчеты об ошибках, список пожеланий и т.д. находятся на <a href="%href%" class="link-external" target="_blank">странице проекта в GitHub</a> - + Part-DB1\templates\homepage.html.twig:32 Part-DB1\templates\homepage.html.twig:32 @@ -1463,7 +1463,7 @@ Помощь - + Part-DB1\templates\homepage.html.twig:32 Part-DB1\templates\homepage.html.twig:32 @@ -1474,7 +1474,7 @@ Помощь и подсказки находятся в документах Wiki <a href="%href%" class="link-external" target="_blank">на странице в GitHub</a> - + Part-DB1\templates\homepage.html.twig:33 Part-DB1\templates\homepage.html.twig:33 @@ -1485,7 +1485,7 @@ Форум - + Part-DB1\templates\homepage.html.twig:45 Part-DB1\templates\homepage.html.twig:45 @@ -1496,7 +1496,7 @@ Последние действия - + Part-DB1\templates\LabelSystem\dialog.html.twig:3 Part-DB1\templates\LabelSystem\dialog.html.twig:6 @@ -1506,7 +1506,7 @@ Генератор этикеток - + Part-DB1\templates\LabelSystem\dialog.html.twig:16 @@ -1515,7 +1515,7 @@ Общее - + Part-DB1\templates\LabelSystem\dialog.html.twig:20 @@ -1524,7 +1524,7 @@ Расширенные - + Part-DB1\templates\LabelSystem\dialog.html.twig:24 @@ -1533,7 +1533,7 @@ Профили - + Part-DB1\templates\LabelSystem\dialog.html.twig:58 @@ -1542,7 +1542,7 @@ Выбранный профиль - + Part-DB1\templates\LabelSystem\dialog.html.twig:62 @@ -1551,7 +1551,7 @@ Изменить профиль - + Part-DB1\templates\LabelSystem\dialog.html.twig:75 @@ -1560,7 +1560,7 @@ Загрузить профиль - + Part-DB1\templates\LabelSystem\dialog.html.twig:102 @@ -1569,7 +1569,7 @@ Скачать - + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:3 Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:5 @@ -1579,7 +1579,7 @@ Генерировать этикетку - + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:20 @@ -1588,7 +1588,7 @@ Новая пустая этикетка - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:3 @@ -1597,7 +1597,7 @@ Сканер этикеток - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 @@ -1606,7 +1606,7 @@ Веб-камера не найдена - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 @@ -1615,7 +1615,7 @@ Чтобы использовать функцию сканирования вам понадобится веб-камера и разрешение для ее использования. Ниже, вы можете ввести штрихкод вручную. - + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:27 @@ -1624,7 +1624,7 @@ Выбор источника - + Part-DB1\templates\LogSystem\log_list.html.twig:3 Part-DB1\templates\LogSystem\log_list.html.twig:3 @@ -1634,7 +1634,7 @@ Системный лог - + Part-DB1\templates\LogSystem\_log_table.html.twig:1 Part-DB1\templates\LogSystem\_log_table.html.twig:1 @@ -1645,7 +1645,7 @@ Подтвердите отмену изменения/откат состояния? - + Part-DB1\templates\LogSystem\_log_table.html.twig:2 Part-DB1\templates\LogSystem\_log_table.html.twig:2 @@ -1656,7 +1656,7 @@ Вы действительно хотите отменить данное изменение и вернуть состояние элемента до предыдущей версии? - + Part-DB1\templates\mail\base.html.twig:24 Part-DB1\templates\mail\base.html.twig:24 @@ -1666,7 +1666,7 @@ Это письмо послано автоматически от - + Part-DB1\templates\mail\base.html.twig:24 Part-DB1\templates\mail\base.html.twig:24 @@ -1676,7 +1676,7 @@ Не отвечайте на это письмо. - + Part-DB1\templates\mail\pw_reset.html.twig:6 Part-DB1\templates\mail\pw_reset.html.twig:6 @@ -1686,7 +1686,7 @@ Привет %name% - + Part-DB1\templates\mail\pw_reset.html.twig:7 Part-DB1\templates\mail\pw_reset.html.twig:7 @@ -1696,7 +1696,7 @@ кто-то (надеемся что Вы) запросил сброс пароля. Если это сделали не Вы - игнорируйте это письмо. - + Part-DB1\templates\mail\pw_reset.html.twig:9 Part-DB1\templates\mail\pw_reset.html.twig:9 @@ -1706,7 +1706,7 @@ Нажмите здесь для сброса пароля - + Part-DB1\templates\mail\pw_reset.html.twig:11 Part-DB1\templates\mail\pw_reset.html.twig:11 @@ -1716,7 +1716,7 @@ Если это не помогло, откройте ссылку <a href="%url%">%url%</a> и введите следующую информацию - + Part-DB1\templates\mail\pw_reset.html.twig:16 Part-DB1\templates\mail\pw_reset.html.twig:16 @@ -1726,7 +1726,7 @@ Имя пользователя - + Part-DB1\templates\mail\pw_reset.html.twig:19 Part-DB1\templates\mail\pw_reset.html.twig:19 @@ -1736,7 +1736,7 @@ Жетон - + Part-DB1\templates\mail\pw_reset.html.twig:24 Part-DB1\templates\mail\pw_reset.html.twig:24 @@ -1746,7 +1746,7 @@ Жетон на сброс будет действителен до <i>%date%</i> - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:18 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 @@ -1758,7 +1758,7 @@ Удалить - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 @@ -1768,7 +1768,7 @@ Минимальное количество для скидки - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 @@ -1778,7 +1778,7 @@ Цена - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 @@ -1788,7 +1788,7 @@ для количества - + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 @@ -1798,7 +1798,7 @@ Добавить цену - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 @@ -1809,7 +1809,7 @@ Редактировать %name% - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 @@ -1820,7 +1820,7 @@ Редактировать информацию о компоненте - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 @@ -1830,7 +1830,7 @@ Общие - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 @@ -1840,7 +1840,7 @@ Производитель - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 @@ -1850,7 +1850,7 @@ Расширенные - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 @@ -1860,7 +1860,7 @@ Склады - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 @@ -1870,7 +1870,7 @@ Вложения - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 @@ -1880,7 +1880,7 @@ Информация для заказа - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 @@ -1889,7 +1889,7 @@ Параметры - + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:64 Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 @@ -1899,7 +1899,7 @@ Комментарий - + Part-DB1\templates\Parts\edit\new_part.html.twig:8 Part-DB1\templates\Parts\edit\new_part.html.twig:8 @@ -1910,7 +1910,7 @@ Добавить новый компонент - + Part-DB1\templates\Parts\edit\_lots.html.twig:5 Part-DB1\templates\Parts\edit\_lots.html.twig:5 @@ -1920,7 +1920,7 @@ Удалить - + Part-DB1\templates\Parts\edit\_lots.html.twig:28 Part-DB1\templates\Parts\edit\_lots.html.twig:28 @@ -1930,7 +1930,7 @@ Добавить склад - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 @@ -1940,7 +1940,7 @@ Добавить дистрибьютора - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 @@ -1950,7 +1950,7 @@ Вы действительно хотите удалить эту цену? Это не может быть отменено. - + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:62 Part-DB1\templates\Parts\edit\_orderdetails.html.twig:61 @@ -1960,7 +1960,7 @@ Вы действительно хотите удалить эту информацию о дистрибьюторе? Это не может быть отменено! - + Part-DB1\templates\Parts\info\show_part_info.html.twig:4 Part-DB1\templates\Parts\info\show_part_info.html.twig:19 @@ -1974,7 +1974,7 @@ Детальная информация о компоненте - + Part-DB1\templates\Parts\info\show_part_info.html.twig:47 Part-DB1\templates\Parts\info\show_part_info.html.twig:47 @@ -1984,7 +1984,7 @@ Склады - + Part-DB1\templates\Parts\info\show_part_info.html.twig:56 Part-DB1\templates\Parts\lists\_info_card.html.twig:43 @@ -1999,7 +1999,7 @@ Комментарий - + Part-DB1\templates\Parts\info\show_part_info.html.twig:64 @@ -2008,7 +2008,7 @@ Параметры - + Part-DB1\templates\Parts\info\show_part_info.html.twig:74 Part-DB1\templates\Parts\info\show_part_info.html.twig:64 @@ -2019,7 +2019,7 @@ Вложения - + Part-DB1\templates\Parts\info\show_part_info.html.twig:83 Part-DB1\templates\Parts\info\show_part_info.html.twig:71 @@ -2030,7 +2030,7 @@ Информация о покупках - + Part-DB1\templates\Parts\info\show_part_info.html.twig:91 Part-DB1\templates\Parts\info\show_part_info.html.twig:78 @@ -2041,7 +2041,7 @@ История - + Part-DB1\templates\Parts\info\show_part_info.html.twig:97 Part-DB1\templates\_sidebar.html.twig:54 @@ -2060,7 +2060,7 @@ Инструменты - + Part-DB1\templates\Parts\info\show_part_info.html.twig:103 Part-DB1\templates\Parts\info\show_part_info.html.twig:90 @@ -2070,7 +2070,7 @@ Расширенная информ. - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 @@ -2080,7 +2080,7 @@ Имя - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 @@ -2090,7 +2090,7 @@ Тип вложения - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 @@ -2100,7 +2100,7 @@ Имя файла - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 @@ -2110,7 +2110,7 @@ Размер файла - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:54 @@ -2119,7 +2119,7 @@ Предпросмотр - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 @@ -2129,7 +2129,7 @@ Скачать - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 @@ -2140,7 +2140,7 @@ Пользователь создавший компонент - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 @@ -2151,10 +2151,10 @@ Unknown - Неизвестное + Неизвестный тип - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 @@ -2167,7 +2167,7 @@ Доступ запрещен - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 @@ -2178,7 +2178,7 @@ Пользователь последний редактировавший этот компонент - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 @@ -2188,7 +2188,7 @@ Избранное - + Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 @@ -2198,7 +2198,7 @@ Минимальное количество для заказа - + Part-DB1\templates\Parts\info\_main_infos.html.twig:8 Part-DB1\templates\_navbar_search.html.twig:46 @@ -2215,7 +2215,7 @@ Производитель - + Part-DB1\templates\Parts\info\_main_infos.html.twig:24 Part-DB1\templates\_navbar_search.html.twig:11 @@ -2227,7 +2227,7 @@ Имя - + Part-DB1\templates\Parts\info\_main_infos.html.twig:27 Part-DB1\templates\Parts\info\_main_infos.html.twig:27 @@ -2238,7 +2238,7 @@ Вернуться к текущей версии - + Part-DB1\templates\Parts\info\_main_infos.html.twig:32 Part-DB1\templates\_navbar_search.html.twig:19 @@ -2253,7 +2253,7 @@ Описание - + Part-DB1\templates\Parts\info\_main_infos.html.twig:34 Part-DB1\templates\_navbar_search.html.twig:15 @@ -2270,7 +2270,7 @@ Категория - + Part-DB1\templates\Parts\info\_main_infos.html.twig:39 Part-DB1\templates\Parts\info\_main_infos.html.twig:39 @@ -2282,7 +2282,7 @@ В наличии - + Part-DB1\templates\Parts\info\_main_infos.html.twig:41 Part-DB1\templates\Parts\info\_main_infos.html.twig:41 @@ -2294,7 +2294,7 @@ Минимально в наличии - + Part-DB1\templates\Parts\info\_main_infos.html.twig:45 Part-DB1\templates\_navbar_search.html.twig:52 @@ -2310,7 +2310,7 @@ Посадочное место - + Part-DB1\templates\Parts\info\_main_infos.html.twig:56 Part-DB1\templates\Parts\info\_main_infos.html.twig:59 @@ -2323,7 +2323,7 @@ Средняя цена - + Part-DB1\templates\Parts\info\_order_infos.html.twig:5 Part-DB1\templates\Parts\info\_order_infos.html.twig:5 @@ -2333,7 +2333,7 @@ Название - + Part-DB1\templates\Parts\info\_order_infos.html.twig:6 Part-DB1\templates\Parts\info\_order_infos.html.twig:6 @@ -2343,7 +2343,7 @@ Номер.комп. - + Part-DB1\templates\Parts\info\_order_infos.html.twig:28 Part-DB1\templates\Parts\info\_order_infos.html.twig:28 @@ -2353,7 +2353,7 @@ Миним. количество - + Part-DB1\templates\Parts\info\_order_infos.html.twig:29 Part-DB1\templates\Parts\info\_order_infos.html.twig:29 @@ -2363,7 +2363,7 @@ Цена - + Part-DB1\templates\Parts\info\_order_infos.html.twig:31 Part-DB1\templates\Parts\info\_order_infos.html.twig:31 @@ -2373,7 +2373,7 @@ Цена за единицу - + Part-DB1\templates\Parts\info\_order_infos.html.twig:71 Part-DB1\templates\Parts\info\_order_infos.html.twig:71 @@ -2383,7 +2383,7 @@ Редакт. - + Part-DB1\templates\Parts\info\_order_infos.html.twig:72 Part-DB1\templates\Parts\info\_order_infos.html.twig:72 @@ -2393,7 +2393,7 @@ Удалить - + Part-DB1\templates\Parts\info\_part_lots.html.twig:7 Part-DB1\templates\Parts\info\_part_lots.html.twig:6 @@ -2403,7 +2403,7 @@ Описание - + Part-DB1\templates\Parts\info\_part_lots.html.twig:8 Part-DB1\templates\Parts\info\_part_lots.html.twig:7 @@ -2413,7 +2413,7 @@ Место хранения - + Part-DB1\templates\Parts\info\_part_lots.html.twig:9 Part-DB1\templates\Parts\info\_part_lots.html.twig:8 @@ -2423,7 +2423,7 @@ Количество - + Part-DB1\templates\Parts\info\_part_lots.html.twig:24 Part-DB1\templates\Parts\info\_part_lots.html.twig:22 @@ -2433,7 +2433,7 @@ Место хранения неизвестно - + Part-DB1\templates\Parts\info\_part_lots.html.twig:31 Part-DB1\templates\Parts\info\_part_lots.html.twig:29 @@ -2443,7 +2443,7 @@ Наличие неизвестно - + Part-DB1\templates\Parts\info\_part_lots.html.twig:40 Part-DB1\templates\Parts\info\_part_lots.html.twig:38 @@ -2453,7 +2453,7 @@ Дата истечения - + Part-DB1\templates\Parts\info\_part_lots.html.twig:48 Part-DB1\templates\Parts\info\_part_lots.html.twig:46 @@ -2463,7 +2463,7 @@ Истекло - + Part-DB1\templates\Parts\info\_part_lots.html.twig:55 Part-DB1\templates\Parts\info\_part_lots.html.twig:53 @@ -2473,7 +2473,7 @@ Нужно пополнить - + Part-DB1\templates\Parts\info\_picture.html.twig:15 Part-DB1\templates\Parts\info\_picture.html.twig:15 @@ -2483,7 +2483,7 @@ Предыдущая картинка - + Part-DB1\templates\Parts\info\_picture.html.twig:19 Part-DB1\templates\Parts\info\_picture.html.twig:19 @@ -2493,7 +2493,7 @@ Следующая картинка - + Part-DB1\templates\Parts\info\_sidebar.html.twig:21 Part-DB1\templates\Parts\info\_sidebar.html.twig:21 @@ -2503,7 +2503,7 @@ Вес - + Part-DB1\templates\Parts\info\_sidebar.html.twig:30 Part-DB1\templates\Parts\info\_sidebar.html.twig:30 @@ -2513,7 +2513,7 @@ Нужно рассмотреть - + Part-DB1\templates\Parts\info\_sidebar.html.twig:39 Part-DB1\templates\Parts\info\_sidebar.html.twig:39 @@ -2523,7 +2523,7 @@ Избранное - + Part-DB1\templates\Parts\info\_sidebar.html.twig:47 Part-DB1\templates\Parts\info\_sidebar.html.twig:47 @@ -2533,7 +2533,7 @@ Больше не доступно - + Part-DB1\templates\Parts\info\_specifications.html.twig:10 @@ -2542,7 +2542,7 @@ Автоматически получено из описания - + Part-DB1\templates\Parts\info\_specifications.html.twig:15 @@ -2551,7 +2551,7 @@ Автоматически получено из комментария - + Part-DB1\templates\Parts\info\_tools.html.twig:6 Part-DB1\templates\Parts\info\_tools.html.twig:4 @@ -2562,7 +2562,7 @@ Редактировать компонент - + Part-DB1\templates\Parts\info\_tools.html.twig:16 Part-DB1\templates\Parts\info\_tools.html.twig:14 @@ -2573,7 +2573,7 @@ Клонировать компонент - + Part-DB1\templates\Parts\info\_tools.html.twig:24 Part-DB1\templates\Parts\lists\_action_bar.html.twig:4 @@ -2584,7 +2584,7 @@ Создать новый компонент - + Part-DB1\templates\Parts\info\_tools.html.twig:31 Part-DB1\templates\Parts\info\_tools.html.twig:29 @@ -2594,7 +2594,7 @@ Вы действительно хотите удалить этот компонент? - + Part-DB1\templates\Parts\info\_tools.html.twig:32 Part-DB1\templates\Parts\info\_tools.html.twig:30 @@ -2605,7 +2605,7 @@ Это не может быть отменено! - + Part-DB1\templates\Parts\info\_tools.html.twig:39 Part-DB1\templates\Parts\info\_tools.html.twig:37 @@ -2615,7 +2615,7 @@ Удалить компонент - + Part-DB1\templates\Parts\lists\all_list.html.twig:4 Part-DB1\templates\Parts\lists\all_list.html.twig:4 @@ -2625,7 +2625,7 @@ Все компоненты - + Part-DB1\templates\Parts\lists\category_list.html.twig:4 Part-DB1\templates\Parts\lists\category_list.html.twig:4 @@ -2635,7 +2635,7 @@ Компоненты с категорией - + Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 @@ -2645,7 +2645,7 @@ Компоненты с посадочным местом - + Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 @@ -2655,7 +2655,7 @@ Компоненты производителя - + Part-DB1\templates\Parts\lists\search_list.html.twig:4 Part-DB1\templates\Parts\lists\search_list.html.twig:4 @@ -2665,7 +2665,7 @@ Поиск компонентов - + Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 @@ -2675,7 +2675,7 @@ Компоненты хранилища - + Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 @@ -2685,7 +2685,7 @@ Компоненты поставщика - + Part-DB1\templates\Parts\lists\tags_list.html.twig:4 Part-DB1\templates\Parts\lists\tags_list.html.twig:4 @@ -2695,7 +2695,7 @@ Компоненты с меткой - + Part-DB1\templates\Parts\lists\_info_card.html.twig:22 Part-DB1\templates\Parts\lists\_info_card.html.twig:17 @@ -2705,7 +2705,7 @@ Общие - + Part-DB1\templates\Parts\lists\_info_card.html.twig:26 Part-DB1\templates\Parts\lists\_info_card.html.twig:20 @@ -2715,7 +2715,7 @@ Статистика - + Part-DB1\templates\Parts\lists\_info_card.html.twig:31 @@ -2724,7 +2724,7 @@ Вложения - + Part-DB1\templates\Parts\lists\_info_card.html.twig:37 @@ -2733,7 +2733,7 @@ Параметры - + Part-DB1\templates\Parts\lists\_info_card.html.twig:54 Part-DB1\templates\Parts\lists\_info_card.html.twig:30 @@ -2743,7 +2743,7 @@ Имя - + Part-DB1\templates\Parts\lists\_info_card.html.twig:58 Part-DB1\templates\Parts\lists\_info_card.html.twig:96 @@ -2755,7 +2755,7 @@ Родитель - + Part-DB1\templates\Parts\lists\_info_card.html.twig:70 Part-DB1\templates\Parts\lists\_info_card.html.twig:46 @@ -2765,7 +2765,7 @@ Редактировать - + Part-DB1\templates\Parts\lists\_info_card.html.twig:92 Part-DB1\templates\Parts\lists\_info_card.html.twig:63 @@ -2775,7 +2775,7 @@ Количество дочерних элементов - + Part-DB1\templates\security\2fa_base_form.html.twig:3 Part-DB1\templates\security\2fa_base_form.html.twig:5 @@ -2787,7 +2787,7 @@ Нужна двухфакторная аутентификация - + Part-DB1\templates\security\2fa_base_form.html.twig:39 Part-DB1\templates\security\2fa_base_form.html.twig:39 @@ -2797,7 +2797,7 @@ Это доверенный компьютер (если включено то двухфакторная аутентификация на этом компьютере больше не будет запрашиваться) - + Part-DB1\templates\security\2fa_base_form.html.twig:52 Part-DB1\templates\security\login.html.twig:58 @@ -2809,7 +2809,7 @@ Вход - + Part-DB1\templates\security\2fa_base_form.html.twig:53 Part-DB1\templates\security\U2F\u2f_login.html.twig:13 @@ -2823,7 +2823,7 @@ Выход - + Part-DB1\templates\security\2fa_form.html.twig:6 Part-DB1\templates\security\2fa_form.html.twig:6 @@ -2833,7 +2833,7 @@ код приложения Аутентификатор - + Part-DB1\templates\security\2fa_form.html.twig:10 Part-DB1\templates\security\2fa_form.html.twig:10 @@ -2843,7 +2843,7 @@ Введите 6-значный код из вашего приложения Аутентификатор или один из резервных кодов если приложение не доступно. - + Part-DB1\templates\security\login.html.twig:3 Part-DB1\templates\security\login.html.twig:3 @@ -2854,7 +2854,7 @@ Вход - + Part-DB1\templates\security\login.html.twig:7 Part-DB1\templates\security\login.html.twig:7 @@ -2865,7 +2865,7 @@ Вход - + Part-DB1\templates\security\login.html.twig:31 Part-DB1\templates\security\login.html.twig:31 @@ -2876,7 +2876,7 @@ Имя пользователя - + Part-DB1\templates\security\login.html.twig:34 Part-DB1\templates\security\login.html.twig:34 @@ -2887,7 +2887,7 @@ Имя пользователя - + Part-DB1\templates\security\login.html.twig:38 Part-DB1\templates\security\login.html.twig:38 @@ -2898,7 +2898,7 @@ Пароль - + Part-DB1\templates\security\login.html.twig:40 Part-DB1\templates\security\login.html.twig:40 @@ -2909,7 +2909,7 @@ Пароль - + Part-DB1\templates\security\login.html.twig:50 Part-DB1\templates\security\login.html.twig:50 @@ -2920,7 +2920,7 @@ Запомнить меня (включайте это только на личном компьютере) - + Part-DB1\templates\security\login.html.twig:64 Part-DB1\templates\security\login.html.twig:64 @@ -2930,7 +2930,7 @@ Забыл имя пользователя/пароль? - + Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 @@ -2940,7 +2940,7 @@ Установить новый пароль - + Part-DB1\templates\security\pw_reset_request.html.twig:5 Part-DB1\templates\security\pw_reset_request.html.twig:5 @@ -2950,7 +2950,7 @@ Запросить новый пароль - + Part-DB1\templates\security\U2F\u2f_login.html.twig:7 Part-DB1\templates\security\U2F\u2f_register.html.twig:10 @@ -2962,7 +2962,7 @@ Вы зашли на эту страницу используя небезопасный протокол HTTP, поэтому U2F скорее всего не будет работать (сообщение об ошибке: Неверный запрос). Попросите администратора настроить HTTPS если Вы хотите использовать ключи безопасности. - + Part-DB1\templates\security\U2F\u2f_login.html.twig:10 Part-DB1\templates\security\U2F\u2f_register.html.twig:22 @@ -2974,7 +2974,7 @@ Пожалуйста вставьте Ваш ключ безопасности и нажмите на нем кнопку! - + Part-DB1\templates\security\U2F\u2f_register.html.twig:3 Part-DB1\templates\security\U2F\u2f_register.html.twig:3 @@ -2984,7 +2984,7 @@ Добавить ключ безопасности - + Part-DB1\templates\security\U2F\u2f_register.html.twig:6 Part-DB1\templates\Users\_2fa_settings.html.twig:111 @@ -2996,7 +2996,7 @@ U2F/FIDO совместимый ключ (например YubiKey или NitroKey) предоставляет удобный и безопасный двухфакторный способ аутентификации. Здесь вы можете зарегистрировать свои ключи безопасности и, если Вас запросят пройти двухфакторную проверку, просто вставьте ключ в USB порт или поднесите его к устройству считывания NFC. - + Part-DB1\templates\security\U2F\u2f_register.html.twig:7 Part-DB1\templates\security\U2F\u2f_register.html.twig:7 @@ -3006,7 +3006,7 @@ Чтобы не утратить доступ в случае потери ключа мы рекомендуем зарегистрировать еще один как резервный и хранить его в безопасном месте! - + Part-DB1\templates\security\U2F\u2f_register.html.twig:16 Part-DB1\templates\security\U2F\u2f_register.html.twig:16 @@ -3016,7 +3016,7 @@ Отображаемое имя ключа (напр. Резервный) - + Part-DB1\templates\security\U2F\u2f_register.html.twig:19 Part-DB1\templates\security\U2F\u2f_register.html.twig:19 @@ -3026,7 +3026,7 @@ Добавить ключ безопасности - + Part-DB1\templates\security\U2F\u2f_register.html.twig:27 Part-DB1\templates\security\U2F\u2f_register.html.twig:27 @@ -3036,7 +3036,7 @@ Вернуться к настройкам - + Part-DB1\templates\Statistics\statistics.html.twig:5 Part-DB1\templates\Statistics\statistics.html.twig:8 @@ -3049,7 +3049,7 @@ Статистика - + Part-DB1\templates\Statistics\statistics.html.twig:14 Part-DB1\templates\Statistics\statistics.html.twig:14 @@ -3060,7 +3060,7 @@ Компоненты - + Part-DB1\templates\Statistics\statistics.html.twig:19 Part-DB1\templates\Statistics\statistics.html.twig:19 @@ -3071,7 +3071,7 @@ Структуры данных - + Part-DB1\templates\Statistics\statistics.html.twig:24 Part-DB1\templates\Statistics\statistics.html.twig:24 @@ -3082,7 +3082,7 @@ Вложения - + Part-DB1\templates\Statistics\statistics.html.twig:34 Part-DB1\templates\Statistics\statistics.html.twig:59 @@ -3097,7 +3097,7 @@ Свойство - + Part-DB1\templates\Statistics\statistics.html.twig:35 Part-DB1\templates\Statistics\statistics.html.twig:60 @@ -3112,7 +3112,7 @@ Значение - + Part-DB1\templates\Statistics\statistics.html.twig:40 Part-DB1\templates\Statistics\statistics.html.twig:40 @@ -3123,7 +3123,7 @@ Количество разных компонентов - + Part-DB1\templates\Statistics\statistics.html.twig:44 Part-DB1\templates\Statistics\statistics.html.twig:44 @@ -3134,7 +3134,7 @@ Сумма всех существующих запасов компонентов - + Part-DB1\templates\Statistics\statistics.html.twig:48 Part-DB1\templates\Statistics\statistics.html.twig:48 @@ -3145,7 +3145,7 @@ Количество компонентов с данными о стоимости - + Part-DB1\templates\Statistics\statistics.html.twig:65 Part-DB1\templates\Statistics\statistics.html.twig:65 @@ -3156,7 +3156,7 @@ Количество категорий - + Part-DB1\templates\Statistics\statistics.html.twig:69 Part-DB1\templates\Statistics\statistics.html.twig:69 @@ -3167,7 +3167,7 @@ Количество посадочных мест - + Part-DB1\templates\Statistics\statistics.html.twig:73 Part-DB1\templates\Statistics\statistics.html.twig:73 @@ -3178,7 +3178,7 @@ Количество производителей - + Part-DB1\templates\Statistics\statistics.html.twig:77 Part-DB1\templates\Statistics\statistics.html.twig:77 @@ -3189,7 +3189,7 @@ Количество хранилищ - + Part-DB1\templates\Statistics\statistics.html.twig:81 Part-DB1\templates\Statistics\statistics.html.twig:81 @@ -3200,7 +3200,7 @@ Количество поставщиков - + Part-DB1\templates\Statistics\statistics.html.twig:85 Part-DB1\templates\Statistics\statistics.html.twig:85 @@ -3211,7 +3211,7 @@ Количество валют - + Part-DB1\templates\Statistics\statistics.html.twig:89 Part-DB1\templates\Statistics\statistics.html.twig:89 @@ -3222,7 +3222,7 @@ Количество единиц измерений - + Part-DB1\templates\Statistics\statistics.html.twig:93 Part-DB1\templates\Statistics\statistics.html.twig:93 @@ -3233,7 +3233,7 @@ Количество устройств - + Part-DB1\templates\Statistics\statistics.html.twig:110 Part-DB1\templates\Statistics\statistics.html.twig:110 @@ -3244,7 +3244,7 @@ Количество типов вложений - + Part-DB1\templates\Statistics\statistics.html.twig:114 Part-DB1\templates\Statistics\statistics.html.twig:114 @@ -3255,7 +3255,7 @@ Общее количество вложений - + Part-DB1\templates\Statistics\statistics.html.twig:118 Part-DB1\templates\Statistics\statistics.html.twig:118 @@ -3266,7 +3266,7 @@ Число пользователей прикрепивших вложения - + Part-DB1\templates\Statistics\statistics.html.twig:122 Part-DB1\templates\Statistics\statistics.html.twig:122 @@ -3277,7 +3277,7 @@ Количество личных вложений - + Part-DB1\templates\Statistics\statistics.html.twig:126 Part-DB1\templates\Statistics\statistics.html.twig:126 @@ -3288,7 +3288,7 @@ Количество вложений доступных по внешним ссылкам (URL) - + Part-DB1\templates\Users\backup_codes.html.twig:3 Part-DB1\templates\Users\backup_codes.html.twig:9 @@ -3300,7 +3300,7 @@ Резервные коды - + Part-DB1\templates\Users\backup_codes.html.twig:12 Part-DB1\templates\Users\backup_codes.html.twig:12 @@ -3310,7 +3310,7 @@ Распечатайте эти коды и храните их в безопасном месте! - + Part-DB1\templates\Users\backup_codes.html.twig:13 Part-DB1\templates\Users\backup_codes.html.twig:13 @@ -3320,7 +3320,7 @@ Если Вы больше не можете использовать приложение Аутентификатор (потеряли смартфон, утратили данные и т.п.) то используйте один из этих кодов чтобы получить доступ к своему аккаунту и возможности заново настроить приложение Аутентификатор. Каждый из этих кодов может быть использован только один раз, после чего мы рекомендуем уничтожить использованные коды. Храните коды в безопасном месте, в противном случае любой кто получит к ним доступ сможет зайти в Ваш аккаунт. - + Part-DB1\templates\Users\backup_codes.html.twig:16 Part-DB1\templates\Users\backup_codes.html.twig:16 @@ -3330,7 +3330,7 @@ Имя пользователя - + Part-DB1\templates\Users\backup_codes.html.twig:29 Part-DB1\templates\Users\backup_codes.html.twig:29 @@ -3340,7 +3340,7 @@ Дата генерации страницы %date% - + Part-DB1\templates\Users\backup_codes.html.twig:32 Part-DB1\templates\Users\backup_codes.html.twig:32 @@ -3350,7 +3350,7 @@ Печать - + Part-DB1\templates\Users\backup_codes.html.twig:35 Part-DB1\templates\Users\backup_codes.html.twig:35 @@ -3360,7 +3360,7 @@ Скопировать в буфер обмена - + Part-DB1\templates\Users\user_info.html.twig:3 Part-DB1\templates\Users\user_info.html.twig:6 @@ -3377,7 +3377,7 @@ Информация о пользователе - + Part-DB1\templates\Users\user_info.html.twig:18 Part-DB1\src\Form\UserSettingsType.php:77 @@ -3391,7 +3391,7 @@ Имя - + Part-DB1\templates\Users\user_info.html.twig:24 Part-DB1\src\Form\UserSettingsType.php:82 @@ -3405,7 +3405,7 @@ Фамилия - + Part-DB1\templates\Users\user_info.html.twig:30 Part-DB1\src\Form\UserSettingsType.php:92 @@ -3419,7 +3419,7 @@ Email - + Part-DB1\templates\Users\user_info.html.twig:37 Part-DB1\src\Form\UserSettingsType.php:87 @@ -3433,7 +3433,7 @@ Отдел - + Part-DB1\templates\Users\user_info.html.twig:47 Part-DB1\src\Form\UserSettingsType.php:73 @@ -3447,7 +3447,7 @@ Имя пользователя - + Part-DB1\templates\Users\user_info.html.twig:53 Part-DB1\src\Services\ElementTypeNameGenerator.php:93 @@ -3460,7 +3460,7 @@ Группа - + Part-DB1\templates\Users\user_info.html.twig:67 Part-DB1\templates\Users\user_info.html.twig:67 @@ -3470,7 +3470,7 @@ Разрешения - + Part-DB1\templates\Users\user_settings.html.twig:3 Part-DB1\templates\Users\user_settings.html.twig:6 @@ -3487,7 +3487,7 @@ Настройки пользователя - + Part-DB1\templates\Users\user_settings.html.twig:18 Part-DB1\templates\Users\user_settings.html.twig:18 @@ -3498,7 +3498,7 @@ Личные данные - + Part-DB1\templates\Users\user_settings.html.twig:22 Part-DB1\templates\Users\user_settings.html.twig:22 @@ -3509,7 +3509,7 @@ Конфигурация - + Part-DB1\templates\Users\user_settings.html.twig:55 Part-DB1\templates\Users\user_settings.html.twig:55 @@ -3520,7 +3520,7 @@ Сменить пароль - + Part-DB1\templates\Users\_2fa_settings.html.twig:6 Part-DB1\templates\Users\_2fa_settings.html.twig:6 @@ -3530,7 +3530,7 @@ Двухфакторная аутентификация - + Part-DB1\templates\Users\_2fa_settings.html.twig:13 Part-DB1\templates\Users\_2fa_settings.html.twig:13 @@ -3540,7 +3540,7 @@ приложение Аутентификатор - + Part-DB1\templates\Users\_2fa_settings.html.twig:17 Part-DB1\templates\Users\_2fa_settings.html.twig:17 @@ -3550,7 +3550,7 @@ Резервные коды - + Part-DB1\templates\Users\_2fa_settings.html.twig:21 Part-DB1\templates\Users\_2fa_settings.html.twig:21 @@ -3560,7 +3560,7 @@ Ключи безопасности (U2F) - + Part-DB1\templates\Users\_2fa_settings.html.twig:25 Part-DB1\templates\Users\_2fa_settings.html.twig:25 @@ -3570,7 +3570,7 @@ Доверенные устройства - + Part-DB1\templates\Users\_2fa_settings.html.twig:33 Part-DB1\templates\Users\_2fa_settings.html.twig:33 @@ -3580,7 +3580,7 @@ Вы действительно хотите отключить приложение Аутентификатор? - + Part-DB1\templates\Users\_2fa_settings.html.twig:33 Part-DB1\templates\Users\_2fa_settings.html.twig:33 @@ -3591,7 +3591,7 @@ Также отметим что без двухфакторной аутентификации Ваш аккаунт хуже защищен от злоумышленников! - + Part-DB1\templates\Users\_2fa_settings.html.twig:39 Part-DB1\templates\Users\_2fa_settings.html.twig:39 @@ -3601,7 +3601,7 @@ приложение Аутентификатор выключено! - + Part-DB1\templates\Users\_2fa_settings.html.twig:48 Part-DB1\templates\Users\_2fa_settings.html.twig:48 @@ -3611,7 +3611,7 @@ Скачать приложение для аутентификации можно по ссылке (e.g. <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Google Authenticator</a> oder <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=org.fedorahosted.freeotp">FreeOTP Authenticator</a>) - + Part-DB1\templates\Users\_2fa_settings.html.twig:49 Part-DB1\templates\Users\_2fa_settings.html.twig:49 @@ -3621,7 +3621,7 @@ Считать QR код используя приложение или ввести данные вручную - + Part-DB1\templates\Users\_2fa_settings.html.twig:50 Part-DB1\templates\Users\_2fa_settings.html.twig:50 @@ -3631,7 +3631,7 @@ Введите сгенерированный код в поле внизу и нажмите на "Подтвердить" - + Part-DB1\templates\Users\_2fa_settings.html.twig:51 Part-DB1\templates\Users\_2fa_settings.html.twig:51 @@ -3641,7 +3641,7 @@ Распечатать резервные коды и сохранить из в безопасном месте - + Part-DB1\templates\Users\_2fa_settings.html.twig:58 Part-DB1\templates\Users\_2fa_settings.html.twig:58 @@ -3651,7 +3651,7 @@ Настроить вручную - + Part-DB1\templates\Users\_2fa_settings.html.twig:62 Part-DB1\templates\Users\_2fa_settings.html.twig:62 @@ -3661,7 +3661,7 @@ Тип - + Part-DB1\templates\Users\_2fa_settings.html.twig:63 Part-DB1\templates\Users\_2fa_settings.html.twig:63 @@ -3671,7 +3671,7 @@ Имя пользователя - + Part-DB1\templates\Users\_2fa_settings.html.twig:64 Part-DB1\templates\Users\_2fa_settings.html.twig:64 @@ -3681,7 +3681,7 @@ Секрет - + Part-DB1\templates\Users\_2fa_settings.html.twig:65 Part-DB1\templates\Users\_2fa_settings.html.twig:65 @@ -3691,7 +3691,7 @@ Количество цифр - + Part-DB1\templates\Users\_2fa_settings.html.twig:74 Part-DB1\templates\Users\_2fa_settings.html.twig:74 @@ -3701,7 +3701,7 @@ Приложения Аутентификатор разрешено - + Part-DB1\templates\Users\_2fa_settings.html.twig:83 Part-DB1\templates\Users\_2fa_settings.html.twig:83 @@ -3711,7 +3711,7 @@ Резервные коды запрещены. Установите приложение чтобы разрешить резервные коды. - + Part-DB1\templates\Users\_2fa_settings.html.twig:84 Part-DB1\templates\Users\_2fa_settings.html.twig:92 @@ -3723,7 +3723,7 @@ Вы можете использовать эти резервные коды для доступа в ваш аккаунт если вы потеряли устройство на котором установлено приложение Аутентификатор. Распечатайте коды и храните их в безопасном месте. - + Part-DB1\templates\Users\_2fa_settings.html.twig:88 Part-DB1\templates\Users\_2fa_settings.html.twig:88 @@ -3733,7 +3733,7 @@ Точно хотите сбросить коды? - + Part-DB1\templates\Users\_2fa_settings.html.twig:88 Part-DB1\templates\Users\_2fa_settings.html.twig:88 @@ -3744,7 +3744,7 @@ Не забудьте распечатать новы кода и хранить их в безопасном месте! - + Part-DB1\templates\Users\_2fa_settings.html.twig:91 Part-DB1\templates\Users\_2fa_settings.html.twig:91 @@ -3754,7 +3754,7 @@ Резервные коды разрешены - + Part-DB1\templates\Users\_2fa_settings.html.twig:99 Part-DB1\templates\Users\_2fa_settings.html.twig:99 @@ -3764,7 +3764,7 @@ Показать резервные коды - + Part-DB1\templates\Users\_2fa_settings.html.twig:114 Part-DB1\templates\Users\_2fa_settings.html.twig:114 @@ -3774,7 +3774,7 @@ Зарегистрировать ключи безопасности - + Part-DB1\templates\Users\_2fa_settings.html.twig:115 Part-DB1\templates\Users\_2fa_settings.html.twig:115 @@ -3784,7 +3784,7 @@ Точно хотите удалить этот ключ безопасности? - + Part-DB1\templates\Users\_2fa_settings.html.twig:116 Part-DB1\templates\Users\_2fa_settings.html.twig:116 @@ -3794,7 +3794,7 @@ Если вы удалите этот ключ то вы больше не сможете использовать его для входа. Если не останется зарегистрированных ключей то двухфакторная аутентификация будет запрещена. - + Part-DB1\templates\Users\_2fa_settings.html.twig:123 Part-DB1\templates\Users\_2fa_settings.html.twig:123 @@ -3804,7 +3804,7 @@ Имя ключа - + Part-DB1\templates\Users\_2fa_settings.html.twig:124 Part-DB1\templates\Users\_2fa_settings.html.twig:124 @@ -3814,7 +3814,7 @@ Дата регистрации - + Part-DB1\templates\Users\_2fa_settings.html.twig:134 Part-DB1\templates\Users\_2fa_settings.html.twig:134 @@ -3824,7 +3824,7 @@ Удалить ключ - + Part-DB1\templates\Users\_2fa_settings.html.twig:141 Part-DB1\templates\Users\_2fa_settings.html.twig:141 @@ -3834,7 +3834,7 @@ Еще нет зарегистрированных ключей. - + Part-DB1\templates\Users\_2fa_settings.html.twig:144 Part-DB1\templates\Users\_2fa_settings.html.twig:144 @@ -3844,7 +3844,7 @@ Зарегистрировать новый ключ безопасности - + Part-DB1\templates\Users\_2fa_settings.html.twig:148 Part-DB1\templates\Users\_2fa_settings.html.twig:148 @@ -3855,7 +3855,7 @@ Если что-то пошло не так или этот компьютер перестал быть доверенным, вы можете сбросить здесь статус <i>ВСЕХ</i> компьютеров. - + Part-DB1\templates\Users\_2fa_settings.html.twig:149 Part-DB1\templates\Users\_2fa_settings.html.twig:149 @@ -3865,7 +3865,7 @@ Точно хотите удалить все доверенные компьютеры? - + Part-DB1\templates\Users\_2fa_settings.html.twig:150 Part-DB1\templates\Users\_2fa_settings.html.twig:150 @@ -3875,7 +3875,7 @@ Вам снова нужно будет использовать двухфакторную аутентификацию на всех компьютерах. Убедитесь что у вас есть на руках устройство для двухфакторного подтверждения. - + Part-DB1\templates\Users\_2fa_settings.html.twig:154 Part-DB1\templates\Users\_2fa_settings.html.twig:154 @@ -3885,7 +3885,7 @@ Сбросить доверенные устройства - + Part-DB1\templates\_navbar.html.twig:4 Part-DB1\templates\_navbar.html.twig:4 @@ -3896,7 +3896,7 @@ Переключить боковую панель - + Part-DB1\templates\_navbar.html.twig:22 @@ -3905,7 +3905,7 @@ Сканер - + Part-DB1\templates\_navbar.html.twig:38 Part-DB1\templates\_navbar.html.twig:36 @@ -3916,7 +3916,7 @@ Вошел как - + Part-DB1\templates\_navbar.html.twig:44 Part-DB1\templates\_navbar.html.twig:42 @@ -3927,7 +3927,7 @@ Вход - + Part-DB1\templates\_navbar.html.twig:50 Part-DB1\templates\_navbar.html.twig:48 @@ -3937,7 +3937,7 @@ Темный режим - + Part-DB1\templates\_navbar.html.twig:54 Part-DB1\src\Form\UserSettingsType.php:97 @@ -3951,7 +3951,7 @@ Выбрать язык - + Part-DB1\templates\_navbar_search.html.twig:4 Part-DB1\templates\_navbar_search.html.twig:4 @@ -3962,7 +3962,7 @@ Опции поиска - + Part-DB1\templates\_navbar_search.html.twig:23 @@ -3971,7 +3971,7 @@ Метки - + Part-DB1\templates\_navbar_search.html.twig:27 Part-DB1\src\Form\LabelOptionsType.php:68 @@ -3986,7 +3986,7 @@ Место хранения - + Part-DB1\templates\_navbar_search.html.twig:36 Part-DB1\templates\_navbar_search.html.twig:31 @@ -3997,7 +3997,7 @@ Ном.заказа - + Part-DB1\templates\_navbar_search.html.twig:40 Part-DB1\src\Services\ElementTypeNameGenerator.php:89 @@ -4010,7 +4010,7 @@ Поставщик - + Part-DB1\templates\_navbar_search.html.twig:57 Part-DB1\templates\_navbar_search.html.twig:52 @@ -4018,10 +4018,10 @@ search.deactivateBarcode - Деакт. Штрихкод + Деактивировать штрих-код - + Part-DB1\templates\_navbar_search.html.twig:61 Part-DB1\templates\_navbar_search.html.twig:56 @@ -4032,7 +4032,7 @@ Соответствие рег.выраж. - + Part-DB1\templates\_navbar_search.html.twig:68 Part-DB1\templates\_navbar_search.html.twig:62 @@ -4042,7 +4042,7 @@ Поехали! - + Part-DB1\templates\_sidebar.html.twig:37 Part-DB1\templates\_sidebar.html.twig:12 @@ -4058,7 +4058,7 @@ Проекты - + Part-DB1\templates\_sidebar.html.twig:2 Part-DB1\templates\_sidebar.html.twig:2 @@ -4071,7 +4071,7 @@ Действия - + Part-DB1\templates\_sidebar.html.twig:6 Part-DB1\templates\_sidebar.html.twig:6 @@ -4084,7 +4084,7 @@ Источник данных - + Part-DB1\templates\_sidebar.html.twig:10 Part-DB1\templates\_sidebar.html.twig:10 @@ -4097,7 +4097,7 @@ Производители - + Part-DB1\templates\_sidebar.html.twig:11 Part-DB1\templates\_sidebar.html.twig:11 @@ -4110,7 +4110,7 @@ Поставщики - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:213 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:293 @@ -4126,7 +4126,7 @@ Не удалось скачать внешнее вложение. - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:222 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:190 @@ -4136,7 +4136,7 @@ Изменения успешно сохранены. - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:231 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:196 @@ -4146,7 +4146,7 @@ Изменения не могут быть сохранены! Проверьте введенные данные! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:302 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:252 @@ -4156,7 +4156,7 @@ Элемент создан. - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:308 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:258 @@ -4166,7 +4166,7 @@ Не могу создать элемент. Проверьте введенные данные! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:399 Part-DB1\src\Controller\AdminPages\BaseAdminController.php:352 @@ -4177,7 +4177,7 @@ Элемент удален! - + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:401 Part-DB1\src\Controller\UserController.php:109 @@ -4193,7 +4193,7 @@ CSFR жетон неверен. Перегрузите эту страницу или свяжитесь с администратором если это сообщение остаётся на экране. - + Part-DB1\src\Controller\LabelController.php:125 @@ -4202,7 +4202,7 @@ Ничего не найдено - + Part-DB1\src\Controller\LogController.php:149 Part-DB1\src\Controller\LogController.php:154 @@ -4213,7 +4213,7 @@ Этот элемент не найден в базе! - + Part-DB1\src\Controller\LogController.php:156 Part-DB1\src\Controller\LogController.php:160 @@ -4224,7 +4224,7 @@ Состояние успешно возвращено. - + Part-DB1\src\Controller\LogController.php:176 Part-DB1\src\Controller\LogController.php:180 @@ -4235,7 +4235,7 @@ Элемент успешно возвращен. - + Part-DB1\src\Controller\LogController.php:178 Part-DB1\src\Controller\LogController.php:182 @@ -4246,7 +4246,7 @@ Элемент уже был возвращен! - + Part-DB1\src\Controller\LogController.php:185 Part-DB1\src\Controller\LogController.php:189 @@ -4257,7 +4257,7 @@ Элемент успешно удален. - + Part-DB1\src\Controller\LogController.php:187 Part-DB1\src\Controller\LogController.php:191 @@ -4268,7 +4268,7 @@ Элемент уже был удален! - + Part-DB1\src\Controller\LogController.php:194 Part-DB1\src\Controller\LogController.php:198 @@ -4279,7 +4279,7 @@ Откат изменений завершен успешно! - + Part-DB1\src\Controller\LogController.php:196 Part-DB1\src\Controller\LogController.php:200 @@ -4290,7 +4290,7 @@ Чтобы откатить это изменение вам нужно вернуть элемент! - + Part-DB1\src\Controller\LogController.php:199 Part-DB1\src\Controller\LogController.php:203 @@ -4301,7 +4301,7 @@ Эта запись в логах не может быть возвращена! - + Part-DB1\src\Controller\PartController.php:182 Part-DB1\src\Controller\PartController.php:182 @@ -4312,7 +4312,7 @@ Изменения сохранены! - + Part-DB1\src\Controller\PartController.php:186 Part-DB1\src\Controller\PartController.php:186 @@ -4322,7 +4322,7 @@ Ошибка при сохранении: проверьте введенные данные! - + Part-DB1\src\Controller\PartController.php:216 Part-DB1\src\Controller\PartController.php:219 @@ -4332,7 +4332,7 @@ Компонент успешно удален. - + Part-DB1\src\Controller\PartController.php:302 Part-DB1\src\Controller\PartController.php:277 @@ -4345,7 +4345,7 @@ Компонент создан! - + Part-DB1\src\Controller\PartController.php:308 Part-DB1\src\Controller\PartController.php:283 @@ -4355,7 +4355,7 @@ Пожалуйста проверьте введенные данные! - + Part-DB1\src\Controller\ScanController.php:68 Part-DB1\src\Controller\ScanController.php:90 @@ -4365,7 +4365,7 @@ По данному штрихкоду совпадений не найдено. - + Part-DB1\src\Controller\ScanController.php:71 @@ -4374,7 +4374,7 @@ Неизвестный формат! - + Part-DB1\src\Controller\ScanController.php:86 @@ -4383,7 +4383,7 @@ Элемент найден. - + Part-DB1\src\Controller\SecurityController.php:114 Part-DB1\src\Controller\SecurityController.php:109 @@ -4393,7 +4393,7 @@ Имя пользователя / Email - + Part-DB1\src\Controller\SecurityController.php:131 Part-DB1\src\Controller\SecurityController.php:126 @@ -4403,7 +4403,7 @@ Запрос на сброс пароля прошел успешно! Проверьте почтовый ящик для дальнейших инструкций. - + Part-DB1\src\Controller\SecurityController.php:162 Part-DB1\src\Controller\SecurityController.php:160 @@ -4413,7 +4413,7 @@ Имя пользователя - + Part-DB1\src\Controller\SecurityController.php:165 Part-DB1\src\Controller\SecurityController.php:163 @@ -4423,7 +4423,7 @@ Жетон - + Part-DB1\src\Controller\SecurityController.php:194 Part-DB1\src\Controller\SecurityController.php:192 @@ -4433,7 +4433,7 @@ Имя пользователя или Жетон неверные! Проверьте введенные данные. - + Part-DB1\src\Controller\SecurityController.php:196 Part-DB1\src\Controller\SecurityController.php:194 @@ -4443,7 +4443,7 @@ Пароль успешно сброшен. Теперь вы можете зайти используя новый пароль. - + Part-DB1\src\Controller\UserController.php:107 Part-DB1\src\Controller\UserController.php:99 @@ -4453,7 +4453,7 @@ Все двухфакторные способы аутентификации успешно запрещены. - + Part-DB1\src\Controller\UserSettingsController.php:101 Part-DB1\src\Controller\UserSettingsController.php:92 @@ -4463,7 +4463,7 @@ Нет разрешенных резервных кодов! - + Part-DB1\src\Controller\UserSettingsController.php:138 Part-DB1\src\Controller\UserSettingsController.php:132 @@ -4473,7 +4473,7 @@ Для этого ID нет привязанных ключей безопасности. - + Part-DB1\src\Controller\UserSettingsController.php:145 Part-DB1\src\Controller\UserSettingsController.php:139 @@ -4483,7 +4483,7 @@ Вы не можете удалять ключи безопасности других пользователей! - + Part-DB1\src\Controller\UserSettingsController.php:153 Part-DB1\src\Controller\UserSettingsController.php:147 @@ -4493,7 +4493,7 @@ Ключ безопасности успешно удален. - + Part-DB1\src\Controller\UserSettingsController.php:188 Part-DB1\src\Controller\UserSettingsController.php:180 @@ -4503,7 +4503,7 @@ Доверенные устройства успешно сброшены. - + Part-DB1\src\Controller\UserSettingsController.php:235 Part-DB1\src\Controller\UserSettingsController.php:226 @@ -4514,7 +4514,7 @@ Настройки сохранены! - + Part-DB1\src\Controller\UserSettingsController.php:297 Part-DB1\src\Controller\UserSettingsController.php:288 @@ -4525,7 +4525,7 @@ Пароль изменен! - + Part-DB1\src\Controller\UserSettingsController.php:317 Part-DB1\src\Controller\UserSettingsController.php:306 @@ -4535,7 +4535,7 @@ Приложение Аутентификатор успешно активировано! - + Part-DB1\src\Controller\UserSettingsController.php:328 Part-DB1\src\Controller\UserSettingsController.php:315 @@ -4545,7 +4545,7 @@ Приложение Аутентификатор успешно запрещено! - + Part-DB1\src\Controller\UserSettingsController.php:346 Part-DB1\src\Controller\UserSettingsController.php:332 @@ -4555,7 +4555,7 @@ Новые резервные коды успешно сгенерированы. - + Part-DB1\src\DataTables\AttachmentDataTable.php:148 Part-DB1\src\DataTables\AttachmentDataTable.php:148 @@ -4565,7 +4565,7 @@ Имя файла - + Part-DB1\src\DataTables\AttachmentDataTable.php:153 Part-DB1\src\DataTables\AttachmentDataTable.php:153 @@ -4575,7 +4575,7 @@ Размер файла - + Part-DB1\src\DataTables\AttachmentDataTable.php:183 Part-DB1\src\DataTables\AttachmentDataTable.php:191 @@ -4595,7 +4595,7 @@ истина - + Part-DB1\src\DataTables\AttachmentDataTable.php:184 Part-DB1\src\DataTables\AttachmentDataTable.php:192 @@ -4617,7 +4617,7 @@ ложь - + Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:128 Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:119 @@ -4627,7 +4627,7 @@ Объект удален - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:57 Part-DB1\src\DataTables\Column\RevertLogColumn.php:60 @@ -4638,7 +4638,7 @@ Вернуть элемент - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:63 Part-DB1\src\DataTables\Column\RevertLogColumn.php:66 @@ -4649,7 +4649,7 @@ Откатить изменение - + Part-DB1\src\DataTables\Column\RevertLogColumn.php:83 Part-DB1\src\DataTables\Column\RevertLogColumn.php:86 @@ -4660,7 +4660,7 @@ Вернуть состояние элемента на данный момент - + Part-DB1\src\DataTables\LogDataTable.php:173 Part-DB1\src\DataTables\LogDataTable.php:161 @@ -4670,7 +4670,7 @@ ID - + Part-DB1\src\DataTables\LogDataTable.php:178 Part-DB1\src\DataTables\LogDataTable.php:166 @@ -4680,7 +4680,7 @@ Время события - + Part-DB1\src\DataTables\LogDataTable.php:183 Part-DB1\src\DataTables\LogDataTable.php:171 @@ -4690,7 +4690,7 @@ Тип - + Part-DB1\src\DataTables\LogDataTable.php:191 Part-DB1\src\DataTables\LogDataTable.php:179 @@ -4700,7 +4700,7 @@ Уровень - + Part-DB1\src\DataTables\LogDataTable.php:200 Part-DB1\src\DataTables\LogDataTable.php:188 @@ -4710,7 +4710,7 @@ Пользователь - + Part-DB1\src\DataTables\LogDataTable.php:213 Part-DB1\src\DataTables\LogDataTable.php:201 @@ -4720,7 +4720,7 @@ Тип объекта - + Part-DB1\src\DataTables\LogDataTable.php:226 Part-DB1\src\DataTables\LogDataTable.php:214 @@ -4730,7 +4730,7 @@ Объект - + Part-DB1\src\DataTables\LogDataTable.php:231 Part-DB1\src\DataTables\LogDataTable.php:218 @@ -4741,7 +4741,7 @@ Доп-но - + Part-DB1\src\DataTables\PartsDataTable.php:168 Part-DB1\src\DataTables\PartsDataTable.php:116 @@ -4751,7 +4751,7 @@ Имя - + Part-DB1\src\DataTables\PartsDataTable.php:178 Part-DB1\src\DataTables\PartsDataTable.php:126 @@ -4761,7 +4761,7 @@ ID - + Part-DB1\src\DataTables\PartsDataTable.php:182 Part-DB1\src\DataTables\PartsDataTable.php:130 @@ -4771,7 +4771,7 @@ Описание - + Part-DB1\src\DataTables\PartsDataTable.php:185 Part-DB1\src\DataTables\PartsDataTable.php:133 @@ -4781,7 +4781,7 @@ Категория - + Part-DB1\src\DataTables\PartsDataTable.php:190 Part-DB1\src\DataTables\PartsDataTable.php:138 @@ -4791,7 +4791,7 @@ Посад.место - + Part-DB1\src\DataTables\PartsDataTable.php:194 Part-DB1\src\DataTables\PartsDataTable.php:142 @@ -4801,7 +4801,7 @@ Производитель - + Part-DB1\src\DataTables\PartsDataTable.php:197 Part-DB1\src\DataTables\PartsDataTable.php:145 @@ -4811,7 +4811,7 @@ Хранилища - + Part-DB1\src\DataTables\PartsDataTable.php:216 Part-DB1\src\DataTables\PartsDataTable.php:164 @@ -4821,7 +4821,7 @@ Количество - + Part-DB1\src\DataTables\PartsDataTable.php:224 Part-DB1\src\DataTables\PartsDataTable.php:172 @@ -4831,7 +4831,7 @@ Мин. Количество - + Part-DB1\src\DataTables\PartsDataTable.php:232 Part-DB1\src\DataTables\PartsDataTable.php:180 @@ -4841,7 +4841,7 @@ Единица измерения - + Part-DB1\src\DataTables\PartsDataTable.php:236 Part-DB1\src\DataTables\PartsDataTable.php:184 @@ -4851,7 +4851,7 @@ Дата добавления - + Part-DB1\src\DataTables\PartsDataTable.php:240 Part-DB1\src\DataTables\PartsDataTable.php:188 @@ -4861,7 +4861,7 @@ Дата последнего изменения - + Part-DB1\src\DataTables\PartsDataTable.php:244 Part-DB1\src\DataTables\PartsDataTable.php:192 @@ -4871,7 +4871,7 @@ Требует рассмотрения - + Part-DB1\src\DataTables\PartsDataTable.php:251 Part-DB1\src\DataTables\PartsDataTable.php:199 @@ -4881,7 +4881,7 @@ Избранное - + Part-DB1\src\DataTables\PartsDataTable.php:258 Part-DB1\src\DataTables\PartsDataTable.php:206 @@ -4891,7 +4891,7 @@ Статус - + Part-DB1\src\DataTables\PartsDataTable.php:260 Part-DB1\src\DataTables\PartsDataTable.php:262 @@ -4905,7 +4905,7 @@ Неизвестно - + Part-DB1\src\DataTables\PartsDataTable.php:263 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4917,7 +4917,7 @@ Заявлено - + Part-DB1\src\DataTables\PartsDataTable.php:264 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4929,7 +4929,7 @@ Активно - + Part-DB1\src\DataTables\PartsDataTable.php:265 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4941,7 +4941,7 @@ Не рекомендовано для новых дизайнов - + Part-DB1\src\DataTables\PartsDataTable.php:266 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4953,7 +4953,7 @@ Окончание срока службы - + Part-DB1\src\DataTables\PartsDataTable.php:267 Part-DB1\src\Form\Part\PartBaseType.php:90 @@ -4965,7 +4965,7 @@ Прекращено - + Part-DB1\src\DataTables\PartsDataTable.php:271 Part-DB1\src\DataTables\PartsDataTable.php:219 @@ -4975,7 +4975,7 @@ MPN - + Part-DB1\src\DataTables\PartsDataTable.php:275 Part-DB1\src\DataTables\PartsDataTable.php:223 @@ -4985,7 +4985,7 @@ Вес - + Part-DB1\src\DataTables\PartsDataTable.php:279 Part-DB1\src\DataTables\PartsDataTable.php:227 @@ -4995,7 +4995,7 @@ Метки - + Part-DB1\src\DataTables\PartsDataTable.php:283 Part-DB1\src\DataTables\PartsDataTable.php:231 @@ -5005,7 +5005,7 @@ Вложения - + Part-DB1\src\EventSubscriber\UserSystem\LoginSuccessSubscriber.php:82 Part-DB1\src\EventSubscriber\LoginSuccessListener.php:82 @@ -5015,7 +5015,7 @@ Успешный вход - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5026,7 +5026,7 @@ JSON - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5037,7 +5037,7 @@ XML - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5048,7 +5048,7 @@ CSV - + Part-DB1\src\Form\AdminPages\ImportType.php:77 Part-DB1\src\Form\AdminPages\ImportType.php:77 @@ -5059,7 +5059,7 @@ YAML - + Part-DB1\src\Form\AdminPages\ImportType.php:124 Part-DB1\src\Form\AdminPages\ImportType.php:124 @@ -5069,7 +5069,7 @@ Когда эта опция включена весь процесс импорта прерывается в случае обнаружения неверных данных в любой записи. Если выключена то записи с неверными данными будут игнорированы а все прочие успешно импортированы. - + Part-DB1\src\Form\AdminPages\ImportType.php:86 Part-DB1\src\Form\AdminPages\ImportType.php:86 @@ -5080,7 +5080,7 @@ Разделитель CSV - + Part-DB1\src\Form\AdminPages\ImportType.php:93 Part-DB1\src\Form\AdminPages\ImportType.php:93 @@ -5091,7 +5091,7 @@ Родительский элемент - + Part-DB1\src\Form\AdminPages\ImportType.php:101 Part-DB1\src\Form\AdminPages\ImportType.php:101 @@ -5102,7 +5102,7 @@ Файл - + Part-DB1\src\Form\AdminPages\ImportType.php:111 Part-DB1\src\Form\AdminPages\ImportType.php:111 @@ -5113,7 +5113,7 @@ Создавать дочерние элементы при импорте - + Part-DB1\src\Form\AdminPages\ImportType.php:120 Part-DB1\src\Form\AdminPages\ImportType.php:120 @@ -5124,7 +5124,7 @@ Прерывать при неверных данных - + Part-DB1\src\Form\AdminPages\ImportType.php:132 Part-DB1\src\Form\AdminPages\ImportType.php:132 @@ -5135,7 +5135,7 @@ Импорт - + Part-DB1\src\Form\AttachmentFormType.php:113 Part-DB1\src\Form\AttachmentFormType.php:109 @@ -5145,7 +5145,7 @@ Вложение отмеченное как личное может быть просмотрено только пользователем с соответствующим разрешением. Если это включено то миниатюра не формируется и доступ к файлу менее производителен. - + Part-DB1\src\Form\AttachmentFormType.php:127 Part-DB1\src\Form\AttachmentFormType.php:123 @@ -5155,7 +5155,7 @@ Здесь вы можете задать url для внешнего файла или указать ключевое слово по которому будет произведен поиск в базе данных (например в базе посадочных мест) - + Part-DB1\src\Form\AttachmentFormType.php:82 Part-DB1\src\Form\AttachmentFormType.php:79 @@ -5165,7 +5165,7 @@ Имя - + Part-DB1\src\Form\AttachmentFormType.php:85 Part-DB1\src\Form\AttachmentFormType.php:82 @@ -5175,7 +5175,7 @@ Тип вложения - + Part-DB1\src\Form\AttachmentFormType.php:94 Part-DB1\src\Form\AttachmentFormType.php:91 @@ -5185,7 +5185,7 @@ Показать в таблице - + Part-DB1\src\Form\AttachmentFormType.php:105 Part-DB1\src\Form\AttachmentFormType.php:102 @@ -5195,7 +5195,7 @@ Личное вложение - + Part-DB1\src\Form\AttachmentFormType.php:119 Part-DB1\src\Form\AttachmentFormType.php:115 @@ -5205,7 +5205,7 @@ URL - + Part-DB1\src\Form\AttachmentFormType.php:133 Part-DB1\src\Form\AttachmentFormType.php:129 @@ -5215,7 +5215,7 @@ Скачать внешний файл - + Part-DB1\src\Form\AttachmentFormType.php:146 Part-DB1\src\Form\AttachmentFormType.php:142 @@ -5225,7 +5225,7 @@ Выгрузить файл - + Part-DB1\src\Form\LabelOptionsType.php:68 Part-DB1\src\Services\ElementTypeNameGenerator.php:86 @@ -5235,7 +5235,7 @@ Компонент - + Part-DB1\src\Form\LabelOptionsType.php:68 Part-DB1\src\Services\ElementTypeNameGenerator.php:87 @@ -5245,7 +5245,7 @@ Лот на компонент - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5254,7 +5254,7 @@ Ничто - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5263,7 +5263,7 @@ QR Код (рекомендуется) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5272,7 +5272,7 @@ Код 128 (рекомендуется) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5281,7 +5281,7 @@ Код 39 (рекомендуется) - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5290,7 +5290,7 @@ Код 93 - + Part-DB1\src\Form\LabelOptionsType.php:78 @@ -5299,7 +5299,7 @@ Матричный Штрихкод - + Part-DB1\src\Form\LabelOptionsType.php:122 @@ -5308,7 +5308,7 @@ HTML - + Part-DB1\src\Form\LabelOptionsType.php:122 @@ -5317,7 +5317,7 @@ Twig - + Part-DB1\src\Form\LabelOptionsType.php:126 @@ -5326,7 +5326,7 @@ Если здесь выбиран Twig, содержимое поля интерпретируется как шаблон Twig. Смотри <a href="https://twig.symfony.com/doc/3.x/templates.html">документация Twig</a> и <a href="https://github.com/Part-DB/Part-DB-symfony/wiki/Labels#twig-mode">Wiki</a> для пополнительной информации. - + Part-DB1\src\Form\LabelOptionsType.php:47 @@ -5335,7 +5335,7 @@ Размер этикетки - + Part-DB1\src\Form\LabelOptionsType.php:66 @@ -5344,7 +5344,7 @@ Тип элемента - + Part-DB1\src\Form\LabelOptionsType.php:75 @@ -5353,7 +5353,7 @@ Штрихкод - + Part-DB1\src\Form\LabelOptionsType.php:102 @@ -5362,7 +5362,7 @@ Содержание - + Part-DB1\src\Form\LabelOptionsType.php:111 @@ -5371,7 +5371,7 @@ Дополнительные стили (CSS) - + Part-DB1\src\Form\LabelOptionsType.php:120 @@ -5380,7 +5380,7 @@ Режим парсера - + Part-DB1\src\Form\LabelOptionsType.php:51 @@ -5389,7 +5389,7 @@ Ширина - + Part-DB1\src\Form\LabelOptionsType.php:60 @@ -5398,7 +5398,7 @@ Высота - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:49 @@ -5407,7 +5407,7 @@ Вы можете указать несколько ID (например 1,2,3) и/или диапазон (1-3) чтобы создать этикетки для нескольких элементов сразу. - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:46 @@ -5416,7 +5416,7 @@ ID элемента - + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:59 @@ -5425,7 +5425,7 @@ Обновить - + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:36 @@ -5434,7 +5434,7 @@ Ввод - + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:44 @@ -5443,7 +5443,7 @@ Отправить - + Part-DB1\src\Form\ParameterType.php:41 @@ -5452,7 +5452,7 @@ н.р. Коэффициент усиления - + Part-DB1\src\Form\ParameterType.php:50 @@ -5461,7 +5461,7 @@ н.р. h_{FE} - + Part-DB1\src\Form\ParameterType.php:60 @@ -5470,7 +5470,7 @@ н.р. Тестовые условия - + Part-DB1\src\Form\ParameterType.php:71 @@ -5479,7 +5479,7 @@ н.р. 350 - + Part-DB1\src\Form\ParameterType.php:82 @@ -5488,7 +5488,7 @@ н.р. 100 - + Part-DB1\src\Form\ParameterType.php:93 @@ -5497,7 +5497,7 @@ н.р. 200 - + Part-DB1\src\Form\ParameterType.php:103 @@ -5506,7 +5506,7 @@ н.р. V - + Part-DB1\src\Form\ParameterType.php:114 @@ -5515,7 +5515,7 @@ н.р. Технические спецификации - + Part-DB1\src\Form\Part\OrderdetailType.php:72 Part-DB1\src\Form\Part\OrderdetailType.php:75 @@ -5525,7 +5525,7 @@ Номер заказа - + Part-DB1\src\Form\Part\OrderdetailType.php:81 Part-DB1\src\Form\Part\OrderdetailType.php:84 @@ -5535,7 +5535,7 @@ Поставщик - + Part-DB1\src\Form\Part\OrderdetailType.php:87 Part-DB1\src\Form\Part\OrderdetailType.php:90 @@ -5545,7 +5545,7 @@ Ссылка на предложение - + Part-DB1\src\Form\Part\OrderdetailType.php:93 Part-DB1\src\Form\Part\OrderdetailType.php:96 @@ -5555,7 +5555,7 @@ Больше не доступно - + Part-DB1\src\Form\Part\OrderdetailType.php:75 Part-DB1\src\Form\Part\OrderdetailType.php:78 @@ -5565,7 +5565,7 @@ н.р. BC 547 - + Part-DB1\src\Form\Part\PartBaseType.php:101 Part-DB1\src\Form\Part\PartBaseType.php:99 @@ -5575,7 +5575,7 @@ Имя - + Part-DB1\src\Form\Part\PartBaseType.php:109 Part-DB1\src\Form\Part\PartBaseType.php:107 @@ -5585,7 +5585,7 @@ Описание - + Part-DB1\src\Form\Part\PartBaseType.php:120 Part-DB1\src\Form\Part\PartBaseType.php:118 @@ -5595,7 +5595,7 @@ Минимальный запас - + Part-DB1\src\Form\Part\PartBaseType.php:129 Part-DB1\src\Form\Part\PartBaseType.php:127 @@ -5605,7 +5605,7 @@ Категория - + Part-DB1\src\Form\Part\PartBaseType.php:135 Part-DB1\src\Form\Part\PartBaseType.php:133 @@ -5615,7 +5615,7 @@ Посадочное место - + Part-DB1\src\Form\Part\PartBaseType.php:142 Part-DB1\src\Form\Part\PartBaseType.php:140 @@ -5625,7 +5625,7 @@ Метки - + Part-DB1\src\Form\Part\PartBaseType.php:154 Part-DB1\src\Form\Part\PartBaseType.php:152 @@ -5635,7 +5635,7 @@ Производитель - + Part-DB1\src\Form\Part\PartBaseType.php:161 Part-DB1\src\Form\Part\PartBaseType.php:159 @@ -5645,7 +5645,7 @@ Ссылка на страницу продукта - + Part-DB1\src\Form\Part\PartBaseType.php:167 Part-DB1\src\Form\Part\PartBaseType.php:165 @@ -5655,7 +5655,7 @@ Код компонента производителя - + Part-DB1\src\Form\Part\PartBaseType.php:173 Part-DB1\src\Form\Part\PartBaseType.php:171 @@ -5665,7 +5665,7 @@ Статус производства - + Part-DB1\src\Form\Part\PartBaseType.php:181 Part-DB1\src\Form\Part\PartBaseType.php:179 @@ -5675,7 +5675,7 @@ Нужно рассмотреть - + Part-DB1\src\Form\Part\PartBaseType.php:189 Part-DB1\src\Form\Part\PartBaseType.php:187 @@ -5685,7 +5685,7 @@ Избранное - + Part-DB1\src\Form\Part\PartBaseType.php:197 Part-DB1\src\Form\Part\PartBaseType.php:195 @@ -5695,7 +5695,7 @@ Вес - + Part-DB1\src\Form\Part\PartBaseType.php:203 Part-DB1\src\Form\Part\PartBaseType.php:201 @@ -5705,7 +5705,7 @@ Единица измерения - + Part-DB1\src\Form\Part\PartBaseType.php:212 Part-DB1\src\Form\Part\PartBaseType.php:210 @@ -5715,7 +5715,7 @@ Комментарий - + Part-DB1\src\Form\Part\PartBaseType.php:250 Part-DB1\src\Form\Part\PartBaseType.php:246 @@ -5725,7 +5725,7 @@ Предварительный просмотр картинки - + Part-DB1\src\Form\Part\PartBaseType.php:295 Part-DB1\src\Form\Part\PartBaseType.php:276 @@ -5736,7 +5736,7 @@ Сохранить изменения - + Part-DB1\src\Form\Part\PartBaseType.php:296 Part-DB1\src\Form\Part\PartBaseType.php:277 @@ -5747,7 +5747,7 @@ Сбросить изменения - + Part-DB1\src\Form\Part\PartBaseType.php:105 Part-DB1\src\Form\Part\PartBaseType.php:103 @@ -5757,7 +5757,7 @@ н.р. BC547 - + Part-DB1\src\Form\Part\PartBaseType.php:115 Part-DB1\src\Form\Part\PartBaseType.php:113 @@ -5767,7 +5767,7 @@ н.р. NPN 45V, 0,1A, 0,5W - + Part-DB1\src\Form\Part\PartBaseType.php:123 Part-DB1\src\Form\Part\PartBaseType.php:121 @@ -5777,7 +5777,7 @@ н.р. 1 - + Part-DB1\src\Form\Part\PartLotType.php:69 Part-DB1\src\Form\Part\PartLotType.php:69 @@ -5787,7 +5787,7 @@ Описание - + Part-DB1\src\Form\Part\PartLotType.php:78 Part-DB1\src\Form\Part\PartLotType.php:78 @@ -5797,7 +5797,7 @@ Хранилище - + Part-DB1\src\Form\Part\PartLotType.php:89 Part-DB1\src\Form\Part\PartLotType.php:89 @@ -5807,7 +5807,7 @@ Количество - + Part-DB1\src\Form\Part\PartLotType.php:98 Part-DB1\src\Form\Part\PartLotType.php:97 @@ -5817,7 +5817,7 @@ Количество неизвестно - + Part-DB1\src\Form\Part\PartLotType.php:109 Part-DB1\src\Form\Part\PartLotType.php:108 @@ -5827,7 +5827,7 @@ Нужно пополнить - + Part-DB1\src\Form\Part\PartLotType.php:120 Part-DB1\src\Form\Part\PartLotType.php:119 @@ -5837,7 +5837,7 @@ Дата истечения - + Part-DB1\src\Form\Part\PartLotType.php:128 Part-DB1\src\Form\Part\PartLotType.php:125 @@ -5847,7 +5847,7 @@ Комментарий - + Part-DB1\src\Form\Permissions\PermissionsType.php:99 Part-DB1\src\Form\Permissions\PermissionsType.php:99 @@ -5857,7 +5857,7 @@ Разное - + Part-DB1\src\Form\TFAGoogleSettingsType.php:97 Part-DB1\src\Form\TFAGoogleSettingsType.php:97 @@ -5867,7 +5867,7 @@ Включить приложение аутентификации - + Part-DB1\src\Form\TFAGoogleSettingsType.php:101 Part-DB1\src\Form\TFAGoogleSettingsType.php:101 @@ -5877,7 +5877,7 @@ Выключить приложение аутентификации - + Part-DB1\src\Form\TFAGoogleSettingsType.php:74 Part-DB1\src\Form\TFAGoogleSettingsType.php:74 @@ -5887,7 +5887,7 @@ Код подтверждения - + Part-DB1\src\Form\UserSettingsType.php:108 Part-DB1\src\Form\UserSettingsType.php:108 @@ -5898,7 +5898,7 @@ Временная зона - + Part-DB1\src\Form\UserSettingsType.php:133 Part-DB1\src\Form\UserSettingsType.php:132 @@ -5908,7 +5908,7 @@ Предпочитаемая валюта - + Part-DB1\src\Form\UserSettingsType.php:140 Part-DB1\src\Form\UserSettingsType.php:139 @@ -5919,7 +5919,7 @@ Применить изменения - + Part-DB1\src\Form\UserSettingsType.php:141 Part-DB1\src\Form\UserSettingsType.php:140 @@ -5930,7 +5930,7 @@ Отменить изменения - + Part-DB1\src\Form\UserSettingsType.php:104 Part-DB1\src\Form\UserSettingsType.php:104 @@ -5941,7 +5941,7 @@ Язык для всего сервера - + Part-DB1\src\Form\UserSettingsType.php:115 Part-DB1\src\Form\UserSettingsType.php:115 @@ -5952,7 +5952,7 @@ Временная зона для всего сервера - + Part-DB1\src\Services\ElementTypeNameGenerator.php:79 Part-DB1\src\Services\ElementTypeNameGenerator.php:79 @@ -5962,7 +5962,7 @@ Вложение - + Part-DB1\src\Services\ElementTypeNameGenerator.php:81 Part-DB1\src\Services\ElementTypeNameGenerator.php:81 @@ -5972,7 +5972,7 @@ Тип вложения - + Part-DB1\src\Services\ElementTypeNameGenerator.php:82 Part-DB1\src\Services\ElementTypeNameGenerator.php:82 @@ -5982,7 +5982,7 @@ Проект - + Part-DB1\src\Services\ElementTypeNameGenerator.php:85 Part-DB1\src\Services\ElementTypeNameGenerator.php:85 @@ -5992,7 +5992,7 @@ Единица измерения - + Part-DB1\src\Services\ElementTypeNameGenerator.php:90 Part-DB1\src\Services\ElementTypeNameGenerator.php:90 @@ -6002,7 +6002,7 @@ Валюта - + Part-DB1\src\Services\ElementTypeNameGenerator.php:91 Part-DB1\src\Services\ElementTypeNameGenerator.php:91 @@ -6012,7 +6012,7 @@ Детали заказа - + Part-DB1\src\Services\ElementTypeNameGenerator.php:92 Part-DB1\src\Services\ElementTypeNameGenerator.php:92 @@ -6022,7 +6022,7 @@ Детали цены - + Part-DB1\src\Services\ElementTypeNameGenerator.php:94 Part-DB1\src\Services\ElementTypeNameGenerator.php:94 @@ -6032,7 +6032,7 @@ Пользователь - + Part-DB1\src\Services\ElementTypeNameGenerator.php:95 @@ -6041,7 +6041,7 @@ Параметр - + Part-DB1\src\Services\ElementTypeNameGenerator.php:96 @@ -6050,7 +6050,7 @@ Профиль этикетки - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:176 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:161 @@ -6061,7 +6061,7 @@ Неизвестно - + Part-DB1\src\Services\MarkdownParser.php:73 Part-DB1\src\Services\MarkdownParser.php:73 @@ -6071,7 +6071,7 @@ Загрузка документа. Если это сообщение не пропадает, попробуйте перегрузить страницу. - + Part-DB1\src\Services\PasswordResetManager.php:98 Part-DB1\src\Services\PasswordResetManager.php:98 @@ -6081,7 +6081,7 @@ Сброс пароль для вашего Part-DB аккаунта - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 @@ -6090,7 +6090,7 @@ Инструменты - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:107 @@ -6101,7 +6101,7 @@ Редактировать - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:110 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 @@ -6112,7 +6112,7 @@ Показать - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:111 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 @@ -6122,7 +6122,7 @@ Система - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:123 @@ -6131,7 +6131,7 @@ Генератор этикеток - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:130 @@ -6140,7 +6140,7 @@ Сканер - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:149 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:126 @@ -6151,7 +6151,7 @@ Типы вложений - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:155 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:132 @@ -6162,7 +6162,7 @@ Категории - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:161 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:138 @@ -6173,7 +6173,7 @@ Проекты - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:167 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:144 @@ -6184,7 +6184,7 @@ Поставщики - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:173 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:150 @@ -6195,7 +6195,7 @@ Производители - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:179 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:156 @@ -6205,7 +6205,7 @@ Хранилища - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:185 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:162 @@ -6215,7 +6215,7 @@ Посадочные места - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:191 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:168 @@ -6225,7 +6225,7 @@ Валюты - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:174 @@ -6235,7 +6235,7 @@ Единица измерения - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 @@ -6244,7 +6244,7 @@ Профили этикетки - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:209 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:180 @@ -6254,7 +6254,7 @@ Компонент - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:226 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 @@ -6265,7 +6265,7 @@ Показать все компоненты - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:232 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 @@ -6275,7 +6275,7 @@ Вложения - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:239 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:210 @@ -6286,7 +6286,7 @@ Статистика - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:258 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:229 @@ -6296,7 +6296,7 @@ Пользователи - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:264 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:235 @@ -6306,7 +6306,7 @@ Группы - + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:271 Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:242 @@ -6317,7 +6317,7 @@ Журнал событий - + Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 @@ -6328,7 +6328,7 @@ Новый Элемент - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:34 obsolete @@ -6338,7 +6338,7 @@ Внешний файл - + Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 obsolete @@ -6348,7 +6348,7 @@ Редактировать - + Part-DB1\templates\_navbar.html.twig:27 templates\base.html.twig:88 @@ -6359,7 +6359,7 @@ Сканировать штрихкод - + Part-DB1\src\Form\UserSettingsType.php:119 src\Form\UserSettingsType.php:49 @@ -6370,7 +6370,7 @@ Тема - + Part-DB1\src\Form\UserSettingsType.php:129 src\Form\UserSettingsType.php:50 @@ -6381,7 +6381,7 @@ Тема для всего сервера - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:100 new @@ -6392,7 +6392,7 @@ IP: - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:128 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:150 @@ -6406,7 +6406,7 @@ Отменить изменение - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:130 Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:152 @@ -6420,7 +6420,7 @@ Элемент возвращен - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:139 new @@ -6431,7 +6431,7 @@ Старые запасы - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:160 new @@ -6442,7 +6442,7 @@ Старое имя - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:184 new @@ -6453,7 +6453,7 @@ Измененные поля - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:198 new @@ -6464,7 +6464,7 @@ Комментарий - + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:214 new @@ -6475,7 +6475,7 @@ Удаленный элемент: - + templates\base.html.twig:81 obsolete @@ -6486,7 +6486,7 @@ Поехали! - + templates\base.html.twig:109 obsolete @@ -6497,7 +6497,7 @@ Английский - + templates\base.html.twig:112 obsolete @@ -6508,7 +6508,7 @@ Немецкий - + obsolete obsolete @@ -6518,7 +6518,7 @@ Нужно сменить пароль! - + obsolete obsolete @@ -6528,7 +6528,7 @@ Тип вложения - + obsolete obsolete @@ -6538,7 +6538,7 @@ Связанный элемент - + obsolete obsolete @@ -6548,7 +6548,7 @@ Картинка? - + obsolete obsolete @@ -6558,7 +6558,7 @@ 3D модель ? - + obsolete obsolete @@ -6568,7 +6568,7 @@ Встроенный ресурс? - + obsolete obsolete @@ -6578,7 +6578,7 @@ н.р. полезно для переключения - + obsolete obsolete @@ -6588,7 +6588,7 @@ Сгенерировать новые резервные коды - + obsolete obsolete @@ -6598,7 +6598,7 @@ Элемент не может быть собственным родителем - + obsolete obsolete @@ -6608,7 +6608,7 @@ Родитель не может быть дочерним по отношению к себе - + obsolete obsolete @@ -6618,7 +6618,7 @@ Вы не можете увеличивать складские объемы в хранилище помеченном как "полное". (Новое макс. количество {{ old_amount }}) - + obsolete obsolete @@ -6628,7 +6628,7 @@ Вы не можете добавлять новые компоненты в хранилище которое отмечено как "полное". - + obsolete obsolete @@ -6638,7 +6638,7 @@ Вы не можете добавлять новые компоненты в хранилище которое помечено как "только существующие". - + obsolete obsolete @@ -6648,7 +6648,7 @@ Вы не можете добавлять новые компоненты в хранилище которое отмечено как "единственный компонент". - + obsolete obsolete @@ -6658,7 +6658,7 @@ Этот компонент сейчас и ближайшее время в процессе производства - + obsolete obsolete @@ -6668,7 +6668,7 @@ Этот компонент анонсирован но еще не доступен. - + obsolete obsolete @@ -6678,7 +6678,7 @@ Этот компонент больше не производится. - + obsolete obsolete @@ -6688,7 +6688,7 @@ Этог продукт больше не поддерживается и его производство скоро прекратится. - + obsolete obsolete @@ -6698,7 +6698,7 @@ Этот компонент еще выпускается но не рекомендуется для новых проектов. - + obsolete obsolete @@ -6708,7 +6708,7 @@ Статус изготовления компонента не известен. - + obsolete obsolete @@ -6718,7 +6718,7 @@ Успешно - + obsolete obsolete @@ -6728,7 +6728,7 @@ Ошибка - + obsolete obsolete @@ -6738,7 +6738,7 @@ Внимание - + obsolete obsolete @@ -6748,7 +6748,7 @@ Заметка - + obsolete obsolete @@ -6758,7 +6758,7 @@ Информация - + obsolete obsolete @@ -6768,7 +6768,7 @@ Вы не можете отозвать у себя разрешение на «изменение разрешения», чтобы предотвратить случайную блокировку аккаунта. - + obsolete obsolete @@ -6778,7 +6778,7 @@ Разрешенные расширения файла - + obsolete obsolete @@ -6788,7 +6788,7 @@ Вы можете задать тип вложения с помощью списка расширений или mimetypes используя запятую как разделитель. Чтобы указать что это изображение используйте image/*. - + obsolete obsolete @@ -6798,7 +6798,7 @@ н.р. .txt, application/pdf, image/* - + src\Form\PartType.php:63 obsolete @@ -6809,7 +6809,7 @@ н.р. BC547 - + obsolete obsolete @@ -6819,7 +6819,7 @@ Не выбираемое - + obsolete obsolete @@ -6830,7 +6830,7 @@ Удобно использовать если элемент предназначен только для группировки. - + obsolete obsolete @@ -6840,7 +6840,7 @@ Здесь вы можете использовать BBCode (н.р. [b]Жирный[/b]) - + obsolete obsolete @@ -6850,7 +6850,7 @@ Создать элемент - + obsolete obsolete @@ -6860,7 +6860,7 @@ Сохранить - + obsolete obsolete @@ -6870,7 +6870,7 @@ Выключить посад.места - + obsolete obsolete @@ -6880,7 +6880,7 @@ Если эта опция включена свойство "посадочное место" недоступно для компонентов этой категории. - + obsolete obsolete @@ -6890,7 +6890,7 @@ Выключить производителей - + obsolete obsolete @@ -6900,7 +6900,7 @@ Если эта опция включена свойство "производитель" недоступно для компонентов этой категории. - + obsolete obsolete @@ -6910,7 +6910,7 @@ Запретить автоматическое добавление ссылок на документацию - + obsolete obsolete @@ -6920,7 +6920,7 @@ Если эта опция включена ссылки на документацию автоматически не создаются для компонентов этой категории. - + obsolete obsolete @@ -6930,7 +6930,7 @@ Запретить свойства - + obsolete obsolete @@ -6940,7 +6940,7 @@ Если эта опция включена свойства компонентов этой категории недоступны. - + obsolete obsolete @@ -6950,7 +6950,7 @@ Примечание к имени - + obsolete obsolete @@ -6960,7 +6960,7 @@ н.р. 100nF - + obsolete obsolete @@ -6970,7 +6970,7 @@ Фильтр по имени - + obsolete obsolete @@ -6980,7 +6980,7 @@ Описание по умолчанию - + obsolete obsolete @@ -6990,7 +6990,7 @@ н.р. Конденсатор, 10mm x 10mm, SMD - + obsolete obsolete @@ -7000,7 +7000,7 @@ Комментарий по умолчанию - + obsolete obsolete @@ -7010,7 +7010,7 @@ Адрес - + obsolete obsolete @@ -7021,7 +7021,7 @@ Роднойгород - + obsolete obsolete @@ -7031,7 +7031,7 @@ Номер телефона - + obsolete obsolete @@ -7041,7 +7041,7 @@ +49 12345 6789 - + obsolete obsolete @@ -7051,7 +7051,7 @@ Номер факса - + obsolete obsolete @@ -7061,7 +7061,7 @@ Email - + obsolete obsolete @@ -7071,7 +7071,7 @@ напр. contact@foo.bar - + obsolete obsolete @@ -7081,7 +7081,7 @@ Веб сайт - + obsolete obsolete @@ -7091,7 +7091,7 @@ https://www.foo.bar - + obsolete obsolete @@ -7101,7 +7101,7 @@ Ссылка на продукт - + obsolete obsolete @@ -7111,7 +7111,7 @@ В этом поле задается ссылка на страницу компонента на сайте компании. %PARTNUMBER% будет заменено на номер заказа. - + obsolete obsolete @@ -7121,7 +7121,7 @@ https://foo.bar/product/%PARTNUMBER% - + obsolete obsolete @@ -7131,7 +7131,7 @@ Код ISO - + obsolete obsolete @@ -7141,7 +7141,7 @@ Курс обмена - + obsolete obsolete @@ -7151,7 +7151,7 @@ 3D модель - + obsolete obsolete @@ -7161,7 +7161,7 @@ Ввод - + obsolete obsolete @@ -7173,7 +7173,7 @@ Элемент 3 - + obsolete obsolete @@ -7183,7 +7183,7 @@ Создать - + obsolete obsolete @@ -7193,7 +7193,7 @@ Это целое число - + obsolete obsolete @@ -7203,7 +7203,7 @@ Если эта опция активирована, все значения данной единицы будут округлены до целых чисел. - + obsolete obsolete @@ -7213,7 +7213,7 @@ Использовать СИ - + obsolete obsolete @@ -7223,7 +7223,7 @@ Если эта опция активирована, значения выводятся в системе СИ (например, 1,2 кг вместо 1200 г) - + obsolete obsolete @@ -7233,7 +7233,7 @@ Символ единицы - + obsolete obsolete @@ -7243,7 +7243,7 @@ н.р. м - + obsolete obsolete @@ -7253,7 +7253,7 @@ Хранилище заполнено - + obsolete obsolete @@ -7263,7 +7263,7 @@ Если выбран этот параметр, невозможно добавить новые детали в это хранилище или увеличить количество существующих компонентов. - + obsolete obsolete @@ -7273,7 +7273,7 @@ Только уже добавленные - + obsolete obsolete @@ -7283,7 +7283,7 @@ Если эта опция активирована, невозможно добавить новые компоненты в это хранилище, но количество существующих компонентов может быть увеличено. - + obsolete obsolete @@ -7293,7 +7293,7 @@ Только один компонент - + obsolete obsolete @@ -7303,7 +7303,7 @@ Если эта опция активирована, в это хранилище может быть добавлен только единственный компонент (любым количеством). Полезно для небольших коробок с SMD или подающих устройств. - + obsolete obsolete @@ -7313,7 +7313,7 @@ Тип хранилища - + obsolete obsolete @@ -7323,7 +7323,7 @@ Здесь вы можете выбрать единицы измерения в которых обязан измеряться компонент предназначенный для данного хранилища. - + obsolete obsolete @@ -7333,7 +7333,7 @@ Валюта по умолчанию - + obsolete obsolete @@ -7343,7 +7343,7 @@ Цена доставки - + obsolete obsolete @@ -7353,7 +7353,7 @@ н.р. i.ivanov - + obsolete obsolete @@ -7363,7 +7363,7 @@ н.р. Евгений - + obsolete obsolete @@ -7373,7 +7373,7 @@ н.р. Иванов - + obsolete obsolete @@ -7383,7 +7383,7 @@ н.р. i.ivanov@ecorp.com - + obsolete obsolete @@ -7393,7 +7393,7 @@ н.р. Разработка - + obsolete obsolete @@ -7403,7 +7403,7 @@ Новый пароль - + obsolete obsolete @@ -7413,7 +7413,7 @@ Подтвердить новый пароль - + obsolete obsolete @@ -7423,7 +7423,7 @@ Пользователь должен сменить пароль - + obsolete obsolete @@ -7433,7 +7433,7 @@ Пользователь отключен (вход не возможен) - + obsolete obsolete @@ -7443,7 +7443,7 @@ Создать пользователя - + obsolete obsolete @@ -7453,7 +7453,7 @@ Сохранить - + obsolete obsolete @@ -7463,7 +7463,7 @@ Отменить изменения - + templates\Parts\show_part_info.html.twig:166 obsolete @@ -7474,7 +7474,7 @@ Изъять - + templates\Parts\show_part_info.html.twig:171 obsolete @@ -7485,7 +7485,7 @@ Комментарий/Цель - + templates\Parts\show_part_info.html.twig:189 obsolete @@ -7496,7 +7496,7 @@ Добавить компонент - + templates\Parts\show_part_info.html.twig:194 obsolete @@ -7507,7 +7507,7 @@ Добавить - + templates\Parts\show_part_info.html.twig:199 obsolete @@ -7518,7 +7518,7 @@ Комментарий/Цель - + templates\AdminPages\CompanyAdminBase.html.twig:15 obsolete @@ -7529,7 +7529,7 @@ Комментарий - + src\Form\PartType.php:83 obsolete @@ -7540,7 +7540,7 @@ Ссылка на производителя - + src\Form\PartType.php:66 obsolete @@ -7551,7 +7551,7 @@ н.р. NNPN 45V 0,1A 0,5W - + src\Form\PartType.php:69 obsolete @@ -7562,7 +7562,7 @@ н.р. 10 - + src\Form\PartType.php:72 obsolete @@ -7573,7 +7573,7 @@ н.р. 5 - + obsolete obsolete @@ -7583,7 +7583,7 @@ Цена на - + obsolete obsolete @@ -7593,7 +7593,7 @@ Изъять компоненты - + obsolete obsolete @@ -7603,7 +7603,7 @@ _MENU_ - + obsolete obsolete @@ -7613,7 +7613,7 @@ Компоненты - + obsolete obsolete @@ -7623,7 +7623,7 @@ Структуры данных - + obsolete obsolete @@ -7633,7 +7633,7 @@ Система - + obsolete obsolete @@ -7643,7 +7643,7 @@ Общие - + obsolete obsolete @@ -7653,7 +7653,7 @@ Просмотр - + obsolete obsolete @@ -7663,7 +7663,7 @@ Редактировать - + obsolete obsolete @@ -7673,7 +7673,7 @@ Создать - + obsolete obsolete @@ -7683,7 +7683,7 @@ Изменить категорию - + obsolete obsolete @@ -7693,7 +7693,7 @@ Удалить - + obsolete obsolete @@ -7703,7 +7703,7 @@ Поиск - + obsolete obsolete @@ -7713,7 +7713,7 @@ Список всех компонентов - + obsolete obsolete @@ -7723,7 +7723,7 @@ Список всех компонентов без цен - + obsolete obsolete @@ -7733,7 +7733,7 @@ Список устаревших компонентов - + obsolete obsolete @@ -7743,7 +7743,7 @@ Показать компоненты с неизвестным количеством - + obsolete obsolete @@ -7753,7 +7753,7 @@ Изменить статус избранного - + obsolete obsolete @@ -7763,7 +7763,7 @@ Список избранных компонентов - + obsolete obsolete @@ -7773,7 +7773,7 @@ Показать последние отредактированные/измененные компоненты - + obsolete obsolete @@ -7783,7 +7783,7 @@ Показать последнего измененного пользователя - + obsolete obsolete @@ -7793,7 +7793,7 @@ Показать историю - + obsolete obsolete @@ -7803,7 +7803,7 @@ Имя - + obsolete obsolete @@ -7813,7 +7813,7 @@ Описание - + obsolete obsolete @@ -7823,7 +7823,7 @@ В наличии - + obsolete obsolete @@ -7833,7 +7833,7 @@ Минимально в наличии - + obsolete obsolete @@ -7843,7 +7843,7 @@ Комментарий - + obsolete obsolete @@ -7853,7 +7853,7 @@ Хранилище - + obsolete obsolete @@ -7863,7 +7863,7 @@ Производитель - + obsolete obsolete @@ -7873,7 +7873,7 @@ Данные заказа - + obsolete obsolete @@ -7883,7 +7883,7 @@ Цены - + obsolete obsolete @@ -7893,7 +7893,7 @@ Вложения файлов - + obsolete obsolete @@ -7903,7 +7903,7 @@ Заказы - + obsolete obsolete @@ -7913,7 +7913,7 @@ Хранилища - + obsolete obsolete @@ -7923,7 +7923,7 @@ Переместить - + obsolete obsolete @@ -7933,7 +7933,7 @@ Список компонентов - + obsolete obsolete @@ -7943,7 +7943,7 @@ Посадочные места - + obsolete obsolete @@ -7953,7 +7953,7 @@ Категории - + obsolete obsolete @@ -7963,7 +7963,7 @@ Поставщики - + obsolete obsolete @@ -7973,7 +7973,7 @@ Производители - + obsolete obsolete @@ -7983,7 +7983,7 @@ Проекты - + obsolete obsolete @@ -7993,7 +7993,7 @@ Типы вложений - + obsolete obsolete @@ -8003,7 +8003,7 @@ Импорт - + obsolete obsolete @@ -8013,7 +8013,7 @@ Этикетки - + obsolete obsolete @@ -8023,7 +8023,7 @@ Калькулятор сопротивления - + obsolete obsolete @@ -8033,7 +8033,7 @@ Посадочные места - + obsolete obsolete @@ -8043,7 +8043,7 @@ Логотипы производителей - + obsolete obsolete @@ -8053,7 +8053,7 @@ Статистика - + obsolete obsolete @@ -8063,7 +8063,7 @@ Редактировать разрешения - + obsolete obsolete @@ -8073,7 +8073,7 @@ Редактировать имя пользователя - + obsolete obsolete @@ -8083,7 +8083,7 @@ Изменить группу - + obsolete obsolete @@ -8093,7 +8093,7 @@ Редактировать информацию - + obsolete obsolete @@ -8103,7 +8103,7 @@ Редактировать разрешения - + obsolete obsolete @@ -8113,7 +8113,7 @@ Установить пароль - + obsolete obsolete @@ -8123,7 +8123,7 @@ Изменить настройки пользователя - + obsolete obsolete @@ -8133,7 +8133,7 @@ Показать статус - + obsolete obsolete @@ -8143,7 +8143,7 @@ Обновить БД - + obsolete obsolete @@ -8153,7 +8153,7 @@ Прочитать настройки БД - + obsolete obsolete @@ -8163,7 +8163,7 @@ Записать настройки БД - + obsolete obsolete @@ -8173,7 +8173,7 @@ Прочитать конфигурацию - + obsolete obsolete @@ -8183,7 +8183,7 @@ Редактировать конфигурацию - + obsolete obsolete @@ -8193,7 +8193,7 @@ Инф. о сервере - + obsolete obsolete @@ -8203,7 +8203,7 @@ Использовать отладочные инструменты - + obsolete obsolete @@ -8213,7 +8213,7 @@ Показать логи - + obsolete obsolete @@ -8223,7 +8223,7 @@ Удалить логи - + obsolete obsolete @@ -8233,7 +8233,7 @@ Редактировать инф. - + obsolete obsolete @@ -8243,7 +8243,7 @@ Изменить имя пользователя - + obsolete obsolete @@ -8253,7 +8253,7 @@ Смотреть разрешения - + obsolete obsolete @@ -8263,7 +8263,7 @@ Показать собственные логи - + obsolete obsolete @@ -8273,7 +8273,7 @@ Создать этикетки - + obsolete obsolete @@ -8283,7 +8283,7 @@ Редактировать опции - + obsolete obsolete @@ -8293,7 +8293,7 @@ Удалить профили - + obsolete obsolete @@ -8303,7 +8303,7 @@ Редактировать профили - + obsolete obsolete @@ -8313,7 +8313,7 @@ Инструменты - + obsolete obsolete @@ -8323,7 +8323,7 @@ Группы - + obsolete obsolete @@ -8333,7 +8333,7 @@ Пользователи - + obsolete obsolete @@ -8343,7 +8343,7 @@ База данных - + obsolete obsolete @@ -8353,7 +8353,7 @@ Конфигурация - + obsolete obsolete @@ -8363,7 +8363,7 @@ Система - + obsolete obsolete @@ -8373,7 +8373,7 @@ Собственные - + obsolete obsolete @@ -8383,7 +8383,7 @@ Этикетки - + obsolete obsolete @@ -8393,7 +8393,7 @@ Категория - + obsolete obsolete @@ -8403,7 +8403,7 @@ Минимальное количество - + obsolete obsolete @@ -8413,7 +8413,7 @@ Посадочное место - + obsolete obsolete @@ -8423,7 +8423,7 @@ MPN - + obsolete obsolete @@ -8433,7 +8433,7 @@ Статус изготовления - + obsolete obsolete @@ -8443,7 +8443,7 @@ Метки - + obsolete obsolete @@ -8453,7 +8453,7 @@ Единица компонента - + obsolete obsolete @@ -8463,7 +8463,7 @@ Вес - + obsolete obsolete @@ -8473,7 +8473,7 @@ Склад - + obsolete obsolete @@ -8483,7 +8483,7 @@ Показать последнего измененного пользователя - + obsolete obsolete @@ -8493,7 +8493,7 @@ Валюты - + obsolete obsolete @@ -8503,7 +8503,7 @@ Единица измерения - + obsolete obsolete @@ -8513,7 +8513,7 @@ Старый пароль - + obsolete obsolete @@ -8523,7 +8523,7 @@ Сбросить пароль - + obsolete obsolete @@ -8533,7 +8533,7 @@ Ключ безопасности (U2F) - + obsolete obsolete @@ -8543,13 +8543,13 @@ Google - + tfa.provider.webauthn_two_factor_provider Ключ безопасности - + obsolete obsolete @@ -8559,17 +8559,17 @@ приложение Аутентификатор - + obsolete obsolete Login successful - Вход выполнен + Успешный вход - + obsolete obsolete @@ -8579,7 +8579,7 @@ Исключительная ситуация - + obsolete obsolete @@ -8589,7 +8589,7 @@ Пользователь вошел - + obsolete obsolete @@ -8599,7 +8599,7 @@ Пользователь вышел - + obsolete obsolete @@ -8609,7 +8609,7 @@ Неизвестный тип - + obsolete obsolete @@ -8619,7 +8619,7 @@ Элемент создан - + obsolete obsolete @@ -8629,7 +8629,7 @@ Элемент изменен - + obsolete obsolete @@ -8639,7 +8639,7 @@ Элемент удален - + obsolete obsolete @@ -8649,7 +8649,7 @@ Данные объекта обновлены - + obsolete @@ -8658,7 +8658,7 @@ Вернуть элемент - + obsolete @@ -8667,7 +8667,7 @@ Показать историю - + obsolete @@ -8676,7 +8676,7 @@ Показать последние действия - + obsolete @@ -8685,7 +8685,7 @@ Показать предыдущие версии элемента - + obsolete @@ -8694,7 +8694,7 @@  Ключ безопасности успешно добавлен. - + obsolete @@ -8703,7 +8703,7 @@ Имя пользователя - + obsolete @@ -8712,7 +8712,7 @@ Прил. аутентификации запрещено - + obsolete @@ -8721,7 +8721,7 @@ Ключ безопасности удален - + obsolete @@ -8730,7 +8730,7 @@ Ключ безопасности добавлен - + obsolete @@ -8739,7 +8739,7 @@ Запасные ключи пересозданы - + obsolete @@ -8748,7 +8748,7 @@ Прил. Аутентификации разрешено - + obsolete @@ -8757,7 +8757,7 @@ Пароль изменен - + obsolete @@ -8766,7 +8766,7 @@ Доверенные устройства сброшены - + obsolete @@ -8775,7 +8775,7 @@ Элемент коллекции удален - + obsolete @@ -8784,7 +8784,7 @@ Пароль сброшен - + obsolete @@ -8793,7 +8793,7 @@ Администратор сбросил двухфакторную аутентификацию - + obsolete @@ -8802,7 +8802,7 @@ Попытка неавторизованного доступа - + obsolete @@ -8811,7 +8811,7 @@ Успешно - + obsolete @@ -8820,7 +8820,7 @@ 2D - + obsolete @@ -8829,7 +8829,7 @@ 1D - + obsolete @@ -8838,7 +8838,7 @@ Параметры - + obsolete @@ -8847,7 +8847,7 @@ Посмотреть личные вложения - + obsolete @@ -8856,7 +8856,7 @@ Сканер этикеток - + obsolete @@ -8865,7 +8865,7 @@ Читать профили - + obsolete @@ -8874,7 +8874,7 @@ Создать профили - + obsolete @@ -8883,2545 +8883,2545 @@ Использовать режим Twig - + label_profile.showInDropdown Показать быстрый выбор - + group.edit.enforce_2fa Применить двухфакторную аутентификацию (2FA) - + group.edit.enforce_2fa.help Если эта опция разрешена, каждый член данной группы обязан сконфигурировать как минимум один вторичный способ аутентификации. Рекомендовано для административных групп с большими правами. - + selectpicker.empty Ничего не выбрано - + selectpicker.nothing_selected Ничего не выбрано - + entity.delete.must_not_contain_parts Элемент все еще содержит компоненты! Переместите все компоненты чтобы удалить этот элемент. - + entity.delete.must_not_contain_attachments Тип вложения по-прежнему содержит компоненты. Измените их тип, чтобы иметь возможность удалить этот тип вложения. - + entity.delete.must_not_contain_prices Валюта все еще содержит данные о ценах. Измените их валюту чтобы удалить этот элемент. - + entity.delete.must_not_contain_users Пользователи все еще используют на эту группу. Измените их группы чтобы удалить этот элемент. - + part.table.edit Изменить - + part.table.edit.title Изменить компонент - + part_list.action.action.title Выбрать действие - + part_list.action.action.group.favorite Избранный статус - + part_list.action.action.favorite Избранное - + part_list.action.action.unfavorite Удалить из избранного - + part_list.action.action.group.change_field Сменить поле - + part_list.action.action.change_category Сменить категорию - + part_list.action.action.change_footprint Сменить посадочное место - + part_list.action.action.change_manufacturer Сменить производителя - + part_list.action.action.change_unit Сменить ед.измерения компонента - + part_list.action.action.delete Удалить - + part_list.action.submit Отправить - + part_list.action.part_count %count% компонентов выбрано! - + company.edit.quick.website Открыть сайт - + company.edit.quick.email Отправить почту - + company.edit.quick.phone Позвонить по телефону - + company.edit.quick.fax Послать факс - + company.fax_number.placeholder н.р. +49 1234 567890 - + part.edit.save_and_clone Сохранить и клонировать - + validator.file_ext_not_allowed Такой тип файла не разрешен для данного вида вложений. - + tools.reel_calc.title Калькулятор катушек SMD - + tools.reel_calc.inner_dia Внутренний диаметр - + tools.reel_calc.outer_dia Наружный диаметр - + tools.reel_calc.tape_thick Толщина ленты - + tools.reel_calc.part_distance Расстояние между компонентами - + tools.reel_calc.update Обновить - + tools.reel_calc.parts_per_meter Компонентов на метр - + tools.reel_calc.result_length Длина ленты - + tools.reel_calc.result_amount Прибл. кол-во компонентов - + tools.reel_calc.outer_greater_inner_error Ошибка: Наружный диаметр должен быть больше внутреннего! - + tools.reel_calc.missing_values.error Пожалуйста заполните все значения! - + tools.reel_calc.load_preset Загрузить конфигурацию - + tools.reel_calc.explanation Этот калькулятор показывает приблизительный остаток SMD компонентов на катушке. - + perm.tools.reel_calculator Калькулятор катушки SMD - + tree.tools.tools.reel_calculator Калькулятор катушки SMD - + user.pw_change_needed.flash Вам нужно сменить пароль! Пожалуйста, задайте новый. - + tree.root_node.text Корень - + part_list.action.select_null Пустой элемент - + part_list.action.delete-title Вы точно уверены, что хотите удалить эти компоненты? - + part_list.action.delete-message Эти компоненты и вся связанная с ними информация (прикрепленные документы, ценники и т.п.) будут удалены. Отменить действие будет невозможно! - + part.table.actions.success Успешно исполнено. - + attachment.edit.delete.confirm Вы точно хотите удалить это прикрепление? - + filter.text_constraint.value.operator.EQ Равно - + filter.text_constraint.value.operator.NEQ Не равно - + filter.text_constraint.value.operator.STARTS Начинается с - + filter.text_constraint.value.operator.CONTAINS Содержит - + filter.text_constraint.value.operator.ENDS Оканчивается на - + filter.text_constraint.value.operator.LIKE СООТВЕТСТВУЕТ шаблону - + filter.text_constraint.value.operator.REGEX Регулярное выражение - + filter.number_constraint.value.operator.BETWEEN Между - + filter.number_constraint.AND и - + filter.entity_constraint.operator.EQ Равно (исключая дочерние) - + filter.entity_constraint.operator.NEQ Не равно (исключая дочерние) - + filter.entity_constraint.operator.INCLUDING_CHILDREN Равно (включая дочерние) - + filter.entity_constraint.operator.EXCLUDING_CHILDREN Не равно (включая дочерние) - + part.filter.dbId ID базы данных - + filter.tags_constraint.operator.ANY Любая из меток - + filter.tags_constraint.operator.ALL Все отметки - + filter.tags_constraint.operator.NONE Ни одна из отметок - + part.filter.lot_count Количество лотов - + part.filter.attachments_count Количество вложений - + part.filter.orderdetails_count Количество подробностей о заказе. - + part.filter.lotExpirationDate Дата истечения лота - + part.filter.lotNeedsRefill Любой лот требующий пополнения - + part.filter.lotUnknwonAmount Любой лот с неизвестным количеством - + part.filter.attachmentName Имя вложения - + filter.choice_constraint.operator.ANY Любой из - + filter.choice_constraint.operator.NONE Ни один из - + part.filter.amount_sum Общее количество - + filter.submit Обновить - + filter.discard Сбросить изменения - + filter.clear_filters Очистить все фильтры - + filter.title Фильтр - + filter.parameter_value_constraint.operator.= Тип. Значение = - + filter.parameter_value_constraint.operator.!= Тип. Значение != - + filter.parameter_value_constraint.operator.< Тип. Значение < - + filter.parameter_value_constraint.operator.> Тип. Значение > - + filter.parameter_value_constraint.operator.<= Тип. Значение <= - + filter.parameter_value_constraint.operator.>= Тип. Значение >= - + filter.parameter_value_constraint.operator.BETWEEN Тип. Значение между - + filter.parameter_value_constraint.operator.IN_RANGE В диапазоне значений - + filter.parameter_value_constraint.operator.NOT_IN_RANGE Выходит за диапазон значений - + filter.parameter_value_constraint.operator.GREATER_THAN_RANGE Больше диапазона значений - + filter.parameter_value_constraint.operator.GREATER_EQUAL_RANGE Больше или равно диапазону значений - + filter.parameter_value_constraint.operator.LESS_THAN_RANGE Меньше диапазона значений - + filter.parameter_value_constraint.operator.LESS_EQUAL_RANGE Меньше или равно диапазону значений - + filter.parameter_value_constraint.operator.RANGE_IN_RANGE Диапазон полностью внутри диапазона значений - + filter.parameter_value_constraint.operator.RANGE_INTERSECT_RANGE Диапазон пересекает диапазон значений - + filter.text_constraint.value Значение не установлено - + filter.number_constraint.value1 Значение не установлено - + filter.number_constraint.value2 Максимальное значение - + filter.datetime_constraint.value1 Дата/время не установлены - + filter.datetime_constraint.value2 Максимальная дата/время - + filter.constraint.add Добавить ограничение - + part.filter.parameters_count Количество параметров - + part.filter.lotDescription Описание лота - + parts_list.search.searching_for Поиск деталей по ключевому слову <b>%keyword%</b> - + parts_list.search_options.caption Включенные параметры поиска - + attachment.table.element_type Тип связанного элемента - + log.level.debug Отладочный - + log.level.info Информационный - + log.level.notice Уведомления - + log.level.warning Предупреждения - + log.level.error Ошибки - + log.level.critical Критические - + log.level.alert Тревожный - + log.level.emergency Чрезвычайные - + log.type.security Безопасность - + log.type.instock_changed [СТАРОЕ] Наличие изменено - + log.target_id ID целевого элемента - + entity.info.parts_count_recursive Количество компонентов с этим элементом или его подэлементами. - + tools.server_infos.title Информация сервера - + permission.preset.read_only Только чтение - + permission.preset.read_only.desc Разрешить только операции чтения данных - + permission.preset.all_inherit Наследовать все - + permission.preset.all_inherit.desc Установить все разрешения в Наследовать - + permission.preset.all_forbid Запретить всё - + permission.preset.all_forbid.desc Установить все разрешения в Запретить - + permission.preset.all_allow Разрешить всё - + permission.preset.all_allow.desc Установить все разрешения в Разрешено - + perm.server_infos Информация сервера - + permission.preset.editor Редактор - + permission.preset.editor.desc Разрешить изменять компоненты и структуры данных - + permission.preset.admin Администратор - + permission.preset.admin.desc Разрешить административные действия - + permission.preset.button Применить шаблон - + perm.attachments.show_private Показать личные вложения - + perm.attachments.list_attachments Показать список всех вложений - + user.edit.permission_success Шаблон разрешений успешно применён. Проверьте что они удовлетворяют вашим требованиям. - + perm.group.data Дата - + part_list.action.action.group.needs_review Требуется Ревизия - + part_list.action.action.set_needs_review Установить статус "Требуется ревизия" - + part_list.action.action.unset_needs_review Убрать статус "Требуется ревизия" - + part.edit.ipn Внутренний номер компонента (IPN) - + part.ipn.not_defined Не задан - + part.table.ipn IPN - + currency.edit.update_rate Загрузить обменный курс - + currency.edit.exchange_rate_update.unsupported_currency Данная валюта не поддерживается поставщиком обменных курсов. Проверьте конфигурацию поставщика. - + currency.edit.exchange_rate_update.generic_error Не удалось запросить курс обмена. Пожалуйста, проверьте конфигурацию поставщика обменных курсов. - + currency.edit.exchange_rate_updated.success Обменный курс успешно загружен. - + project.bom.quantity BOM Кол-во - + project.bom.mountnames Имена сборок - + project.bom.name Имя - + project.bom.comment Заметки - + project.bom.part Компонент - + project.bom.add_entry Добавить запись - + part_list.action.group.projects Проекты - + part_list.action.projects.add_to_project Добавить компонент в проект - + project.bom.delete.confirm Вы уверены, что хотите удалить это запись BOM ? - + project.add_parts_to_project Добавить компонент в BOM проекта - + part.info.add_part_to_project Добавить этот компонент в проект - + project_bom_entry.label BOM запись - + project.edit.status Статус проекта - + project.status.draft Черновик - + project.status.planning Планирование - + project.status.in_production В производстве - + project.status.finished Завершен - + project.status.archived Архивный - + part.new_build_part.error.build_part_already_exists В проекте уже есть результирующий компонент! - + project.edit.associated_build_part Связанный результирующий компонент - + project.edit.associated_build_part.add Добавить результирующий компонент - + project.edit.associated_build.hint Этот компонент представляет собой произведенные экземпляры проекта, которые где-то хранятся. - + part.info.projectBuildPart.hint Этот компонент представляет собой построенные экземпляры следующего проекта и связан с ним. - + part.is_build_part Это результирующий компонент - + project.info.title Информация о проекте - + project.info.bom_entries_count Записи BOM - + project.info.sub_projects_count Подпроекты - + project.info.bom_add_parts Добавить записи BOM - + project.info.info.label Информация - + project.info.sub_projects.label Подпроекты - + project.bom.price Цена - + part.info.withdraw_modal.title.withdraw Убрать компонент из лота - + part.info.withdraw_modal.title.add Добавить компоненты в лот - + part.info.withdraw_modal.title.move Переместить компоненты в другой лот - + part.info.withdraw_modal.amount Количество - + part.info.withdraw_modal.move_to Переместить в - + part.info.withdraw_modal.comment Комментарий - + part.info.withdraw_modal.comment.hint Здесь вы можете ввести комментарий, описывающий, почему было выполнено это действие (например, зачем нужен этот компонент). Эта информация сохраняется в журнале. - + modal.close Закрыть - + modal.submit Отправить - + part.withdraw.success Компоненты успешно удалены/добавлены/перемещены. - + perm.parts_stock Компоненты в наличии - + perm.parts_stock.withdraw Снять компоненты со склада - + perm.parts_stock.add Добавить компоненты на склад - + perm.parts_stock.move Переместить компоненты между лотами - + user.permissions_schema_updated Схема разрешений вашей учетной записи пользователя обновлена ​​до последней версии. - + log.type.part_stock_changed Запас компонента изменен - + log.part_stock_changed.withdraw Запас убран - + log.part_stock_changed.add Запас добавлен - + log.part_stock_changed.move Запас перемещён - + log.part_stock_changed.comment Комментарий - + log.part_stock_changed.change Изменение - + log.part_stock_changed.move_target Перенесен в - + tools.builtin_footprints_viewer.title Галерея посадочных мест - + tools.builtin_footprints_viewer.hint Эта галерея показывает все доступные встроенные посадочные места. Если вы захотите использовать их во вложениях, наберите имя (или ключевое слово) в поле пути вложения и выберите изображение в появившемся выпадающем списке. - + tools.ic_logos.title Логотипы производителей - + part_list.action.group.labels Этикетки - + part_list.action.projects.generate_label Сформировать этикетки (для компонентов) - + part_list.action.projects.generate_label_lot Сформировать этикетки (для лотов) - + part_list.action.generate_label.empty Пустая этикетка - + project.info.builds.label Создать - + project.builds.build_not_possible Создание невозможно: Недостаточно компонентов. - + project.builds.following_bom_entries_miss_instock Запас следующих компонентов недостаточен даже для однократного производства проекта: - + project.builds.stocked запасено - + project.builds.needed нужно - + project.builds.build_possible Производство возможно - + project.builds.number_of_builds_possible У вас есть достаточно запасов для производства <b>%max_builds%</b> копий этого проекта. - + project.builds.check_project_status Статус производства текущего проекта <b>"%project_status%"</b>. Убедитесь что вы точно хотите произвести проект с таким статусом! - + project.builds.following_bom_entries_miss_instock_n У вас недостаточно запасов для производства %number_of_builds% копий данного проекта. Следующих компонентов нехватает: - + project.build.flash.invalid_input Проект не может быть произведен. Пожалуйста, проверьте свои записи! - + project.build.required_qty Требуемое количество - + project.build.btn_build Построить - + project.build.help Выберите, из каких запасов следует взять необходимые для производства компоненты (и в каком количестве). Установите флажок для каждой записи спецификации или используйте верхний флажок, чтобы установить все флажки одновременно. - + project.build.buildsPartLot.new_lot Создать новый лот - + project.build.add_builds_to_builds_part Добавить построенные экземпляры в производственную часть проекта. - + project.build.builds_part_lot Целевой лот - + project.builds.number_of_builds Произвести экземпляров - + project.builds.no_stocked_builds Количество сохраненных экземпляров сборки - + user.change_avatar.label Изменить аватар профиля - + user_settings.change_avatar.label Изменить аватар профиля - + user_settings.remove_avatar.label Удалить аватар профиля - + part.edit.name.category_hint Примечание из категории - + category.edit.partname_regex.placeholder e.g "/Конденсатор \d+ nF/i" - + category.edit.partname_regex.help PCRE-совместимое регулярное выражение которому должно соответствовать имя компонента. - + entity.select.add_hint Используй -> для создания вложенных структур, н.р. "Элемент 1->Элемент 1.1" - + entity.select.group.new_not_added_to_DB Новый (еще не добавленный в БД) - + part.edit.save_and_new Сохранить и открыть форму для нового компонента - + homepage.first_steps.title Первые шаги - + homepage.first_steps.introduction База данных на данный момент пуста. Возможно, вы захотите прочитать <a href="%url%">documentation</a> или начнете создавать следующие структуры данных: - + homepage.first_steps.create_part Или вы можете непосредственно <a href="%url%">создать новый компонент</a>. - + homepage.first_steps.hide_hint Это уведомление будет скрыто после создания первого компонента. - + homepage.forum.text Все вопросы по Part-DB в ветке обсуждения на <a href="%href%" class="link-external" target="_blank">mikrocontroller.net</a> - + log.element_edited.changed_fields.category Категория - + log.element_edited.changed_fields.footprint Посадочное место - + log.element_edited.changed_fields.manufacturer Производитель - + log.element_edited.changed_fields.value_typical тип. значение - + log.element_edited.changed_fields.pw_reset_expires Сброс пароля - + log.element_edited.changed_fields.comment Заметки - + log.element_edited.changed_fields.supplierpartnr Код компонента у поставщика - + log.element_edited.changed_fields.supplier_product_url Ссылка на продукт - + log.element_edited.changed_fields.price Цена - + log.element_edited.changed_fields.min_discount_quantity Минимум для заказа со скидкой - + log.element_edited.changed_fields.original_filename Исходное имя файла - + log.element_edited.changed_fields.path Путь до файла - + log.element_edited.changed_fields.description Описание - + log.element_edited.changed_fields.manufacturing_status Статус производства - + log.element_edited.changed_fields.options.barcode_type Тип штрихкода - + log.element_edited.changed_fields.status Статус - + log.element_edited.changed_fields.quantity BOM Кол-во - + log.element_edited.changed_fields.mountnames Имена сборок - + log.element_edited.changed_fields.name Имя - + log.element_edited.changed_fields.part Компонент - + log.element_edited.changed_fields.price_currency Валюта цены - + log.element_edited.changed_fields.partname_hint Подсказка по названию - + log.element_edited.changed_fields.partname_regex Фильтр по имени - + log.element_edited.changed_fields.disable_footprints Отключить посадочные места - + log.element_edited.changed_fields.disable_manufacturers Отключить производителей - + log.element_edited.changed_fields.disable_autodatasheets Отключить автопривязку спецификации - + log.element_edited.changed_fields.disable_properties Отключить свойства - + log.element_edited.changed_fields.default_description Описание по умолчанию - + log.element_edited.changed_fields.default_comment Заметки по умолчанию - + log.element_edited.changed_fields.filetype_filter Разрешенные расширения файла - + log.element_edited.changed_fields.not_selectable Недоступно - + log.element_edited.changed_fields.parent Родительский элемент - + log.element_edited.changed_fields.shipping_costs Стоимость пересылки - + log.element_edited.changed_fields.default_currency Валюта по умолчанию - + log.element_edited.changed_fields.address Адрес - + log.element_edited.changed_fields.phone_number Номер телефона - + log.element_edited.changed_fields.fax_number Номер факса - + log.element_edited.changed_fields.email_address Email - + log.element_edited.changed_fields.website Web сайт - + log.element_edited.changed_fields.auto_product_url Ссылка на продукт - + log.element_edited.changed_fields.is_full Место хранения заполнено - + log.element_edited.changed_fields.limit_to_existing_parts Только существующие компоненты - + log.element_edited.changed_fields.only_single_part Только один компонент - + log.element_edited.changed_fields.storage_type Тип хранилища - + log.element_edited.changed_fields.footprint_3d 3D модель - + log.element_edited.changed_fields.master_picture_attachment Миниатюра - + log.element_edited.changed_fields.exchange_rate Курс обмена - + log.element_edited.changed_fields.iso_code Код ISO - + log.element_edited.changed_fields.unit Символ единицы - + log.element_edited.changed_fields.is_integer Целое число - + log.element_edited.changed_fields.use_si_prefix Использовать префиксы СИ - + log.element_edited.changed_fields.options.width Ширина - + log.element_edited.changed_fields.options.height Высота - + log.element_edited.changed_fields.options.supported_element Тип элемента - + log.element_edited.changed_fields.options.additional_css Дополнительные стили (CSS) - + log.element_edited.changed_fields.options.lines Содержимое - + log.element_edited.changed_fields.permissions.data Разрешения - + log.element_edited.changed_fields.disabled Отключено - + log.element_edited.changed_fields.theme Тема - + log.element_edited.changed_fields.timezone Временная зона - + log.element_edited.changed_fields.language Язык - + log.element_edited.changed_fields.email Email - + log.element_edited.changed_fields.department Отдел - + log.element_edited.changed_fields.last_name Фамилия - + log.element_edited.changed_fields.first_name Имя - + log.element_edited.changed_fields.group Группа - + log.element_edited.changed_fields.currency Выбранная валюта - + log.element_edited.changed_fields.enforce2FA Требовать 2FA - + log.element_edited.changed_fields.symbol Символ - + log.element_edited.changed_fields.value_min Мин. значение - + log.element_edited.changed_fields.value_max Макс. значение - + log.element_edited.changed_fields.value_text Текстовое значение - + log.element_edited.changed_fields.show_in_table Показать в таблице - + log.element_edited.changed_fields.attachment_type Тип вложения - + log.element_edited.changed_fields.needs_review Требует рассмотрения - + log.element_edited.changed_fields.tags Метки - + log.element_edited.changed_fields.mass Масса - + log.element_edited.changed_fields.ipn IPN - + log.element_edited.changed_fields.favorite Любимый - + log.element_edited.changed_fields.minamount Минимальный запас - + log.element_edited.changed_fields.manufacturer_product_url Ссылка на страницу продукта - + log.element_edited.changed_fields.manufacturer_product_number MPN - + log.element_edited.changed_fields.partUnit Единица измерения - + log.element_edited.changed_fields.expiration_date Дата истечения - + log.element_edited.changed_fields.amount Количество - + log.element_edited.changed_fields.storage_location Место хранения - + attachment.max_file_size Максимальный размер файла - + user.saml_user SSO / SAML пользователь - + user.saml_user.pw_change_hint Вы зашли используя систему единого входа (SSO). Поэтому вы не можете настроить здесь свой пароль и двухфакторную аутентификацию. Конфигурируйте их в настройках вашего SSO провайдера! - + login.sso_saml_login Система единого входа (SSO) - + login.local_login_hint Форму ниже можно использовать только для входа в систему под локальным пользователем. Если вы хотите вместо этого войти через систему единого входа, используйте кнопку выше. - + part_list.action.action.export Экспорт компонентов - + part_list.action.export_json Экспорт в виде JSON - + part_list.action.export_csv Экспорт в виде CSV - + part_list.action.export_yaml Экспорт в виде YAML - + part_list.action.export_xml Экспорт в виде XML - + parts.import.title Импорт компонентов - + parts.import.errors.title Импорт проблем - + parts.import.flash.error Во время экспорта возникли ошибки. Вероятно, это вызвано неверными данными. - + parts.import.format.auto Автоматически (в зависимости от расширения файла) - + parts.import.flash.error.unknown_format Формат не может быть определен автоматически. Пожалуйста, выберите правильный формат вручную! - + parts.import.flash.error.invalid_file Файл поврежден/неправильно отформатирован. Убедитесь, что вы выбрали правильный формат. - + parts.import.part_category.label Переопределение категории - + parts.import.part_category.help Если вы выберете здесь категорию, все импортированные компоненты будут отнесены к этой категории, независимо от того, что содержится в данных импорта. - + import.create_unknown_datastructures Создать неизвестные структуры данных - + import.create_unknown_datastructures.help Если выбран этот параметр, структуры данных (например, категории, посадочные места и т. д.), которые еще не существуют в базе данных, будут созданы автоматически. Если этот параметр не выбран, будут использоваться только те структуры данных, которые уже существуют в базе данных, а если подходящей структуры не существует, соответствующее поле компонента останется пустым. - + import.path_delimiter Разделитель пути - + import.path_delimiter.help Разделитель используется для разделения различных уровней структур данных таких как категории, посадочные места и т. д. - + parts.import.help_documentation Смотри <a href="%link%">documentation</a> для большей информации о формате файла. - + parts.import.help С помощью этого инструмента вы можете импортировать компоненты из существующих файлов. Компоненты сохраняются непосредственно в базу данных (без возможности предварительной их повторной проверки). Пожалуйста, проверьте файл импорта здесь перед загрузкой! - + parts.import.flash.success Компонент успешно импортирован! - + parts.import.errors.imported_entities Импортированные компоненты - + perm.import Импортировать данные - + parts.import.part_needs_review.label Пометить все импортированные компоненты как "Требуется проверки" - + parts.import.part_needs_review.help Если выбран этот параметр, все импортированные детали будут помечены как «Требуется проверка», независимо от того, что записано в данных импорта. - + project.bom_import.flash.success Успешно импортировано %count% записей BOM. - + project.bom_import.type Тип - + project.bom_import.type.kicad_pcbnew KiCAD Pcbnew BOM (CSV файл) - + project.bom_import.clear_existing_bom Удалить существующие записи BOM перед импортом. - + project.bom_import.clear_existing_bom.help Если выбран этот параметр, все записи спецификации, которые уже существуют в проекте, будут удалены и перезаписаны импортированными данными спецификации. - + project.bom_import.flash.invalid_file Не удалось импортировать файл. Убедитесь, что вы выбрали правильный тип файла. Сообщение об ошибке: %message% - + project.bom_import.flash.invalid_entries Ошибка проверки! Пожалуйста, убедитесь что данные корректны! - + project.import_bom Импортировать BOM для проекта - + project.edit.bom.import_bom Импортировать BOM - + measurement_unit.new Новая единица измерения - + measurement_unit.edit Изменить единицу измерения - + user.aboutMe.label Обо мне - + storelocation.owner.label Владелец - + storelocation.part_owner_must_match.label Владелец лота должен совпадать с владельцем места хранения. - + part_lot.owner Владелец - + part_lot.owner.help Только владелец может удалять или добавлять компоненты из этого лота. - + log.element_edited.changed_fields.owner Владелец - + log.element_edited.changed_fields.instock_unknown Количество неизвестно - + log.element_edited.changed_fields.needs_refill Необходимо пополнить - + part.withdraw.access_denied Вы не авторизованы для выполнения желаемого действия! Пожалуйста, проверьте свои полномочия и владельца инвентаря компонентов. - + part.info.amount.less_than_desired Меньше, чем хотелось бы - + log.cli_user Пользователь CLI - + log.element_edited.changed_fields.part_owner_must_match Владелец компонента должен совпадать с владельцем хранилища! - + part.filter.lessThanDesired Доступно меньше, чем хотелось бы (общее количество < мин. количества) - + part.filter.lotOwner Владелец инвентаря - + user.show_email_on_profile.label Показывать e-mail на странице публичного профиля - + log.details.title Подробности журнала - + log.user_login.login_from_ip Вход с IP адреса - + log.user_login.ip_anonymize_hint Если последние цифры IP-адреса отсутствуют, то активируется режим GDPR, в котором IP-адреса анонимизируются. - + log.user_not_allowed.unauthorized_access_attempt_to Попытка неавторизованного доступа к странице - + log.user_not_allowed.hint Запрос был заблокирован. Никаких дальнейших действий не требуется. - + log.no_comment Без комментариев - + log.element_changed.field Поле - + log.element_changed.data_before Данные до изменения - + error_table.error Во время запроса произошла ошибка. - + part.table.invalid_regex Неверное регулярное выражение (regex) - + log.element_changed.data_after Данные после изменения - + log.element_changed.diff Разница - + log.undo.undo.short Отмена - + log.undo.revert.short Вернуться к версии - + log.view_version Посмотреть версию - + log.undo.undelete.short Восстановить - + log.element_edited.changed_fields.id ID - + log.element_edited.changed_fields.id_owner Владелец - + log.element_edited.changed_fields.parent_id Родительский элемент - + log.details.delete_entry Удалить запись журнала - + log.delete.message.title Вы уверены, что хотите удалить эту запись из журнала ? - + log.delete.message Если это запись истории для элемента, то ее удаление приведет к потере данных истории! Это может привести к неожиданным результатам при использовании функции путешествия во времени. - + log.collection_deleted.on_collection в коллекции - + log.element_edited.changed_fields.attachments Вложения - + tfa_u2f.add_key.registration_error Произошла ошибка во время регистрации ключа безопасности. Попробуйте еще раз или используйте другой ключ! - + log.target_type.none Нет - + ui.darkmode.light Светлый - + ui.darkmode.dark Тёмный - + ui.darkmode.auto Авто (в зависимости от настроек системы) - + label_generator.no_lines_given Текстовое содержание не указано! Созданные ярлыки будут пустыми. - + user.password_strength.very_weak Очень слабый - + user.password_strength.weak Слабый - + user.password_strength.medium Средний - + user.password_strength.strong Сильный - + user.password_strength.very_strong Очень сильный - + perm.users.impersonate Выдать себя за другого пользователя - + user.impersonated_by.label Выдано пользователем - + user.stop_impersonation Прекратить «Выдавать себя за пользователя» - + user.impersonate.btn Выдавать себя за пользователя - + user.impersonate.confirm.title Вы уверены, что хотите выдать себя за этого пользователя? - + user.impersonate.confirm.message Это будет отражено в журнале. Должна быть веская причина для данного действия. @@ -11429,785 +11429,899 @@ Обратите внимание, что вы не можете выдавать себя за деактивированного пользователя. Если вы попробуете это сделать, вы получите сообщение «Доступ запрещен». - + log.type.security.user_impersonated Пользователь выдал себя за другое лицо - + info_providers.providers_list.title Источники информации - + info_providers.providers_list.active Активный - + info_providers.providers_list.disabled Отключенный - + info_providers.capabilities.basic Основные - + info_providers.capabilities.footprint Посадочное место - + info_providers.capabilities.picture Картинка - + info_providers.capabilities.datasheet Технические данные - + info_providers.capabilities.price Цены - + part.info_provider_reference.badge Источник информации, использованный для создания этого компонента. - + part.info_provider_reference Создано на основе источника информации - + oauth_client.connect.btn Подключить OAuth - + info_providers.table.provider.label Источник - + info_providers.search.keyword Ключевое слово - + info_providers.search.submit Найти - + info_providers.search.providers.help Выберите источники информации для поиска. - + info_providers.search.providers Источники - + info_providers.search.info_providers_list Посмотреть все доступные источники информации - + info_providers.search.title Создать компонент из источника информации - + oauth_client.flash.connection_successful Соединение с приложением OAuth успешно установлено! - + perm.part.info_providers Источники информации - + perm.part.info_providers.create_parts Создание компонентов - + entity.edit.alternative_names.label Альтернативные названия - + entity.edit.alternative_names.help Представленные здесь альтернативные имена используются для автоматического выбора этого элемента на основе данных, полученных из источников информации. - + info_providers.form.help_prefix Источник - + update_manager.new_version_available.title Доступна новая версия - + update_manager.new_version_available.text Доступна новая версия Part-DB. Здесь вы найдете больше информации - + update_manager.new_version_available.only_administrators_can_see Это сообщение могут видеть только администраторы. - + perm.system.show_available_updates Показать доступные обновления Part-DB - + user.settings.api_tokens Токены API - + user.settings.api_tokens.description Используя токен API, другие приложения могут получить доступ к Part-DB под вашими правами для выполнения различных действий с помощью REST API Part-DB. Если вы удалите токен API, приложение, использующее этот токен, больше не сможет получить доступ к Part-DB от его имени. - + api_tokens.name Имя - + api_tokens.access_level Уровень доступа - + api_tokens.expiration_date Дата истечения срока действия - + api_tokens.added_date Добавлен - + api_tokens.last_time_used Последний раз использован - + datetime.never Никогда - + api_token.valid Действительный - + api_token.expired Истекший - + user.settings.show_api_documentation Посмотреть документацию по API - + api_token.create_new Создать новый токен API - + api_token.level.read_only Только чтение - + api_token.level.edit Редактировать - + api_token.level.admin Админ - + api_token.level.full Полный - + api_tokens.access_level.help Вы можете ограничить доступ к токену API. Доступ всегда ограничен правами вашего пользователя. - + api_tokens.expiration_date.help После этой даты токен больше нельзя будет использовать. Если это поле оставить пустым, срок действия токена никогда не истечет. - + api_tokens.your_token_is Ваш токен API - + api_tokens.please_save_it Пожалуйста, сохраните эту информацию - вы больше не сможете её увидеть! - + api_tokens.create_new.back_to_user_settings Вернуться к настройкам пользователя - + project.build.dont_check_quantity Не проверять количество - + project.build.dont_check_quantity.help Если выбрана эта опция, выбранные количества будут удалены из запасов, без проверки фактически необходимого количества компонентов требуемых для сборки проекта. - + part_list.action.invert_selection Наоборот - + perm.api API - + perm.api.access_api Доступ через API - + perm.api.manage_tokens Управление токенами API - + user.settings.api_tokens.delete.title Вы уверены, что хотите удалить этот токен API? - + user.settings.api_tokens.delete Удалить - + user.settings.api_tokens.delete.message Приложение, использующее этот токен, больше не будет иметь доступа к Part-DB. Это не может быть отменено! - + api_tokens.deleted Токен API успешно удален! - + user.settings.api_tokens.no_api_tokens_yet Токены API еще не созданы. - + api_token.ends_with Заканчивается на - + entity.select.creating_new_entities_not_allowed Вы не имеете права создавать новые элементы этого типа! Пожалуйста, выберите один из существующих. - + scan_dialog.mode Тип штрих-кода - + scan_dialog.mode.auto Автоматическое распознавание - + scan_dialog.mode.ipn IPN штрих-код - + scan_dialog.mode.internal Штрих-код Part-DB - + part_association.label Связывание компонентов - + part.edit.tab.associations Связанные компоненты - + part_association.edit.other_part Связанный компонент - + part_association.edit.type Тип отношений - + part_association.edit.comment Примечания - + part_association.edit.type.help Здесь вы можете указать, как выбранный компонент связан с текущим компонентом. - + part_association.table.from_this_part Ссылки из этого компонента на другие - + part_association.table.from От - + part_association.table.type Отношение - + part_association.table.to К - + part_association.type.compatible Совместим с - + part_association.table.to_this_part Ссылки на этот компонент от других - + part_association.type.other Другое (своя цена) - + part_association.type.supersedes Заменены - + part_association.edit.other_type Самостоятельно выбранные отношения - + part_association.edit.delete.confirm Вы действительно хотите удалить это отношение? Это не может быть отменено. - + part_lot.edit.advanced Показать дополнительные параметры - + part_lot.edit.vendor_barcode Штрих-код поставщика - + part_lot.edit.vendor_barcode.help Если этот инвентарь уже имеет штрих-код (например, нанесенный поставщиком), вы можете ввести здесь содержимое штрих-кода, чтобы найти этот инвентарь путем сканирования штрих-кода. - + scan_dialog.mode.vendor Штрих-код поставщика (настраивается в перечне компонентов) - + project.bom.instockAmount Наличие на складе - + collection_type.new_element.tooltip Этот элемент был создан недавно и еще не сохранен в базе данных. - + part.merge.title Объединить компонент - + part.merge.title.into в - + part.merge.confirm.title Вы действительно хотите объединить <b>%other%</b> в <b>%target%</b>? - + part.merge.confirm.message <b>%other%</b> будет удален, а текущий компонент сохранён с отображаемыми данными. - + part.info.merge_modal.title Объединение компонентов - + part.info.merge_modal.other_part Другой компонент - + part.info.merge_modal.other_into_this Объединить другой компонент с этим (удалить другой компонент, оставить этот) - + part.info.merge_modal.this_into_other Объединить этот компонент с другим (удалить этот компонент, оставить другой) - + part.info.merge_btn Объединить компонент - + part.update_part_from_info_provider.btn Обновить компонент из источника информации - + info_providers.update_part.title Обновление компонента из источника информации - + part.merge.flash.please_review Данные еще не сохранены. Пожалуйста, просмотрите изменения и нажмите «Сохранить», чтобы сохранить данные. - + user.edit.flash.permissions_fixed Разрешения, необходимые для других разрешений, отсутствовали. Это исправлено. Пожалуйста, проверьте, соответствуют ли разрешения вашим ожиданиям. - + permission.legend.dependency_note Обратите внимание, что некоторые операции авторизации зависят друг от друга. Если вы получили предупреждение о том, что отсутствующие разрешения были исправлены и для разрешения снова установлено значение «разрешено», вам также необходимо установить для зависимой операции значение «запрещено». Зависимости обычно располагаются справа от операции. - + log.part_stock_changed.timestamp Время - + part.info.withdraw_modal.timestamp Время действия - + part.info.withdraw_modal.timestamp.hint Это поле позволяет указать действительную дату фактического выполнения складской операции, а не только дату ее регистрации. Это значение сохраняется в дополнительном поле записи журнала. - + part.info.withdraw_modal.delete_lot_if_empty Удалить этот инвентарь, когда он станет пустым - + info_providers.search.error.client_exception Произошла ошибка при общении с поставщиком информации. Просмотрите конфигурацию этого поставщика и, если возможно, обновите токены OAuth. - + eda_info.reference_prefix.placeholder напр. R - + eda_info.reference_prefix Ссылочный префикс - + eda_info.kicad_section.title Специальные настройки KiCad - + eda_info.value Стоимость - + eda_info.value.placeholder напр. 100n - + eda_info.exclude_from_bom Исключить компонент из спецификации - + eda_info.exclude_from_board Исключить деталь из печатной платы - + eda_info.exclude_from_sim Исключить компонент из моделирования - + eda_info.kicad_symbol Символ схемы KiCad - + eda_info.kicad_symbol.placeholder напр. Transistor_BJT:BC547 - + eda_info.kicad_footprint посадочное место KiCad - + eda_info.kicad_footprint.placeholder напр. Package_TO_SOT_THT:TO-92 - + part.edit.tab.eda Информация EDA - + api.api_endpoints.title Конечные точки API - + api.api_endpoints.partdb Part-DB API - + api.api_endpoints.kicad_root_url корневой URL KiCad API - + eda_info.visibility Принудительная видимость - + eda_info.visibility.help По умолчанию видимость определяется автоматически в программном обеспечении EDA. Используя этот флажок, вы можете сделать компонент видимым или невидимым. - + part.withdraw.zero_amount Вы пытались удалить/добавить нулевое количество! Никаких действий предпринято не было. - + login.flash.access_denied_please_login В доступе отказано! Пожалуйста, войдите, чтобы продолжить. - + attachment.upload_multiple_files Загрузить файлы - + entity.mass_creation_flash Успешно создано %COUNT% элементов. + + + info_providers.search.number_of_results + %number% результатов + + + + + info_providers.search.no_results + У выбранных поставщиков результатов не найдено! Проверьте условия поиска или попробуйте выбрать дополнительных поставщиков. + + + + + tfa.check.code.confirmation + Созданный код + + + + + info_providers.search.show_existing_part + Показать существующую деталь + + + + + info_providers.search.edit_existing_part + Редактировать существующую деталь + + + + + info_providers.search.existing_part_found.short + Деталь уже существует + + + + + info_providers.search.existing_part_found + Эта деталь (или очень похожая) уже найдена в базе. Проверьте, та ли она, и хотите ли вы создать ее снова! + + + + + info_providers.search.update_existing_part + Обновить существующую деталь от поставщика информации + + + + + part.create_from_info_provider.no_category_yet + Категория не может быть автоматически определена поставщиком информации. Просмотрите данные и выберите категорию вручную. + + + + + part_lot.edit.user_barcode + Штрих-код пользователя + + + + + scan_dialog.mode.user + Определяемый пользователем штрих-код (настраивается для партии детали) + + + + + scan_dialog.mode.eigp + Штрих-код EIGP 114 (например, коды datamatrix в заказах digikey и mouser) + + + + + scan_dialog.info_mode + Информационный режим (декодирование штрих-кода и отображение его содержимого, но без перенаправления на деталь) + + + + + label_scanner.decoded_info.title + Расшифрованная информация + + + + + label_generator.edit_profiles + Редактировать профили + + + + + label_generator.profile_name_empty + Имя профиля не должно быть пустым! + + + + + label_generator.save_profile_name + Имя профиля + + + + + label_generator.save_profile + Сохранить как новый профиль + + + + + label_generator.profile_saved + Профиль сохранен! + + diff --git a/translations/security.de.xlf b/translations/security.de.xlf index ef0a6b80..a0498be8 100644 --- a/translations/security.de.xlf +++ b/translations/security.de.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled Ihr Account ist deaktiviert! Kontaktiere einen Administrator, wenn Sie denken, dass dies ein Fehler ist. - + saml.error.cannot_login_local_user_per_saml Sie können sich per SSO nicht als lokaler Nutzer einloggen! Nutzen Sie stattdessen ihr lokales Passwort. + + + saml.error.cannot_login_saml_user_locally + Sie können sich nicht mittels lokaler Authentifizierung als SAML Benutzer einloggen! Benutzen Sie stattdessen den SSO login. + + diff --git a/translations/security.en.xlf b/translations/security.en.xlf index 43f2a92f..0b0b4569 100644 --- a/translations/security.en.xlf +++ b/translations/security.en.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled Your account is disabled! Contact an administrator if you think this is wrong. - + saml.error.cannot_login_local_user_per_saml You cannot login as local user via SSO! Use your local user password instead. + + + saml.error.cannot_login_saml_user_locally + You cannot use local authentication to login as SAML user! Use SSO login instead. + + diff --git a/translations/security.es.xlf b/translations/security.es.xlf new file mode 100644 index 00000000..e9baee3d --- /dev/null +++ b/translations/security.es.xlf @@ -0,0 +1,23 @@ + + + + + + user.login_error.user_disabled + Su cuenta ha sido deshabilitada. Contacte con el administrador si cree que podría ser un error. + + + + + saml.error.cannot_login_local_user_per_saml + No puede identificarse como usuario local vía SSO. Utilice su contraseña local en su lugar. + + + + + saml.error.cannot_login_saml_user_locally + No puede identificarse como usuario SAML utilizando su usuario local. Utilice su identificación SSO en su lugar. + + + + diff --git a/translations/security.fr.xlf b/translations/security.fr.xlf index 1be6efa1..337509be 100644 --- a/translations/security.fr.xlf +++ b/translations/security.fr.xlf @@ -1,11 +1,23 @@ - + user.login_error.user_disabled Votre compte est désactivé ! Contactez un administrateur si vous pensez que c'est une erreur. + + + saml.error.cannot_login_local_user_per_saml + Impossible de se connecter via le SSO (Single Sign On) ! + + + + + saml.error.cannot_login_saml_user_locally + Vous ne pouvez pas utiliser l'authentification par mot de passe ! Veuillez utiliser le SSO! + + diff --git a/translations/security.it.xlf b/translations/security.it.xlf index 9b45cd1e..9200458c 100644 --- a/translations/security.it.xlf +++ b/translations/security.it.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled Il tuo account è disabilitato! Contatta un amministratore se ritieni che non sia corretto. - + saml.error.cannot_login_local_user_per_saml Non è possibile accedere come utente locale tramite SSO! Usare invece la password locale. + + + saml.error.cannot_login_saml_user_locally + Non si può usare l'autenticazione locale per effettuare l'accesso come utente SAML! Usare l'accesso SSO. + + diff --git a/translations/security.nl.xlf b/translations/security.nl.xlf index 8b87c28c..7ba9fcc1 100644 --- a/translations/security.nl.xlf +++ b/translations/security.nl.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled Uw account is gedeactiveerd! Neem contact op met een beheerder indien dit incorrect is. - + saml.error.cannot_login_local_user_per_saml U kunt niet inloggen als lokale gebruiker met SSO! Gebruik uw lokale wachtwoord. + + + saml.error.cannot_login_saml_user_locally + U kunt geen lokale authenticatie gebruiken om in te loggen als SAML-gebruiker! Gebruik in plaats daarvan SSO-aanmelding. + + diff --git a/translations/security.ru.xlf b/translations/security.ru.xlf index 214e45ff..ebd29669 100644 --- a/translations/security.ru.xlf +++ b/translations/security.ru.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled Ваша учетная запись отключена! Свяжитесь с администратором, если вы считаете, что это неправильно. - + saml.error.cannot_login_local_user_per_saml Вы не можете войти в систему как локальный пользователь через SSO! Используйте локального пользователя и его пароль. + + + saml.error.cannot_login_saml_user_locally + Вы не можете использовать локальную аутентификацию для входа в качестве пользователя SAML! Вместо этого используйте вход SSO. + + diff --git a/translations/security.zh.xlf b/translations/security.zh.xlf index 61b236ae..58fbb26f 100644 --- a/translations/security.zh.xlf +++ b/translations/security.zh.xlf @@ -1,17 +1,23 @@ - + user.login_error.user_disabled 账户已被禁用。请联系管理员 - + saml.error.cannot_login_local_user_per_saml 无法通过 SSO 以本地用户身份登录。请使用本地用户密码 + + + saml.error.cannot_login_saml_user_locally + 无法使用本地身份验证器以SAML用户身份登录!请改用SSO登录 + + diff --git a/translations/validators.de.xlf b/translations/validators.de.xlf index e9a3f0e9..dc3f94df 100644 --- a/translations/validators.de.xlf +++ b/translations/validators.de.xlf @@ -164,7 +164,7 @@ user.invalid_username - Der Benutzername darf nur Buchstaben, Zahlen, Unterstriche, Punkte, Plus- oder Minuszeichen enthalten. + Der Benutzername darf nur Buchstaben, Zahlen, Unterstriche, Punkte, Plus- oder Minuszeichen enthalten und darf nicht mit einem @ beginnen. diff --git a/translations/validators.en.xlf b/translations/validators.en.xlf index 3e23ccac..95a633e2 100644 --- a/translations/validators.en.xlf +++ b/translations/validators.en.xlf @@ -164,7 +164,7 @@ user.invalid_username - The username must contain only letters, numbers, underscores, dots, pluses or minuses! + The username must contain only letters, numbers, underscores, dots, pluses or minuses and must not begin with an @! diff --git a/translations/validators.hr.xlf b/translations/validators.hr.xlf new file mode 100644 index 00000000..29e32a16 --- /dev/null +++ b/translations/validators.hr.xlf @@ -0,0 +1,363 @@ + + + + + + Part-DB1\src\Entity\Attachments\AttachmentContainingDBElement.php:0 + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 + Part-DB1\src\Entity\Base\AbstractCompany.php:0 + Part-DB1\src\Entity\Base\AbstractPartsContainingDBElement.php:0 + Part-DB1\src\Entity\Base\AbstractStructuralDBElement.php:0 + Part-DB1\src\Entity\Devices\Device.php:0 + Part-DB1\src\Entity\LabelSystem\LabelProfile.php:0 + Part-DB1\src\Entity\Parts\Category.php:0 + Part-DB1\src\Entity\Parts\Footprint.php:0 + Part-DB1\src\Entity\Parts\Manufacturer.php:0 + Part-DB1\src\Entity\Parts\MeasurementUnit.php:0 + Part-DB1\src\Entity\Parts\Part.php:0 + Part-DB1\src\Entity\Parts\Part.php:0 + Part-DB1\src\Entity\Parts\Storelocation.php:0 + Part-DB1\src\Entity\Parts\Supplier.php:0 + Part-DB1\src\Entity\PriceInformations\Currency.php:0 + Part-DB1\src\Entity\UserSystem\Group.php:0 + Part-DB1\src\Entity\UserSystem\User.php:0 + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 + Part-DB1\src\Entity\Base\AbstractCompany.php:0 + Part-DB1\src\Entity\Base\AbstractPartsContainingDBElement.php:0 + Part-DB1\src\Entity\Base\AbstractStructuralDBElement.php:0 + Part-DB1\src\Entity\Devices\Device.php:0 + Part-DB1\src\Entity\Parts\Category.php:0 + Part-DB1\src\Entity\Parts\Footprint.php:0 + Part-DB1\src\Entity\Parts\Manufacturer.php:0 + Part-DB1\src\Entity\Parts\MeasurementUnit.php:0 + Part-DB1\src\Entity\Parts\Part.php:0 + Part-DB1\src\Entity\Parts\Storelocation.php:0 + Part-DB1\src\Entity\Parts\Supplier.php:0 + Part-DB1\src\Entity\PriceInformations\Currency.php:0 + Part-DB1\src\Entity\UserSystem\Group.php:0 + Part-DB1\src\Entity\UserSystem\User.php:0 + + + part.master_attachment.must_be_picture + Pretpregledna fotografija mora biti validna fotografija! + + + + + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 + Part-DB1\src\Entity\Base\AbstractCompany.php:0 + Part-DB1\src\Entity\Base\AbstractPartsContainingDBElement.php:0 + Part-DB1\src\Entity\Base\AbstractStructuralDBElement.php:0 + Part-DB1\src\Entity\Devices\Device.php:0 + Part-DB1\src\Entity\Parts\Category.php:0 + Part-DB1\src\Entity\Parts\Footprint.php:0 + Part-DB1\src\Entity\Parts\Manufacturer.php:0 + Part-DB1\src\Entity\Parts\MeasurementUnit.php:0 + Part-DB1\src\Entity\Parts\Storelocation.php:0 + Part-DB1\src\Entity\Parts\Supplier.php:0 + Part-DB1\src\Entity\PriceInformations\Currency.php:0 + Part-DB1\src\Entity\UserSystem\Group.php:0 + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 + Part-DB1\src\Entity\Base\AbstractCompany.php:0 + Part-DB1\src\Entity\Base\AbstractPartsContainingDBElement.php:0 + Part-DB1\src\Entity\Base\AbstractStructuralDBElement.php:0 + Part-DB1\src\Entity\Devices\Device.php:0 + Part-DB1\src\Entity\Parts\Category.php:0 + Part-DB1\src\Entity\Parts\Footprint.php:0 + Part-DB1\src\Entity\Parts\Manufacturer.php:0 + Part-DB1\src\Entity\Parts\MeasurementUnit.php:0 + Part-DB1\src\Entity\Parts\Storelocation.php:0 + Part-DB1\src\Entity\Parts\Supplier.php:0 + Part-DB1\src\Entity\PriceInformations\Currency.php:0 + Part-DB1\src\Entity\UserSystem\Group.php:0 + src\Entity\AttachmentType.php:0 + src\Entity\Category.php:0 + src\Entity\Company.php:0 + src\Entity\Device.php:0 + src\Entity\Footprint.php:0 + src\Entity\Group.php:0 + src\Entity\Manufacturer.php:0 + src\Entity\PartsContainingDBElement.php:0 + src\Entity\Storelocation.php:0 + src\Entity\StructuralDBElement.php:0 + src\Entity\Supplier.php:0 + + + structural.entity.unique_name + Element s ovim nazivom već postoji! + + + + + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 + Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 + Part-DB1\src\Entity\Parameters\CategoryParameter.php:0 + Part-DB1\src\Entity\Parameters\CurrencyParameter.php:0 + Part-DB1\src\Entity\Parameters\DeviceParameter.php:0 + Part-DB1\src\Entity\Parameters\FootprintParameter.php:0 + Part-DB1\src\Entity\Parameters\GroupParameter.php:0 + Part-DB1\src\Entity\Parameters\ManufacturerParameter.php:0 + Part-DB1\src\Entity\Parameters\MeasurementUnitParameter.php:0 + Part-DB1\src\Entity\Parameters\PartParameter.php:0 + Part-DB1\src\Entity\Parameters\StorelocationParameter.php:0 + Part-DB1\src\Entity\Parameters\SupplierParameter.php:0 + + + parameters.validator.min_lesser_typical + Vrijednost mora biti manja ili jednaka od tipične vrijednosti ({{ compared_value }}). + + + + + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 + Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 + Part-DB1\src\Entity\Parameters\CategoryParameter.php:0 + Part-DB1\src\Entity\Parameters\CurrencyParameter.php:0 + Part-DB1\src\Entity\Parameters\DeviceParameter.php:0 + Part-DB1\src\Entity\Parameters\FootprintParameter.php:0 + Part-DB1\src\Entity\Parameters\GroupParameter.php:0 + Part-DB1\src\Entity\Parameters\ManufacturerParameter.php:0 + Part-DB1\src\Entity\Parameters\MeasurementUnitParameter.php:0 + Part-DB1\src\Entity\Parameters\PartParameter.php:0 + Part-DB1\src\Entity\Parameters\StorelocationParameter.php:0 + Part-DB1\src\Entity\Parameters\SupplierParameter.php:0 + + + parameters.validator.min_lesser_max + Vrijednost mora biti manja od maksimalne vrijednosti ({{ compared_value }}). + + + + + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 + Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 + Part-DB1\src\Entity\Parameters\CategoryParameter.php:0 + Part-DB1\src\Entity\Parameters\CurrencyParameter.php:0 + Part-DB1\src\Entity\Parameters\DeviceParameter.php:0 + Part-DB1\src\Entity\Parameters\FootprintParameter.php:0 + Part-DB1\src\Entity\Parameters\GroupParameter.php:0 + Part-DB1\src\Entity\Parameters\ManufacturerParameter.php:0 + Part-DB1\src\Entity\Parameters\MeasurementUnitParameter.php:0 + Part-DB1\src\Entity\Parameters\PartParameter.php:0 + Part-DB1\src\Entity\Parameters\StorelocationParameter.php:0 + Part-DB1\src\Entity\Parameters\SupplierParameter.php:0 + + + parameters.validator.max_greater_typical + Vrijednost mora biti veća ili jednaka od tipične vrijednosti ({{ compared_value }}). + + + + + Part-DB1\src\Entity\UserSystem\User.php:0 + Part-DB1\src\Entity\UserSystem\User.php:0 + + + validator.user.username_already_used + Korisnik s ovim imenom već postoji. + + + + + Part-DB1\src\Entity\UserSystem\User.php:0 + Part-DB1\src\Entity\UserSystem\User.php:0 + + + user.invalid_username + Korisničko ime mora sadržavati samo slova, brojeve, donje crte, točke, pluseve ili minuse! + + + + + obsolete + + + validator.noneofitschild.self + Element ne može biti vlastiti roditelj (element iznad)! + + + + + obsolete + + + validator.noneofitschild.children + Ne možete postaviti podelemente kao parent elemente (Ovo bi uzrokovalo loopove)! + + + + + validator.select_valid_category + Molimo odaberite validnu kategoriju! + + + + + validator.part_lot.only_existing + Ova skladišna lokacija je označena kao "samo postoji", pa joj ne možete dodati novi dio. + + + + + validator.part_lot.location_full.no_increase + Ova skladišna lokacija je označena punom, pa ne možete povećati dostupnu količinu. (Nova maksimalna količina {{ old_amount }}) + + + + + validator.part_lot.location_full + Ova skladišna lokacija je označena punom, pa joj ne možete dodati novi dio + + + + + validator.part_lot.single_part + Ova skladišna lokacija je označena kao "jedan dio", pa joj ne možete dodati novi dio. + + + + + validator.attachment.must_not_be_null + Morate odabrati tip privitka! + + + + + validator.orderdetail.supplier_must_not_be_null + Morate odabrati dobavljača! + + + + + validator.measurement_unit.use_si_prefix_needs_unit + Kako biste omogućili SI prefikse, morate staviti simbol jedinice! + + + + + part.ipn.must_be_unique + Internal part number (IPN) mora biti jedinstven. {{ value }} je već u uporabi! + + + + + validator.project.bom_entry.name_or_part_needed + Morate odabrati dio za unos u BOM ili postaviti naziv za unos koji nije dio. + + + + + project.bom_entry.name_already_in_bom + Već postoji unos u BOM-u sa ovim imenom! + + + + + project.bom_entry.part_already_in_bom + Ovaj dio već postoji u BOM-u! + + + + + project.bom_entry.mountnames_quantity_mismatch + Broj montažnih imena mora biti jednak količini u BOM-u! + + + + + project.bom_entry.can_not_add_own_builds_part + Ne možete dodati vlastiti dio projekta u BOM. + + + + + project.bom_has_to_include_all_subelement_parts + Projektni BOM mora sadržavati sve podprojektove sastavne dijelove. Dio %part_name% projetka %project_name% nedostaje! + + + + + project.bom_entry.price_not_allowed_on_parts + Cijene nisu dozvoljene na sastavnicama u BOM-u asocirane s dijelom. Definirajte cijenu na dijelu. + + + + + validator.project_build.lot_bigger_than_needed + Odabrali ste veću količinu za povlačenje nego što je potrebno! Uklonite nepotrebnu količinu. + + + + + validator.project_build.lot_smaller_than_needed + Odabrali ste manju količinu za povlačenje nego što je potrebno za izgradnju! Dodajte dodatnu količinu. + + + + + part.name.must_match_category_regex + Naziv dijela ne odgovara regularnom izrazu navedenom u kategoriji: %regex% + + + + + validator.attachment.name_not_blank + Postavite vrijednost ovdje, ili prenesite datoteku da automatski koristi njezino ime kao ime privitka. + + + + + validator.part_lot.owner_must_match_storage_location_owner + Vlasnik ove serije dijelova se mora podudarati s vlasnikom odabrane skladišne lokacije (%owner_name%)! + + + + + validator.part_lot.owner_must_not_be_anonymous + Vlasnik serije dijelova ne može biti anonimni korisnik! + + + + + validator.part_association.must_set_an_value_if_type_is_other + Ako postavite tip na "ostalo", onda morate postaviti objašnjivu vrijednost! + + + + + validator.part_association.part_cannot_be_associated_with_itself + Dio se ne može povezati sam sa sobom! + + + + + validator.part_association.already_exists + Asocijacija na ovaj dio već postoji! + + + + + validator.part_lot.vendor_barcode_must_be_unique + Ova vrijednost barkoda dobavljača već je korištena u drugoj seriji dijelova. Barkod mora biti jedinstven! + + + + + validator.year_2038_bug_on_32bit + Zbog tehničkih ograničenja, nije moguće odabrati datume nakon 2038-01-19 na 32-bitnim sustavima! + + + + + validator.invalid_range + Navedeni raspon nije valjan! + + + + + validator.google_code.wrong_code + Neispravan kod. Provjerite je li vaša aplikacija za autentifikaciju ispravno postavljena i jesu li poslužitelj i uređaj za autentifikaciju ispravno postavili vrijeme. + + + + diff --git a/translations/validators.ru.xlf b/translations/validators.ru.xlf index da7a1994..0f97c478 100644 --- a/translations/validators.ru.xlf +++ b/translations/validators.ru.xlf @@ -1,7 +1,7 @@ - + Part-DB1\src\Entity\Attachments\AttachmentContainingDBElement.php:0 Part-DB1\src\Entity\Attachments\AttachmentType.php:0 @@ -42,7 +42,7 @@ Предварительный просмотр возможен только для картинок! - + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 Part-DB1\src\Entity\Base\AbstractCompany.php:0 @@ -87,7 +87,7 @@ Элемент с таким именем уже существует на данном уровне! - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -107,7 +107,7 @@ Значение должно быть меньше или равно типичного значения ({{ compared_value }}). - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -127,7 +127,7 @@ Значение должно быть меньше максимального значения ({{ compared_value }}). - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -147,7 +147,7 @@ Значение должно быть больше или равно типичного значения ({{ compared_value }}). - + Part-DB1\src\Entity\UserSystem\User.php:0 Part-DB1\src\Entity\UserSystem\User.php:0 @@ -157,7 +157,7 @@ Пользователь с таким именем уже существует - + Part-DB1\src\Entity\UserSystem\User.php:0 Part-DB1\src\Entity\UserSystem\User.php:0 @@ -167,7 +167,7 @@ Имя пользователя должно содержать только буквы, цифры, знак подчеркивания, знаки препинания, плюс и минус. - + obsolete @@ -176,7 +176,7 @@ Элемент не может быть собственным родителем - + obsolete @@ -185,167 +185,179 @@ Родитель не может быть дочерним по отношению к себе - + validator.select_valid_category Пожалуйста, выберите действительную категорию! - + validator.part_lot.only_existing Вы не можете добавлять новые компоненты в хранилище которое помечено как "только существующие". - + validator.part_lot.location_full.no_increase Место хранения заполнено. Запас не может быть увеличен (новое значение должно быть меньше {{old_amount}}). - + validator.part_lot.location_full Вы не можете добавлять новые компоненты в хранилище которое отмечено как "полное". - + validator.part_lot.single_part Вы не можете добавлять новые компоненты в хранилище которое отмечено как "единственный компонент". - + validator.attachment.must_not_be_null Вы должны выбрать тип файла! - + validator.orderdetail.supplier_must_not_be_null Вы должны выбрать поставщика! - + validator.measurement_unit.use_si_prefix_needs_unit Чтобы включить префиксы СИ, необходимо установить символ единицы! - + part.ipn.must_be_unique Внутренний номер детали (IPN) должен быть уникальным. Значение {{value}} уже используется! - + validator.project.bom_entry.name_or_part_needed Вам необходимо выбрать компонент или задать имя для BOM, не относящейся к компоненту! - + project.bom_entry.name_already_in_bom Запись BOM с таким именем уже существует! - + project.bom_entry.part_already_in_bom Этот компонент уже существует в BOM! - + project.bom_entry.mountnames_quantity_mismatch Количество наименований сборок должно соответствовать количеству собираемых компонентов! - + project.bom_entry.can_not_add_own_builds_part BOM проекта не может содержать собственную производственную составляющую! - + project.bom_has_to_include_all_subelement_parts BOM проекта должна содержать все производственные компоненты подпроектов. Компонент %part_name% проекта %project_name% отсутствует! - + project.bom_entry.price_not_allowed_on_parts Невозможно определить цену для BOM записей компонента. Вместо этого определите цену на сам компонент. - + validator.project_build.lot_bigger_than_needed Вы выбрали для удаления больше, чем необходимо. Уберите лишнее количество. - + validator.project_build.lot_smaller_than_needed Они выбрали меньшее количество, чем необходимо для сборки! Добавьте больше. - + part.name.must_match_category_regex Имя компонента не соответствует регулярному выражению, указанному в категории: %regex% - + validator.attachment.name_not_blank Выберите значение или загрузите файл, чтобы автоматически использовать его имя в качестве имени для этого вложения. - + validator.part_lot.owner_must_match_storage_location_owner Владелец этого инвентаря и выбранное место хранения должны совпадать (%owner_name%)! - + validator.part_lot.owner_must_not_be_anonymous Владелец не может быть анонимным пользователем! - + validator.part_association.must_set_an_value_if_type_is_other Если тип ссылки установлен на «Другое», необходимо установить описательное значение! - + validator.part_association.part_cannot_be_associated_with_itself Компонент не может быть связан сам с собой! - + validator.part_association.already_exists Ссылка на этот компонент уже существует! - + validator.part_lot.vendor_barcode_must_be_unique Штрих-код этого поставщика уже используется в другом инвентаре. Штрих-код должен быть уникальным! - + validator.year_2038_bug_on_32bit Из-за технических ограничений невозможно выбрать дату позднее чем 19 января 2038 года на 32-битных системах! + + + validator.invalid_range + Указанный диапазон недействителен! + + + + + validator.google_code.wrong_code + Неверный код. Проверьте, что приложение аутентификации настроено правильно и что на сервере и устройстве аутентификации установлено правильное время. + + diff --git a/webpack.config.js b/webpack.config.js index d5243897..43e04997 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -36,8 +36,8 @@ if (!Encore.isRuntimeEnvironmentConfigured()) { Encore // directory where compiled assets will be stored .setOutputPath('public/build/') - // This value doesn't matter, as the public path is set to auto later down. This is just to prevent a warning - .setPublicPath('/build') + // Do not use a / prefix, here as that would break asset loading when serving Part-DB under a prefix! + .setPublicPath('build') // only needed for CDN's or subdirectory deploy (this should not be needeed, as we use auto public path) //.setManifestKeyPrefix('build/') @@ -59,6 +59,12 @@ Encore .addEntry('app', './assets/js/app.js') .addEntry('webauthn_tfa', './assets/js/webauthn_tfa.js') + //Configure to just output the zxing wasm file, without parsing it + .addRule({ + test: /zxing_reader\.wasm$/, + type: "asset/resource" + }) + //.addEntry('page1', './assets/js/page1.js') //.addEntry('page2', './assets/js/page2.js') @@ -189,6 +195,10 @@ if (Encore.isDev()) { module.exports = Encore.getWebpackConfig(); -//Enable webpack auto public path (this only works in combination with WebpackAutoPathSubscriber!!) +//Enable webassembly support +module.exports.experiments = module.exports.experiments || {}; +module.exports.experiments.asyncWebAssembly = true; + +//Enable webpack auto public path //We do it here to supress a warning caused by webpack Encore module.exports.output.publicPath = 'auto'; diff --git a/yarn.lock b/yarn.lock index 4ae7d84b..1d2aa6a1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,58 +2,58 @@ # yarn lockfile v1 -"@algolia/autocomplete-core@1.17.6": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.17.6.tgz#63f4c2f21a215cb9968611f51a82d6017cd690df" - integrity sha512-lkDoW4I7h2kKlIgf3pUt1LqvxyYKkVyiypoGLlUnhPSnCpmeOwudM6rNq6YYsCmdQtnDQoW5lUNNuj6ASg3qeg== +"@algolia/autocomplete-core@1.19.1": + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.19.1.tgz#70b6bea6f6549be6f9f25a48f4e7001eb3dd67fa" + integrity sha512-MeZZN1NSPgfp2zhiaCyAW02jOWMftCJ06qoeEVEQ8v+kMlXL15SUYBpQwj7Gd+nV46KHqDrW+g5EGqhCsX6zWg== dependencies: - "@algolia/autocomplete-plugin-algolia-insights" "1.17.6" - "@algolia/autocomplete-shared" "1.17.6" + "@algolia/autocomplete-plugin-algolia-insights" "1.19.1" + "@algolia/autocomplete-shared" "1.19.1" -"@algolia/autocomplete-js@1.17.6", "@algolia/autocomplete-js@^1.17.0": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-js/-/autocomplete-js-1.17.6.tgz#92cd8eff6097263fd18be58662a9145df9e997ef" - integrity sha512-V1OWF6ilykKBWy390s2RYU8E5gutHL3BBPHkeOZ5rZAaMlo0CxF/khl7sbjZ4aoZ8pGNGj4Ac+9VHM7Vc47SOQ== +"@algolia/autocomplete-js@1.19.1", "@algolia/autocomplete-js@^1.17.0": + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-js/-/autocomplete-js-1.19.1.tgz#14bb7f0cd94f87eeb2e01cbb65eb3d7efb572a23" + integrity sha512-4uVK+2GQ3JbnaOtX2eD6mYew62jHY5hJ/0ZPn/0awaVnvlqpvXo4iRo4RNbrZ/7GyMNNlsBeE1p4PZJ+hDB5UQ== dependencies: - "@algolia/autocomplete-core" "1.17.6" - "@algolia/autocomplete-preset-algolia" "1.17.6" - "@algolia/autocomplete-shared" "1.17.6" + "@algolia/autocomplete-core" "1.19.1" + "@algolia/autocomplete-preset-algolia" "1.19.1" + "@algolia/autocomplete-shared" "1.19.1" htm "^3.1.1" preact "^10.13.2" -"@algolia/autocomplete-plugin-algolia-insights@1.17.6": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.6.tgz#ff760852769e9f27a70f48f2c4e111fc93fd64e5" - integrity sha512-17NnaacuFzSWVuZu4NKzVeaFIe9Abpw8w+/gjc7xhZFtqj+GadufzodIdchwiB2eM2cDdiR3icW7gbNTB3K2YA== +"@algolia/autocomplete-plugin-algolia-insights@1.19.1": + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.19.1.tgz#2089b8aa239180e2b71db3764edee272ac7c855e" + integrity sha512-TPVerIGKbfOwd69ZNrriI6voKRwwj6Vmy4tD12/3RCh8zdvDOdRvc7LxeKPtgwJzavZkfH7nK9pb+4E+PCdgdg== dependencies: - "@algolia/autocomplete-shared" "1.17.6" + "@algolia/autocomplete-shared" "1.19.1" "@algolia/autocomplete-plugin-recent-searches@^1.17.0": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-recent-searches/-/autocomplete-plugin-recent-searches-1.17.6.tgz#ea4f495b0eee69b7f9038684054a85b6941d3968" - integrity sha512-S5t145rkBTuCFTMUgm6Xd/NQB45Vm2Qc3akJST8JuyY5oo/NvJ53GMcz4rE7D61V3oFx/nKYkBJ1hIv7Yvlqlw== + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-recent-searches/-/autocomplete-plugin-recent-searches-1.19.1.tgz#83beacfd16c618f0c3a55c313994dd0c0c4b22aa" + integrity sha512-U1jxgqqwQb5xBxu4nQ9esLi9r4Z18mw2M4xbl/U6ztE/lNSzEqh4IM9q43chKXXwZfKuBL5k6h/0F4PX0aykcA== dependencies: - "@algolia/autocomplete-core" "1.17.6" - "@algolia/autocomplete-js" "1.17.6" - "@algolia/autocomplete-preset-algolia" "1.17.6" - "@algolia/autocomplete-shared" "1.17.6" + "@algolia/autocomplete-core" "1.19.1" + "@algolia/autocomplete-js" "1.19.1" + "@algolia/autocomplete-preset-algolia" "1.19.1" + "@algolia/autocomplete-shared" "1.19.1" -"@algolia/autocomplete-preset-algolia@1.17.6": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.6.tgz#465b652bff5c262aad4da2488d78629cfa906be6" - integrity sha512-Cvg5JENdSCMuClwhJ1ON1/jSuojaYMiUW2KePm18IkdCzPJj/NXojaOxw58RFtQFpJgfVW8h2E8mEoDtLlMdeA== +"@algolia/autocomplete-preset-algolia@1.19.1": + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.19.1.tgz#800162ad98dc57e8d26242b748702f79ea24279e" + integrity sha512-8VTPeE7UwyfvNF44IEkaNOnRoofv0Ejtsqg3tu9T8gj+pbVMj8NBErlbYD88es893EseqJj7oWAhqcq1bgnxcQ== dependencies: - "@algolia/autocomplete-shared" "1.17.6" + "@algolia/autocomplete-shared" "1.19.1" -"@algolia/autocomplete-shared@1.17.6": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.6.tgz#ad951632b6d477d4ba9a68a347e1702d26009d58" - integrity sha512-aq/3V9E00Tw2GC/PqgyPGXtqJUlVc17v4cn1EUhSc+O/4zd04Uwb3UmPm8KDaYQQOrkt1lwvCj2vG2wRE5IKhw== +"@algolia/autocomplete-shared@1.19.1": + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.19.1.tgz#ce15e1fb682a2ea0ddc8e19814d4c5eaf1457355" + integrity sha512-/GcOv70emuVdSHBAERW7/r4czMzJROkgLOl45+ugyxK79RzSkXV2esY638qSo6mzC7EVwglSJ8BQ0kAVKVxMjA== "@algolia/autocomplete-theme-classic@^1.17.0": - version "1.17.6" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-theme-classic/-/autocomplete-theme-classic-1.17.6.tgz#a0a9825eeaa8a95dc34c7adb38686595107eed41" - integrity sha512-A1nOHqoL91G3arHU0cnzIFOw2nnVGoK/fMMndB5jSLMcLbJBjDbgdwGrT2FcAct83tAobvLmWTe0etQnktotgw== + version "1.19.1" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-theme-classic/-/autocomplete-theme-classic-1.19.1.tgz#900bb530d3844eeea1238acf6056a13eb5cf953a" + integrity sha512-cNYN9Zosz+4hS+N8bE3yaKu4N0JD0CiNoNEqtZbemI+2xDSDo2MjRVVwWRz7gBn7wyimfp90apWgRJ3mnuGvDw== "@ampproject/remapping@^2.2.0": version "2.3.0" @@ -63,104 +63,96 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" - integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" + integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== dependencies: - "@babel/helper-validator-identifier" "^7.25.9" + "@babel/helper-validator-identifier" "^7.27.1" js-tokens "^4.0.0" - picocolors "^1.0.0" + picocolors "^1.1.1" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9", "@babel/compat-data@^7.26.0": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.2.tgz#278b6b13664557de95b8f35b90d96785850bb56e" - integrity sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.27.2": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.27.2.tgz#4183f9e642fd84e74e3eea7ffa93a412e3b102c9" + integrity sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ== "@babel/core@^7.19.6": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" - integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.27.1.tgz#89de51e86bd12246003e3524704c49541b16c3e6" + integrity sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.26.0" - "@babel/generator" "^7.26.0" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-module-transforms" "^7.26.0" - "@babel/helpers" "^7.26.0" - "@babel/parser" "^7.26.0" - "@babel/template" "^7.25.9" - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.26.0" + "@babel/code-frame" "^7.27.1" + "@babel/generator" "^7.27.1" + "@babel/helper-compilation-targets" "^7.27.1" + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helpers" "^7.27.1" + "@babel/parser" "^7.27.1" + "@babel/template" "^7.27.1" + "@babel/traverse" "^7.27.1" + "@babel/types" "^7.27.1" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.25.9", "@babel/generator@^7.26.0": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.2.tgz#87b75813bec87916210e5e01939a4c823d6bb74f" - integrity sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw== +"@babel/generator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.27.1.tgz#862d4fad858f7208edd487c28b58144036b76230" + integrity sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w== dependencies: - "@babel/parser" "^7.26.2" - "@babel/types" "^7.26.0" + "@babel/parser" "^7.27.1" + "@babel/types" "^7.27.1" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^3.0.2" -"@babel/helper-annotate-as-pure@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" - integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== +"@babel/helper-annotate-as-pure@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.1.tgz#4345d81a9a46a6486e24d069469f13e60445c05d" + integrity sha512-WnuuDILl9oOBbKnb4L+DyODx7iC47XfzmNCpTttFsSp6hTG7XZxu60+4IO+2/hPfcGOoKbFiwoI/+zwARbNQow== dependencies: - "@babel/types" "^7.25.9" + "@babel/types" "^7.27.1" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz#f41752fe772a578e67286e6779a68a5a92de1ee9" - integrity sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.27.1", "@babel/helper-compilation-targets@^7.27.2": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz#46a0f6efab808d51d29ce96858dd10ce8732733d" + integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ== dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" - integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== - dependencies: - "@babel/compat-data" "^7.25.9" - "@babel/helper-validator-option" "^7.25.9" + "@babel/compat-data" "^7.27.2" + "@babel/helper-validator-option" "^7.27.1" browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83" - integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ== +"@babel/helper-create-class-features-plugin@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz#5bee4262a6ea5ddc852d0806199eb17ca3de9281" + integrity sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-member-expression-to-functions" "^7.25.9" - "@babel/helper-optimise-call-expression" "^7.25.9" - "@babel/helper-replace-supers" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-annotate-as-pure" "^7.27.1" + "@babel/helper-member-expression-to-functions" "^7.27.1" + "@babel/helper-optimise-call-expression" "^7.27.1" + "@babel/helper-replace-supers" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + "@babel/traverse" "^7.27.1" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz#3e8999db94728ad2b2458d7a470e7770b7764e26" - integrity sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz#05b0882d97ba1d4d03519e4bce615d70afa18c53" + integrity sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - regexpu-core "^6.1.1" + "@babel/helper-annotate-as-pure" "^7.27.1" + regexpu-core "^6.2.0" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.6.2": - version "0.6.2" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d" - integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ== +"@babel/helper-define-polyfill-provider@^0.6.3", "@babel/helper-define-polyfill-provider@^0.6.4": + version "0.6.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.4.tgz#15e8746368bfa671785f5926ff74b3064c291fab" + integrity sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw== dependencies: "@babel/helper-compilation-targets" "^7.22.6" "@babel/helper-plugin-utils" "^7.22.5" @@ -168,173 +160,165 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-member-expression-to-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" - integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== +"@babel/helper-member-expression-to-functions@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz#ea1211276be93e798ce19037da6f06fbb994fa44" + integrity sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA== dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/traverse" "^7.27.1" + "@babel/types" "^7.27.1" -"@babel/helper-module-imports@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" - integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== +"@babel/helper-module-imports@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz#7ef769a323e2655e126673bb6d2d6913bbead204" + integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w== dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/traverse" "^7.27.1" + "@babel/types" "^7.27.1" -"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" - integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== +"@babel/helper-module-transforms@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.27.1.tgz#e1663b8b71d2de948da5c4fb2a20ca4f3ec27a6f" + integrity sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g== dependencies: - "@babel/helper-module-imports" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-module-imports" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/helper-optimise-call-expression@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" - integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== +"@babel/helper-optimise-call-expression@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz#c65221b61a643f3e62705e5dd2b5f115e35f9200" + integrity sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw== dependencies: - "@babel/types" "^7.25.9" + "@babel/types" "^7.27.1" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" - integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz#ddb2f876534ff8013e6c2b299bf4d39b3c51d44c" + integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw== -"@babel/helper-remap-async-to-generator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92" - integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw== +"@babel/helper-remap-async-to-generator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz#4601d5c7ce2eb2aea58328d43725523fcd362ce6" + integrity sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-wrap-function" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-annotate-as-pure" "^7.27.1" + "@babel/helper-wrap-function" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/helper-replace-supers@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5" - integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ== +"@babel/helper-replace-supers@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz#b1ed2d634ce3bdb730e4b52de30f8cccfd692bc0" + integrity sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA== dependencies: - "@babel/helper-member-expression-to-functions" "^7.25.9" - "@babel/helper-optimise-call-expression" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-member-expression-to-functions" "^7.27.1" + "@babel/helper-optimise-call-expression" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/helper-simple-access@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz#6d51783299884a2c74618d6ef0f86820ec2e7739" - integrity sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q== +"@babel/helper-skip-transparent-expression-wrappers@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz#62bb91b3abba8c7f1fec0252d9dbea11b3ee7a56" + integrity sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg== dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/traverse" "^7.27.1" + "@babel/types" "^7.27.1" -"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" - integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== +"@babel/helper-string-parser@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" + integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== + +"@babel/helper-validator-identifier@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" + integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== + +"@babel/helper-validator-option@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz#fa52f5b1e7db1ab049445b421c4471303897702f" + integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== + +"@babel/helper-wrap-function@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz#b88285009c31427af318d4fe37651cd62a142409" + integrity sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ== dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/template" "^7.27.1" + "@babel/traverse" "^7.27.1" + "@babel/types" "^7.27.1" -"@babel/helper-string-parser@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" - integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== - -"@babel/helper-validator-identifier@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" - integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== - -"@babel/helper-validator-option@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" - integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== - -"@babel/helper-wrap-function@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0" - integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g== +"@babel/helpers@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.27.1.tgz#ffc27013038607cdba3288e692c3611c06a18aa4" + integrity sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ== dependencies: - "@babel/template" "^7.25.9" - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/template" "^7.27.1" + "@babel/types" "^7.27.1" -"@babel/helpers@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" - integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== +"@babel/parser@^7.18.9", "@babel/parser@^7.27.1", "@babel/parser@^7.27.2": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.27.2.tgz#577518bedb17a2ce4212afd052e01f7df0941127" + integrity sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw== dependencies: - "@babel/template" "^7.25.9" - "@babel/types" "^7.26.0" + "@babel/types" "^7.27.1" -"@babel/parser@^7.18.9", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.2": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.2.tgz#fd7b6f487cfea09889557ef5d4eeb9ff9a5abd11" - integrity sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz#61dd8a8e61f7eb568268d1b5f129da3eee364bf9" + integrity sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA== dependencies: - "@babel/types" "^7.26.0" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" - integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g== +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz#43f70a6d7efd52370eefbdf55ae03d91b293856d" + integrity sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30" - integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz#beb623bd573b8b6f3047bd04c32506adc3e58a72" + integrity sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137" - integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz#e134a5479eb2ba9c02714e8c1ebf1ec9076124fd" + integrity sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + "@babel/plugin-transform-optional-chaining" "^7.27.1" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1" - integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.27.1.tgz#bb1c25af34d75115ce229a1de7fa44bf8f955670" + integrity sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - "@babel/plugin-transform-optional-chaining" "^7.25.9" - -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e" - integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/traverse" "^7.27.1" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== -"@babel/plugin-syntax-import-assertions@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" - integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg== +"@babel/plugin-syntax-import-assertions@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz#88894aefd2b03b5ee6ad1562a7c8e1587496aecd" + integrity sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-syntax-import-attributes@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7" - integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A== +"@babel/plugin-syntax-import-attributes@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz#34c017d54496f9b11b61474e7ea3dfd5563ffe07" + integrity sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" @@ -344,468 +328,466 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845" - integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg== +"@babel/plugin-transform-arrow-functions@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz#6e2061067ba3ab0266d834a9f94811196f2aba9a" + integrity sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-async-generator-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz#1b18530b077d18a407c494eb3d1d72da505283a2" - integrity sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw== +"@babel/plugin-transform-async-generator-functions@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.27.1.tgz#ca433df983d68e1375398e7ca71bf2a4f6fd89d7" + integrity sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-remap-async-to-generator" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-remap-async-to-generator" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/plugin-transform-async-to-generator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71" - integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ== +"@babel/plugin-transform-async-to-generator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz#9a93893b9379b39466c74474f55af03de78c66e7" + integrity sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA== dependencies: - "@babel/helper-module-imports" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-remap-async-to-generator" "^7.25.9" + "@babel/helper-module-imports" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-remap-async-to-generator" "^7.27.1" -"@babel/plugin-transform-block-scoped-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz#5700691dbd7abb93de300ca7be94203764fce458" - integrity sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA== +"@babel/plugin-transform-block-scoped-functions@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz#558a9d6e24cf72802dd3b62a4b51e0d62c0f57f9" + integrity sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-block-scoping@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1" - integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg== +"@babel/plugin-transform-block-scoping@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.1.tgz#bc0dbe8ac6de5602981ba58ef68c6df8ef9bfbb3" + integrity sha512-QEcFlMl9nGTgh1rn2nIeU5bkfb9BAjaQcWbiP4LvKxUot52ABcTkpcyJ7f2Q2U2RuQ84BNLgts3jRme2dTx6Fw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-class-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f" - integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q== +"@babel/plugin-transform-class-properties@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz#dd40a6a370dfd49d32362ae206ddaf2bb082a925" + integrity sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-class-static-block@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0" - integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ== +"@babel/plugin-transform-class-static-block@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.27.1.tgz#7e920d5625b25bbccd3061aefbcc05805ed56ce4" + integrity sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-classes@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52" - integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg== +"@babel/plugin-transform-classes@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.27.1.tgz#03bb04bea2c7b2f711f0db7304a8da46a85cced4" + integrity sha512-7iLhfFAubmpeJe/Wo2TVuDrykh/zlWXLzPNdL0Jqn/Xu8R3QQ8h9ff8FQoISZOsw74/HFqFI7NX63HN7QFIHKA== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-replace-supers" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-annotate-as-pure" "^7.27.1" + "@babel/helper-compilation-targets" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-replace-supers" "^7.27.1" + "@babel/traverse" "^7.27.1" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b" - integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA== +"@babel/plugin-transform-computed-properties@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz#81662e78bf5e734a97982c2b7f0a793288ef3caa" + integrity sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/template" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/template" "^7.27.1" -"@babel/plugin-transform-destructuring@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1" - integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ== +"@babel/plugin-transform-destructuring@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.27.1.tgz#d5916ef7089cb254df0418ae524533c1b72ba656" + integrity sha512-ttDCqhfvpE9emVkXbPD8vyxxh4TWYACVybGkDj+oReOGwnp066ITEivDlLwe0b1R0+evJ13IXQuLNB5w1fhC5Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-dotall-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a" - integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA== +"@babel/plugin-transform-dotall-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz#aa6821de864c528b1fecf286f0a174e38e826f4d" + integrity sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-duplicate-keys@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d" - integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw== +"@babel/plugin-transform-duplicate-keys@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz#f1fbf628ece18e12e7b32b175940e68358f546d1" + integrity sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31" - integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz#5043854ca620a94149372e69030ff8cb6a9eb0ec" + integrity sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-dynamic-import@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8" - integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg== +"@babel/plugin-transform-dynamic-import@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz#4c78f35552ac0e06aa1f6e3c573d67695e8af5a4" + integrity sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-exponentiation-operator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz#ece47b70d236c1d99c263a1e22b62dc20a4c8b0f" - integrity sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA== +"@babel/plugin-transform-exponentiation-operator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz#fc497b12d8277e559747f5a3ed868dd8064f83e1" + integrity sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-export-namespace-from@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2" - integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww== +"@babel/plugin-transform-export-namespace-from@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz#71ca69d3471edd6daa711cf4dfc3400415df9c23" + integrity sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-for-of@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz#4bdc7d42a213397905d89f02350c5267866d5755" - integrity sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A== +"@babel/plugin-transform-for-of@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz#bc24f7080e9ff721b63a70ac7b2564ca15b6c40a" + integrity sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" -"@babel/plugin-transform-function-name@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97" - integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA== +"@babel/plugin-transform-function-name@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz#4d0bf307720e4dce6d7c30fcb1fd6ca77bdeb3a7" + integrity sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ== dependencies: - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-compilation-targets" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/plugin-transform-json-strings@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660" - integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw== +"@babel/plugin-transform-json-strings@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz#a2e0ce6ef256376bd527f290da023983527a4f4c" + integrity sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de" - integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ== +"@babel/plugin-transform-literals@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz#baaefa4d10a1d4206f9dcdda50d7d5827bb70b24" + integrity sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-logical-assignment-operators@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7" - integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q== +"@babel/plugin-transform-logical-assignment-operators@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz#890cb20e0270e0e5bebe3f025b434841c32d5baa" + integrity sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-member-expression-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de" - integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA== +"@babel/plugin-transform-member-expression-literals@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz#37b88ba594d852418e99536f5612f795f23aeaf9" + integrity sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-modules-amd@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5" - integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw== +"@babel/plugin-transform-modules-amd@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz#a4145f9d87c2291fe2d05f994b65dba4e3e7196f" + integrity sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA== dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-modules-commonjs@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz#d165c8c569a080baf5467bda88df6425fc060686" - integrity sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg== +"@babel/plugin-transform-modules-commonjs@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz#8e44ed37c2787ecc23bdc367f49977476614e832" + integrity sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw== dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-simple-access" "^7.25.9" + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-modules-systemjs@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8" - integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA== +"@babel/plugin-transform-modules-systemjs@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz#00e05b61863070d0f3292a00126c16c0e024c4ed" + integrity sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA== dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - "@babel/traverse" "^7.25.9" + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + "@babel/traverse" "^7.27.1" -"@babel/plugin-transform-modules-umd@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9" - integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw== +"@babel/plugin-transform-modules-umd@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz#63f2cf4f6dc15debc12f694e44714863d34cd334" + integrity sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w== dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-named-capturing-groups-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a" - integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz#f32b8f7818d8fc0cc46ee20a8ef75f071af976e1" + integrity sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-new-target@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd" - integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ== +"@babel/plugin-transform-new-target@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz#259c43939728cad1706ac17351b7e6a7bea1abeb" + integrity sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-nullish-coalescing-operator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz#bcb1b0d9e948168102d5f7104375ca21c3266949" - integrity sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog== +"@babel/plugin-transform-nullish-coalescing-operator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz#4f9d3153bf6782d73dd42785a9d22d03197bc91d" + integrity sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-numeric-separator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1" - integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q== +"@babel/plugin-transform-numeric-separator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz#614e0b15cc800e5997dadd9bd6ea524ed6c819c6" + integrity sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-object-rest-spread@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18" - integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg== +"@babel/plugin-transform-object-rest-spread@^7.27.2": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.27.2.tgz#67f9ab822347aa2bcee91e8996763da79bdea973" + integrity sha512-AIUHD7xJ1mCrj3uPozvtngY3s0xpv7Nu7DoUSnzNY6Xam1Cy4rUznR//pvMHOhQ4AvbCexhbqXCtpxGHOGOO6g== dependencies: - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/plugin-transform-parameters" "^7.25.9" + "@babel/helper-compilation-targets" "^7.27.2" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/plugin-transform-destructuring" "^7.27.1" + "@babel/plugin-transform-parameters" "^7.27.1" -"@babel/plugin-transform-object-super@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03" - integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A== +"@babel/plugin-transform-object-super@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz#1c932cd27bf3874c43a5cac4f43ebf970c9871b5" + integrity sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-replace-supers" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-replace-supers" "^7.27.1" -"@babel/plugin-transform-optional-catch-binding@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3" - integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g== +"@babel/plugin-transform-optional-catch-binding@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz#84c7341ebde35ccd36b137e9e45866825072a30c" + integrity sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-optional-chaining@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd" - integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A== +"@babel/plugin-transform-optional-chaining@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz#874ce3c4f06b7780592e946026eb76a32830454f" + integrity sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" -"@babel/plugin-transform-parameters@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257" - integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g== +"@babel/plugin-transform-parameters@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.1.tgz#80334b54b9b1ac5244155a0c8304a187a618d5a7" + integrity sha512-018KRk76HWKeZ5l4oTj2zPpSh+NbGdt0st5S6x0pga6HgrjBOJb24mMDHorFopOOd6YHkLgOZ+zaCjZGPO4aKg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-private-methods@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57" - integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== +"@babel/plugin-transform-private-methods@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz#fdacbab1c5ed81ec70dfdbb8b213d65da148b6af" + integrity sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-private-property-in-object@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33" - integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw== +"@babel/plugin-transform-private-property-in-object@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz#4dbbef283b5b2f01a21e81e299f76e35f900fb11" + integrity sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-annotate-as-pure" "^7.27.1" + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-property-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f" - integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA== +"@babel/plugin-transform-property-literals@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz#07eafd618800591e88073a0af1b940d9a42c6424" + integrity sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-regenerator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b" - integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg== +"@babel/plugin-transform-regenerator@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.1.tgz#0a471df9213416e44cd66bf67176b66f65768401" + integrity sha512-B19lbbL7PMrKr52BNPjCqg1IyNUIjTcxKj8uX9zHO+PmWN93s19NDr/f69mIkEp2x9nmDJ08a7lgHaTTzvW7mw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - regenerator-transform "^0.15.2" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-regexp-modifiers@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850" - integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw== +"@babel/plugin-transform-regexp-modifiers@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz#df9ba5577c974e3f1449888b70b76169998a6d09" + integrity sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-reserved-words@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce" - integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg== +"@babel/plugin-transform-reserved-words@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz#40fba4878ccbd1c56605a4479a3a891ac0274bb4" + integrity sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-shorthand-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2" - integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng== +"@babel/plugin-transform-shorthand-properties@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz#532abdacdec87bfee1e0ef8e2fcdee543fe32b90" + integrity sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-spread@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9" - integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A== +"@babel/plugin-transform-spread@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz#1a264d5fc12750918f50e3fe3e24e437178abb08" + integrity sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" -"@babel/plugin-transform-sticky-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32" - integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA== +"@babel/plugin-transform-sticky-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz#18984935d9d2296843a491d78a014939f7dcd280" + integrity sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-template-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz#6dbd4a24e8fad024df76d1fac6a03cf413f60fe1" - integrity sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw== +"@babel/plugin-transform-template-literals@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz#1a0eb35d8bb3e6efc06c9fd40eb0bcef548328b8" + integrity sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-typeof-symbol@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz#224ba48a92869ddbf81f9b4a5f1204bbf5a2bc4b" - integrity sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA== +"@babel/plugin-transform-typeof-symbol@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz#70e966bb492e03509cf37eafa6dcc3051f844369" + integrity sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-unicode-escapes@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82" - integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q== +"@babel/plugin-transform-unicode-escapes@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz#3e3143f8438aef842de28816ece58780190cf806" + integrity sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg== dependencies: - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-unicode-property-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3" - integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg== +"@babel/plugin-transform-unicode-property-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz#bdfe2d3170c78c5691a3c3be934c8c0087525956" + integrity sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-unicode-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1" - integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA== +"@babel/plugin-transform-unicode-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz#25948f5c395db15f609028e370667ed8bae9af97" + integrity sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-unicode-sets-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe" - integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ== +"@babel/plugin-transform-unicode-sets-regex@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz#6ab706d10f801b5c72da8bb2548561fa04193cd1" + integrity sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" "@babel/preset-env@^7.19.4": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.0.tgz#30e5c6bc1bcc54865bff0c5a30f6d4ccdc7fa8b1" - integrity sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw== + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.27.2.tgz#106e6bfad92b591b1f6f76fd4cf13b7725a7bf9a" + integrity sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ== dependencies: - "@babel/compat-data" "^7.26.0" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-validator-option" "^7.25.9" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.9" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.9" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.9" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9" + "@babel/compat-data" "^7.27.2" + "@babel/helper-compilation-targets" "^7.27.2" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-validator-option" "^7.27.1" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.27.1" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.27.1" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.27.1" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.27.1" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.27.1" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-import-assertions" "^7.26.0" - "@babel/plugin-syntax-import-attributes" "^7.26.0" + "@babel/plugin-syntax-import-assertions" "^7.27.1" + "@babel/plugin-syntax-import-attributes" "^7.27.1" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.25.9" - "@babel/plugin-transform-async-generator-functions" "^7.25.9" - "@babel/plugin-transform-async-to-generator" "^7.25.9" - "@babel/plugin-transform-block-scoped-functions" "^7.25.9" - "@babel/plugin-transform-block-scoping" "^7.25.9" - "@babel/plugin-transform-class-properties" "^7.25.9" - "@babel/plugin-transform-class-static-block" "^7.26.0" - "@babel/plugin-transform-classes" "^7.25.9" - "@babel/plugin-transform-computed-properties" "^7.25.9" - "@babel/plugin-transform-destructuring" "^7.25.9" - "@babel/plugin-transform-dotall-regex" "^7.25.9" - "@babel/plugin-transform-duplicate-keys" "^7.25.9" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.9" - "@babel/plugin-transform-dynamic-import" "^7.25.9" - "@babel/plugin-transform-exponentiation-operator" "^7.25.9" - "@babel/plugin-transform-export-namespace-from" "^7.25.9" - "@babel/plugin-transform-for-of" "^7.25.9" - "@babel/plugin-transform-function-name" "^7.25.9" - "@babel/plugin-transform-json-strings" "^7.25.9" - "@babel/plugin-transform-literals" "^7.25.9" - "@babel/plugin-transform-logical-assignment-operators" "^7.25.9" - "@babel/plugin-transform-member-expression-literals" "^7.25.9" - "@babel/plugin-transform-modules-amd" "^7.25.9" - "@babel/plugin-transform-modules-commonjs" "^7.25.9" - "@babel/plugin-transform-modules-systemjs" "^7.25.9" - "@babel/plugin-transform-modules-umd" "^7.25.9" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.9" - "@babel/plugin-transform-new-target" "^7.25.9" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.9" - "@babel/plugin-transform-numeric-separator" "^7.25.9" - "@babel/plugin-transform-object-rest-spread" "^7.25.9" - "@babel/plugin-transform-object-super" "^7.25.9" - "@babel/plugin-transform-optional-catch-binding" "^7.25.9" - "@babel/plugin-transform-optional-chaining" "^7.25.9" - "@babel/plugin-transform-parameters" "^7.25.9" - "@babel/plugin-transform-private-methods" "^7.25.9" - "@babel/plugin-transform-private-property-in-object" "^7.25.9" - "@babel/plugin-transform-property-literals" "^7.25.9" - "@babel/plugin-transform-regenerator" "^7.25.9" - "@babel/plugin-transform-regexp-modifiers" "^7.26.0" - "@babel/plugin-transform-reserved-words" "^7.25.9" - "@babel/plugin-transform-shorthand-properties" "^7.25.9" - "@babel/plugin-transform-spread" "^7.25.9" - "@babel/plugin-transform-sticky-regex" "^7.25.9" - "@babel/plugin-transform-template-literals" "^7.25.9" - "@babel/plugin-transform-typeof-symbol" "^7.25.9" - "@babel/plugin-transform-unicode-escapes" "^7.25.9" - "@babel/plugin-transform-unicode-property-regex" "^7.25.9" - "@babel/plugin-transform-unicode-regex" "^7.25.9" - "@babel/plugin-transform-unicode-sets-regex" "^7.25.9" + "@babel/plugin-transform-arrow-functions" "^7.27.1" + "@babel/plugin-transform-async-generator-functions" "^7.27.1" + "@babel/plugin-transform-async-to-generator" "^7.27.1" + "@babel/plugin-transform-block-scoped-functions" "^7.27.1" + "@babel/plugin-transform-block-scoping" "^7.27.1" + "@babel/plugin-transform-class-properties" "^7.27.1" + "@babel/plugin-transform-class-static-block" "^7.27.1" + "@babel/plugin-transform-classes" "^7.27.1" + "@babel/plugin-transform-computed-properties" "^7.27.1" + "@babel/plugin-transform-destructuring" "^7.27.1" + "@babel/plugin-transform-dotall-regex" "^7.27.1" + "@babel/plugin-transform-duplicate-keys" "^7.27.1" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.27.1" + "@babel/plugin-transform-dynamic-import" "^7.27.1" + "@babel/plugin-transform-exponentiation-operator" "^7.27.1" + "@babel/plugin-transform-export-namespace-from" "^7.27.1" + "@babel/plugin-transform-for-of" "^7.27.1" + "@babel/plugin-transform-function-name" "^7.27.1" + "@babel/plugin-transform-json-strings" "^7.27.1" + "@babel/plugin-transform-literals" "^7.27.1" + "@babel/plugin-transform-logical-assignment-operators" "^7.27.1" + "@babel/plugin-transform-member-expression-literals" "^7.27.1" + "@babel/plugin-transform-modules-amd" "^7.27.1" + "@babel/plugin-transform-modules-commonjs" "^7.27.1" + "@babel/plugin-transform-modules-systemjs" "^7.27.1" + "@babel/plugin-transform-modules-umd" "^7.27.1" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.27.1" + "@babel/plugin-transform-new-target" "^7.27.1" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.27.1" + "@babel/plugin-transform-numeric-separator" "^7.27.1" + "@babel/plugin-transform-object-rest-spread" "^7.27.2" + "@babel/plugin-transform-object-super" "^7.27.1" + "@babel/plugin-transform-optional-catch-binding" "^7.27.1" + "@babel/plugin-transform-optional-chaining" "^7.27.1" + "@babel/plugin-transform-parameters" "^7.27.1" + "@babel/plugin-transform-private-methods" "^7.27.1" + "@babel/plugin-transform-private-property-in-object" "^7.27.1" + "@babel/plugin-transform-property-literals" "^7.27.1" + "@babel/plugin-transform-regenerator" "^7.27.1" + "@babel/plugin-transform-regexp-modifiers" "^7.27.1" + "@babel/plugin-transform-reserved-words" "^7.27.1" + "@babel/plugin-transform-shorthand-properties" "^7.27.1" + "@babel/plugin-transform-spread" "^7.27.1" + "@babel/plugin-transform-sticky-regex" "^7.27.1" + "@babel/plugin-transform-template-literals" "^7.27.1" + "@babel/plugin-transform-typeof-symbol" "^7.27.1" + "@babel/plugin-transform-unicode-escapes" "^7.27.1" + "@babel/plugin-transform-unicode-property-regex" "^7.27.1" + "@babel/plugin-transform-unicode-regex" "^7.27.1" + "@babel/plugin-transform-unicode-sets-regex" "^7.27.1" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.10.6" + babel-plugin-polyfill-corejs3 "^0.11.0" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.38.1" + core-js-compat "^3.40.0" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -817,301 +799,188 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime@^7.8.4": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" - integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== +"@babel/template@^7.27.1": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.27.2.tgz#fa78ceed3c4e7b63ebf6cb39e5852fca45f6809d" + integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw== dependencies: - regenerator-runtime "^0.14.0" + "@babel/code-frame" "^7.27.1" + "@babel/parser" "^7.27.2" + "@babel/types" "^7.27.1" -"@babel/template@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" - integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== +"@babel/traverse@^7.18.9", "@babel/traverse@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.27.1.tgz#4db772902b133bbddd1c4f7a7ee47761c1b9f291" + integrity sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg== dependencies: - "@babel/code-frame" "^7.25.9" - "@babel/parser" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/traverse@^7.18.9", "@babel/traverse@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" - integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== - dependencies: - "@babel/code-frame" "^7.25.9" - "@babel/generator" "^7.25.9" - "@babel/parser" "^7.25.9" - "@babel/template" "^7.25.9" - "@babel/types" "^7.25.9" + "@babel/code-frame" "^7.27.1" + "@babel/generator" "^7.27.1" + "@babel/parser" "^7.27.1" + "@babel/template" "^7.27.1" + "@babel/types" "^7.27.1" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.4.4": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" - integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== +"@babel/types@^7.27.1", "@babel/types@^7.4.4": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.27.1.tgz#9defc53c16fc899e46941fc6901a9eea1c9d8560" + integrity sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q== dependencies: - "@babel/helper-string-parser" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" -"@ckeditor/ckeditor5-adapter-ckfinder@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-41.4.2.tgz#d2888419e87606efc36623a9d4b7aa90108e9372" - integrity sha512-yXVVEy+lEmyvYwTxn76Ff53fK/qJphf9stoBF4kFKKK/Tfi59EMog2Ctk3iIkLLyt74KmxzvuCXZwE00wDqfLA== +"@ckeditor/ckeditor5-adapter-ckfinder@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-44.3.0.tgz#16132180c770f8f6728ded722b4a2db7488261d6" + integrity sha512-+LYQi4DJmK87Mx3FU7q8Ei3Jv/BrXScR7P1rJVw9bYSySLISw1lPPGEuzNaDm+aI/IMwxAw6Laf7kp+bBfZg1A== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-upload" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-alignment@41.4.2", "@ckeditor/ckeditor5-alignment@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-41.4.2.tgz#8ff9a93278b48e22c6d7060777829293ce9e9a3d" - integrity sha512-kFiEIZfUNt2TCrwJgM4mot6LLqzbH4vbfYcjbrsUz28kLv8guzcwKXPRe0ZrHo+WS7Cny8j5aCEuUAs3sxEmAg== +"@ckeditor/ckeditor5-alignment@44.3.0", "@ckeditor/ckeditor5-alignment@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-44.3.0.tgz#43342043d1a208ec254d038a8dc475e919f24bc8" + integrity sha512-PJLPQPJTaEs/TxmXovb5gZWHFk04VdyFxwpy+LFiVKTewV4T5Mz2jinXwL6+DYmlHh0oDu66O2joSdYeL6F9xw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-autoformat@41.4.2", "@ckeditor/ckeditor5-autoformat@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-41.4.2.tgz#49f7c7ed0e58ed7820c810ea7f2e4b2862cd7005" - integrity sha512-Ukit63jHiAuLyfESdLSc6ya12xKJxDP83krZFiMY5bfXssg0z39CGuHOZlwaI9r7bBjWWMGJJeaC/9i/6L9y7g== +"@ckeditor/ckeditor5-autoformat@44.3.0", "@ckeditor/ckeditor5-autoformat@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-44.3.0.tgz#e249086f0b4046467d7cb339a12934bc480d03f3" + integrity sha512-cKRN73eWaci0px4RL/pu+uFx+/joJyicXjDogqRCqsrHtFnNziAoDxg1aU9F7eReMp+RJc5dqn9R94fZqxdaKQ== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-heading" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-autosave@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autosave/-/ckeditor5-autosave-41.4.2.tgz#605406a4e5ec117fa14e5008794c92b5f9659bf8" - integrity sha512-TgaUhpFfG9csm4seL7LQSS6Rn+Gcm/wteGyD+Yl50BG1mfMIL259KEFkVTXDRwJadQm2KiiHZDLqpcd/lAqc0A== +"@ckeditor/ckeditor5-autosave@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autosave/-/ckeditor5-autosave-44.3.0.tgz#593eb9b7d78c626c455b21b021dc0193fb98f0c9" + integrity sha512-vZS8lMUNwtpUplx1WtiywEmgqy2rXSTrwbCqkENZZ6vIOpYZg9sW0XxWAdCMslBiNZRhAF2et3jT+Es01/aEyg== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-basic-styles@41.4.2", "@ckeditor/ckeditor5-basic-styles@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-41.4.2.tgz#9edf35a11fc99b58d95f04b34b3dd2a0e0b09644" - integrity sha512-+Y+M9/JRX3xSHX/E5zFwzuKPzEeeuL61wcig1DuEz7GvK5sRLJcbdVQmiJnfDh3iOcf/ob1nahNgHAEoCno0Dw== +"@ckeditor/ckeditor5-basic-styles@44.3.0", "@ckeditor/ckeditor5-basic-styles@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-44.3.0.tgz#6704af3086540f9e3969d0397280dd69963b9e69" + integrity sha512-QxwJqzIMYD8Nq7I8utEm2N1wFYve3jR9W1RoxrP005V7F9hXubcG4VFkk1QspVjiPBBtWjYJh7Iq6LjeMnDXgg== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-block-quote@41.4.2", "@ckeditor/ckeditor5-block-quote@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-41.4.2.tgz#502f9c41f70acb90b27e8448f7c6ff8adddfcc61" - integrity sha512-tkEKd3pmDO8QWm243FRDRUv5COayXYZJpMFUL6blw3m6IXb4ujcXKn61A+UwUO+kM0NGTuepHZJkFSuV1/90sw== +"@ckeditor/ckeditor5-block-quote@44.3.0", "@ckeditor/ckeditor5-block-quote@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-44.3.0.tgz#84fd41de294d5cf9e97aa578187fd23e0e448733" + integrity sha512-J+t36widj2/f1DCZqZjCssOu4hdKCpX/mDWOAJwp4BNIei0NATmtHoblH4Lb98P0mF5UeneoLqR4XZlwMYD7tw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-build-balloon-block@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-balloon-block/-/ckeditor5-build-balloon-block-41.4.2.tgz#de00838650bebb306436ad1f354f9bb95d9f094d" - integrity sha512-p2pXJcS0hNuDZXyMi0frSwLZBm1hGGEEajJtAvKdg+pKZvvrIabQzvjtrkUf5P6Lbhl/z1/v2h0pBa76025Q5Q== +"@ckeditor/ckeditor5-bookmark@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-bookmark/-/ckeditor5-bookmark-44.3.0.tgz#11d72f2fece8a7586742879685d0ce1573c986c5" + integrity sha512-e3p6hUYC4LavTSVTDaz9VfpMaXpi35HNXqqCpIGJGtMKq7mYPaGf1ZZqIPEWuZz3UH/h/E445Mrm4KOgRo9hfg== dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-balloon" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-build-balloon@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-balloon/-/ckeditor5-build-balloon-41.4.2.tgz#1198b55349c3c92d87005292273d7d53f111b39f" - integrity sha512-4FLvd2OV4UgPva0/+xHT4ZuEzKLxB9M6D04/G0YFFwvbPiy71zH0iEMj132Wd0fdEJ0fwjF1HfDzhNgI9BPhPA== - dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-balloon" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - -"@ckeditor/ckeditor5-build-classic@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-41.4.2.tgz#2976203162b9a9dcddbe115466bfa08b3a44e0a9" - integrity sha512-fdsxmEPdNdo/usXyYMS2cN/E9KcQIrtmImUYDI+jEs6yzmSgI8By01n+enkKgVxu+2t+g+ctjQwrCpiyWIHTAQ== - dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-classic" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - -"@ckeditor/ckeditor5-build-decoupled-document@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-41.4.2.tgz#3a093da06237f07dd161f41e0e8ca5361e3f7150" - integrity sha512-YIjcJc9flghFsA5gZaL5oIf6TxLJxUZpXgWYa9l5C68enm36bsDycgJWGGbexHK2HOR9AnBr6ThUBQJkn3StTg== - dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-alignment" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-decoupled" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-font" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - -"@ckeditor/ckeditor5-build-inline@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-inline/-/ckeditor5-build-inline-41.4.2.tgz#10407eb183fe6283ee718ea98c965cb9e16d9649" - integrity sha512-h57jjFm0cSOFGSTA2MbvhSXMFxUbPZqwIeA9S0bfUNcGrnm84YaerX8ev8ZP2iMLOckPOcjBiC/70Sp0SvGwxg== - dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-inline" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - -"@ckeditor/ckeditor5-build-multi-root@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-build-multi-root/-/ckeditor5-build-multi-root-41.4.2.tgz#bd535746f7445163a463220844befc0252bd1072" - integrity sha512-Hou3cHuzx2YR6cfbTYYgk2cSBkudCfPru471KxsXUtzw+B7KuHLm3LtnLJNpScF2WoGaOoaFzB9D2PkzlhF5hA== - dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-multi-root" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - -"@ckeditor/ckeditor5-ckbox@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-41.4.2.tgz#0c27f4e471337569a0e014146c6b5455000772b2" - integrity sha512-u6HVTW7O+YSeeCZ+plg78aW74B2G+E7uKy5YQxvB99uCXGWmYy57D2maaEkPI87ZwZD3VlRnvAalaAdngc4M1g== +"@ckeditor/ckeditor5-ckbox@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-44.3.0.tgz#0eaf4edfaf16c7f98606048d2d4b64fad9e54b59" + integrity sha512-R0cHl7aafBU1dvfpFu/dMq+7SMTKa7dAi1wQyu5RqmdN0glCAGXoyffe5h2gujcHGlUqzjGE9oX3207rrPi12A== dependencies: + "@ckeditor/ckeditor5-cloud-services" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-image" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-upload" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" blurhash "2.0.5" - ckeditor5 "41.4.2" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-ckfinder@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-41.4.2.tgz#6ee5539d80e8a62dce0833b49bafc71605c94138" - integrity sha512-QB3igdZOBI+I8q6eTA5+q27VQrj3Nu7PctNKRehwMC/Z6URboTnntqtkZ3inAZEbWcoLTN2tpDthlufUbQ+cfA== +"@ckeditor/ckeditor5-ckfinder@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-44.3.0.tgz#a4a90b960c9c0dc6845c5e6e806c78164dec5420" + integrity sha512-h/kQy9nUG2VmxAL28b56xZnVQDrr/N12cu2QE+ODfHIiumMNPPTx2Q+g7s8/eVhKAmNQuZJPXygokjXrirC8TA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-image" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-clipboard@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-41.4.2.tgz#463b1e60b7c280324b94b0f2f2ad2e4a16152965" - integrity sha512-cMoGXClFxp5uR5Wr1cZnop5IdmqTZXTcrUuEoyhF+1hk+QDhp2ibQ2dTKu6hw+TTzw3Xd6g8Kj0Oj+mXoIur+w== +"@ckeditor/ckeditor5-clipboard@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-44.3.0.tgz#715c8db0788d1233d0fb1859fbe21e78e5c67bb7" + integrity sha512-oCQfsHX0Z7RySzszvkpnsFi/p3pqEjpQs4FVpPXXWasK+3F00kWReYNNQFe+0z0eIw7alo/ZzqYTQG/FQHaQUw== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" - "@ckeditor/ckeditor5-widget" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-cloud-services@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-41.4.2.tgz#32b59caf9025b06e5556c71fadde1c4190ba42ba" - integrity sha512-rgDrpEonA2AchfvgYaeb/olMk/HYxUK4B8XPqs+nJxLmBraTv2lANsgsMbwsqAIiRjT9MknmJdX+CEbqljgL/w== +"@ckeditor/ckeditor5-cloud-services@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-44.3.0.tgz#8153944f92169aef85fad1e124c0e4d301dd96bf" + integrity sha512-c/jLU3lhoqPmwfwEXcU9fGw0ab6dQUcUjQUjamBH1x92p6NnEJTtXJD97trwgKJryZWZ6bk7vJG5nOC4i0XDZA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-code-block@41.4.2", "@ckeditor/ckeditor5-code-block@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-code-block/-/ckeditor5-code-block-41.4.2.tgz#ad6874aa2190d8345f4e5bd59d6463978999a608" - integrity sha512-NyPvffk+yA2rWsiF3Q/dDyO1ZtUvlX5hEVEWCG9C4wz9NVtBmoK0v1HmcsBDYQ//TwLY3N8HA0LX00UGTHVGFw== +"@ckeditor/ckeditor5-code-block@44.3.0", "@ckeditor/ckeditor5-code-block@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-code-block/-/ckeditor5-code-block-44.3.0.tgz#5c3ce5011bfadff576521d9eb16c8dae876082fc" + integrity sha512-LNFRr7OIdvyZTfkmyNW/m48EXTsYdrQyDS/9hp4fpHrv9cC3rHhnP4/rS3vkmPh9FOv5I2JvXS36nn75BjWRRQ== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-core@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-core/-/ckeditor5-core-44.3.0.tgz#26d3f61d405a2bc0f925485410c8e311fe2b9f5c" + integrity sha512-QYyk00JI2wgE2Lr8/A3roRsms3rSOfwMAF88I6Ff2Qf+c8hT6O11gSX18jdd/bGLhfZ0c4IjWc8v67ohgUdMFg== + dependencies: + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-watchdog" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-core@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-core/-/ckeditor5-core-41.4.2.tgz#0779a727b0238368fc09ee4ec855536ea1ab24db" - integrity sha512-kCIJjviiMNIMBMx7XFXFp1IeTELQKv7xyPJiVFDyUftIfthf9uWty72ipZ3BBNBGBkaoTiSzDZ507EsX6czuIQ== - dependencies: - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" - lodash-es "4.17.21" - -"@ckeditor/ckeditor5-dev-translations@^39.1.0", "@ckeditor/ckeditor5-dev-translations@^39.9.1": - version "39.9.1" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-dev-translations/-/ckeditor5-dev-translations-39.9.1.tgz#354809428fcd8fca85687b868098f20fd7066917" - integrity sha512-kXkl6in/PsU+yPoFqN2IbSu4Eoydvn/TV8AzuB84EpL6biKSzyIyt+WGRG9iIEpkxNC096iK7sTthYGJnP09dw== +"@ckeditor/ckeditor5-dev-translations@^43.0.1": + version "43.0.1" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-dev-translations/-/ckeditor5-dev-translations-43.0.1.tgz#fdd9e8ae31ec806f2ba1755048aecf5e7fef3aad" + integrity sha512-V2exqknJanhLvL0Y3Pxmuab5cbzrM5TzaFGigDJvMdADYvdPggEocqyNSnB0YiS+vka6lWG+iGtyu0b8JYyRBQ== dependencies: "@babel/parser" "^7.18.9" "@babel/traverse" "^7.18.9" @@ -1120,12 +989,12 @@ rimraf "^3.0.2" webpack-sources "^2.0.1" -"@ckeditor/ckeditor5-dev-utils@^39.1.0": - version "39.9.1" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-dev-utils/-/ckeditor5-dev-utils-39.9.1.tgz#c5adb7b51d770f22bac6f39ebdd1fcc0464edde9" - integrity sha512-RtwGg/QF8L2FEMESTVR6up3fkpd1vhfq3Du3Hd7ypnkmyyJmhVCtXEb2IlzUtulM3u1dsK6i6l2rnNtYvh+miQ== +"@ckeditor/ckeditor5-dev-utils@^43.0.1": + version "43.0.1" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-dev-utils/-/ckeditor5-dev-utils-43.0.1.tgz#878d1c47d81572f8965a31b0b7d0f9349a86241b" + integrity sha512-GyobheNObVkcqLTU8KVCoPOQWDR56qSWAv+SbGc45+itPh7/VFfdA5/Q7R5oQQk8nXWocL50qLG6EcFpMjMngA== dependencies: - "@ckeditor/ckeditor5-dev-translations" "^39.9.1" + "@ckeditor/ckeditor5-dev-translations" "^43.0.1" chalk "^3.0.0" cli-cursor "^3.1.0" cli-spinners "^2.6.1" @@ -1133,387 +1002,571 @@ cssnano "^6.0.3" del "^5.0.0" esbuild-loader "~3.0.1" - fs-extra "^9.1.0" + fs-extra "^11.2.0" is-interactive "^1.0.0" javascript-stringify "^1.6.0" mini-css-extract-plugin "^2.4.2" + mocha "^7.1.2" postcss "^8.4.12" postcss-import "^14.1.0" postcss-loader "^4.3.0" postcss-mixins "^9.0.2" - postcss-nesting "^10.1.4" + postcss-nesting "^13.0.0" raw-loader "^4.0.1" shelljs "^0.8.1" style-loader "^2.0.0" terser-webpack-plugin "^4.2.3" through2 "^3.0.1" -"@ckeditor/ckeditor5-easy-image@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-41.4.2.tgz#dcd3dc291b8513cb7281eef0ccfbb9d3ddfa4d1e" - integrity sha512-HJJ3Z4R4mCazV2cz+s8bI00ci3/KyIa+fXodBN1+kg3PldX471zSj+DtyFsZyKnUcpUTVygjPEaHKBDpxtUhjQ== +"@ckeditor/ckeditor5-easy-image@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-44.3.0.tgz#6e7e16b99074cb12f13fb400db99a651f31dc697" + integrity sha512-s1Qpf45/31J4rW4RC0ArKLb5QqD0VKTn9LCB83qhyCLfGluk18MOZ2Fc7gfYoxZClzhCwdMQE6mhWOC9bQUmPw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-cloud-services" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-upload" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-editor-balloon@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-41.4.2.tgz#f1402bf4e2a60d824e689c583762901fd46ca768" - integrity sha512-5KI9spGZY1W2GpRLc0aJiqm1/33sGX9vxXAvIRabSF1uhK4b2WP6zdjGy0IcwBpIRnAkEGoPoetFmx1esJOVDw== +"@ckeditor/ckeditor5-editor-balloon@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-44.3.0.tgz#174c60df943c15867ef6df091d5a4e2a111ce5cc" + integrity sha512-Lw6GIIUW37Pi/ErFqx+ozsqRmbBbvhrJhDJ1zIhILEYcwzADHGP32O2pKGLHDf5Z4QTfwunAyG73jvww/ks3kg== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-editor-classic@41.4.2", "@ckeditor/ckeditor5-editor-classic@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-41.4.2.tgz#308eb5e1b80e07dbe08a428affeeccfb1ab93051" - integrity sha512-BVf4ipZz36eCTDFiQ8hqN+oBmuvZPzCmNDDjCYuHNGCKGLaIo1Yzi09fHPUWDw1U+en6Cgnwc2HSWgwf7zC7aA== +"@ckeditor/ckeditor5-editor-classic@44.3.0", "@ckeditor/ckeditor5-editor-classic@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-44.3.0.tgz#af7d64b1febcc4c3339bc9774ab36fd098730f52" + integrity sha512-Vi1tNQdKUCw6X66X2RPhtJPjXJHw/UqHw1Y0J4Vpmi5rf5UHerEj5Sjn+KrjUwDNbmeHtVO/egibLhwRMjKn8A== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-editor-decoupled@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-41.4.2.tgz#9a2a4404108088861062906c7413945179597e8f" - integrity sha512-kzy+Az4Dn+5dCR0FMk1qzlGaqbgNSi0a7qLr17ghfVnqbLYmhhELjgLOKU9cjjIm5L2KMEH2qRq5QHlacO90kA== +"@ckeditor/ckeditor5-editor-decoupled@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-44.3.0.tgz#aa8dc8f5dee4284fb3daab0b98495e0cc3690c11" + integrity sha512-sG4KO0pPhfwQpiegtncDyL9G7nlCsjcWqDieZvRfwy2Uig7EaChny3BoIQhacjO4xKV8ZhXw+dTBJgZRtfePdQ== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-editor-inline@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-41.4.2.tgz#f0a0da2cb1203ac23c54850069b260e2e8adb7ce" - integrity sha512-NlDYZzVVpZblkeVLNrguC437PMqYEXNRGB+KF2uzV5/vPAjz3SjleVcGlbTAWVbMQAUMoOtrmrJjeTR4S93UMA== +"@ckeditor/ckeditor5-editor-inline@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-44.3.0.tgz#e5aab976d12f36a88f3b5966286036c6ae49fc05" + integrity sha512-asa9uWhdTGA6BDda7leJEj57UT3lkDmFAHPFL7fWsvQpL2mszbdf7P6L/rOedGcj2/7a9F8CZfb5aVmENrM3Zw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-editor-multi-root@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-multi-root/-/ckeditor5-editor-multi-root-41.4.2.tgz#78b4e10459649383499ab4e6e591647db01cbc87" - integrity sha512-sqmSEHzX0C3L5H+Svj1dSOyetxOnVb5vL2eS/EdzRpnhThwaPsTVWI83bGHPRTh4h89yEli3nMbNsdTTnsR7Rw== +"@ckeditor/ckeditor5-editor-multi-root@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-multi-root/-/ckeditor5-editor-multi-root-44.3.0.tgz#df6c9a64433c437a3a85b399aada0c0609e7d2aa" + integrity sha512-2k13l0m9+UGMDOzz2uGkj706iMFsayvn+wp6D4niGUOoDGtKOZSX6gNUwq+WcHJ2+54fsXAAJ2xVZB9juXSuhg== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-engine@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-41.4.2.tgz#87890bad428d45ae2d1d387cf51d332d6f4aed99" - integrity sha512-25JqIzNYvCqQ6f02YY+a8A8xtjClzI0YCio0JGoRG3JHJXzYsQbTPsiokuE1BCwMCu3gYoFz8eKJYt2selLsCw== +"@ckeditor/ckeditor5-emoji@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-emoji/-/ckeditor5-emoji-44.3.0.tgz#16796b71758280f11b20dad119c851d53252b736" + integrity sha512-NevoSyV8f9F44oTYFJ8DVaOGmqS1XzCisg/lSW5iwfu2R0+6WXCfU6zlGwp9wVedolznUu5OiYpHK0Emz3dmBw== dependencies: - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-mention" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + fuzzysort "3.1.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-enter@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-41.4.2.tgz#70a9f2173beeb0e20a45ad2142347225c4e2b7b4" - integrity sha512-pvNNcFGn7TFFuJ1QbT0Jggd5xflORxa5i32nZuSzDLVflXGDKq53xSXxapCzd7XsiVXQlufbXt2SlGj7lhyP1w== +"@ckeditor/ckeditor5-engine@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-44.3.0.tgz#6cc5930787ab34c1d8d24d41b5cb76f22d2db1f3" + integrity sha512-76nq2oHwQocaGQfRKlaDaYYFSps3yVNfbC4204i4/S0moKtB9fSy9IBKwYm5D9iB+0qjqCYGnsn17wWNuKjCYQ== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" - -"@ckeditor/ckeditor5-essentials@41.4.2", "@ckeditor/ckeditor5-essentials@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-41.4.2.tgz#0119e78b63f48712bb9f9014d5db52549543e827" - integrity sha512-1UCvk76v2+NDfHfTo3Qg0EJYpddgSC/i66jY3NnQUFt1zt68rAzm/kFOVYjTD/QDn6pyiMAIUeMlKFkswF+upg== - dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-find-and-replace@41.4.2", "@ckeditor/ckeditor5-find-and-replace@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-find-and-replace/-/ckeditor5-find-and-replace-41.4.2.tgz#15967531cdba18ede7f8fc53766e45b09b262d74" - integrity sha512-y3JZF9UMgf6Zwt3HzaPI9B8Gbwc1s+IoK78LFuhkP9B/rgQDBFWi3fXo6ywHsHKZ/EK5JZQuHMdI9czyBuG29Q== - dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-utils" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-font@41.4.2", "@ckeditor/ckeditor5-font@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-font/-/ckeditor5-font-41.4.2.tgz#d92c74d44aa11a9139a519b4fc554837ba628707" - integrity sha512-++7oIK+MXtHGUQkqmXgZqGDBCEsHCuGkss43goGZ97PcRwLegnDRInowj3K/r3nwQcts1VAWnnLCnCSSYbcGIQ== +"@ckeditor/ckeditor5-enter@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-44.3.0.tgz#ae0586b376902f54af8354eb2086f341e43f6d49" + integrity sha512-M5pv6XC5SIqwa9ZiQQsmmvCAot/uiBN/8ax3KvLz8S78eXDHyHKE6mZMWUd0MJCfZ/0b+CnrFVY/kvZkS+h/7g== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" -"@ckeditor/ckeditor5-heading@41.4.2", "@ckeditor/ckeditor5-heading@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-41.4.2.tgz#fe56ae17c04df14698d8e860020c7ec80a45f709" - integrity sha512-8AyMumy90nY49reQlHuCgSJFSaym4emCVF6vAAqd71FHtmgtfS9w3xMqXAk6QbgMjfy46cwind0JITZfBfKqLg== +"@ckeditor/ckeditor5-essentials@44.3.0", "@ckeditor/ckeditor5-essentials@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-44.3.0.tgz#05aea4555d304513a6e0ab4d12dc552e8d5d4770" + integrity sha512-DkE6u0pD3gcFLkyZRNA4IZVvjLQUpgoEeTCaB/QaCQRljSSj9300AtkIFpCdRiWo9RAGw7rs9XmVRoCsTPY4tQ== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-select-all" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-undo" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-highlight@41.4.2", "@ckeditor/ckeditor5-highlight@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-highlight/-/ckeditor5-highlight-41.4.2.tgz#c255e6298a028c68a04fc84f8b8bd57306e29286" - integrity sha512-xAb3Kox0KfoenZaRWgWaZPQwYLauK46WdQ4zYJ16ozQN5mssnS8sU27EFx0OG5EOv9EBurmOcHnP3Rih1szROQ== +"@ckeditor/ckeditor5-find-and-replace@44.3.0", "@ckeditor/ckeditor5-find-and-replace@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-find-and-replace/-/ckeditor5-find-and-replace-44.3.0.tgz#388dd70567054d436a1b5c6c50e852427abaee03" + integrity sha512-d4fLo5IWyxPmfuoIqoaWaekoodgtFurKALc2ZyNvto7H9m+ul+uWwhF4A9buovbETv0N0mertDruGENygiuOCg== dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-horizontal-line@41.4.2", "@ckeditor/ckeditor5-horizontal-line@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-horizontal-line/-/ckeditor5-horizontal-line-41.4.2.tgz#9e7ea7899026309e724949b1057446e7bba41b01" - integrity sha512-le+6melLc8lQTPBWppnWXWaX16KXcvXz8ZOO4uuD7+w5JrtRheEG1N35nTblpeT+QcyBjL9mSu519xReL2qjBA== - dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-html-embed@41.4.2", "@ckeditor/ckeditor5-html-embed@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-embed/-/ckeditor5-html-embed-41.4.2.tgz#17a7c52caa9528766744355a6a70926ed24e5b35" - integrity sha512-rpQMp6ckpYPWnBg8vL23SdKfJ0F80C1iIIO7EA9ZyimPc+hWH7kVF7f8D2Q2ckG1LrlXAXn9cg4tahMFGeiSzw== - dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-html-support@41.4.2", "@ckeditor/ckeditor5-html-support@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-support/-/ckeditor5-html-support-41.4.2.tgz#7644716228cc94b9be53008940af7c937a4fb0bf" - integrity sha512-QHqFgzQucCRvEOPdxcXOMervxhlK6DiR6JqUvgeJyyiWWQT0HGiG7Vy7QKhL6S0w5BUYFoS5B8rj5LjOEm+xsg== - dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-image@41.4.2", "@ckeditor/ckeditor5-image@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-image/-/ckeditor5-image-41.4.2.tgz#bbcde2ef2e32310431d655442e27896ed003d1c6" - integrity sha512-4AgXdvYr6tGzEqwAHVRl+LA8nPRER7vQthVBuT4g1FEkRB6w9kgRsPM2JfsGekoGd8GU0WnMaz8kAcL4C2urYg== +"@ckeditor/ckeditor5-font@44.3.0", "@ckeditor/ckeditor5-font@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-font/-/ckeditor5-font-44.3.0.tgz#d1f9a389bee4c936d0578fa8b2380b702ca5d460" + integrity sha512-F1cdHNbtXkM/1nvqbCO4XeSCHahNiMnwkQqCm36njxuBRXbAei/qTwxqrwPAukE6Yb2q9boX1prUbvEBbPAqhw== dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-heading@44.3.0", "@ckeditor/ckeditor5-heading@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-44.3.0.tgz#f54da5512f21689ced8fb5e15dd53961a28629a1" + integrity sha512-7uCSHN2UMTzn/nZpoACOiUyx2dX4ZlC8bfLbpdgMhDPM9vEaa0Tr/lgSFD5C1ugLFFSEJL3pAPGWStvZ4wD6YA== + dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-paragraph" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-highlight@44.3.0", "@ckeditor/ckeditor5-highlight@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-highlight/-/ckeditor5-highlight-44.3.0.tgz#980b777a13e5cd9620cddfbc1888733307653f06" + integrity sha512-BwdMrcAbS0J/3q3dmtY0F6sVARVR9oSrWj4/850EfXp0hw9gkpQyEjrds17sIrIchCG+/8/0LM4Z9sADYzmo9w== + dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-horizontal-line@44.3.0", "@ckeditor/ckeditor5-horizontal-line@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-horizontal-line/-/ckeditor5-horizontal-line-44.3.0.tgz#f7df090ed4468e544ed87da4a7de6f0ffef278e3" + integrity sha512-k8YuWptng4IKUbXVE+ZjVyNm8JpGU50aFWckYunimlpajNOKC52L8pneIEqIHr/BjA+2P/vtAIf8HDZs+AoNjw== + dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-html-embed@44.3.0", "@ckeditor/ckeditor5-html-embed@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-embed/-/ckeditor5-html-embed-44.3.0.tgz#039f583c769e33fb347679f6b077bd08a6c5c060" + integrity sha512-rJV3ikojykVPw9CrtzInh8DsgGuk/2UOi8KUr3b6DEtuYOqJkG5cfpqRy5QVoSRbtpLhVOWNpEKhYGgiv+HUgw== + dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-html-support@44.3.0", "@ckeditor/ckeditor5-html-support@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-support/-/ckeditor5-html-support-44.3.0.tgz#26fd4cf8dfc3562cda321e01448ad55f8de78162" + integrity sha512-KFBHMzBNU9/YBj3Eil03qYBLNk7wAuholdZ3YijohgCt2YRw1cRu9krjGaOyhF9E5MEu0cqTJvTjPGBhGE8mVQ== + dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-heading" "44.3.0" + "@ckeditor/ckeditor5-image" "44.3.0" + "@ckeditor/ckeditor5-list" "44.3.0" + "@ckeditor/ckeditor5-table" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-indent@41.4.2", "@ckeditor/ckeditor5-indent@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-41.4.2.tgz#902ce239f96f939bd38ab15f6f8d067230fec203" - integrity sha512-pghHa+DKya6788nTiU1ZItKmAgjf+up4Rqe5GOkxKB7vJc189KSBJYc5foov65nM831rXcWgTk4jybK+JGHmjQ== +"@ckeditor/ckeditor5-image@44.3.0", "@ckeditor/ckeditor5-image@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-image/-/ckeditor5-image-44.3.0.tgz#62b23b93a5715feea42b6d2752caa121d1fa20e5" + integrity sha512-3mRgGSOXQ4e/TJZcB7N8SPSnN+pdUzA72kwiN6FrjjdV0CNqehNoSUCFrwra4ctHaFjLBBqFVV+hEvwFlgmlxA== dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-language@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-language/-/ckeditor5-language-41.4.2.tgz#823d45bc74d15d199de3a55c072a7b7f99c10782" - integrity sha512-YrjwPRxtHDf99fnsbYxos/OuJcdEYYk4sx8oyVgwG/se0yk4IObx7MZGVebGiqd5cZQRxAxP8VGNgRqjHzpcsg== - dependencies: - ckeditor5 "41.4.2" - -"@ckeditor/ckeditor5-link@41.4.2", "@ckeditor/ckeditor5-link@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-link/-/ckeditor5-link-41.4.2.tgz#2214e742fedb668e6267a3eba94a4037735300c7" - integrity sha512-woMv9/BxkDjG5xsS/OyaxW9tWTuiG6wZWWcYxVJq8FOW2NL68CKQLmyoQ1rdv/2Gw4UPUXTtB+1uGVmQDMXDsQ== - dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-undo" "44.3.0" + "@ckeditor/ckeditor5-upload" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-list@41.4.2", "@ckeditor/ckeditor5-list@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-list/-/ckeditor5-list-41.4.2.tgz#6f69431a6aa0277819adb6a4c2918717950767c8" - integrity sha512-nGb36jNJO6YAU35piKabey9B13xw6TnmL5VySS2dEqSt/DTy7RdY5z2K7CU/NGuIGe/bPBZgU1J0dQkRr2F3hA== +"@ckeditor/ckeditor5-indent@44.3.0", "@ckeditor/ckeditor5-indent@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-44.3.0.tgz#f1dc84e7375494b9397eb32222eb5eefda292111" + integrity sha512-Gju3Lt2/OQB2mzhk/TTtonHTEcmFua4Ag4keB75EbPxthpLZZnMQm3Gl7MvrecjUv4+3nRlEBv/Bon00OIXcqA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-heading" "44.3.0" + "@ckeditor/ckeditor5-list" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-markdown-gfm@41.4.2", "@ckeditor/ckeditor5-markdown-gfm@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-markdown-gfm/-/ckeditor5-markdown-gfm-41.4.2.tgz#2ca4c391efc0f3f5aea7efa5702214638e544828" - integrity sha512-4izHzZ2AO9QMo+WirGVPYu3qqf+YuYe0CtF37rhdRNFLwDMYV7lGBpEj24US/3lV7CuEKM1V5N2Ojl6b4ew10w== +"@ckeditor/ckeditor5-language@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-language/-/ckeditor5-language-44.3.0.tgz#fd33839e582109ec6b51e308fb004355b296e4b4" + integrity sha512-lnhnnsSwMnnyFpUktrvAxuj6tlwn2zjSm7+ZDxMiQpsZuRsmABnSapeKqjlfs8B1rQwrcZIhp1FsHVvnaVOzug== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-link@44.3.0", "@ckeditor/ckeditor5-link@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-link/-/ckeditor5-link-44.3.0.tgz#f652d0d16592d7b64536c0f7adde923e548682dd" + integrity sha512-OmOWje1i7tuEBNHoIi/n6M69xE1K97P2xmbSJ9HB5nFFvelfCCMnuLa+7QmT1+/Sxg0VYM175dtTclinEeWJhQ== + dependencies: + "@ckeditor/ckeditor5-bookmark" "44.3.0" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-image" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" + lodash-es "4.17.21" + +"@ckeditor/ckeditor5-list@44.3.0", "@ckeditor/ckeditor5-list@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-list/-/ckeditor5-list-44.3.0.tgz#6e96caaa22e21bcdf25019330ea0551e7ce6a37f" + integrity sha512-66f3n8ASdhA7wxPoGt/sI+Eg/IhDFutSkCEcqL2tsJFVRB0MuhhQIklxdGRVfPrjbpMSUPSRJPMddAFhRCzfUQ== + dependencies: + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" + +"@ckeditor/ckeditor5-markdown-gfm@44.3.0", "@ckeditor/ckeditor5-markdown-gfm@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-markdown-gfm/-/ckeditor5-markdown-gfm-44.3.0.tgz#3c7fd198eacc2f1be7bea80fb6a77064133b9539" + integrity sha512-q+vblaqjjwQQkcrFfsOCD7ejWl1ltqV982jfFK9LTx7DiJIuR2UwByNrRC00Xeol2rDeC8lYoIH77AZHavFIbw== + dependencies: + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@types/marked" "4.3.2" + "@types/turndown" "5.0.5" + ckeditor5 "44.3.0" marked "4.0.12" - turndown "6.0.0" + turndown "7.2.0" turndown-plugin-gfm "1.0.2" -"@ckeditor/ckeditor5-media-embed@41.4.2", "@ckeditor/ckeditor5-media-embed@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-41.4.2.tgz#a231b3badd12392cde2eee9425bb3fdb5fa056a6" - integrity sha512-+4JqfbnMrB9Si2gAKKCRZTY1hixlk11mY8+PA+32UezyCq/myoAlVGT8ytCr3rywe58nbkGGAv2QbVo6fy8zoQ== +"@ckeditor/ckeditor5-media-embed@44.3.0", "@ckeditor/ckeditor5-media-embed@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-44.3.0.tgz#9f7c7738f343cab72ffafe51fb4bfc343c26776d" + integrity sha512-wlAITZKeNEZfB164hwODXfhg63pYaWynCuIvVCtaeVUmoBqnSkK8gxuZ2ehxUdi4SPlVJwt84afDsD4RU8UYDQ== dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-undo" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-mention@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-mention/-/ckeditor5-mention-41.4.2.tgz#0ec5590920c5fd9497d5a18dd52951cb03717dc7" - integrity sha512-jO8eZE/4NIRJ5Tm/mIdgnLqkBnYj7l3jU4HZLkYvU5tEV5Xk6Rf8bsqMkkBvquf3LVhQbwAiLNjtlrHf68vU7Q== +"@ckeditor/ckeditor5-mention@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-mention/-/ckeditor5-mention-44.3.0.tgz#d4608aa8485dc1f7cba830a10bb9db6ce7e07edc" + integrity sha512-pmf7prEvIJgP4rbyeTtY6Ynl2i5jo52G+DlFwJbWUzZDyOZIR41mh4hBimK50QHR0szaXMBGbM+alFu924vZCA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-minimap@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-minimap/-/ckeditor5-minimap-41.4.2.tgz#69441dd179dae41e05a28780dd39949da9451ae8" - integrity sha512-SJUHeD6l6UVFlY/Uh2vZIr7qHbz5A4Ud285zxAZpiiiv0NP4wQDw6bo28tD/QkCMm1hRcLCkKWd1aNDkFe+42w== +"@ckeditor/ckeditor5-minimap@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-minimap/-/ckeditor5-minimap-44.3.0.tgz#f40f9214da1c39555a8ecaa207d230533f8e8c8f" + integrity sha512-iRO1t1lyeyiFZg4il5JGRVwyoqRYqsRcj9uSh90xNJJAxH5yiPlWAGIvCMzWDwlINFJe/hfaNd0RDzlbNHytgA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-page-break@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-page-break/-/ckeditor5-page-break-41.4.2.tgz#474c24671f25525adabc88ccfce8be8d8d4e913e" - integrity sha512-J9sIBgBKhAeZn+KpZADUj6z7VjrbUtHHFL88Ivx2h9jePZPT/LIfDwnnrJEnMjf2KF1bkHvIdP23cZz2BzXwKg== +"@ckeditor/ckeditor5-page-break@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-page-break/-/ckeditor5-page-break-44.3.0.tgz#b38534a39373cdb311f5fa2eb1659f1b0db7bb31" + integrity sha512-PzvOsEDNBPWCtN9S6nhJPWYwF/5BoE0klXkNzTgoA28EwsoSA4evU8gztcoxxGkVOskdI2OzZfz1QUaPFczLDQ== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-paragraph@41.4.2", "@ckeditor/ckeditor5-paragraph@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-41.4.2.tgz#c03366e636637d569c2e7a892834e0ab3a4647a3" - integrity sha512-tOsD40Fcqli5zkH/68WhcqYU8BL4qb8J5xGuk1xmBokz3W0LzebWW0GXmFk5PmWv+fg0dOXfSo8uMzb5ni+CuQ== +"@ckeditor/ckeditor5-paragraph@44.3.0", "@ckeditor/ckeditor5-paragraph@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-44.3.0.tgz#22a7f9fae16410f4aba950def218e4b88d67bc07" + integrity sha512-kxZBn/xmz+woXB0fIKWA/ZrFZXqyubX5BhcOYpM2j3CtjsJUJsL6ekwBq/y9HNSkkKfNKHaTzK7IDiPBKblcrw== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" -"@ckeditor/ckeditor5-paste-from-office@41.4.2", "@ckeditor/ckeditor5-paste-from-office@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-41.4.2.tgz#fba18bd318897f9bee12afed53462ceb64654021" - integrity sha512-jby5YQ2QowGdDCshPq5Ej11wTFcBZP2dYhQTu6fRZRc+mdihKCILxh0rwBgBOCCf+buflx8RYp/WKd76Kcuq5g== +"@ckeditor/ckeditor5-paste-from-office@44.3.0", "@ckeditor/ckeditor5-paste-from-office@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-44.3.0.tgz#90d92b6497af54f1d8eda8830688da1ec136da25" + integrity sha512-IHl3YVE6ONGXTxHf+uHvvBMFR90nxTz7nB9eA8DzuWskF+fOo+wtVdfZaafLUs0kJJXBTRebsv2Sa5onLLL6tA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-remove-format@41.4.2", "@ckeditor/ckeditor5-remove-format@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-remove-format/-/ckeditor5-remove-format-41.4.2.tgz#755a5898855b5c4c32972f6f5d67994c5b1c6f50" - integrity sha512-XlCIvIETcWn6/6jfPhVzSqkXZ6fnU0iqqNlyKF67dStfc6vVc6Ut31P+f84SwAJA8ay553OUNyY14YZcoP2tLg== +"@ckeditor/ckeditor5-remove-format@44.3.0", "@ckeditor/ckeditor5-remove-format@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-remove-format/-/ckeditor5-remove-format-44.3.0.tgz#7ae535bae6626d754dcc8241d1cc02eb2a41c908" + integrity sha512-ZlbJNaX+IGui9C3NDC/W/4M308RzD3+jnk5iDGXENjBstNB99AnwpfDXel+Tc0t5rTd7D1fSr9eaxScnPLdgwA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-restricted-editing@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-restricted-editing/-/ckeditor5-restricted-editing-41.4.2.tgz#0103d323b216119ab9d0bdf1b2e5e060d18fa98a" - integrity sha512-t34VNBZbxO07nEazAKECXcRgH5VrPbrTJW0iZO0/w/yPHUAPZ8ejcdEuohr7cLS3TCHE09biFc1lNPLas/xK5w== +"@ckeditor/ckeditor5-restricted-editing@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-restricted-editing/-/ckeditor5-restricted-editing-44.3.0.tgz#646286bc21ef73192cf0d40648159fd370b5aa0b" + integrity sha512-0V/can4jw70DMBPwex1MRiUHRsvFdbjZp/RaHagazen6gOZZOAo3R7vJjp+qBQrHmXP6T6aTGn89Y9NxYI9OIw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-select-all@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-41.4.2.tgz#a6c89fb5821d22f7fae99ff6d9d716d28d45fc29" - integrity sha512-zC0wS0IggFDvk1wDB/SregfejLJk62In+i7P0otOaySg5tFfkJqT3OycplbPqIn3D1UCpIIz4KJzRl66PEVI7g== +"@ckeditor/ckeditor5-select-all@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-44.3.0.tgz#badcb7c674d24f23468e9818db96e3be38052999" + integrity sha512-GDNl6Iex1cyHAQgjR6cqIklH8QPO1x1Z87gwi93lX3mgm47DW6Q12jvwfRc36+d1zGf5W7+eH0xaP7jQPWYUPg== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" -"@ckeditor/ckeditor5-show-blocks@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-show-blocks/-/ckeditor5-show-blocks-41.4.2.tgz#3730cecc4abe4eb6c3c7d67b73ec59129be34a55" - integrity sha512-0mKErojbxNr8Xbx5OjDLdciU3Onwn33h5IMU2j6imcwqORLzyXgU9ENhwwfw6Roeu8Guvi6hEVKBW6GE1UIYIQ== +"@ckeditor/ckeditor5-show-blocks@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-show-blocks/-/ckeditor5-show-blocks-44.3.0.tgz#4fc3402a23ec0914056dab964207c03e69a96219" + integrity sha512-4Qp992YWOby7+MiyX0PwD8bg/+PgsRFNXd9DLyhCvmmiFmkwUzbYmA8t3lp+V3uefg5SrcylzWn4QHlUNVg1iw== dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-source-editing@41.4.2", "@ckeditor/ckeditor5-source-editing@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-source-editing/-/ckeditor5-source-editing-41.4.2.tgz#9cad1fe7a97a84630a205215c264b8cbc57e1a10" - integrity sha512-TnBJLLEU5dckalm8KZP/xC0kLMeNDVTrWUp8iCLcmLoe9xlt/wIO8VzLVPW+WjgzSZ7Yq+vrzHaCyJRVxuDsBQ== +"@ckeditor/ckeditor5-source-editing@44.3.0", "@ckeditor/ckeditor5-source-editing@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-source-editing/-/ckeditor5-source-editing-44.3.0.tgz#4dda04c06dd45c7ad62f7cfc1c7f5a384f679db0" + integrity sha512-OCv2oO6ok0UrZJHOoJRnywFpv3+UntOs7TuvEw35zDYJCgcmICfzqqTZ++ZcZaq1oOERbwk2L4E4uy2H8KXWQA== dependencies: - "@ckeditor/ckeditor5-theme-lark" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-theme-lark" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-special-characters@41.4.2", "@ckeditor/ckeditor5-special-characters@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-special-characters/-/ckeditor5-special-characters-41.4.2.tgz#bf71b5730243a4a64dd337b1fc66864289ac59aa" - integrity sha512-OicpKzkYqyTjPRGZf6xMYQnuUCAZ4QS2H1MAEH5xTiwYv+eqR/enC/m9FxCEs2Z3DlO9DIjVnoBxe2qUCSxRBQ== +"@ckeditor/ckeditor5-special-characters@44.3.0", "@ckeditor/ckeditor5-special-characters@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-special-characters/-/ckeditor5-special-characters-44.3.0.tgz#26cb3608cdd91826021e1eb3bdf4c1b2ed464e8f" + integrity sha512-K3cOw/aMUmkXofUVFpUXTHLNYlwvcT3KUyfvTO3oT8ae3ecQlG4btTjgnzgVD2zIXFSEpguSBYywVUhMAZWNMA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" -"@ckeditor/ckeditor5-style@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-style/-/ckeditor5-style-41.4.2.tgz#f0a4dfc5820a06741b8edd6dfd3871b3920d0f25" - integrity sha512-q39mtg1kBrmJ8XA7XbOy4HhVzrICvt0KS484d5c3NaX7JetwapAM/QfWDGfMToMukzFcntaGt0be5Bwja0LJSw== +"@ckeditor/ckeditor5-style@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-style/-/ckeditor5-style-44.3.0.tgz#e1b364d085ba00147430004f2030c45d01aed2a4" + integrity sha512-IUd5yRea8uh/VyAJ6p1NdXL9wWywQYfIOubzNgiP1b58q0psfWYxwsREekE6Epd+sMHC1H4wc+dZsIxfi+stKw== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-html-support" "44.3.0" + "@ckeditor/ckeditor5-list" "44.3.0" + "@ckeditor/ckeditor5-table" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-table@41.4.2", "@ckeditor/ckeditor5-table@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-table/-/ckeditor5-table-41.4.2.tgz#91e048929a0726e260fd9bb081c22e66cdd4781d" - integrity sha512-wDn1UUaKHcrscmTYj2PwCFbj9FOXFfhk4JbCepyGFQt31YyaOKBzAyZaJQ7E38wJq7a4afac3MwUDk+j1X5FDw== +"@ckeditor/ckeditor5-table@44.3.0", "@ckeditor/ckeditor5-table@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-table/-/ckeditor5-table-44.3.0.tgz#6eeb68309146d3c75a6ceb6fba70e7ec7855d2c2" + integrity sha512-kFPvQWe/7Iq9tPzq788HLax7Ss8SJaS5+bkhbUmH+k4RM4NABl1ABRa+EzyMIrdqz9KLYr0B57jUoCU8Y2HLsg== dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-theme-lark@41.4.2", "@ckeditor/ckeditor5-theme-lark@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-theme-lark/-/ckeditor5-theme-lark-41.4.2.tgz#a1374e8049406575b76a93df12b0f80d6a020824" - integrity sha512-rzFSAhdPMD2QylJDwgGniiBoCuHWQAQIEKDtMbQ4FH+/7JiCfKgUsnZxqhDPJwQyV1MWVz4wmXK/1RKqHohOvg== +"@ckeditor/ckeditor5-theme-lark@44.3.0", "@ckeditor/ckeditor5-theme-lark@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-theme-lark/-/ckeditor5-theme-lark-44.3.0.tgz#cd41689a693d5363c4e7bd3fb2951bae14be1c03" + integrity sha512-Druy7S1e3bjwMVLkld7ZPGIU6tdI9E6bn/AS+OrQF3mDck14mFP+K4qnMbYNCeYngMqv8Se0eSHtAmQhU7It0A== dependencies: - "@ckeditor/ckeditor5-ui" "41.4.2" + "@ckeditor/ckeditor5-ui" "44.3.0" -"@ckeditor/ckeditor5-typing@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-41.4.2.tgz#6cd33ace0ec918589b81ba2b788bf0b13a02e217" - integrity sha512-dXP+uNl+jkfrSIqMNai2yakR/3JqJ9g0M9WwwnV5vzbEOKD4YKP5+ixvqKb39dwLCLZ4mGpJaX+rjNXBExjSIw== +"@ckeditor/ckeditor5-typing@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-44.3.0.tgz#fe6f98bfd4b6dd025af0f88cbc7797ab4194f3cd" + integrity sha512-ojAuhhd/PfO5Oko94ObgEmuvQzqApARb2H0R5YEySSRj9oek4Nm1NGMhHMvIC0sMP2hSVxhfSbHcHY3vDjGwiA== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-ui@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-41.4.2.tgz#85bbb188c07c3d96d227edf211ea2d5a15b1c401" - integrity sha512-wvRbDXJN8PmaWyB0H487DjvdH2ayMyN52+WLkZlVbhX9ICb1sf5XnLz4v/wXeQ4W8JbWdsg2FZIDDQDeXjvyJw== +"@ckeditor/ckeditor5-ui@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-44.3.0.tgz#b58109978d17ba641e5048127ec7d7e6dde2b728" + integrity sha512-Sotme1g/xwhmDYes+bXEU/9hbGXcaKC952Yck6UiYgZyhei28lErlNwtSOAKfpQ2gHbPjWRt7rigSH22EN+iqw== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-editor-multi-root" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@types/color-convert" "2.0.4" color-convert "2.0.1" color-parse "1.4.2" lodash-es "4.17.21" vanilla-colorful "0.7.2" -"@ckeditor/ckeditor5-undo@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-41.4.2.tgz#7545aa5fcfd48166d5959bcac4f1c0ee9f6bfc7c" - integrity sha512-mJMoALRWAaFg9Jgu+ufSGR/cUGCawMcz7Iwr5TBdrICmIckxx0DxPwWCPoTgI1laBZtRy/QctO2gQ4H+FYbfUw== +"@ckeditor/ckeditor5-undo@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-44.3.0.tgz#ce63abe6ad56f2f1d2ba241d2591d15a1508a6de" + integrity sha512-cogFPl7QoDrmoUPKTZI0/LiUYoFboqm0lqBK168nh5VRgy53RuGgbXJ4+hCOHNuzdUnVUlWvl/2u0vR4/R07+A== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" -"@ckeditor/ckeditor5-upload@41.4.2", "@ckeditor/ckeditor5-upload@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-41.4.2.tgz#a45119c9fe2b7bc1aa246b5ff3deea8a01de5d56" - integrity sha512-dCNQhZw9QcgGUKlYD8STpgNanNp7ILPMRNoDFW9NWHRKsUpjGMYIU3dsE4f08hkA/bckJ9yBaZc7a0LavOrncw== +"@ckeditor/ckeditor5-upload@44.3.0", "@ckeditor/ckeditor5-upload@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-44.3.0.tgz#c4ecf65ce3e4526b3c5482d7c6c53875fbaa157a" + integrity sha512-oJgsw374nHeVKx1qvnlQzEyDhfFvC/su84f00nOdDGWfsHabU3hE0hZE+yoBtreRViORwwe6Ftg5qbhl5OVyuA== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" -"@ckeditor/ckeditor5-utils@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-41.4.2.tgz#65cd1cd97a43e4f7bc0599bb6cabacaf5531e13a" - integrity sha512-VgLr2eLVggyhDqa7H8JUxpnOLTZ0R/YuDZ6ENVUumd9q4VrpNs94ZK0Y/Shp7UmuHQ/sTth+PWTsi+t5KwYqeQ== +"@ckeditor/ckeditor5-utils@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-44.3.0.tgz#43ace318eb1b55e65c91353bb3968a31dcc8fe2e" + integrity sha512-Z/ttfLhu9QnuMc9BBdQfH9Do6JD01ijUkUmUB41BPByYfOjZbGYGfZmhywH9OjXmHnSDQSUqwRnxqqM3nceR1g== dependencies: + "@ckeditor/ckeditor5-ui" "44.3.0" + "@types/lodash-es" "4.17.12" lodash-es "4.17.21" -"@ckeditor/ckeditor5-watchdog@41.4.2", "@ckeditor/ckeditor5-watchdog@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-41.4.2.tgz#0f11b299b3bb2df45b5a1ea59d9fb8d85c4fb4ca" - integrity sha512-u17Y8XHhyDHaShQei7WuZ0th8DgKo56YfJqRdZautHKnPJ32r+O97uTcGfBpsobhZbJ6Ss3tUwebve3Obv2K/w== +"@ckeditor/ckeditor5-watchdog@44.3.0", "@ckeditor/ckeditor5-watchdog@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-44.3.0.tgz#afc48bd217d5af74e0b369573f6ddb4e3052b7aa" + integrity sha512-7Y4FOWB021CLEUDsIf61tZzd9ZrZ8JkD8lQeRZOmv+bBLTxgjyz2/7MCjIDR7NN0xdASXTFwRS6XO32HbdrN0Q== dependencies: + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-editor-multi-root" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-widget@41.4.2": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-41.4.2.tgz#d785a169781ba6eb057314c592ae6fc158e492ab" - integrity sha512-hpM9Ti2iFvBBIPAESJp3bOY4SR6fzF3V5t46CpVDStLJdqwnQOuZ8Nv1dqzZZWCuK+EByAbY14pgfYM92nNHrQ== +"@ckeditor/ckeditor5-widget@44.3.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-44.3.0.tgz#6119814e85b5044c548a6d25de64cb2938d664d3" + integrity sha512-nFEKBE33RnZ2bOeD9L9jfyKYaFw/xKY543ZNQWxWHcmI70AX3U2KJ8wUnuMjMknHafyMuH6bSlWjKtn5vz3w+g== dependencies: - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-enter" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" lodash-es "4.17.21" -"@ckeditor/ckeditor5-word-count@41.4.2", "@ckeditor/ckeditor5-word-count@^41.0.0": - version "41.4.2" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-word-count/-/ckeditor5-word-count-41.4.2.tgz#0f41bae7fc2657ee4ac189aae89e414d568396c4" - integrity sha512-XuCLL97FotJ9QfuCZOhW7V2XHfVXkplIDpwgnH4HnLjtMLGFVZbyb0k9pEJk3Kp+F8qQbfWDIPFzaNKRDKqtRA== +"@ckeditor/ckeditor5-word-count@44.3.0", "@ckeditor/ckeditor5-word-count@^44.0.0": + version "44.3.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-word-count/-/ckeditor5-word-count-44.3.0.tgz#4ddacfc04920b5798c635ebfefd26dc7369d011a" + integrity sha512-9iNiF1wq1f9npT/KhBAgDfM6kFbJ0GyUdlXt3V6zyLY2K3SILQ6q5B23jhtABZny8zxA+f528ClxDSTFh9bXDA== dependencies: - ckeditor5 "41.4.2" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + ckeditor5 "44.3.0" lodash-es "4.17.21" -"@csstools/selector-specificity@^2.0.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz#2cbcf822bf3764c9658c4d2e568bd0c0cb748016" - integrity sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw== +"@csstools/selector-resolve-nested@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@csstools/selector-resolve-nested/-/selector-resolve-nested-3.0.0.tgz#704a9b637975680e025e069a4c58b3beb3e2752a" + integrity sha512-ZoK24Yku6VJU1gS79a5PFmC8yn3wIapiKmPgun0hZgEI5AOqgH2kiPRsPz1qkGv4HL+wuDLH83yQyk6inMYrJQ== + +"@csstools/selector-specificity@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz#037817b574262134cabd68fc4ec1a454f168407b" + integrity sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw== "@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0": version "0.5.7" @@ -1652,10 +1705,10 @@ base64-js "1.3.1" unicode-trie "^2.0.0" -"@foliojs-fork/pdfkit@^0.15.1": - version "0.15.1" - resolved "https://registry.yarnpkg.com/@foliojs-fork/pdfkit/-/pdfkit-0.15.1.tgz#ecae3bcb7aad46b58e50493de593317f9b738074" - integrity sha512-4Cq2onHZAhThIfzv3/AFTPALqHzbmV8uNvgRELULWNbsZATgVeqEL4zHOzCyblLfX6tMXVO2BVaPcXboIxGjiw== +"@foliojs-fork/pdfkit@^0.15.3": + version "0.15.3" + resolved "https://registry.yarnpkg.com/@foliojs-fork/pdfkit/-/pdfkit-0.15.3.tgz#590b31e770a98e2af62ce44f268a0d06b41ff32f" + integrity sha512-Obc0Wmy3bm7BINFVvPhcl2rnSSK61DQrlHU8aXnAqDk9LCjWdUOPwhgD8Ywz5VtuFjRxmVOM/kQ/XLIBjDvltw== dependencies: "@foliojs-fork/fontkit" "^1.9.2" "@foliojs-fork/linebreak" "^1.1.1" @@ -1668,50 +1721,51 @@ resolved "https://registry.yarnpkg.com/@foliojs-fork/restructure/-/restructure-2.0.2.tgz#73759aba2aff1da87b7c4554e6839c70d43c92b4" integrity sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA== -"@formatjs/ecma402-abstract@2.2.2": - version "2.2.2" - resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-2.2.2.tgz#2b730d8c1194194b9ab6640289a7c83d78083a09" - integrity sha512-zReeOJo3gA6Lgk4gTsUUdCwwTBa+Tw0LcqKHD84JCAJdPSxsxKdKPAPXihVgKDZevIWFGi4UTpy7JJ3D5EWeSw== +"@formatjs/ecma402-abstract@2.3.4": + version "2.3.4" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.4.tgz#e90c5a846ba2b33d92bc400fdd709da588280fbc" + integrity sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA== dependencies: - "@formatjs/fast-memoize" "2.2.3" - "@formatjs/intl-localematcher" "0.5.7" - tslib "2" + "@formatjs/fast-memoize" "2.2.7" + "@formatjs/intl-localematcher" "0.6.1" + decimal.js "^10.4.3" + tslib "^2.8.0" -"@formatjs/fast-memoize@2.2.3": - version "2.2.3" - resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.2.3.tgz#74e64109279d5244f9fc281f3ae90c407cece823" - integrity sha512-3jeJ+HyOfu8osl3GNSL4vVHUuWFXR03Iz9jjgI7RwjG6ysu/Ymdr0JRCPHfF5yGbTE6JCrd63EpvX1/WybYRbA== +"@formatjs/fast-memoize@2.2.7": + version "2.2.7" + resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.2.7.tgz#707f9ddaeb522a32f6715bb7950b0831f4cc7b15" + integrity sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ== dependencies: - tslib "2" + tslib "^2.8.0" -"@formatjs/icu-messageformat-parser@2.9.2": - version "2.9.2" - resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.9.2.tgz#a91c19f1ce40001cb798171c6c6ce4fd2d98a8ab" - integrity sha512-WAQ2zGbroadkWXUDDjbGUOBN0TeDUEC47lcXV8wTtFN1QYCI1T26AVWOHqvVMVBqXHheKa82myjEVaXWVTwBNA== +"@formatjs/icu-messageformat-parser@2.11.2": + version "2.11.2" + resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.2.tgz#85aea211bea40aa81ee1d44ac7accc3cf5500a73" + integrity sha512-AfiMi5NOSo2TQImsYAg8UYddsNJ/vUEv/HaNqiFjnI3ZFfWihUtD5QtuX6kHl8+H+d3qvnE/3HZrfzgdWpsLNA== dependencies: - "@formatjs/ecma402-abstract" "2.2.2" - "@formatjs/icu-skeleton-parser" "1.8.6" - tslib "2" + "@formatjs/ecma402-abstract" "2.3.4" + "@formatjs/icu-skeleton-parser" "1.8.14" + tslib "^2.8.0" -"@formatjs/icu-skeleton-parser@1.8.6": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.6.tgz#29cb181d0c8283be9c5f17bc3c89f4d13e13f4f6" - integrity sha512-rQXThZE7lxhw1eaOyu4mmFdKBYlh/dyYPSFB6hR3lZqPOm5vYdyHekQaxld9WIofZK2e3rxfel81RfAuy8kdIw== +"@formatjs/icu-skeleton-parser@1.8.14": + version "1.8.14" + resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.14.tgz#b9581d00363908efb29817fdffc32b79f41dabe5" + integrity sha512-i4q4V4qslThK4Ig8SxyD76cp3+QJ3sAqr7f6q9VVfeGtxG9OhiAk3y9XF6Q41OymsKzsGQ6OQQoJNY4/lI8TcQ== dependencies: - "@formatjs/ecma402-abstract" "2.2.2" - tslib "2" + "@formatjs/ecma402-abstract" "2.3.4" + tslib "^2.8.0" -"@formatjs/intl-localematcher@0.5.7": - version "0.5.7" - resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.5.7.tgz#f889d076881b785d11ff993b966f527d199436d0" - integrity sha512-GGFtfHGQVFe/niOZp24Kal5b2i36eE2bNL0xi9Sg/yd0TR8aLjcteApZdHmismP5QQax1cMnZM9yWySUUjJteA== +"@formatjs/intl-localematcher@0.6.1": + version "0.6.1" + resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.6.1.tgz#25dc30675320bf65a9d7f73876fc1e4064c0e299" + integrity sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg== dependencies: - tslib "2" + tslib "^2.8.0" "@fortawesome/fontawesome-free@^6.1.1": - version "6.6.0" - resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-6.6.0.tgz#0e984f0f2344ee513c185d87d77defac4c0c8224" - integrity sha512-60G28ke/sXdtS9KZCpZSHHkCbdsOGEhIUGlwq6yhY74UpTiToIh8np7A8yphhM4BWsvNFtIvLpi4co+h9Mr9Ow== + version "6.7.2" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.2.tgz#8249de9b7e22fcb3ceb5e66090c30a1d5492b81a" + integrity sha512-JUOtgFW6k9u4Y+xeIaEiLr3+cjoUPiAuLXoyKOJSia6Duzb7pq+A76P9ZdPDoAoxHdHzq6gE9/jKBGXlZT8FbA== "@gar/promisify@^1.0.1": version "1.1.3" @@ -1729,9 +1783,9 @@ integrity sha512-eGeIqNOQpXoPAIP7tC1+1Yc1yl1xnwYqg+3mzqxyrbE5pg5YFBZcA6YoTiByJB6DKAEsiWtl6tjTJS4IYtbB7A== "@hotwired/turbo@^8.0.1": - version "8.0.12" - resolved "https://registry.yarnpkg.com/@hotwired/turbo/-/turbo-8.0.12.tgz#50aa8345d7f62402680c6d2d9814660761837001" - integrity sha512-l3BiQRkD7qrnQv6ms6sqPLczvwbQpXt5iAVwjDvX0iumrz6yEonQkNAzNjeDX25/OJMFDTxpHjkJZHGpM9ikWw== + version "8.0.13" + resolved "https://registry.yarnpkg.com/@hotwired/turbo/-/turbo-8.0.13.tgz#ab35fda9d358432c8a872a833844b38cccb8c25b" + integrity sha512-M7qXUqcGab6G5PKOiwhgbByTtrPgKPFCTMNQ52QhzUEXEqmp0/ApEguUesh/FPiUjrmFec+3lq98KsWnYY2C7g== "@jbtronics/bs-treeview@^1.0.1": version "1.0.6" @@ -1758,9 +1812,9 @@ chalk "^4.0.0" "@jridgewell/gen-mapping@^0.3.5": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" - integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + version "0.3.8" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz#4f0e06362e01362f823d348f1872b08f666d8142" + integrity sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA== dependencies: "@jridgewell/set-array" "^1.2.1" "@jridgewell/sourcemap-codec" "^1.4.10" @@ -1789,7 +1843,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== -"@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -1797,10 +1851,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@leichtgewicht/ip-codec@^2.0.1": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz#4fc56c15c580b9adb7dc3c333a134e540b44bfb1" - integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw== +"@mixmark-io/domino@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@mixmark-io/domino/-/domino-2.2.0.tgz#4e8ec69bf1afeb7a14f0628b7e2c0f35bdb336c3" + integrity sha512-Y28PR25bHXUg88kCV7nivXrP2Nj2RueZ3/l/jdx6J9f8J4nsEGcgX0Qe6lt7Pa+J79+kPiJU3LguR6O/6zrLOw== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1849,22 +1903,29 @@ error-stack-parser "^2.1.4" string-width "^4.2.3" -"@orchidjs/sifter@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@orchidjs/sifter/-/sifter-1.0.3.tgz#43f42519472282eb632d0a1589184f044d64129b" - integrity sha512-zCZbwKegHytfsPm8Amcfh7v/4vHqTAaOu6xFswBYcn8nznBOuseu6COB2ON7ez0tFV0mKL0nRNnCiZZA+lU9/g== +"@orchidjs/sifter@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@orchidjs/sifter/-/sifter-1.1.0.tgz#b36154ad0cda4898305d1ac44f318b41048a0438" + integrity sha512-mYwHCfr736cIWWdhhSZvDbf90AKt2xyrJspKFC3qyIJG1LtrJeJunYEqCGG4Aq2ijENbc4WkOjszcvNaIAS/pQ== dependencies: - "@orchidjs/unicode-variants" "^1.0.4" + "@orchidjs/unicode-variants" "^1.1.2" -"@orchidjs/unicode-variants@^1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@orchidjs/unicode-variants/-/unicode-variants-1.0.4.tgz#6d2f812e3b19545bba2d81caffff1204de9a6a58" - integrity sha512-NvVBRnZNE+dugiXERFsET1JlKZfM5lJDEpSMilKW4bToYJ7pxf0Zne78xyXB2ny2c2aHfJ6WLnz1AaTNHAmQeQ== +"@orchidjs/unicode-variants@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@orchidjs/unicode-variants/-/unicode-variants-1.1.2.tgz#1fd71791a67fdd1591ebe0dcaadd3964537a824e" + integrity sha512-5DobW1CHgnBROOEpFlEXytED5OosEWESFvg/VYmH0143oXcijYTprRYJTs+55HzGM4IqxiLFSuqEzu9mPNwVsA== + +"@part-db/html5-qrcode@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@part-db/html5-qrcode/-/html5-qrcode-3.1.1.tgz#96bf5e57796f3ec72ee6191ac7b8604298c98dfa" + integrity sha512-6lH77mvu9ClwIfKHWSOW1+jz+SkCJnbm/8XTuzqlcUWUIW8NRHC5x1wU7svV4gtoirqvBlQvaz1MaopVmfOAqQ== + dependencies: + barcode-detector "^2.3.1" "@polka/url@^1.0.0-next.24": - version "1.0.0-next.28" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.28.tgz#d45e01c4a56f143ee69c54dd6b12eade9e270a73" - integrity sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw== + version "1.0.0-next.29" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.29.tgz#5a40109a1ab5f84d6fd8fc928b19f367cbe7e7b1" + integrity sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww== "@popperjs/core@^2.10.2": version "2.11.8" @@ -1877,9 +1938,9 @@ integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@symfony/stimulus-bridge@^3.2.0": - version "3.2.2" - resolved "https://registry.yarnpkg.com/@symfony/stimulus-bridge/-/stimulus-bridge-3.2.2.tgz#afc1918f82d78cb2b6e299285c54094aa7f53696" - integrity sha512-kIaUEGPXW7g14zsHkIvQWw8cmfCdXSqsEQx18fuHPBb+R0h8nYPyY+e9uVtTuHlE2wHwAjrJoc6YBBK4a7CpKA== + version "3.2.3" + resolved "https://registry.yarnpkg.com/@symfony/stimulus-bridge/-/stimulus-bridge-3.2.3.tgz#1c496d4b11e24051be26a11045118f29f9c3f9b7" + integrity sha512-36rQTihQ2MGOn8EmdOYCr3DQfP3WS1CNcUUXKTPY5ghtFOeb7OVuhbc32AjRowE2/vaVDOUCPOTv3VLf5VtXBA== dependencies: "@hotwired/stimulus-webpack-helpers" "^1.0.1" "@types/webpack-env" "^1.16.4" @@ -1888,75 +1949,58 @@ schema-utils "^3.0.0" "@symfony/ux-translator@file:vendor/symfony/ux-translator/assets": - version "1.0.0" + version "2.23.0" "@symfony/ux-turbo@file:vendor/symfony/ux-turbo/assets": - version "0.1.0" + version "2.23.0" -"@symfony/webpack-encore@^4.1.0": - version "4.7.0" - resolved "https://registry.yarnpkg.com/@symfony/webpack-encore/-/webpack-encore-4.7.0.tgz#d8f9ddc28ddb4175d65e3dd9de3a86e38e6fff52" - integrity sha512-vlvg1mYLVSaujTEUmkd/ucwK7LG7+89PHfOwfz/sJ53n2IFGtuAXyPyXL0igJ0tMcKvDuCShiWTX1nfnzT/Srw== +"@symfony/webpack-encore@^5.0.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@symfony/webpack-encore/-/webpack-encore-5.1.0.tgz#d5664153136959e3baf3e248c9b55350c2c81a6d" + integrity sha512-uSaRnssJj+ZHH9UcHRGI8kQzFb5hfCiPtBwP15vuKH5hTPGeJjQouDDo4UaPB3LuSYJXudKFiSDAnj/4d2z4aQ== dependencies: "@nuxt/friendly-errors-webpack-plugin" "^2.5.1" - assets-webpack-plugin "7.0.*" babel-loader "^9.1.3" - chalk "^4.0.0" - clean-webpack-plugin "^4.0.0" - css-loader "^6.7.0" - css-minimizer-webpack-plugin "^5.0.0" + css-loader "^7.1.0" + css-minimizer-webpack-plugin "^7.0.0" fastest-levenshtein "^1.0.16" mini-css-extract-plugin "^2.6.0" + picocolors "^1.1.0" pretty-error "^4.0.0" resolve-url-loader "^5.0.0" semver "^7.3.2" style-loader "^3.3.0" - sync-rpc "^1.3.6" tapable "^2.2.1" terser-webpack-plugin "^5.3.0" tmp "^0.2.1" - webpack-dev-server "^4.8.0" yargs-parser "^21.0.0" -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - "@trysound/sax@0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@types/body-parser@*": - version "1.19.5" - resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.5.tgz#04ce9a3b677dc8bd681a17da1ab9835dc9d3ede4" - integrity sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg== +"@types/color-convert@2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/color-convert/-/color-convert-2.0.4.tgz#843398ae71e951dc5415d202dfd5e43108823eeb" + integrity sha512-Ub1MmDdyZ7mX//g25uBAoH/mWGd9swVbt8BseymnaE18SU4po/PjmCrHxqIIRjBo3hV/vh1KGr0eMxUhp+t+dQ== dependencies: - "@types/connect" "*" - "@types/node" "*" + "@types/color-name" "^1.1.0" -"@types/bonjour@^3.5.9": - version "3.5.13" - resolved "https://registry.yarnpkg.com/@types/bonjour/-/bonjour-3.5.13.tgz#adf90ce1a105e81dd1f9c61fdc5afda1bfb92956" - integrity sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ== - dependencies: - "@types/node" "*" +"@types/color-name@^1.1.0": + version "1.1.5" + resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.5.tgz#3a3510c4e3661f7707c5ae9c67d726986e6e147d" + integrity sha512-j2K5UJqGTxeesj6oQuGpMgifpT5k9HprgQd8D1Y0lOFqKHl3PJu5GMeS4Y5EgjS55AE6OQxf8mPED9uaGbf4Cg== -"@types/connect-history-api-fallback@^1.3.5": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz#7de71645a103056b48ac3ce07b3520b819c1d5b3" - integrity sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw== - dependencies: - "@types/express-serve-static-core" "*" - "@types/node" "*" +"@types/dom-webcodecs@0.1.11": + version "0.1.11" + resolved "https://registry.yarnpkg.com/@types/dom-webcodecs/-/dom-webcodecs-0.1.11.tgz#2e36e5cc71789551f107e2fe15d956845fa19567" + integrity sha512-yPEZ3z7EohrmOxbk/QTAa0yonMFkNkjnVXqbGb7D4rMr+F1dGQ8ZUFxXkyLLJuiICPejZ0AZE9Rrk9wUCczx4A== -"@types/connect@*": - version "3.4.38" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" - integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== - dependencies: - "@types/node" "*" +"@types/emscripten@^1.39.13": + version "1.40.1" + resolved "https://registry.yarnpkg.com/@types/emscripten/-/emscripten-1.40.1.tgz#4c34102d7cd1503979d4e6652082c23fd805805e" + integrity sha512-sr53lnYkQNhjHNN0oJDdUm5564biioI5DuOpycufDVK7D3y+GR3oUswe2rlwY1nPNyusHbrJ9WoTyIHl4/Bpwg== "@types/eslint-scope@^3.7.7": version "3.7.7" @@ -1975,49 +2019,9 @@ "@types/json-schema" "*" "@types/estree@*", "@types/estree@^1.0.6": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" - integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== - -"@types/express-serve-static-core@*", "@types/express-serve-static-core@^5.0.0": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz#3c9997ae9d00bc236e45c6374e84f2596458d9db" - integrity sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" - "@types/send" "*" - -"@types/express-serve-static-core@^4.17.33": - version "4.19.6" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz#e01324c2a024ff367d92c66f48553ced0ab50267" - integrity sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" - "@types/send" "*" - -"@types/express@*": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.0.tgz#13a7d1f75295e90d19ed6e74cab3678488eaa96c" - integrity sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "^5.0.0" - "@types/qs" "*" - "@types/serve-static" "*" - -"@types/express@^4.17.13": - version "4.17.21" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.21.tgz#c26d4a151e60efe0084b23dc3369ebc631ed192d" - integrity sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "^4.17.33" - "@types/qs" "*" - "@types/serve-static" "*" + version "1.0.7" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" + integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== "@types/glob@^7.1.1": version "7.2.0" @@ -2027,18 +2031,6 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/http-errors@*": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.4.tgz#7eb47726c391b7345a6ec35ad7f4de469cf5ba4f" - integrity sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA== - -"@types/http-proxy@^1.17.8": - version "1.17.15" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.15.tgz#12118141ce9775a6499ecb4c01d02f90fc839d36" - integrity sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ== - dependencies: - "@types/node" "*" - "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" @@ -2058,97 +2050,59 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== -"@types/mime@^1": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690" - integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w== +"@types/lodash-es@4.17.12": + version "4.17.12" + resolved "https://registry.yarnpkg.com/@types/lodash-es/-/lodash-es-4.17.12.tgz#65f6d1e5f80539aa7cfbfc962de5def0cf4f341b" + integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ== + dependencies: + "@types/lodash" "*" + +"@types/lodash@*": + version "4.17.16" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.16.tgz#94ae78fab4a38d73086e962d0b65c30d816bfb0a" + integrity sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g== + +"@types/marked@4.3.2": + version "4.3.2" + resolved "https://registry.yarnpkg.com/@types/marked/-/marked-4.3.2.tgz#e2e0ad02ebf5626bd215c5bae2aff6aff0ce9eac" + integrity sha512-a79Yc3TOk6dGdituy8hmTTJXjOkZ7zsFYV10L337ttq/rec8lRMDBpV7fL3uLx6TgbFCa5DU/h8FmIBQPSbU0w== "@types/minimatch@*": version "5.1.2" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== -"@types/node-forge@^1.3.0": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.11.tgz#0972ea538ddb0f4d9c2fa0ec5db5724773a604da" - integrity sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ== - dependencies: - "@types/node" "*" - "@types/node@*": - version "22.8.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.8.7.tgz#04ab7a073d95b4a6ee899f235d43f3c320a976f4" - integrity sha512-LidcG+2UeYIWcMuMUpBKOnryBWG/rnmOHQR5apjn8myTQcx3rinFRn7DcIFhMnS0PPFSC6OafdIKEad0lj6U0Q== + version "22.15.18" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.15.18.tgz#2f8240f7e932f571c2d45f555ba0b6c3f7a75963" + integrity sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg== dependencies: - undici-types "~6.19.8" + undici-types "~6.21.0" "@types/parse-json@^4.0.0": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239" integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== -"@types/qs@*": - version "6.9.16" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.16.tgz#52bba125a07c0482d26747d5d4947a64daf8f794" - integrity sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A== +"@types/trusted-types@^2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11" + integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw== -"@types/range-parser@*": - version "1.2.7" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" - integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== - -"@types/retry@0.12.0": - version "0.12.0" - resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" - integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== - -"@types/send@*": - version "0.17.4" - resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.4.tgz#6619cd24e7270793702e4e6a4b958a9010cfc57a" - integrity sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA== - dependencies: - "@types/mime" "^1" - "@types/node" "*" - -"@types/serve-index@^1.9.1": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.4.tgz#e6ae13d5053cb06ed36392110b4f9a49ac4ec898" - integrity sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug== - dependencies: - "@types/express" "*" - -"@types/serve-static@*", "@types/serve-static@^1.13.10": - version "1.15.7" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.7.tgz#22174bbd74fb97fe303109738e9b5c2f3064f714" - integrity sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw== - dependencies: - "@types/http-errors" "*" - "@types/node" "*" - "@types/send" "*" - -"@types/sockjs@^0.3.33": - version "0.3.36" - resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.36.tgz#ce322cf07bcc119d4cbf7f88954f3a3bd0f67535" - integrity sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q== - dependencies: - "@types/node" "*" +"@types/turndown@5.0.5": + version "5.0.5" + resolved "https://registry.yarnpkg.com/@types/turndown/-/turndown-5.0.5.tgz#614de24fc9ace4d8c0d9483ba81dc8c1976dd26f" + integrity sha512-TL2IgGgc7B5j78rIccBtlYAnkuv8nUQqhQc+DSYV5j9Be9XOcm/SKOVRuA47xAVI3680Tk9B1d8flK2GWT2+4w== "@types/webpack-env@^1.16.4": - version "1.18.5" - resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.18.5.tgz#eccda0b04fe024bed505881e2e532f9c119169bf" - integrity sha512-wz7kjjRRj8/Lty4B+Kr0LN6Ypc/3SymeCCGSbaXp2leH0ZVg/PriNiOwNj4bD4uphI7A8NXS4b6Gl373sfO5mA== - -"@types/ws@^8.5.5": - version "8.5.13" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.13.tgz#6414c280875e2691d0d1e080b05addbf5cb91e20" - integrity sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA== - dependencies: - "@types/node" "*" + version "1.18.8" + resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.18.8.tgz#71f083718c094204d7b64443701d32f1db3989e3" + integrity sha512-G9eAoJRMLjcvN4I08wB5I7YofOb/kaJNd5uoCMX+LbKXTPCF+ZIHuqTnFaK9Jz1rgs035f9JUPUhNFtqgucy/A== "@types/yargs-parser@*": version "21.0.3" @@ -2162,143 +2116,141 @@ dependencies: "@types/yargs-parser" "*" -"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" - integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg== +"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6" + integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ== dependencies: - "@webassemblyjs/helper-numbers" "1.11.6" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-numbers" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" -"@webassemblyjs/floating-point-hex-parser@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" - integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== +"@webassemblyjs/floating-point-hex-parser@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz#fcca1eeddb1cc4e7b6eed4fc7956d6813b21b9fb" + integrity sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA== -"@webassemblyjs/helper-api-error@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" - integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== +"@webassemblyjs/helper-api-error@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz#e0a16152248bc38daee76dd7e21f15c5ef3ab1e7" + integrity sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ== -"@webassemblyjs/helper-buffer@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" - integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== +"@webassemblyjs/helper-buffer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz#822a9bc603166531f7d5df84e67b5bf99b72b96b" + integrity sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA== -"@webassemblyjs/helper-numbers@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" - integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== +"@webassemblyjs/helper-numbers@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz#dbd932548e7119f4b8a7877fd5a8d20e63490b2d" + integrity sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA== dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.6" - "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/floating-point-hex-parser" "1.13.2" + "@webassemblyjs/helper-api-error" "1.13.2" "@xtuc/long" "4.2.2" -"@webassemblyjs/helper-wasm-bytecode@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" - integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== +"@webassemblyjs/helper-wasm-bytecode@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz#e556108758f448aae84c850e593ce18a0eb31e0b" + integrity sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA== -"@webassemblyjs/helper-wasm-section@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" - integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g== +"@webassemblyjs/helper-wasm-section@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz#9629dda9c4430eab54b591053d6dc6f3ba050348" + integrity sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/wasm-gen" "1.14.1" -"@webassemblyjs/ieee754@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" - integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== +"@webassemblyjs/ieee754@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz#1c5eaace1d606ada2c7fd7045ea9356c59ee0dba" + integrity sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw== dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/leb128@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" - integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== +"@webassemblyjs/leb128@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz#57c5c3deb0105d02ce25fa3fd74f4ebc9fd0bbb0" + integrity sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw== dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/utf8@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" - integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== +"@webassemblyjs/utf8@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1" + integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ== -"@webassemblyjs/wasm-edit@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" - integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g== +"@webassemblyjs/wasm-edit@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597" + integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/helper-wasm-section" "1.12.1" - "@webassemblyjs/wasm-gen" "1.12.1" - "@webassemblyjs/wasm-opt" "1.12.1" - "@webassemblyjs/wasm-parser" "1.12.1" - "@webassemblyjs/wast-printer" "1.12.1" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/helper-wasm-section" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-opt" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" + "@webassemblyjs/wast-printer" "1.14.1" -"@webassemblyjs/wasm-gen@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547" - integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w== +"@webassemblyjs/wasm-gen@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz#991e7f0c090cb0bb62bbac882076e3d219da9570" + integrity sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/ieee754" "1.11.6" - "@webassemblyjs/leb128" "1.11.6" - "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" -"@webassemblyjs/wasm-opt@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" - integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg== +"@webassemblyjs/wasm-opt@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz#e6f71ed7ccae46781c206017d3c14c50efa8106b" + integrity sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/wasm-gen" "1.12.1" - "@webassemblyjs/wasm-parser" "1.12.1" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" -"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" - integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ== +"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb" + integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-api-error" "1.11.6" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/ieee754" "1.11.6" - "@webassemblyjs/leb128" "1.11.6" - "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-api-error" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" -"@webassemblyjs/wast-printer@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" - integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA== +"@webassemblyjs/wast-printer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz#3bb3e9638a8ae5fdaf9610e7a06b4d9f9aa6fe07" + integrity sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw== dependencies: - "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/ast" "1.14.1" "@xtuc/long" "4.2.2" -"@webpack-cli/configtest@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.2.0.tgz#7b20ce1c12533912c3b217ea68262365fa29a6f5" - integrity sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg== +"@webpack-cli/configtest@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-2.1.1.tgz#3b2f852e91dac6e3b85fb2a314fb8bef46d94646" + integrity sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw== -"@webpack-cli/info@^1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.5.0.tgz#6c78c13c5874852d6e2dd17f08a41f3fe4c261b1" - integrity sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ== - dependencies: - envinfo "^7.7.3" +"@webpack-cli/info@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-2.0.2.tgz#cc3fbf22efeb88ff62310cf885c5b09f44ae0fdd" + integrity sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A== -"@webpack-cli/serve@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.7.0.tgz#e1993689ac42d2b16e9194376cfb6753f6254db1" - integrity sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q== +"@webpack-cli/serve@^2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.5.tgz#325db42395cd49fe6c14057f9a900e427df8810e" + integrity sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ== "@xtuc/ieee754@^1.2.0": version "1.2.0" @@ -2342,32 +2294,6 @@ resolved "https://registry.yarnpkg.com/@zxcvbn-ts/language-ja/-/language-ja-3.0.2.tgz#299bb6f5465f99405577491b1b31352058540c76" integrity sha512-YjQyt+eMe3EdpeJiSt81AMF8HfEXXCary/VRoG+0erZBzRjfJ1U3JdSiu9wFFxiEF8Cb5FEmTQ6nQPyraezH6Q== -abab@^2.0.3, abab@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - -accepts@~1.3.4, accepts@~1.3.8: - version "1.3.8" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" - integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== - dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" - -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - acorn-walk@^8.0.0: version "8.3.4" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7" @@ -2375,15 +2301,10 @@ acorn-walk@^8.0.0: dependencies: acorn "^8.11.0" -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.0.4, acorn@^8.0.5, acorn@^8.11.0, acorn@^8.14.0, acorn@^8.2.4, acorn@^8.8.2: - version "8.14.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" - integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA== +acorn@^8.0.4, acorn@^8.0.5, acorn@^8.11.0, acorn@^8.14.0: + version "8.14.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" + integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== adjust-sourcemap-loader@^4.0.0: version "4.0.0" @@ -2393,13 +2314,6 @@ adjust-sourcemap-loader@^4.0.0: loader-utils "^2.0.0" regex-parser "^2.2.11" -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" - aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -2447,17 +2361,27 @@ ajv@^8.0.0, ajv@^8.9.0: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -ansi-html-community@^0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" - integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== +ansi-colors@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + +ansi-regex@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" + integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -ansi-styles@^3.2.1: +ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== @@ -2471,7 +2395,7 @@ ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" -anymatch@~3.1.2: +anymatch@~3.1.1: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== @@ -2479,46 +2403,64 @@ anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: - array-uniq "^1.0.1" + sprintf-js "~1.0.2" + +array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" + integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== + dependencies: + call-bound "^1.0.3" + is-array-buffer "^3.0.5" array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== - -assets-webpack-plugin@7.0.*: - version "7.0.0" - resolved "https://registry.yarnpkg.com/assets-webpack-plugin/-/assets-webpack-plugin-7.0.0.tgz#c61ed7466f35ff7a4d90d7070948736f471b8804" - integrity sha512-DMZ9r6HFxynWeONRMhSOFTvTrmit5dovdoUKdJgCG03M6CC7XiwNImPH+Ad1jaVrQ2n59e05lBhte52xPt4MSA== +array.prototype.reduce@^1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz#42f97f5078daedca687d4463fd3c05cbfd83da57" + integrity sha512-DwuEqgXFBwbmZSRqt3BpQigWNUoqw9Ml2dTWdF3B2zQlQX4OeUE0zyuzX0fX0IbTvjdkZbcBTU3idgpO78qkTw== dependencies: - camelcase "^6.0.0" - escape-string-regexp "^4.0.0" - lodash "^4.17.20" + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-array-method-boxes-properly "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + is-string "^1.1.1" -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== +arraybuffer.prototype.slice@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" + integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + is-array-buffer "^3.0.4" -at-least-node@^1.0.0: +async-function@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + resolved "https://registry.yarnpkg.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" + integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== + +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" babel-loader@^9.1.3: version "9.2.1" @@ -2529,34 +2471,42 @@ babel-loader@^9.1.3: schema-utils "^4.0.0" babel-plugin-polyfill-corejs2@^0.4.10: - version "0.4.11" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz#30320dfe3ffe1a336c15afdcdafd6fd615b25e33" - integrity sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q== + version "0.4.13" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.13.tgz#7d445f0e0607ebc8fb6b01d7e8fb02069b91dd8b" + integrity sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g== dependencies: "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.6.2" + "@babel/helper-define-polyfill-provider" "^0.6.4" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.10.6: - version "0.10.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7" - integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA== +babel-plugin-polyfill-corejs3@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.11.1.tgz#4e4e182f1bb37c7ba62e2af81d8dd09df31344f6" + integrity sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.2" - core-js-compat "^3.38.0" + "@babel/helper-define-polyfill-provider" "^0.6.3" + core-js-compat "^3.40.0" babel-plugin-polyfill-regenerator@^0.6.1: - version "0.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz#addc47e240edd1da1058ebda03021f382bba785e" - integrity sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg== + version "0.6.4" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.4.tgz#428c615d3c177292a22b4f93ed99e358d7906a9b" + integrity sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.2" + "@babel/helper-define-polyfill-provider" "^0.6.4" balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +barcode-detector@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/barcode-detector/-/barcode-detector-2.3.1.tgz#91d0d4e3b913d87f94bae5d024b6b9b5cedc420c" + integrity sha512-D9KEtrquS1tmBZduxBZl8qublIKnRrFqD8TAHDYcLCyrHQBo+vitIxmjMJ61LvXjXyAMalOlO7q0Oh/9Rl2PbQ== + dependencies: + "@types/dom-webcodecs" "0.1.11" + zxing-wasm "1.3.4" + base64-js@1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" @@ -2567,11 +2517,6 @@ base64-js@^1.1.2, base64-js@^1.3.0: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw== - big.js@^5.2.2: version "5.2.2" resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" @@ -2587,51 +2532,25 @@ blurhash@2.0.5: resolved "https://registry.yarnpkg.com/blurhash/-/blurhash-2.0.5.tgz#efde729fc14a2f03571a6aa91b49cba80d1abe4b" integrity sha512-cRygWd7kGBQO3VEhPiTgq4Wc43ctsM+o46urrmPOiuAe+07fzlSB9OJVdpgDL0jPqXUVQ9ht7aq7kxOeJHRK+w== -body-parser@1.20.3: - version "1.20.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" - integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== - dependencies: - bytes "3.1.2" - content-type "~1.0.5" - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - http-errors "2.0.0" - iconv-lite "0.4.24" - on-finished "2.4.1" - qs "6.13.0" - raw-body "2.5.2" - type-is "~1.6.18" - unpipe "1.0.0" - -bonjour-service@^1.0.11: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.2.1.tgz#eb41b3085183df3321da1264719fbada12478d02" - integrity sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw== - dependencies: - fast-deep-equal "^3.1.3" - multicast-dns "^7.2.5" - boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== bootbox@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/bootbox/-/bootbox-6.0.0.tgz#a5f1074faab38b881e79e009ea4d625c7e8c536d" - integrity sha512-+Calbj1v5UvxAXXDAHfoBlsx63Hcz1JqHaZdJ5EjIcOlkyAbZLCreVScx0Em6ZUvsMCqynuz/3nGDyd9FtFrNQ== + version "6.0.3" + resolved "https://registry.yarnpkg.com/bootbox/-/bootbox-6.0.3.tgz#11cc3dcb15e3c926066b0ca7bd802b1f53f9041e" + integrity sha512-kmQcrPxePAbFpTzqoOFf62X6ihnVzPFU7v/I/UuNedimBGwpv0cgjXusbYqUF6/j+Wcnec9iK7Tr9B0sqwUOYQ== bootstrap@^5.1.3: - version "5.3.3" - resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.3.3.tgz#de35e1a765c897ac940021900fcbb831602bac38" - integrity sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg== + version "5.3.6" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.3.6.tgz#fbd91ebaff093f5b191a1c01a8c866d24f9fa6e1" + integrity sha512-jX0GAcRzvdwISuvArXn3m7KZscWWFAf1MKBcnzaN02qWMb3jpMoUX4/qgeiGzqyIb4ojulRzs89UCUmGcFSzTA== bootswatch@^5.1.3: - version "5.3.3" - resolved "https://registry.yarnpkg.com/bootswatch/-/bootswatch-5.3.3.tgz#fb8f671862165a06a70aee10f84ee2cc77b52120" - integrity sha512-cJLhobnZsVCelU7zdH/L7wpcXAyUoTX4/5l2dWQ0JXgaVK80BdTQNU/ImWwoyIGBeyms4iQDAdNtOfPQZf0Atg== + version "5.3.6" + resolved "https://registry.yarnpkg.com/bootswatch/-/bootswatch-5.3.6.tgz#b5ccbf11213166633b0a7ec47ad4c1bbd5226cce" + integrity sha512-d2Kwu5IaALz9gb7fmW20mXU4oCJqBrXmJ3ffk8bZPIOMohJOt0/549liK2Jp9zalkxg30dZ+1wf4OH2m1lJC9w== brace-expansion@^1.1.7: version "1.1.11" @@ -2655,20 +2574,20 @@ brotli@^1.2.0: dependencies: base64-js "^1.1.2" -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== +browser-stdout@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.24.2: - version "4.24.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580" - integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== +browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.24.4, browserslist@^4.24.5: + version "4.24.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.5.tgz#aa0f5b8560fe81fde84c6dcb38f759bafba0e11b" + integrity sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw== dependencies: - caniuse-lite "^1.0.30001669" - electron-to-chromium "^1.5.41" - node-releases "^2.0.18" - update-browserslist-db "^1.1.1" + caniuse-lite "^1.0.30001716" + electron-to-chromium "^1.5.149" + node-releases "^2.0.19" + update-browserslist-db "^1.1.3" bs-custom-file-input@^1.3.4: version "1.3.4" @@ -2680,11 +2599,6 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -bytes@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" - integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== - cacache@^15.0.5: version "15.3.0" resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" @@ -2709,16 +2623,31 @@ cacache@^15.0.5: tar "^6.0.2" unique-filename "^1.1.1" -call-bind@^1.0.2, call-bind@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" - integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== +call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== dependencies: - es-define-property "^1.0.0" es-errors "^1.3.0" function-bind "^1.1.2" + +call-bind@^1.0.7, call-bind@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" get-intrinsic "^1.2.4" - set-function-length "^1.2.1" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" callsites@^3.0.0: version "3.1.0" @@ -2730,10 +2659,10 @@ camelcase-css@^2.0.1: resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== -camelcase@^6.0.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== caniuse-api@^3.0.0: version "3.0.0" @@ -2745,10 +2674,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001669: - version "1.0.30001677" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001677.tgz#27c2e2c637e007cfa864a16f7dfe7cde66b38b5f" - integrity sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001716: + version "1.0.30001718" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz#dae13a9c80d517c30c6197515a96131c194d8f82" + integrity sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw== chalk@^2.4.2: version "2.4.2" @@ -2775,20 +2704,20 @@ chalk@^4.0.0, chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chokidar@^3.5.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== +chokidar@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" + integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== dependencies: - anymatch "~3.1.2" + anymatch "~3.1.1" braces "~3.0.2" - glob-parent "~5.1.2" + glob-parent "~5.1.0" is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.6.0" + readdirp "~3.2.0" optionalDependencies: - fsevents "~2.3.2" + fsevents "~2.1.1" chownr@^2.0.0: version "2.0.0" @@ -2805,87 +2734,76 @@ ci-info@^3.2.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -ckeditor5@41.4.2: - version "41.4.2" - resolved "https://registry.yarnpkg.com/ckeditor5/-/ckeditor5-41.4.2.tgz#80ab3185a5a138ac80015bf863962948e58eefa1" - integrity sha512-90k7d3R1B7x3muHOKKOGIomFsSQRG1sPuRHdN6J7WmKZH+BrMQgRkUs66xVRhNjrLPmewwJYdQI42Sb1cA1ILQ== +ckeditor5@44.3.0: + version "44.3.0" + resolved "https://registry.yarnpkg.com/ckeditor5/-/ckeditor5-44.3.0.tgz#671fa487cc0e77768f474a3ec47663496584a69b" + integrity sha512-g2arr/fejYAiOkdMeYvz1ficRPJ42OvO+pYROhre08YjIbAtJBr8wO9DPk9nCV3msnyYE+B02bs+TppazhYNtw== dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-alignment" "41.4.2" - "@ckeditor/ckeditor5-autoformat" "41.4.2" - "@ckeditor/ckeditor5-autosave" "41.4.2" - "@ckeditor/ckeditor5-basic-styles" "41.4.2" - "@ckeditor/ckeditor5-block-quote" "41.4.2" - "@ckeditor/ckeditor5-build-balloon" "41.4.2" - "@ckeditor/ckeditor5-build-balloon-block" "41.4.2" - "@ckeditor/ckeditor5-build-classic" "41.4.2" - "@ckeditor/ckeditor5-build-decoupled-document" "41.4.2" - "@ckeditor/ckeditor5-build-inline" "41.4.2" - "@ckeditor/ckeditor5-build-multi-root" "41.4.2" - "@ckeditor/ckeditor5-ckbox" "41.4.2" - "@ckeditor/ckeditor5-ckfinder" "41.4.2" - "@ckeditor/ckeditor5-clipboard" "41.4.2" - "@ckeditor/ckeditor5-cloud-services" "41.4.2" - "@ckeditor/ckeditor5-code-block" "41.4.2" - "@ckeditor/ckeditor5-core" "41.4.2" - "@ckeditor/ckeditor5-easy-image" "41.4.2" - "@ckeditor/ckeditor5-editor-balloon" "41.4.2" - "@ckeditor/ckeditor5-editor-classic" "41.4.2" - "@ckeditor/ckeditor5-editor-decoupled" "41.4.2" - "@ckeditor/ckeditor5-editor-inline" "41.4.2" - "@ckeditor/ckeditor5-editor-multi-root" "41.4.2" - "@ckeditor/ckeditor5-engine" "41.4.2" - "@ckeditor/ckeditor5-enter" "41.4.2" - "@ckeditor/ckeditor5-essentials" "41.4.2" - "@ckeditor/ckeditor5-find-and-replace" "41.4.2" - "@ckeditor/ckeditor5-font" "41.4.2" - "@ckeditor/ckeditor5-heading" "41.4.2" - "@ckeditor/ckeditor5-highlight" "41.4.2" - "@ckeditor/ckeditor5-horizontal-line" "41.4.2" - "@ckeditor/ckeditor5-html-embed" "41.4.2" - "@ckeditor/ckeditor5-html-support" "41.4.2" - "@ckeditor/ckeditor5-image" "41.4.2" - "@ckeditor/ckeditor5-indent" "41.4.2" - "@ckeditor/ckeditor5-language" "41.4.2" - "@ckeditor/ckeditor5-link" "41.4.2" - "@ckeditor/ckeditor5-list" "41.4.2" - "@ckeditor/ckeditor5-markdown-gfm" "41.4.2" - "@ckeditor/ckeditor5-media-embed" "41.4.2" - "@ckeditor/ckeditor5-mention" "41.4.2" - "@ckeditor/ckeditor5-minimap" "41.4.2" - "@ckeditor/ckeditor5-page-break" "41.4.2" - "@ckeditor/ckeditor5-paragraph" "41.4.2" - "@ckeditor/ckeditor5-paste-from-office" "41.4.2" - "@ckeditor/ckeditor5-remove-format" "41.4.2" - "@ckeditor/ckeditor5-restricted-editing" "41.4.2" - "@ckeditor/ckeditor5-select-all" "41.4.2" - "@ckeditor/ckeditor5-show-blocks" "41.4.2" - "@ckeditor/ckeditor5-source-editing" "41.4.2" - "@ckeditor/ckeditor5-special-characters" "41.4.2" - "@ckeditor/ckeditor5-style" "41.4.2" - "@ckeditor/ckeditor5-table" "41.4.2" - "@ckeditor/ckeditor5-theme-lark" "41.4.2" - "@ckeditor/ckeditor5-typing" "41.4.2" - "@ckeditor/ckeditor5-ui" "41.4.2" - "@ckeditor/ckeditor5-undo" "41.4.2" - "@ckeditor/ckeditor5-upload" "41.4.2" - "@ckeditor/ckeditor5-utils" "41.4.2" - "@ckeditor/ckeditor5-watchdog" "41.4.2" - "@ckeditor/ckeditor5-widget" "41.4.2" - "@ckeditor/ckeditor5-word-count" "41.4.2" + "@ckeditor/ckeditor5-adapter-ckfinder" "44.3.0" + "@ckeditor/ckeditor5-alignment" "44.3.0" + "@ckeditor/ckeditor5-autoformat" "44.3.0" + "@ckeditor/ckeditor5-autosave" "44.3.0" + "@ckeditor/ckeditor5-basic-styles" "44.3.0" + "@ckeditor/ckeditor5-block-quote" "44.3.0" + "@ckeditor/ckeditor5-bookmark" "44.3.0" + "@ckeditor/ckeditor5-ckbox" "44.3.0" + "@ckeditor/ckeditor5-ckfinder" "44.3.0" + "@ckeditor/ckeditor5-clipboard" "44.3.0" + "@ckeditor/ckeditor5-cloud-services" "44.3.0" + "@ckeditor/ckeditor5-code-block" "44.3.0" + "@ckeditor/ckeditor5-core" "44.3.0" + "@ckeditor/ckeditor5-easy-image" "44.3.0" + "@ckeditor/ckeditor5-editor-balloon" "44.3.0" + "@ckeditor/ckeditor5-editor-classic" "44.3.0" + "@ckeditor/ckeditor5-editor-decoupled" "44.3.0" + "@ckeditor/ckeditor5-editor-inline" "44.3.0" + "@ckeditor/ckeditor5-editor-multi-root" "44.3.0" + "@ckeditor/ckeditor5-emoji" "44.3.0" + "@ckeditor/ckeditor5-engine" "44.3.0" + "@ckeditor/ckeditor5-enter" "44.3.0" + "@ckeditor/ckeditor5-essentials" "44.3.0" + "@ckeditor/ckeditor5-find-and-replace" "44.3.0" + "@ckeditor/ckeditor5-font" "44.3.0" + "@ckeditor/ckeditor5-heading" "44.3.0" + "@ckeditor/ckeditor5-highlight" "44.3.0" + "@ckeditor/ckeditor5-horizontal-line" "44.3.0" + "@ckeditor/ckeditor5-html-embed" "44.3.0" + "@ckeditor/ckeditor5-html-support" "44.3.0" + "@ckeditor/ckeditor5-image" "44.3.0" + "@ckeditor/ckeditor5-indent" "44.3.0" + "@ckeditor/ckeditor5-language" "44.3.0" + "@ckeditor/ckeditor5-link" "44.3.0" + "@ckeditor/ckeditor5-list" "44.3.0" + "@ckeditor/ckeditor5-markdown-gfm" "44.3.0" + "@ckeditor/ckeditor5-media-embed" "44.3.0" + "@ckeditor/ckeditor5-mention" "44.3.0" + "@ckeditor/ckeditor5-minimap" "44.3.0" + "@ckeditor/ckeditor5-page-break" "44.3.0" + "@ckeditor/ckeditor5-paragraph" "44.3.0" + "@ckeditor/ckeditor5-paste-from-office" "44.3.0" + "@ckeditor/ckeditor5-remove-format" "44.3.0" + "@ckeditor/ckeditor5-restricted-editing" "44.3.0" + "@ckeditor/ckeditor5-select-all" "44.3.0" + "@ckeditor/ckeditor5-show-blocks" "44.3.0" + "@ckeditor/ckeditor5-source-editing" "44.3.0" + "@ckeditor/ckeditor5-special-characters" "44.3.0" + "@ckeditor/ckeditor5-style" "44.3.0" + "@ckeditor/ckeditor5-table" "44.3.0" + "@ckeditor/ckeditor5-theme-lark" "44.3.0" + "@ckeditor/ckeditor5-typing" "44.3.0" + "@ckeditor/ckeditor5-ui" "44.3.0" + "@ckeditor/ckeditor5-undo" "44.3.0" + "@ckeditor/ckeditor5-upload" "44.3.0" + "@ckeditor/ckeditor5-utils" "44.3.0" + "@ckeditor/ckeditor5-watchdog" "44.3.0" + "@ckeditor/ckeditor5-widget" "44.3.0" + "@ckeditor/ckeditor5-word-count" "44.3.0" clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -clean-webpack-plugin@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0.tgz#72947d4403d452f38ed61a9ff0ada8122aacd729" - integrity sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w== - dependencies: - del "^4.1.1" - cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -2907,6 +2825,15 @@ clipboard@^2.0.4: select "^1.1.2" tiny-emitter "^2.0.0" +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + clone-deep@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" @@ -2957,24 +2884,22 @@ colord@^2.9.3: resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -colorette@^2.0.10, colorette@^2.0.14: +colorette@^2.0.14: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" +commander@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" + integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^7.0.0, commander@^7.2.0: +commander@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== @@ -2994,60 +2919,23 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== -compressible@~2.0.18: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== +compression-webpack-plugin@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-11.1.0.tgz#ee340d2029cf99ccecdea9ad1410b377d15b48b3" + integrity sha512-zDOQYp10+upzLxW+VRSjEpRRwBXJdsb5lBMlRxx1g8hckIFBpe3DTI0en2w7h+beuq89576RVzfiXrkdPGrHhA== dependencies: - mime-db ">= 1.43.0 < 2" - -compression-webpack-plugin@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-10.0.0.tgz#3496af1b0dc792e13efc474498838dbff915c823" - integrity sha512-wLXLIBwpul/ALcm7Aj+69X0pYT3BYt6DdPn3qrgBIh9YejV9Bju9ShhlAsjujLyWMo6SAweFIWaUoFmXZNuNrg== - dependencies: - schema-utils "^4.0.0" - serialize-javascript "^6.0.0" - -compression@^1.7.4: - version "1.7.5" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.5.tgz#fdd256c0a642e39e314c478f6c2cd654edd74c93" - integrity sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q== - dependencies: - bytes "3.1.2" - compressible "~2.0.18" - debug "2.6.9" - negotiator "~0.6.4" - on-headers "~1.0.2" - safe-buffer "5.2.1" - vary "~1.1.2" + schema-utils "^4.2.0" + serialize-javascript "^6.0.2" concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -connect-history-api-fallback@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz#647264845251a0daf25b97ce87834cace0f5f1c8" - integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA== - consola@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/consola/-/consola-3.2.3.tgz#0741857aa88cfa0d6fd53f1cff0375136e98502f" - integrity sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ== - -content-disposition@0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" - integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== - dependencies: - safe-buffer "5.2.1" - -content-type@~1.0.4, content-type@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" - integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + version "3.4.2" + resolved "https://registry.yarnpkg.com/consola/-/consola-3.4.2.tgz#5af110145397bb67afdab77013fdc34cae590ea7" + integrity sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA== convert-source-map@^1.7.0: version "1.9.0" @@ -3059,27 +2947,17 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== - -cookie@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9" - integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w== - -core-js-compat@^3.38.0, core-js-compat@^3.38.1: - version "3.39.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.39.0.tgz#b12dccb495f2601dc860bdbe7b4e3ffa8ba63f61" - integrity sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw== +core-js-compat@^3.40.0: + version "3.42.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.42.0.tgz#ce19c29706ee5806e26d3cb3c542d4cfc0ed51bb" + integrity sha512-bQasjMfyDGyaeWKBIu33lHh9qlSR0MFE/Nmc6nMjf/iU9b3rSMdAYz1Baxrv4lPdGUsTqZudHA4jIGSJy0SWZQ== dependencies: - browserslist "^4.24.2" + browserslist "^4.24.4" core-js@^3.23.0: - version "3.39.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.39.0.tgz#57f7647f4d2d030c32a72ea23a0555b2eaa30f83" - integrity sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g== + version "3.42.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.42.0.tgz#edbe91f78ac8cfb6df8d997e74d368a68082fe37" + integrity sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g== core-util-is@~1.0.0: version "1.0.3" @@ -3098,9 +2976,9 @@ cosmiconfig@^7.0.0: yaml "^1.10.0" cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -3132,10 +3010,10 @@ css-loader@^5.2.7: schema-utils "^3.0.0" semver "^7.3.5" -css-loader@^6.7.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.11.0.tgz#33bae3bf6363d0a7c2cf9031c96c744ff54d85ba" - integrity sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g== +css-loader@^7.1.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-7.1.2.tgz#64671541c6efe06b0e22e750503106bdd86880f8" + integrity sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA== dependencies: icss-utils "^5.1.0" postcss "^8.4.33" @@ -3146,17 +3024,17 @@ css-loader@^6.7.0: postcss-value-parser "^4.2.0" semver "^7.5.4" -css-minimizer-webpack-plugin@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz#33effe662edb1a0bf08ad633c32fa75d0f7ec565" - integrity sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg== +css-minimizer-webpack-plugin@^7.0.0: + version "7.0.2" + resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-7.0.2.tgz#aa1b01c6033f5b2f86ddb60c1f5bddd012b50cac" + integrity sha512-nBRWZtI77PBZQgcXMNqiIXVshiQOVLGSf2qX/WZfG8IQfMbeHUMXaBWQmiiSTmPJUflQxHjZjzAmuyO7tpL2Jg== dependencies: - "@jridgewell/trace-mapping" "^0.3.18" - cssnano "^6.0.1" - jest-worker "^29.4.3" - postcss "^8.4.24" - schema-utils "^4.0.1" - serialize-javascript "^6.0.1" + "@jridgewell/trace-mapping" "^0.3.25" + cssnano "^7.0.4" + jest-worker "^29.7.0" + postcss "^8.4.40" + schema-utils "^4.2.0" + serialize-javascript "^6.0.2" css-select@^4.1.3: version "4.3.0" @@ -3242,12 +3120,53 @@ cssnano-preset-default@^6.1.2: postcss-svgo "^6.0.3" postcss-unique-selectors "^6.0.4" +cssnano-preset-default@^7.0.7: + version "7.0.7" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-7.0.7.tgz#1ea881837a837a4400c383d77d9e6cdf4339b6a0" + integrity sha512-jW6CG/7PNB6MufOrlovs1TvBTEVmhY45yz+bd0h6nw3h6d+1e+/TX+0fflZ+LzvZombbT5f+KC063w9VoHeHow== + dependencies: + browserslist "^4.24.5" + css-declaration-sorter "^7.2.0" + cssnano-utils "^5.0.1" + postcss-calc "^10.1.1" + postcss-colormin "^7.0.3" + postcss-convert-values "^7.0.5" + postcss-discard-comments "^7.0.4" + postcss-discard-duplicates "^7.0.2" + postcss-discard-empty "^7.0.1" + postcss-discard-overridden "^7.0.1" + postcss-merge-longhand "^7.0.5" + postcss-merge-rules "^7.0.5" + postcss-minify-font-values "^7.0.1" + postcss-minify-gradients "^7.0.1" + postcss-minify-params "^7.0.3" + postcss-minify-selectors "^7.0.5" + postcss-normalize-charset "^7.0.1" + postcss-normalize-display-values "^7.0.1" + postcss-normalize-positions "^7.0.1" + postcss-normalize-repeat-style "^7.0.1" + postcss-normalize-string "^7.0.1" + postcss-normalize-timing-functions "^7.0.1" + postcss-normalize-unicode "^7.0.3" + postcss-normalize-url "^7.0.1" + postcss-normalize-whitespace "^7.0.1" + postcss-ordered-values "^7.0.2" + postcss-reduce-initial "^7.0.3" + postcss-reduce-transforms "^7.0.1" + postcss-svgo "^7.0.2" + postcss-unique-selectors "^7.0.4" + cssnano-utils@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-4.0.2.tgz#56f61c126cd0f11f2eef1596239d730d9fceff3c" integrity sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ== -cssnano@^6.0.1, cssnano@^6.0.3: +cssnano-utils@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-5.0.1.tgz#f529e9aa0d7930512ca45b9e2ddb8d6b9092eb30" + integrity sha512-ZIP71eQgG9JwjVZsTPSqhc6GHgEr53uJ7tK5///VfyWj6Xp2DBmixWHqJgPno+PqATzn48pL42ww9x5SSGmhZg== + +cssnano@^6.0.3: version "6.1.2" resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-6.1.2.tgz#4bd19e505bd37ee7cf0dc902d3d869f6d79c66b8" integrity sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA== @@ -3255,6 +3174,14 @@ cssnano@^6.0.1, cssnano@^6.0.3: cssnano-preset-default "^6.1.2" lilconfig "^3.1.1" +cssnano@^7.0.4: + version "7.0.7" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-7.0.7.tgz#1aca487fc32d6b3b71e385c41a8cccb2f43735ac" + integrity sha512-evKu7yiDIF7oS+EIpwFlMF730ijRyLFaM2o5cTxRGJR9OKHKkc+qP443ZEVR9kZG0syaAJJCPJyfv5pbrxlSng== + dependencies: + cssnano-preset-default "^7.0.7" + lilconfig "^3.1.3" + csso@^5.0.5: version "5.0.5" resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" @@ -3262,104 +3189,105 @@ csso@^5.0.5: dependencies: css-tree "~2.2.0" -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== +data-view-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" + integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== dependencies: - cssom "~0.3.6" + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== +data-view-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" + integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-offset@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" + integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-data-view "^1.0.1" datatables.net-bs5@^2, datatables.net-bs5@^2.0.0: - version "2.1.8" - resolved "https://registry.yarnpkg.com/datatables.net-bs5/-/datatables.net-bs5-2.1.8.tgz#860717c4ee85ecb84812ba9a73fb1204aa2a68b6" - integrity sha512-YlGws8eI3iw/1AmKJH18+YMzm/UgGb6o9s14KAC24QT1/8anolm8GnVAgGcwUcvHm3hn1i8A5QXqgbqeMRINeg== + version "2.3.1" + resolved "https://registry.yarnpkg.com/datatables.net-bs5/-/datatables.net-bs5-2.3.1.tgz#167a86c4ab138fe6eb7f653fb4c64e3ade0d3d7a" + integrity sha512-bUwsW7cIR8EDyiedQv6OKGF5ouxkFjaODmtEd7NRtpoZixAZDScmIrxe9cddjS0EybpC2gYslKs+o03E8tkCEA== dependencies: - datatables.net "2.1.8" + datatables.net "2.3.1" jquery ">=1.7" datatables.net-buttons-bs5@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-3.1.2.tgz#b62a585ae7b3b43d1c2544da3db9b2f305296d7f" - integrity sha512-OHKVzixN4FgM9aKB16asPuSAvbKT4mmiN3l1kdH9F9aRKmgaG/bJRczbThfQ7GinOOqsiztkh6n2E/sM3jtUng== + version "3.2.3" + resolved "https://registry.yarnpkg.com/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-3.2.3.tgz#e6a7d2598d6303cbcdefce350fbc785461136059" + integrity sha512-jBwVlK0Iy3Sh3wqeH6STy+xPuGn37cqz+e/MqA0iXx7fDgqVPvWrEoO6Jdp4thejYTBokV7SZR2UirOxTcpOcA== dependencies: datatables.net-bs5 "^2" - datatables.net-buttons "3.1.2" + datatables.net-buttons "3.2.3" jquery ">=1.7" -datatables.net-buttons@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/datatables.net-buttons/-/datatables.net-buttons-3.1.2.tgz#99fe983f63febceba6bd46686000859e11e1ed37" - integrity sha512-D7xjmXR4P056JAD6skjKYcSvQxRslt69n5dgw8KX/6nmkSJirt3iFlhKo69GzHTFTOBN49WyPvStxpbUFgzc2A== +datatables.net-buttons@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/datatables.net-buttons/-/datatables.net-buttons-3.2.3.tgz#26eae1f012fd5cfbfcf28dfbfd8a4b644ea8a4ae" + integrity sha512-K+WeQWUYVGe5c3Gwb8Gfi7YpUXbJEerik3B2vynnVKpBlYBF5AHTGbrK1Psek2q/mjxeIVNHafQ9eX2otLhJVw== dependencies: datatables.net "^2" jquery ">=1.7" datatables.net-colreorder-bs5@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-2.0.4.tgz#02ebb321e38db1c9f6f5d325ed7f6fbf5f7945a7" - integrity sha512-FRMADJ3FU8W5d5KiYV2eJIqi3+JDKBrRDpn45JRt6584M2Z+UBftxFGQ0EtbY+tPsCxLr7Y3j7f43d2xcUKTYQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/datatables.net-colreorder-bs5/-/datatables.net-colreorder-bs5-2.1.0.tgz#6d9b37605f6cd1b42217cf4e65d09833c9113cba" + integrity sha512-s7ekoFwsj/NqyxnWQoGTQh8QbDvejM7dDSqLoAjfQDOgKpv3t0eZvzXIvufsZZhKPEJEw3Yof/tpN8+CHwDVxA== dependencies: datatables.net-bs5 "^2" - datatables.net-colreorder "2.0.4" + datatables.net-colreorder "2.1.0" jquery ">=1.7" -datatables.net-colreorder@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/datatables.net-colreorder/-/datatables.net-colreorder-2.0.4.tgz#fe33bf342cfedd92791d858f387a04f043d6d1b0" - integrity sha512-j2d2uObivMaMLX+VTsIu9XEfucMPuS+OYurezQtPNHo0LgdXdgKvouEAUghVtlkTxW+jX7tjiSbagH2YWIS5Jg== +datatables.net-colreorder@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/datatables.net-colreorder/-/datatables.net-colreorder-2.1.0.tgz#49dee41ad4874fc132031fdc6cc04369dc23cbdc" + integrity sha512-VMZkrR6cPzaCdlXnFmkM/oZS/TFY6NMusE7km3M3pYFVcmTyooQL/zDhEbhcCJrvNvuQkskruFYxwPK8+MzFPA== dependencies: datatables.net "^2" jquery ">=1.7" datatables.net-fixedheader-bs5@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-4.0.1.tgz#c593b2402b5736e571973c6ceba1a6220a674718" - integrity sha512-rA02QKEDvzj9dtwoUDl8hdSFDi4THpZeqCpCne0sVul1AM4OBy0O4zcx2WMSiEc5yEjFVZwKHmkvcDyhioV5IQ== + version "4.0.2" + resolved "https://registry.yarnpkg.com/datatables.net-fixedheader-bs5/-/datatables.net-fixedheader-bs5-4.0.2.tgz#f2c347853cfdf5c720fde61408e427ae96282ce7" + integrity sha512-CT8chF78LZg0zk8C21XEKrJv1i6DxyN1hFS80UHLGnh9bTBn7BzOG3781cZKfyUc2alazVLxZgCiLDreakrgZQ== dependencies: datatables.net-bs5 "^2" - datatables.net-fixedheader "4.0.1" + datatables.net-fixedheader "4.0.2" jquery ">=1.7" -datatables.net-fixedheader@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/datatables.net-fixedheader/-/datatables.net-fixedheader-4.0.1.tgz#d3c4866fa96fc468002f72b9e8efa3276aa4807b" - integrity sha512-jdwvGvI/WBKjNDJ5JwcTqmh7ehLkzXmTqvVCWJ6ig3+P9EHasoTq6Ys08WfICXpCHZgDKwDYLiW2rqVLK5TWOg== +datatables.net-fixedheader@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/datatables.net-fixedheader/-/datatables.net-fixedheader-4.0.2.tgz#29321374aa771babe920a80bd2a365611d1d851c" + integrity sha512-pjOs3m0vRQArVZWG/LYfsyi/P9cjuNer0BuG6v2hkn/LT2DAiIe6l543p7IHgTGQXn/my2s/M397DY7U7txavg== dependencies: datatables.net "^2" jquery ">=1.7" datatables.net-responsive-bs5@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-3.0.3.tgz#20ea9263458a9d88ab0a3ef758aa6b2315f0f97f" - integrity sha512-5kc28ifPI/3X6jDPnEWf6sNgdNtXYHNv79BvhD341VPzL1R3WZv3afgfV05DqSUwsBkhXoRbnfqaQdY0lD6DOA== + version "3.0.4" + resolved "https://registry.yarnpkg.com/datatables.net-responsive-bs5/-/datatables.net-responsive-bs5-3.0.4.tgz#d13fd199f309cea41b08cb15c98ce5aafdeabe03" + integrity sha512-/RufNJAFFmXkhfyBmXKfLlpopoKNkeDytMHHbsiBkoTRllJik9rtOON5NuMJOCL8sjwM2c+rUo/rzuXNk/70Qw== dependencies: datatables.net-bs5 "^2" - datatables.net-responsive "3.0.3" + datatables.net-responsive "3.0.4" jquery ">=1.7" -datatables.net-responsive@3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/datatables.net-responsive/-/datatables.net-responsive-3.0.3.tgz#3adb8de628c01aaa84e1b3cc469286599fe6e8ed" - integrity sha512-/VU5U3P+l3GSdo92Mclt5YlrETNkfIZZU1MOk0aHNt0VqQOE0dORhx5Nwa8pYVsBuQBYzzyROZLru6UivEWv3Q== +datatables.net-responsive@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/datatables.net-responsive/-/datatables.net-responsive-3.0.4.tgz#9e8d354f3b4016b60fe0aa588094ef0b31e9c61b" + integrity sha512-d1JKaWPRp81xydZrTDqrzGTloXthDtyvwbqiSKYUhDBKWTL4wN5IW5WYr4OBPwu21Ctpi/QgOl7mt9MfyF8KxA== dependencies: datatables.net "^2" jquery ">=1.7" @@ -3381,10 +3309,10 @@ datatables.net-select@2.1.0: datatables.net "^2" jquery ">=1.7" -datatables.net@2.1.8, datatables.net@^2, datatables.net@^2.0.0: - version "2.1.8" - resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-2.1.8.tgz#9b020f18e927cc924d72411f62dc595cc688669b" - integrity sha512-47ULt+U4bcjbuGTpTlT6SnCuSFVRBxxdWa6X3NfvTObBJ2BZU0o+JUIl05wQ6cABNIavjbAV51gpgvFsMHL9zA== +datatables.net@2.3.1, datatables.net@^2, datatables.net@^2.0.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-2.3.1.tgz#fcb61efd42fe64627fb9042637f1d93872268e70" + integrity sha512-pRXZuk3oR7P5kTl/CRvopcTihlvmZiY+xSBjbNI6e8MjYtgZQodWEqLUUOrIZeLH8CfxapPR/Bmb0NKAvILP5g== dependencies: jquery ">=1.7" @@ -3393,24 +3321,29 @@ debounce@^1.2.1: resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== -debug@2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== +debug@3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: - ms "2.0.0" + ms "^2.1.1" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: - version "4.3.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" - integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== +debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" + integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== dependencies: ms "^2.1.3" -decimal.js@^10.2.1: - version "10.4.3" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" - integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decimal.js@^10.4.3: + version "10.5.0" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.5.0.tgz#0f371c7cf6c4898ce0afb09836db73cd82010f22" + integrity sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw== deep-equal@^1.0.0: version "1.1.2" @@ -3424,13 +3357,6 @@ deep-equal@^1.0.0: object-keys "^1.1.1" regexp.prototype.flags "^1.5.1" -default-gateway@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-6.0.3.tgz#819494c888053bdb743edbf343d6cdf7f2943a71" - integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg== - dependencies: - execa "^5.0.0" - define-data-property@^1.0.1, define-data-property@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" @@ -3440,12 +3366,7 @@ define-data-property@^1.0.1, define-data-property@^1.1.4: es-errors "^1.3.0" gopd "^1.0.1" -define-lazy-prop@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" - integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== - -define-properties@^1.2.1: +define-properties@^1.1.2, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -3454,19 +3375,6 @@ define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -del@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" - integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== - dependencies: - "@types/glob" "^7.1.1" - globby "^6.1.0" - is-path-cwd "^2.0.0" - is-path-in-cwd "^2.0.0" - p-map "^2.0.0" - pify "^4.0.1" - rimraf "^2.6.3" - del@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/del/-/del-5.1.0.tgz#d9487c94e367410e6eff2925ee58c0c84a75b3a7" @@ -3481,41 +3389,21 @@ del@^5.0.0: rimraf "^3.0.0" slash "^3.0.0" -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - delegate@^3.1.2: version "3.2.0" resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== -depd@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== - -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - -detect-node@^2.0.4: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" - integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== - dfa@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/dfa/-/dfa-1.2.0.tgz#96ac3204e2d29c49ea5b57af8d92c2ae12790657" integrity sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q== +diff@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -3523,13 +3411,6 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dns-packet@^5.2.2: - version "5.6.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" - integrity sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw== - dependencies: - "@leichtgewicht/ip-codec" "^2.0.1" - dom-converter@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" @@ -3560,13 +3441,6 @@ domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -3582,9 +3456,11 @@ domhandler@^5.0.2, domhandler@^5.0.3: domelementtype "^2.3.0" dompurify@^3.0.3: - version "3.1.7" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.1.7.tgz#711a8c96479fb6ced93453732c160c3c72418a6a" - integrity sha512-VaTstWtsneJY8xzy7DekmYWEOZcmzIe3Qb3zPd4STve1OBTa+e+WmS1ITQec1fZYXI3HCsOZZiSMpG6oxoWMWQ== + version "3.2.5" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.2.5.tgz#11b108656a5fb72b24d916df17a1421663d7129c" + integrity sha512-mLPd29uoRe9HpvwP2TxClGQBzGXeEC/we/q+bFlmPPmj2p2Ugl3r6ATu/UU1v77DXNcehiBg9zsr1dREyA/dJQ== + optionalDependencies: + "@types/trusted-types" "^2.0.7" domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" @@ -3596,28 +3472,37 @@ domutils@^2.5.2, domutils@^2.8.0: domhandler "^4.2.0" domutils@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" - integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== + version "3.2.2" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.2.2.tgz#edbfe2b668b0c1d97c24baf0f1062b132221bc78" + integrity sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw== dependencies: dom-serializer "^2.0.0" domelementtype "^2.3.0" domhandler "^5.0.3" +dunder-proto@^1.0.0, dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + duplexer@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== +electron-to-chromium@^1.5.149: + version "1.5.155" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz#809dd0ae9ae1db87c358e0c0c17c09a2ffc432d1" + integrity sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng== -electron-to-chromium@^1.5.41: - version "1.5.50" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.50.tgz#d9ba818da7b2b5ef1f3dd32bce7046feb7e93234" - integrity sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw== +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== emoji-regex@^8.0.0: version "8.0.0" @@ -3634,20 +3519,10 @@ emojis-list@^3.0.0: resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - -encodeurl@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" - integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== - enhanced-resolve@^5.0.0, enhanced-resolve@^5.17.1: - version "5.17.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" - integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== + version "5.18.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz#728ab082f8b7b6836de51f1637aab5d3b9568faf" + integrity sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -3681,12 +3556,72 @@ error-stack-parser@^2.1.4: dependencies: stackframe "^1.3.4" -es-define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" - integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== +es-abstract@^1.23.2, es-abstract@^1.23.5, es-abstract@^1.23.9: + version "1.23.9" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.9.tgz#5b45994b7de78dada5c1bebf1379646b32b9d606" + integrity sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA== dependencies: - get-intrinsic "^1.2.4" + array-buffer-byte-length "^1.0.2" + arraybuffer.prototype.slice "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.3" + data-view-buffer "^1.0.2" + data-view-byte-length "^1.0.2" + data-view-byte-offset "^1.0.1" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.1.0" + es-to-primitive "^1.3.0" + function.prototype.name "^1.1.8" + get-intrinsic "^1.2.7" + get-proto "^1.0.0" + get-symbol-description "^1.1.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + internal-slot "^1.1.0" + is-array-buffer "^3.0.5" + is-callable "^1.2.7" + is-data-view "^1.0.2" + is-regex "^1.2.1" + is-shared-array-buffer "^1.0.4" + is-string "^1.1.1" + is-typed-array "^1.1.15" + is-weakref "^1.1.0" + math-intrinsics "^1.1.0" + object-inspect "^1.13.3" + object-keys "^1.1.1" + object.assign "^4.1.7" + own-keys "^1.0.1" + regexp.prototype.flags "^1.5.3" + safe-array-concat "^1.1.3" + safe-push-apply "^1.0.0" + safe-regex-test "^1.1.0" + set-proto "^1.0.0" + string.prototype.trim "^1.2.10" + string.prototype.trimend "^1.0.9" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.3" + typed-array-byte-length "^1.0.3" + typed-array-byte-offset "^1.0.4" + typed-array-length "^1.0.7" + unbox-primitive "^1.1.0" + which-typed-array "^1.1.18" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== es-errors@^1.3.0: version "1.3.0" @@ -3694,9 +3629,35 @@ es-errors@^1.3.0: integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== es-module-lexer@^1.2.1: - version "1.5.4" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78" - integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw== + version "1.7.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a" + integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== + +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +es-to-primitive@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" + integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== + dependencies: + is-callable "^1.2.7" + is-date-object "^1.0.5" + is-symbol "^1.0.4" esbuild-loader@~3.0.1: version "3.0.1" @@ -3741,12 +3702,7 @@ escalade@^3.2.0: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== - -escape-string-regexp@^1.0.5: +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== @@ -3756,17 +3712,6 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" - integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionalDependencies: - source-map "~0.6.1" - eslint-scope@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" @@ -3775,7 +3720,7 @@ eslint-scope@5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -esprima@^4.0.1: +esprima@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -3802,95 +3747,33 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== - -eventemitter3@^4.0.0: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -execa@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -exports-loader@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/exports-loader/-/exports-loader-3.1.0.tgz#a68040b902da8ef24f9f6db716be904ac2455284" - integrity sha512-zkMR5OHDn8qHq2w5BLv6SnLmUK5QAtPkjTA7CNIYBB9kIxBFIeA+TA1GcMw3p/vn5Avnmq80L7MviA4tZclRmQ== +exports-loader@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/exports-loader/-/exports-loader-5.0.0.tgz#0e5c50baf8526237c0a2743116a3e3fa788d194f" + integrity sha512-W15EyyytBwd30yCCieTCqZSCUvU/o3etj2IUItSMjVQEzAf5xOQx8JL9iMo7ERnuAzIA6eapGSFWl7E9F+Wy9g== dependencies: source-map "^0.6.1" -express@^4.17.3: - version "4.21.1" - resolved "https://registry.yarnpkg.com/express/-/express-4.21.1.tgz#9dae5dda832f16b4eec941a4e44aa89ec481b281" - integrity sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ== - dependencies: - accepts "~1.3.8" - array-flatten "1.1.1" - body-parser "1.20.3" - content-disposition "0.5.4" - content-type "~1.0.4" - cookie "0.7.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "2.0.0" - encodeurl "~2.0.0" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.3.1" - fresh "0.5.2" - http-errors "2.0.0" - merge-descriptors "1.0.3" - methods "~1.1.2" - on-finished "2.4.1" - parseurl "~1.3.3" - path-to-regexp "0.1.10" - proxy-addr "~2.0.7" - qs "6.13.0" - range-parser "~1.2.1" - safe-buffer "5.2.1" - send "0.19.0" - serve-static "1.16.2" - setprototypeof "1.2.0" - statuses "2.0.1" - type-is "~1.6.18" - utils-merge "1.0.1" - vary "~1.1.2" - fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.0.3, fast-glob@^3.2.11: - version "3.3.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" - integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + version "3.3.3" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" + integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" glob-parent "^5.1.2" merge2 "^1.3.0" - micromatch "^4.0.4" + micromatch "^4.0.8" fast-json-stable-stringify@^2.0.0: version "2.1.0" @@ -3898,9 +3781,9 @@ fast-json-stable-stringify@^2.0.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-uri@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.3.tgz#892a1c91802d5d7860de728f18608a0573142241" - integrity sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw== + version "3.0.6" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748" + integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== fastest-levenshtein@1.0.16, fastest-levenshtein@^1.0.12, fastest-levenshtein@^1.0.16: version "1.0.16" @@ -3908,19 +3791,12 @@ fastest-levenshtein@1.0.16, fastest-levenshtein@^1.0.12, fastest-levenshtein@^1. integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== fastq@^1.6.0: - version "1.17.1" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" - integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== + version "1.19.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" + integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== dependencies: reusify "^1.0.4" -faye-websocket@^0.11.3: - version "0.11.4" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" - integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== - dependencies: - websocket-driver ">=0.5.1" - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -3928,19 +3804,6 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -finalhandler@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019" - integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ== - dependencies: - debug "2.6.9" - encodeurl "~2.0.0" - escape-html "~1.0.3" - on-finished "2.4.1" - parseurl "~1.3.3" - statuses "2.0.1" - unpipe "~1.0.0" - find-cache-dir@^3.3.1: version "3.3.2" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" @@ -3958,6 +3821,13 @@ find-cache-dir@^4.0.0: common-path-prefix "^3.0.0" pkg-dir "^7.0.0" +find-up@3.0.0, find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + find-up@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -3974,41 +3844,30 @@ find-up@^6.3.0: locate-path "^7.1.0" path-exists "^5.0.0" +flat@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.1.tgz#a392059cc382881ff98642f5da4dde0a959f309b" + integrity sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA== + dependencies: + is-buffer "~2.0.3" + flat@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -follow-redirects@^1.0.0: - version "1.15.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" - integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== - -form-data@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.2.tgz#83ad9ced7c03feaad97e293d6f6091011e1659c8" - integrity sha512-sJe+TQb2vIaIyO783qN6BlMYWMw3WBOHA1Ay2qxsnjuafEOQFJ2JakedOQirT6D5XPRxDvS7AHYyem9fTpb4LQ== +for-each@^0.3.3, for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" + is-callable "^1.2.7" -forwarded@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" - integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== - -fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== +fs-extra@^11.2.0: + version "11.3.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.0.tgz#0daced136bbaf65a555a326719af931adc7a314d" + integrity sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew== dependencies: - at-least-node "^1.0.0" graceful-fs "^4.2.0" jsonfile "^6.0.1" universalify "^2.0.0" @@ -4020,61 +3879,90 @@ fs-minipass@^2.0.0: dependencies: minipass "^3.0.0" -fs-monkey@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.6.tgz#8ead082953e88d992cf3ff844faa907b26756da2" - integrity sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg== - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== +fsevents@~2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== -function-bind@^1.1.2: +function-bind@^1.1.1, function-bind@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" + integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + functions-have-names "^1.2.3" + hasown "^2.0.2" + is-callable "^1.2.7" + functions-have-names@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== +fuzzysort@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/fuzzysort/-/fuzzysort-3.1.0.tgz#4d7832d8fa48ad381753eaa7a7aae9927bdc10a8" + integrity sha512-sR9BNCjBg6LNgwvxlBd0sBABvQitkLzoVY9MYYROQVX/FvfJ4Mai9LsGhDgd8qYdds0bY77VzYd5iuB+v5rwQQ== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== -get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" - integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" es-errors "^1.3.0" + es-object-atoms "^1.1.1" function-bind "^1.1.2" - has-proto "^1.0.1" - has-symbols "^1.0.3" - hasown "^2.0.0" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" -get-port@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc" - integrity sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg== +get-proto@^1.0.0, get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +get-symbol-description@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" + integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" get-tsconfig@^4.4.0: - version "4.8.1" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.8.1.tgz#8995eb391ae6e1638d251118c7b56de7eb425471" - integrity sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg== + version "4.10.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.10.0.tgz#403a682b373a823612475a4c2928c7326fc0f6bb" + integrity sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A== dependencies: resolve-pkg-maps "^1.0.0" @@ -4083,7 +3971,7 @@ github-slugger@^2.0.0: resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-2.0.0.tgz#52cf2f9279a21eb6c59dd385b410f0c0adda8f1a" integrity sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw== -glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -4095,7 +3983,19 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^7.0.0, glob@^7.0.3, glob@^7.1.3, glob@^7.1.4: +glob@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.0, glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -4112,6 +4012,14 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + globby@^10.0.1: version "10.0.2" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" @@ -4126,17 +4034,6 @@ globby@^10.0.1: merge2 "^1.2.3" slash "^3.0.0" -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw== - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - good-listener@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" @@ -4144,18 +4041,21 @@ good-listener@^1.2.2: dependencies: delegate "^3.1.2" -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -4168,10 +4068,10 @@ gzip-size@^6.0.0: dependencies: duplexer "^0.1.2" -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== +has-bigints@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" + integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== has-flag@^3.0.0: version "3.0.0" @@ -4190,67 +4090,47 @@ has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: dependencies: es-define-property "^1.0.0" -has-proto@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" - integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== +has-proto@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" + integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== + dependencies: + dunder-proto "^1.0.0" -has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== +has-symbols@^1.0.0, has-symbols@^1.0.3, has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== -has-tostringtag@^1.0.0: +has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== dependencies: has-symbols "^1.0.3" -hasown@^2.0.0, hasown@^2.0.2: +hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: function-bind "^1.1.2" -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ== - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" +he@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== htm@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/htm/-/htm-3.1.1.tgz#49266582be0dc66ed2235d5ea892307cc0c24b78" integrity sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ== -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - -html-entities@^2.3.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.5.2.tgz#201a3cf95d3a15be7099521620d19dfb4f65359f" - integrity sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA== - html-escaper@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -html5-qrcode@^2.2.1: - version "2.3.8" - resolved "https://registry.yarnpkg.com/html5-qrcode/-/html5-qrcode-2.3.8.tgz#0b0cdf7a9926cfd4be530e13a51db47592adfa0d" - integrity sha512-jsr4vafJhwoLVEDW3n1KvPnCCXWaQfRng0/EEYk1vNcQGcG/htAdhJX0be8YyqMoSz7+hZvOZSTAepsabiuhiQ== - htmlparser2@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -4261,86 +4141,6 @@ htmlparser2@^6.1.0: domutils "^2.5.2" entities "^2.0.0" -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== - -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== - dependencies: - depd "2.0.0" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses "2.0.1" - toidentifier "1.0.1" - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.5.1: - version "0.5.8" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" - integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== - -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - -http-proxy-middleware@^2.0.3: - version "2.0.7" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz#915f236d92ae98ef48278a95dedf17e991936ec6" - integrity sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA== - dependencies: - "@types/http-proxy" "^1.17.8" - http-proxy "^1.18.1" - is-glob "^4.0.1" - is-plain-obj "^3.0.0" - micromatch "^4.0.2" - -http-proxy@^1.18.1: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -https-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - iconv-lite@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" @@ -4364,9 +4164,9 @@ immediate@~3.0.5: integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -4402,59 +4202,80 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: +inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== +internal-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" + integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.2" + side-channel "^1.1.0" interpret@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== -interpret@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" - integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== +interpret@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4" + integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== intl-messageformat@^10.2.5: - version "10.7.4" - resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.7.4.tgz#f4982df83f6f5a44bd0ff3e7ef7f07528e767f86" - integrity sha512-D4wGk8/XAp/5YMLtTXR+BUyGeSl4+28N43cwXXmIGQ8Tt+STA/oUsz9KUerzgiwBlJ+2dRDsQ3qQvvlVF6jzFA== + version "10.7.16" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.7.16.tgz#d909f9f9f4ab857fbe681d559b958dd4dd9f665a" + integrity sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug== dependencies: - "@formatjs/ecma402-abstract" "2.2.2" - "@formatjs/fast-memoize" "2.2.3" - "@formatjs/icu-messageformat-parser" "2.9.2" - tslib "2" - -ipaddr.js@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -ipaddr.js@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8" - integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== + "@formatjs/ecma402-abstract" "2.3.4" + "@formatjs/fast-memoize" "2.2.7" + "@formatjs/icu-messageformat-parser" "2.11.2" + tslib "^2.8.0" is-arguments@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" - integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + version "1.2.0" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.2.0.tgz#ad58c6aecf563b78ef2bf04df540da8f5d7d8e1b" + integrity sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA== dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" + integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + get-intrinsic "^1.2.6" is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== +is-async-function@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" + integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== + dependencies: + async-function "^1.0.0" + call-bound "^1.0.3" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-bigint@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" + integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== + dependencies: + has-bigints "^1.0.2" + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -4462,21 +4283,49 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-core-module@^2.13.0: - version "2.15.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" - integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== +is-boolean-object@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" + integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-buffer@~2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-core-module@^2.16.0: + version "2.16.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" + integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== dependencies: hasown "^2.0.2" -is-date-object@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== +is-data-view@^1.0.1, is-data-view@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" + integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== dependencies: - has-tostringtag "^1.0.0" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + is-typed-array "^1.1.13" -is-docker@^2.0.0, is-docker@^2.1.1: +is-date-object@^1.0.5, is-date-object@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" + integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== + dependencies: + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-docker@^2.0.0: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== @@ -4486,11 +4335,33 @@ is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== +is-finalizationregistry@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" + integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== + dependencies: + call-bound "^1.0.3" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-generator-function@^1.0.10: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.1.0.tgz#bf3eeda931201394f57b5dba2800f91a238309ca" + integrity sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ== + dependencies: + call-bound "^1.0.3" + get-proto "^1.0.0" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -4503,40 +4374,34 @@ is-interactive@^1.0.0: resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + +is-number-object@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" + integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-path-cwd@^2.0.0, is-path-cwd@^2.2.0: +is-path-cwd@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== -is-path-in-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" - integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== - dependencies: - is-path-inside "^2.1.0" - -is-path-inside@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" - integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== - dependencies: - path-is-inside "^1.0.2" - is-path-inside@^3.0.1: version "3.0.3" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== -is-plain-obj@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" - integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== - is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -4544,23 +4409,71 @@ is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - -is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== +is-regex@^1.1.4, is-regex@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" + integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" + call-bound "^1.0.2" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + hasown "^2.0.2" -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + +is-shared-array-buffer@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" + integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== + dependencies: + call-bound "^1.0.3" + +is-string@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" + integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-symbol@^1.0.4, is-symbol@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" + integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== + dependencies: + call-bound "^1.0.2" + has-symbols "^1.1.0" + safe-regex-test "^1.1.0" + +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + +is-weakref@^1.0.2, is-weakref@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" + integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== + dependencies: + call-bound "^1.0.3" + +is-weakset@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" + integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== + dependencies: + call-bound "^1.0.3" + get-intrinsic "^1.2.6" is-wsl@^2.2.0: version "2.2.0" @@ -4569,6 +4482,11 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -4619,7 +4537,7 @@ jest-worker@^27.4.5: merge-stream "^2.0.0" supports-color "^8.0.0" -jest-worker@^29.4.3: +jest-worker@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== @@ -4644,48 +4562,28 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -jsdom@^16.2.0: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== +js-yaml@3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" + argparse "^1.0.7" + esprima "^4.0.0" -jsesc@^3.0.2, jsesc@~3.0.2: +jsesc@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" + integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== + +jsesc@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== json-formatter-js@^2.3.4: - version "2.5.18" - resolved "https://registry.yarnpkg.com/json-formatter-js/-/json-formatter-js-2.5.18.tgz#49406a56dda8430adae041998481de9e47b9591e" - integrity sha512-1OF3PafvJRAZAhb3EZUjLBdG+HXSpdHytV3nOD19OLzbhQgc8q8J8F6ro9hSdbcG0rXeWq33dQ37HxQLp3y74A== + version "2.5.23" + resolved "https://registry.yarnpkg.com/json-formatter-js/-/json-formatter-js-2.5.23.tgz#b7dd0a1da7e6cbea8e76743d7d8dc1238866cc73" + integrity sha512-Cbm8wHXjo/C56aCePP1VuKvjxoMEmL7g7Ckss1oWFFlCsvOEEbye1kTeaNNaqba1Cl6YpIOYAnK65pUQ8mDIUQ== json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" @@ -4727,9 +4625,9 @@ jszip@^3.2.0: setimmediate "^1.0.5" katex@^0.16.0: - version "0.16.11" - resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.11.tgz#4bc84d5584f996abece5f01c6ad11304276a33f5" - integrity sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ== + version "0.16.22" + resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.22.tgz#d2b3d66464b1e6d69e6463b28a86ced5a02c5ccd" + integrity sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg== dependencies: commander "^8.3.0" @@ -4743,14 +4641,6 @@ klona@^2.0.4: resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== -launch-editor@^2.6.0: - version "2.9.1" - resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.9.1.tgz#253f173bd441e342d4344b4dae58291abb425047" - integrity sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w== - dependencies: - picocolors "^1.0.0" - shell-quote "^1.8.1" - lie@~3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" @@ -4758,10 +4648,10 @@ lie@~3.3.0: dependencies: immediate "~3.0.5" -lilconfig@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.2.tgz#e4a7c3cb549e3a606c8dcc32e5ae1005e62c05cb" - integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow== +lilconfig@^3.1.1, lilconfig@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4" + integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw== lines-and-columns@^1.1.6: version "1.2.4" @@ -4782,6 +4672,14 @@ loader-utils@^2.0.0, loader-utils@^2.0.4: emojis-list "^3.0.0" json5 "^2.1.2" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -4816,11 +4714,18 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: +lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +log-symbols@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" + integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== + dependencies: + chalk "^2.4.2" + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -4842,27 +4747,32 @@ make-dir@^3.0.2: dependencies: semver "^6.0.0" -marked-gfm-heading-id@^3.0.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/marked-gfm-heading-id/-/marked-gfm-heading-id-3.2.0.tgz#d0344f786b4ab55415048260aad147f4e8e904b6" - integrity sha512-Xfxpr5lXLDLY10XqzSCA9l2dDaiabQUgtYM9hw8yunyVsB/xYBRpiic6BOiY/EAJw1ik1eWr1ET1HKOAPZBhXg== +marked-gfm-heading-id@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/marked-gfm-heading-id/-/marked-gfm-heading-id-4.1.1.tgz#c6a46a10272745f63c6b03439dc239543a8324e8" + integrity sha512-EeQZieAQmsI6c2tWLx0ETd0VjPwLV8qi+HT0dIsfVMERm0rCIuXfRvZXJbo1SgUi++lmuR1LVY+QzgNiLNvVpw== dependencies: github-slugger "^2.0.0" marked-mangle@^1.0.1: - version "1.1.9" - resolved "https://registry.yarnpkg.com/marked-mangle/-/marked-mangle-1.1.9.tgz#ee7a4a1e318a47c722c905e6472f346c6f7a08a6" - integrity sha512-eLTXr1xQzba/WZp/trPS0HkR9W02ifasH6IWPrBv++eO2m8POiwV4muQ6Tof2C5Fhdo3z8ggXs6VGw1f931Vsg== + version "1.1.10" + resolved "https://registry.yarnpkg.com/marked-mangle/-/marked-mangle-1.1.10.tgz#143c5ae7b2fa4182d8ea4cb72fb1c24a7abbb9d2" + integrity sha512-TrpN67SMJJdzXXWIzOd/QmnpsC5o1B44PUYaG2bh1XEbqVjA0UCI2ijFuE5LWESwKeI2gCP5FqcUHRGQwFtDIA== marked@4.0.12: version "4.0.12" resolved "https://registry.yarnpkg.com/marked/-/marked-4.0.12.tgz#2262a4e6fd1afd2f13557726238b69a48b982f7d" integrity sha512-hgibXWrEDNBWgGiK18j/4lkS6ihTe9sxtV4Q1OQppb/0zzyPSzoFANBa5MfsG/zgsWklmNnhm0XACZOH/0HBiQ== -marked@^12.0.0: - version "12.0.2" - resolved "https://registry.yarnpkg.com/marked/-/marked-12.0.2.tgz#b31578fe608b599944c69807b00f18edab84647e" - integrity sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q== +marked@^15.0.4: + version "15.0.11" + resolved "https://registry.yarnpkg.com/marked/-/marked-15.0.11.tgz#08a8d12c285e16259e44287b89ce0d871c9d55e8" + integrity sha512-1BEXAU2euRCG3xwgLVT1y0xbJEld1XOrmRJpUwRCcy7rxhSCwMrmEu9LXoPhHSCJG41V7YcQ2mjKRr5BA3ITIA== + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== mdn-data@2.0.28: version "2.0.28" @@ -4874,23 +4784,6 @@ mdn-data@2.0.30: resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== - -memfs@^3.4.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" - integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ== - dependencies: - fs-monkey "^1.0.4" - -merge-descriptors@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" - integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -4901,12 +4794,7 @@ merge2@^1.2.3, merge2@^1.3.0: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== - -micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4: +micromatch@^4.0.0, micromatch@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -4919,23 +4807,13 @@ mime-db@1.52.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -"mime-db@>= 1.43.0 < 2": - version "1.53.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.53.0.tgz#3cb63cd820fc29896d9d4e8c32ab4fcd74ccb447" - integrity sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg== - -mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.27: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" @@ -4949,18 +4827,25 @@ mini-css-extract-plugin@^2.4.2, mini-css-extract-plugin@^2.6.0: schema-utils "^4.0.0" tapable "^2.2.1" -minimalistic-assert@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +minimatch@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" -minimatch@^3.1.1: +minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" +minimist@^1.2.5: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + minipass-collect@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" @@ -5002,58 +4887,80 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" +mkdirp@0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== +mocha@^7.1.2: + version "7.2.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.2.0.tgz#01cc227b00d875ab1eed03a75106689cfed5a604" + integrity sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ== + dependencies: + ansi-colors "3.2.3" + browser-stdout "1.3.1" + chokidar "3.3.0" + debug "3.2.6" + diff "3.5.0" + escape-string-regexp "1.0.5" + find-up "3.0.0" + glob "7.1.3" + growl "1.10.5" + he "1.2.0" + js-yaml "3.13.1" + log-symbols "3.0.0" + minimatch "3.0.4" + mkdirp "0.5.5" + ms "2.1.1" + node-environment-flags "1.0.6" + object.assign "4.1.0" + strip-json-comments "2.0.1" + supports-color "6.0.0" + which "1.3.1" + wide-align "1.1.3" + yargs "13.3.2" + yargs-parser "13.1.2" + yargs-unparser "1.6.0" + mrmime@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4" - integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.1.tgz#bc3e87f7987853a54c9850eeb1f1078cd44adddc" + integrity sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ== -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -ms@2.1.3, ms@^2.1.3: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -multicast-dns@^7.2.5: - version "7.2.5" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" - integrity sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg== - dependencies: - dns-packet "^5.2.2" - thunky "^1.0.2" - -nanoid@^3.3.7: - version "3.3.7" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" - integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== - -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -negotiator@~0.6.4: - version "0.6.4" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7" - integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w== +nanoid@^3.3.8: + version "3.3.11" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -node-forge@^1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== +node-environment-flags@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" + integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== + dependencies: + object.getownpropertydescriptors "^2.0.3" + semver "^5.7.0" node-notifier@^9.0.0: version "9.0.1" @@ -5067,23 +4974,16 @@ node-notifier@^9.0.0: uuid "^8.3.0" which "^2.0.2" -node-releases@^2.0.18: - version "2.0.18" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" - integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== +node-releases@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" + integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - nth-check@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" @@ -5091,20 +4991,10 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -nwsapi@^2.2.0: - version "2.2.13" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.13.tgz#e56b4e98960e7a040e5474536587e599c4ff4655" - integrity sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ== - -object-assign@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== - -object-inspect@^1.13.1: - version "1.13.2" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" - integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== +object-inspect@^1.13.3: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== object-is@^1.1.5: version "1.1.6" @@ -5114,27 +5004,45 @@ object-is@^1.1.5: call-bind "^1.0.7" define-properties "^1.2.1" -object-keys@^1.1.1: +object-keys@^1.0.11, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== +object.assign@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== dependencies: - ee-first "1.1.1" + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" -on-headers@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" - integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== +object.assign@^4.1.7: + version "4.1.7" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.1.8" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz#2f1fe0606ec1a7658154ccd4f728504f69667923" + integrity sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A== + dependencies: + array.prototype.reduce "^1.0.6" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + gopd "^1.0.1" + safe-array-concat "^1.1.2" once@^1.3.0: version "1.4.0" @@ -5143,28 +5051,28 @@ once@^1.3.0: dependencies: wrappy "1" -onetime@^5.1.0, onetime@^5.1.2: +onetime@^5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" -open@^8.0.9: - version "8.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" - integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== - dependencies: - define-lazy-prop "^2.0.0" - is-docker "^2.1.1" - is-wsl "^2.2.0" - opener@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== -p-limit@^2.2.0: +own-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" + integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== + dependencies: + get-intrinsic "^1.2.6" + object-keys "^1.1.1" + safe-push-apply "^1.0.0" + +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -5185,6 +5093,13 @@ p-limit@^4.0.0: dependencies: yocto-queue "^1.0.0" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -5199,11 +5114,6 @@ p-locate@^6.0.0: dependencies: p-limit "^4.0.0" -p-map@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== - p-map@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" @@ -5218,14 +5128,6 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" -p-retry@^4.5.0: - version "4.6.2" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" - integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== - dependencies: - "@types/retry" "0.12.0" - retry "^0.13.1" - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -5258,15 +5160,10 @@ parse-json@^5.0.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - -parseurl@~1.3.2, parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: version "4.0.0" @@ -5283,12 +5180,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w== - -path-key@^3.0.0, path-key@^3.1.0: +path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== @@ -5298,58 +5190,36 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-to-regexp@0.1.10: - version "0.1.10" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz#67e9108c5c0551b9e5326064387de4763c4d5f8b" - integrity sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w== - path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== pdfmake@^0.2.2: - version "0.2.15" - resolved "https://registry.yarnpkg.com/pdfmake/-/pdfmake-0.2.15.tgz#86bbc2c854e8a1cc98d4d6394b39dae00cc3a3b0" - integrity sha512-Ryef9mjxo6q8dthhbssAK0zwCsPZ6Pl7kCHnIEXOvQdd79LUGZD6SHGi21YryFXczPjvw6V009uxQwp5iritcA== + version "0.2.20" + resolved "https://registry.yarnpkg.com/pdfmake/-/pdfmake-0.2.20.tgz#a2e37114e46247c9a295df2fc1c7184942de567e" + integrity sha512-bGbxbGFP5p8PWNT3Phsu1ZcRLnRfF6jmnuKTkgmt6i5PZzSdX6JaB+NeTz9q+aocfW8SE9GUjL3o/5GroBqGcQ== dependencies: "@foliojs-fork/linebreak" "^1.1.2" - "@foliojs-fork/pdfkit" "^0.15.1" + "@foliojs-fork/pdfkit" "^0.15.3" iconv-lite "^0.6.3" - xmldoc "^1.3.0" + xmldoc "^2.0.1" -picocolors@^1.0.0, picocolors@^1.1.0: +picocolors@^1.0.0, picocolors@^1.1.0, picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pify@^2.0.0, pify@^2.3.0: +pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== - pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -5379,6 +5249,19 @@ popper.js@^1.14.7: resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + +postcss-calc@^10.1.1: + version "10.1.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-10.1.1.tgz#52b385f2e628239686eb6e3a16207a43f36064ca" + integrity sha512-NYEsLHh8DgG/PRH2+G9BTuUdtf9ViS+vdoQ0YA5OQdGsfN4ztiwtDWNtBl9EKeqNMFnIu8IKZ0cLxEQ5r5KVMw== + dependencies: + postcss-selector-parser "^7.0.0" + postcss-value-parser "^4.2.0" + postcss-calc@^9.0.1: version "9.0.1" resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6" @@ -5397,6 +5280,16 @@ postcss-colormin@^6.1.0: colord "^2.9.3" postcss-value-parser "^4.2.0" +postcss-colormin@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-7.0.3.tgz#602d093c6f186d5316a4516607ddf4f0073ae5a5" + integrity sha512-xZxQcSyIVZbSsl1vjoqZAcMYYdnJsIyG8OvqShuuqf12S88qQboxxEy0ohNCOLwVPXTU+hFHvJPACRL2B5ohTA== + dependencies: + browserslist "^4.24.5" + caniuse-api "^3.0.0" + colord "^2.9.3" + postcss-value-parser "^4.2.0" + postcss-convert-values@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz#3498387f8efedb817cbc63901d45bd1ceaa40f48" @@ -5405,26 +5298,56 @@ postcss-convert-values@^6.1.0: browserslist "^4.23.0" postcss-value-parser "^4.2.0" +postcss-convert-values@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-7.0.5.tgz#35263382f3197d83b865c0967ddc708cdde3115e" + integrity sha512-0VFhH8nElpIs3uXKnVtotDJJNX0OGYSZmdt4XfSfvOMrFw1jKfpwpZxfC4iN73CTM/MWakDEmsHQXkISYj4BXw== + dependencies: + browserslist "^4.24.5" + postcss-value-parser "^4.2.0" + postcss-discard-comments@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz#e768dcfdc33e0216380623652b0a4f69f4678b6c" integrity sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw== +postcss-discard-comments@^7.0.4: + version "7.0.4" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-7.0.4.tgz#9aded15cf437d14ee02b7589ee911b780cd73ffb" + integrity sha512-6tCUoql/ipWwKtVP/xYiFf1U9QgJ0PUvxN7pTcsQ8Ns3Fnwq1pU5D5s1MhT/XySeLq6GXNvn37U46Ded0TckWg== + dependencies: + postcss-selector-parser "^7.1.0" + postcss-discard-duplicates@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz#d121e893c38dc58a67277f75bb58ba43fce4c3eb" integrity sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw== +postcss-discard-duplicates@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-7.0.2.tgz#9cf3e659d4f94b046eef6f93679490c0250a8e4e" + integrity sha512-eTonaQvPZ/3i1ASDHOKkYwAybiM45zFIc7KXils4mQmHLqIswXD9XNOKEVxtTFnsmwYzF66u4LMgSr0abDlh5w== + postcss-discard-empty@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz#ee39c327219bb70473a066f772621f81435a79d9" integrity sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ== +postcss-discard-empty@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-7.0.1.tgz#b6c57e8b5c69023169abea30dceb93f98a2ffd9f" + integrity sha512-cFrJKZvcg/uxB6Ijr4l6qmn3pXQBna9zyrPC+sK0zjbkDUZew+6xDltSF7OeB7rAtzaaMVYSdbod+sZOCWnMOg== + postcss-discard-overridden@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz#4e9f9c62ecd2df46e8fdb44dc17e189776572e2d" integrity sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ== +postcss-discard-overridden@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-7.0.1.tgz#bd9c9bc5e4548d3b6e67e7f8d64f2c9d745ae2a0" + integrity sha512-7c3MMjjSZ/qYrx3uc1940GSOzN1Iqjtlqe8uoSg+qdVPYyRb0TILSqqmtlSFuE4mTDECwsm397Ya7iXGzfF7lg== + postcss-import@^14.1.0: version "14.1.0" resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0" @@ -5460,6 +5383,14 @@ postcss-merge-longhand@^6.0.5: postcss-value-parser "^4.2.0" stylehacks "^6.1.1" +postcss-merge-longhand@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-7.0.5.tgz#e1b126e92f583815482e8b1e82c47d2435a20421" + integrity sha512-Kpu5v4Ys6QI59FxmxtNB/iHUVDn9Y9sYw66D6+SZoIk4QTz1prC4aYkhIESu+ieG1iylod1f8MILMs1Em3mmIw== + dependencies: + postcss-value-parser "^4.2.0" + stylehacks "^7.0.5" + postcss-merge-rules@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz#7aa539dceddab56019469c0edd7d22b64c3dea9d" @@ -5470,6 +5401,16 @@ postcss-merge-rules@^6.1.1: cssnano-utils "^4.0.2" postcss-selector-parser "^6.0.16" +postcss-merge-rules@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-7.0.5.tgz#08c009036172db1305f988c67b04881ee8aaa76b" + integrity sha512-ZonhuSwEaWA3+xYbOdJoEReKIBs5eDiBVLAGpYZpNFPzXZcEE5VKR7/qBEQvTZpiwjqhhqEQ+ax5O3VShBj9Wg== + dependencies: + browserslist "^4.24.5" + caniuse-api "^3.0.0" + cssnano-utils "^5.0.1" + postcss-selector-parser "^7.1.0" + postcss-minify-font-values@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz#a0e574c02ee3f299be2846369211f3b957ea4c59" @@ -5477,6 +5418,13 @@ postcss-minify-font-values@^6.1.0: dependencies: postcss-value-parser "^4.2.0" +postcss-minify-font-values@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-7.0.1.tgz#6fb4770131b31fd5a2014bd84e32f386a3406664" + integrity sha512-2m1uiuJeTplll+tq4ENOQSzB8LRnSUChBv7oSyFLsJRtUgAAJGP6LLz0/8lkinTgxrmJSPOEhgY1bMXOQ4ZXhQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-minify-gradients@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz#ca3eb55a7bdb48a1e187a55c6377be918743dbd6" @@ -5486,6 +5434,15 @@ postcss-minify-gradients@^6.0.3: cssnano-utils "^4.0.2" postcss-value-parser "^4.2.0" +postcss-minify-gradients@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-7.0.1.tgz#933cb642dd00df397237c17194f37dcbe4cad739" + integrity sha512-X9JjaysZJwlqNkJbUDgOclyG3jZEpAMOfof6PUZjPnPrePnPG62pS17CjdM32uT1Uq1jFvNSff9l7kNbmMSL2A== + dependencies: + colord "^2.9.3" + cssnano-utils "^5.0.1" + postcss-value-parser "^4.2.0" + postcss-minify-params@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz#54551dec77b9a45a29c3cb5953bf7325a399ba08" @@ -5495,6 +5452,15 @@ postcss-minify-params@^6.1.0: cssnano-utils "^4.0.2" postcss-value-parser "^4.2.0" +postcss-minify-params@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-7.0.3.tgz#ff4d0f765b6cdb9aa10e805ca3012393206686c9" + integrity sha512-vUKV2+f5mtjewYieanLX0xemxIp1t0W0H/D11u+kQV/MWdygOO7xPMkbK+r9P6Lhms8MgzKARF/g5OPXhb8tgg== + dependencies: + browserslist "^4.24.5" + cssnano-utils "^5.0.1" + postcss-value-parser "^4.2.0" + postcss-minify-selectors@^6.0.4: version "6.0.4" resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz#197f7d72e6dd19eed47916d575d69dc38b396aff" @@ -5502,6 +5468,14 @@ postcss-minify-selectors@^6.0.4: dependencies: postcss-selector-parser "^6.0.16" +postcss-minify-selectors@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-7.0.5.tgz#d8c89eeeb208705ab4127a464d1f54a3bc22cae3" + integrity sha512-x2/IvofHcdIrAm9Q+p06ZD1h6FPcQ32WtCRVodJLDR+WMn8EVHI1kvLxZuGKz/9EY5nAmI6lIQIrpo4tBy5+ug== + dependencies: + cssesc "^3.0.0" + postcss-selector-parser "^7.1.0" + postcss-mixins@^9.0.2: version "9.0.4" resolved "https://registry.yarnpkg.com/postcss-mixins/-/postcss-mixins-9.0.4.tgz#75cd3cdb619a7e08c4c51ebb094db5f6d65b3831" @@ -5518,20 +5492,20 @@ postcss-modules-extract-imports@^3.0.0, postcss-modules-extract-imports@^3.1.0: integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q== postcss-modules-local-by-default@^4.0.0, postcss-modules-local-by-default@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz#f1b9bd757a8edf4d8556e8d0f4f894260e3df78f" - integrity sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw== + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368" + integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw== dependencies: icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" + postcss-selector-parser "^7.0.0" postcss-value-parser "^4.1.0" postcss-modules-scope@^3.0.0, postcss-modules-scope@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz#a43d28289a169ce2c15c00c4e64c0858e43457d5" - integrity sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ== + version "3.2.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c" + integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA== dependencies: - postcss-selector-parser "^6.0.4" + postcss-selector-parser "^7.0.0" postcss-modules-values@^4.0.0: version "4.0.0" @@ -5540,19 +5514,25 @@ postcss-modules-values@^4.0.0: dependencies: icss-utils "^5.0.0" -postcss-nesting@^10.1.4: - version "10.2.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-10.2.0.tgz#0b12ce0db8edfd2d8ae0aaf86427370b898890be" - integrity sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA== +postcss-nesting@^13.0.0: + version "13.0.1" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-13.0.1.tgz#c405796d7245a3e4c267a9956cacfe9670b5d43e" + integrity sha512-VbqqHkOBOt4Uu3G8Dm8n6lU5+9cJFxiuty9+4rcoyRPO9zZS1JIs6td49VIoix3qYqELHlJIn46Oih9SAKo+yQ== dependencies: - "@csstools/selector-specificity" "^2.0.0" - postcss-selector-parser "^6.0.10" + "@csstools/selector-resolve-nested" "^3.0.0" + "@csstools/selector-specificity" "^5.0.0" + postcss-selector-parser "^7.0.0" postcss-normalize-charset@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz#1ec25c435057a8001dac942942a95ffe66f721e1" integrity sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ== +postcss-normalize-charset@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-7.0.1.tgz#bccc3f7c5f4440883608eea8b444c8f41ce55ff6" + integrity sha512-sn413ofhSQHlZFae//m9FTOfkmiZ+YQXsbosqOWRiVQncU2BA3daX3n0VF3cG6rGLSFVc5Di/yns0dFfh8NFgQ== + postcss-normalize-display-values@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz#54f02764fed0b288d5363cbb140d6950dbbdd535" @@ -5560,6 +5540,13 @@ postcss-normalize-display-values@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-display-values@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-7.0.1.tgz#feb40277d89a7f677b67a84cac999f0306e38235" + integrity sha512-E5nnB26XjSYz/mGITm6JgiDpAbVuAkzXwLzRZtts19jHDUBFxZ0BkXAehy0uimrOjYJbocby4FVswA/5noOxrQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-positions@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz#e982d284ec878b9b819796266f640852dbbb723a" @@ -5567,6 +5554,13 @@ postcss-normalize-positions@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-positions@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-7.0.1.tgz#c771c0d33034455205f060b999d8557c2308d22c" + integrity sha512-pB/SzrIP2l50ZIYu+yQZyMNmnAcwyYb9R1fVWPRxm4zcUFCY2ign7rcntGFuMXDdd9L2pPNUgoODDk91PzRZuQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-repeat-style@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz#f8006942fd0617c73f049dd8b6201c3a3040ecf3" @@ -5574,6 +5568,13 @@ postcss-normalize-repeat-style@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-repeat-style@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-7.0.1.tgz#05fe4d838eedbd996436c5cab78feef9bb1ae57b" + integrity sha512-NsSQJ8zj8TIDiF0ig44Byo3Jk9e4gNt9x2VIlJudnQQ5DhWAHJPF4Tr1ITwyHio2BUi/I6Iv0HRO7beHYOloYQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-string@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz#e3cc6ad5c95581acd1fc8774b309dd7c06e5e363" @@ -5581,6 +5582,13 @@ postcss-normalize-string@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-string@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-7.0.1.tgz#0f111e7b5dfb6de6ab19f09d9e1c16fabeee232f" + integrity sha512-QByrI7hAhsoze992kpbMlJSbZ8FuCEc1OT9EFbZ6HldXNpsdpZr+YXC5di3UEv0+jeZlHbZcoCADgb7a+lPmmQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-timing-functions@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz#40cb8726cef999de984527cbd9d1db1f3e9062c0" @@ -5588,6 +5596,13 @@ postcss-normalize-timing-functions@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-timing-functions@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-7.0.1.tgz#7b645a36f113fec49d95d56386c9980316c71216" + integrity sha512-bHifyuuSNdKKsnNJ0s8fmfLMlvsQwYVxIoUBnowIVl2ZAdrkYQNGVB4RxjfpvkMjipqvbz0u7feBZybkl/6NJg== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-unicode@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz#aaf8bbd34c306e230777e80f7f12a4b7d27ce06e" @@ -5596,6 +5611,14 @@ postcss-normalize-unicode@^6.1.0: browserslist "^4.23.0" postcss-value-parser "^4.2.0" +postcss-normalize-unicode@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-7.0.3.tgz#39092101a9dbe9cbac2e00e52c58a1390e9f2924" + integrity sha512-EcoA29LvG3F+EpOh03iqu+tJY3uYYKzArqKJHxDhUYLa2u58aqGq16K6/AOsXD9yqLN8O6y9mmePKN5cx6krOw== + dependencies: + browserslist "^4.24.5" + postcss-value-parser "^4.2.0" + postcss-normalize-url@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz#292792386be51a8de9a454cb7b5c58ae22db0f79" @@ -5603,6 +5626,13 @@ postcss-normalize-url@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-url@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-7.0.1.tgz#d6471a22b6747ce93d7038c16eb9f1ba8b307e25" + integrity sha512-sUcD2cWtyK1AOL/82Fwy1aIVm/wwj5SdZkgZ3QiUzSzQQofrbq15jWJ3BA7Z+yVRwamCjJgZJN0I9IS7c6tgeQ== + dependencies: + postcss-value-parser "^4.2.0" + postcss-normalize-whitespace@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz#fbb009e6ebd312f8b2efb225c2fcc7cf32b400cd" @@ -5610,6 +5640,13 @@ postcss-normalize-whitespace@^6.0.2: dependencies: postcss-value-parser "^4.2.0" +postcss-normalize-whitespace@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-7.0.1.tgz#ab8e9ff1f3213f3f3851c0a7d0e4ce4716777cea" + integrity sha512-vsbgFHMFQrJBJKrUFJNZ2pgBeBkC2IvvoHjz1to0/0Xk7sII24T0qFOiJzG6Fu3zJoq/0yI4rKWi7WhApW+EFA== + dependencies: + postcss-value-parser "^4.2.0" + postcss-ordered-values@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz#366bb663919707093451ab70c3f99c05672aaae5" @@ -5618,6 +5655,14 @@ postcss-ordered-values@^6.0.2: cssnano-utils "^4.0.2" postcss-value-parser "^4.2.0" +postcss-ordered-values@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-7.0.2.tgz#0e803fbb9601e254270481772252de9a8c905f48" + integrity sha512-AMJjt1ECBffF7CEON/Y0rekRLS6KsePU6PRP08UqYW4UGFRnTXNrByUzYK1h8AC7UWTZdQ9O3Oq9kFIhm0SFEw== + dependencies: + cssnano-utils "^5.0.1" + postcss-value-parser "^4.2.0" + postcss-reduce-initial@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz#4401297d8e35cb6e92c8e9586963e267105586ba" @@ -5626,6 +5671,14 @@ postcss-reduce-initial@^6.1.0: browserslist "^4.23.0" caniuse-api "^3.0.0" +postcss-reduce-initial@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-7.0.3.tgz#3ab073ecaf9e549f4c49fb0727bab09daf486672" + integrity sha512-RFvkZaqiWtGMlVjlUHpaxGqEL27lgt+Q2Ixjf83CRAzqdo+TsDyGPtJUbPx2MuYIJ+sCQc2TrOvRnhcXQfgIVA== + dependencies: + browserslist "^4.24.5" + caniuse-api "^3.0.0" + postcss-reduce-transforms@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz#6fa2c586bdc091a7373caeee4be75a0f3e12965d" @@ -5633,7 +5686,14 @@ postcss-reduce-transforms@^6.0.2: dependencies: postcss-value-parser "^4.2.0" -postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.16, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: +postcss-reduce-transforms@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-7.0.1.tgz#f87111264b0dfa07e1f708d7e6401578707be5d6" + integrity sha512-MhyEbfrm+Mlp/36hvZ9mT9DaO7dbncU0CvWI8V93LRkY6IYlu38OPg3FObnuKTUxJ4qA8HpurdQOo5CyqqO76g== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.16: version "6.1.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== @@ -5641,6 +5701,14 @@ postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.11, postcss-select cssesc "^3.0.0" util-deprecate "^1.0.2" +postcss-selector-parser@^7.0.0, postcss-selector-parser@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz#4d6af97eba65d73bc4d84bcb343e865d7dd16262" + integrity sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + postcss-simple-vars@^7.0.0: version "7.0.1" resolved "https://registry.yarnpkg.com/postcss-simple-vars/-/postcss-simple-vars-7.0.1.tgz#836b3097a54dcd13dbd3c36a5dbdd512fad2954c" @@ -5654,6 +5722,14 @@ postcss-svgo@^6.0.3: postcss-value-parser "^4.2.0" svgo "^3.2.0" +postcss-svgo@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-7.0.2.tgz#3de498299af585a5bfae28fd2a445edd1f4954f6" + integrity sha512-5Dzy66JlnRM6pkdOTF8+cGsB1fnERTE8Nc+Eed++fOWo1hdsBptCsbG8UuJkgtZt75bRtMJIrPeZmtfANixdFA== + dependencies: + postcss-value-parser "^4.2.0" + svgo "^3.3.2" + postcss-unique-selectors@^6.0.4: version "6.0.4" resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz#983ab308896b4bf3f2baaf2336e14e52c11a2088" @@ -5661,24 +5737,31 @@ postcss-unique-selectors@^6.0.4: dependencies: postcss-selector-parser "^6.0.16" +postcss-unique-selectors@^7.0.4: + version "7.0.4" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-7.0.4.tgz#625ad1c808bdf322fab6c027ae8d4f2637140995" + integrity sha512-pmlZjsmEAG7cHd7uK3ZiNSW6otSZ13RHuZ/4cDN/bVglS5EpF2r2oxY99SuOHa8m7AWoBCelTS3JPpzsIs8skQ== + dependencies: + postcss-selector-parser "^7.1.0" + postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@^8.2.14, postcss@^8.2.15, postcss@^8.4.12, postcss@^8.4.24, postcss@^8.4.33: - version "8.4.47" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.47.tgz#5bf6c9a010f3e724c503bf03ef7947dcb0fea365" - integrity sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ== +postcss@^8.2.14, postcss@^8.2.15, postcss@^8.4.12, postcss@^8.4.33, postcss@^8.4.40: + version "8.5.3" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.3.tgz#1463b6f1c7fb16fe258736cba29a2de35237eafb" + integrity sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A== dependencies: - nanoid "^3.3.7" - picocolors "^1.1.0" + nanoid "^3.3.8" + picocolors "^1.1.1" source-map-js "^1.2.1" preact@^10.13.2: - version "10.24.3" - resolved "https://registry.yarnpkg.com/preact/-/preact-10.24.3.tgz#086386bd47071e3b45410ef20844c21e23828f64" - integrity sha512-Z2dPnBnMUfyQfSQ+GBdsGa16hz35YmLmtTLhM169uW944hYL6xzTYkJjC07j+Wosz733pMWx0fgON3JNw1jJQA== + version "10.26.6" + resolved "https://registry.yarnpkg.com/preact/-/preact-10.26.6.tgz#388963cc4aa15fceafd65c17fbeddc395fdb0ceb" + integrity sha512-5SRRBinwpwkaD+OqlBDeITlRgvd8I8QlxHJw9AxSdMNV6O+LodN9nUyYGpSF7sadHjs6RzeFShMexC6DbtWr9g== pretty-error@^4.0.0: version "4.0.0" @@ -5698,36 +5781,11 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== -proxy-addr@~2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" - integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== - dependencies: - forwarded "0.2.0" - ipaddr.js "1.9.1" - -psl@^1.1.33: - version "1.9.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== -qs@6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" - integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== - dependencies: - side-channel "^1.0.6" - -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -5740,21 +5798,6 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" -range-parser@^1.2.1, range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" - integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== - dependencies: - bytes "3.1.2" - http-errors "2.0.0" - iconv-lite "0.4.24" - unpipe "1.0.0" - raw-loader@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" @@ -5770,7 +5813,7 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" -"readable-stream@2 || 3", readable-stream@^3.0.6: +"readable-stream@2 || 3": version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== @@ -5779,7 +5822,7 @@ read-cache@^1.0.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@^2.0.1, readable-stream@~2.3.6: +readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -5792,12 +5835,12 @@ readable-stream@^2.0.1, readable-stream@~2.3.6: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== +readdirp@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" + integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== dependencies: - picomatch "^2.2.1" + picomatch "^2.0.4" rechoir@^0.6.2: version "0.6.2" @@ -5806,12 +5849,26 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -rechoir@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" - integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== +rechoir@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.8.0.tgz#49f866e0d32146142da3ad8f0eff352b3215ff22" + integrity sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ== dependencies: - resolve "^1.9.0" + resolve "^1.20.0" + +reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" + integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.7" + get-proto "^1.0.1" + which-builtin-type "^1.2.1" regenerate-unicode-properties@^10.2.0: version "10.2.0" @@ -5830,42 +5887,32 @@ regenerator-runtime@^0.13.9: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== -regenerator-runtime@^0.14.0: - version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - -regenerator-transform@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" - integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== - dependencies: - "@babel/runtime" "^7.8.4" - regex-parser@^2.2.11: - version "2.3.0" - resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.3.0.tgz#4bb61461b1a19b8b913f3960364bb57887f920ee" - integrity sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg== + version "2.3.1" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.3.1.tgz#ee3f70e50bdd81a221d505242cb9a9c275a2ad91" + integrity sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ== -regexp.prototype.flags@^1.5.1: - version "1.5.3" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42" - integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ== +regexp.prototype.flags@^1.5.1, regexp.prototype.flags@^1.5.3: + version "1.5.4" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" + integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== dependencies: - call-bind "^1.0.7" + call-bind "^1.0.8" define-properties "^1.2.1" es-errors "^1.3.0" + get-proto "^1.0.1" + gopd "^1.2.0" set-function-name "^2.0.2" -regexpu-core@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac" - integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw== +regexpu-core@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.2.0.tgz#0e5190d79e542bf294955dccabae04d3c7d53826" + integrity sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA== dependencies: regenerate "^1.4.2" regenerate-unicode-properties "^10.2.0" regjsgen "^0.8.0" - regjsparser "^0.11.0" + regjsparser "^0.12.0" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.1.0" @@ -5874,10 +5921,10 @@ regjsgen@^0.8.0: resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== -regjsparser@^0.11.0: - version "0.11.2" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.2.tgz#7404ad42be00226d72bcf1f003f1f441861913d8" - integrity sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA== +regjsparser@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc" + integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ== dependencies: jsesc "~3.0.2" @@ -5892,15 +5939,20 @@ renderkid@^3.0.0: lodash "^4.17.21" strip-ansi "^6.0.1" +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + require-from-string@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== resolve-cwd@^3.0.0: version "3.0.0" @@ -5935,12 +5987,12 @@ resolve-url-loader@^5.0.0: postcss "^8.2.14" source-map "0.6.1" -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.14.2, resolve@^1.9.0: - version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.14.2, resolve@^1.20.0: + version "1.22.10" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" + integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== dependencies: - is-core-module "^2.13.0" + is-core-module "^2.16.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" @@ -5952,22 +6004,10 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" -retry@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" - integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== - reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" + version "1.1.0" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" + integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" @@ -5983,7 +6023,18 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: +safe-array-concat@^1.1.2, safe-array-concat@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" + integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + has-symbols "^1.1.0" + isarray "^2.0.5" + +safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -5993,7 +6044,24 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": +safe-push-apply@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" + integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== + dependencies: + es-errors "^1.3.0" + isarray "^2.0.5" + +safe-regex-test@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" + integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-regex "^1.2.1" + +"safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -6003,14 +6071,7 @@ sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: +schema-utils@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== @@ -6019,33 +6080,25 @@ schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: ajv "^6.12.5" ajv-keywords "^3.5.2" -schema-utils@^4.0.0, schema-utils@^4.0.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.2.0.tgz#70d7c93e153a273a805801882ebd3bff20d89c8b" - integrity sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw== +schema-utils@^4.0.0, schema-utils@^4.2.0, schema-utils@^4.3.0, schema-utils@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae" + integrity sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ== dependencies: "@types/json-schema" "^7.0.9" ajv "^8.9.0" ajv-formats "^2.1.1" ajv-keywords "^5.1.0" -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== - select@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== -selfsigned@^2.1.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.4.1.tgz#560d90565442a3ed35b674034cec4e95dceb4ae0" - integrity sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q== - dependencies: - "@types/node-forge" "^1.3.0" - node-forge "^1" +semver@^5.7.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== semver@^6.0.0, semver@^6.3.1: version "6.3.1" @@ -6053,28 +6106,9 @@ semver@^6.0.0, semver@^6.3.1: integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.5.4: - version "7.6.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" - integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== - -send@0.19.0: - version "0.19.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" - integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== - dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" - mime "1.6.0" - ms "2.1.3" - on-finished "2.4.1" - range-parser "~1.2.1" - statuses "2.0.1" + version "7.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" + integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== serialize-javascript@^5.0.1: version "5.0.1" @@ -6083,37 +6117,19 @@ serialize-javascript@^5.0.1: dependencies: randombytes "^2.1.0" -serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: +serialize-javascript@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: randombytes "^2.1.0" -serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw== - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== -serve-static@1.16.2: - version "1.16.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" - integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== - dependencies: - encodeurl "~2.0.0" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.19.0" - -set-function-length@^1.2.1: +set-function-length@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== @@ -6135,21 +6151,20 @@ set-function-name@^2.0.2: functions-have-names "^1.2.3" has-property-descriptors "^1.0.2" +set-proto@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" + integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== + dependencies: + dunder-proto "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - shallow-clone@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" @@ -6169,11 +6184,6 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" - integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== - shelljs@^0.8.1: version "0.8.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c" @@ -6188,17 +6198,47 @@ shellwords@^0.1.1: resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== -side-channel@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" - integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== +side-channel-list@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== dependencies: - call-bind "^1.0.7" es-errors "^1.3.0" - get-intrinsic "^1.2.4" - object-inspect "^1.13.1" + object-inspect "^1.13.3" -signal-exit@^3.0.2, signal-exit@^3.0.3: +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + +signal-exit@^3.0.2: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -6217,15 +6257,6 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -sockjs@^0.3.24: - version "0.3.24" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" - integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== - dependencies: - faye-websocket "^0.11.3" - uuid "^8.3.2" - websocket-driver "^0.7.4" - source-list-map@^2.0.0, source-list-map@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" @@ -6254,28 +6285,10 @@ source-map@^0.7.4: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - dependencies: - debug "^4.1.0" - detect-node "^2.0.4" - hpack.js "^2.1.6" - obuf "^1.1.2" - readable-stream "^3.0.6" - wbuf "^1.7.3" - -spdy@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - dependencies: - debug "^4.1.0" - handle-thing "^2.0.0" - http-deceiver "^1.2.7" - select-hose "^2.0.0" - spdy-transport "^3.0.0" +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== ssri@^8.0.1: version "8.0.1" @@ -6289,20 +6302,27 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== - stimulus-use@^0.52.0: - version "0.52.2" - resolved "https://registry.yarnpkg.com/stimulus-use/-/stimulus-use-0.52.2.tgz#fc992fababe03f8d8bc2d9470c8cdb40bd075917" - integrity sha512-413+tIw9n6Jnb0OFiQE1i3aP01i0hhGgAnPp1P6cNuBbhhqG2IOp8t1O/4s5Tw2lTvSYrFeLNdaY8sYlDaULeg== + version "0.52.3" + resolved "https://registry.yarnpkg.com/stimulus-use/-/stimulus-use-0.52.3.tgz#d6f35fa93277274957a2ed98a7b04b4d702cb1d6" + integrity sha512-stZ5dID6FUrGCR/ChWUa0FT5Z8iqkzT6lputOAb50eF+Ayg7RzJj4U/HoRlp2NV333QfvoRidru9HLbom4hZVw== + +"string-width@^1.0.2 || 2": + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" string-width@^4.2.3: version "4.2.3" @@ -6313,6 +6333,38 @@ string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string.prototype.trim@^1.2.10: + version "1.2.10" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" + integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-data-property "^1.1.4" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-object-atoms "^1.0.0" + has-property-descriptors "^1.0.2" + +string.prototype.trimend@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" + integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -6327,6 +6379,20 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -6334,10 +6400,10 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-json-comments@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== style-loader@^2.0.0: version "2.0.0" @@ -6360,11 +6426,26 @@ stylehacks@^6.1.1: browserslist "^4.23.0" postcss-selector-parser "^6.0.16" +stylehacks@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-7.0.5.tgz#86985a8c810f88e4a1a34804b0fe350686457ca9" + integrity sha512-5kNb7V37BNf0Q3w+1pxfa+oiNPS++/b4Jil9e/kPDgrk1zjEd6uR7SZeJiYaLYH6RRSC1XX2/37OTeU/4FvuIA== + dependencies: + browserslist "^4.24.5" + postcss-selector-parser "^7.1.0" + sugarss@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/sugarss/-/sugarss-4.0.1.tgz#128a783ed71ee0fc3b489ce1f7d5a89bc1e24383" integrity sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw== +supports-color@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" + integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== + dependencies: + has-flag "^3.0.0" + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -6391,7 +6472,7 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -svgo@^3.2.0: +svgo@^3.2.0, svgo@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.3.2.tgz#ad58002652dffbb5986fc9716afe52d869ecbda8" integrity sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw== @@ -6404,18 +6485,6 @@ svgo@^3.2.0: csso "^5.0.5" picocolors "^1.0.0" -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - -sync-rpc@^1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/sync-rpc/-/sync-rpc-1.3.6.tgz#b2e8b2550a12ccbc71df8644810529deb68665a7" - integrity sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw== - dependencies: - get-port "^3.1.0" - tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" @@ -6448,24 +6517,24 @@ terser-webpack-plugin@^4.2.3: terser "^5.3.4" webpack-sources "^1.4.3" -terser-webpack-plugin@^5.3.0, terser-webpack-plugin@^5.3.10: - version "5.3.10" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" - integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== +terser-webpack-plugin@^5.3.0, terser-webpack-plugin@^5.3.11: + version "5.3.14" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" + integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== dependencies: - "@jridgewell/trace-mapping" "^0.3.20" + "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" - schema-utils "^3.1.1" - serialize-javascript "^6.0.1" - terser "^5.26.0" + schema-utils "^4.3.0" + serialize-javascript "^6.0.2" + terser "^5.31.1" -terser@^5.26.0, terser@^5.3.4: - version "5.36.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.36.0.tgz#8b0dbed459ac40ff7b4c9fd5a3a2029de105180e" - integrity sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w== +terser@^5.3.4, terser@^5.31.1: + version "5.39.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.39.2.tgz#5a1626030724a672e2e5b5c9cd9070308c20e8f9" + integrity sha512-yEPUmWve+VA78bI71BW70Dh0TuV4HHd+I5SHOAfS1+QBOmvmCiiffgjR8ryyEd3KIfvPGFqoADt8LdQ6XpXIvg== dependencies: "@jridgewell/source-map" "^0.3.3" - acorn "^8.8.2" + acorn "^8.14.0" commander "^2.20.0" source-map-support "~0.5.20" @@ -6477,11 +6546,6 @@ through2@^3.0.1: inherits "^2.0.4" readable-stream "2 || 3" -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - tiny-emitter@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" @@ -6504,45 +6568,23 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - tom-select@^2.1.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/tom-select/-/tom-select-2.3.1.tgz#df338d9082874cd0bceb3bee87ed0184447c47f1" - integrity sha512-QS4vnOcB6StNGqX4sGboGXL2fkhBF2gIBB+8Hwv30FZXYPn0CyYO8kkdATRvwfCTThxiR4WcXwKJZ3cOmtI9eg== + version "2.4.3" + resolved "https://registry.yarnpkg.com/tom-select/-/tom-select-2.4.3.tgz#1daa4131cd317de691f39eb5bf41148265986c1f" + integrity sha512-MFFrMxP1bpnAMPbdvPCZk0KwYxLqhYZso39torcdoefeV/NThNyDu8dV96/INJ5XQVTL3O55+GqQ78Pkj5oCfw== dependencies: - "@orchidjs/sifter" "^1.0.3" - "@orchidjs/unicode-variants" "^1.0.4" + "@orchidjs/sifter" "^1.1.0" + "@orchidjs/unicode-variants" "^1.1.2" totalist@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== -tough-cookie@^4.0.0: - version "4.1.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" - integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - ts-loader@^9.2.6: - version "9.5.1" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.5.1.tgz#63d5912a86312f1fbe32cef0859fb8b2193d9b89" - integrity sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg== + version "9.5.2" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.5.2.tgz#1f3d7f4bb709b487aaa260e8f19b301635d08020" + integrity sha512-Qo4piXvOTWcMGIgRiuFa6nHNm+54HbYaZCKqc9eeZCLRy3XqafQgwX2F7mofrbJG3g7EEb+lkiR+z2Lic2s3Zw== dependencies: chalk "^4.1.0" enhanced-resolve "^5.0.0" @@ -6550,7 +6592,7 @@ ts-loader@^9.2.6: semver "^7.3.4" source-map "^0.7.4" -tslib@2: +tslib@^2.8.0: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== @@ -6560,30 +6602,77 @@ turndown-plugin-gfm@1.0.2: resolved "https://registry.yarnpkg.com/turndown-plugin-gfm/-/turndown-plugin-gfm-1.0.2.tgz#6f8678a361f35220b2bdf5619e6049add75bf1c7" integrity sha512-vwz9tfvF7XN/jE0dGoBei3FXWuvll78ohzCZQuOb+ZjWrs3a0XhQVomJEb2Qh4VHTPNRO4GPZh0V7VRbiWwkRg== -turndown@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/turndown/-/turndown-6.0.0.tgz#c083d6109a9366be1b84b86b20af09140ea4b413" - integrity sha512-UVJBhSyRHCpNKtQ00mNWlYUM/i+tcipkb++F0PrOpt0L7EhNd0AX9mWEpL2dRFBu7LWXMp4HgAMA4OeKKnN7og== +turndown@7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/turndown/-/turndown-7.2.0.tgz#67d614fe8371fb511079a93345abfd156c0ffcf4" + integrity sha512-eCZGBN4nNNqM9Owkv9HAtWRYfLA4h909E/WGAWWBpmB275ehNhZyk87/Tpvjbp0jjNl9XwCsbe6bm6CqFsgD+A== dependencies: - jsdom "^16.2.0" + "@mixmark-io/domino" "^2.2.0" -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" -typescript@^4.0.2: - version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== +typed-array-byte-length@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" + integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== + dependencies: + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.14" -undici-types@~6.19.8: - version "6.19.8" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" - integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== +typed-array-byte-offset@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" + integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.15" + reflect.getprototypeof "^1.0.9" + +typed-array-length@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" + +typescript@^5.7.2: + version "5.8.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.3.tgz#92f8a3e5e3cf497356f4178c34cd65a7f5e8440e" + integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ== + +unbox-primitive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" + integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== + dependencies: + call-bound "^1.0.3" + has-bigints "^1.0.2" + has-symbols "^1.1.0" + which-boxed-primitive "^1.1.1" + +undici-types@~6.21.0: + version "6.21.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" @@ -6638,28 +6727,18 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - universalify@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== - -update-browserslist-db@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" - integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== +update-browserslist-db@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" + integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== dependencies: escalade "^3.2.0" - picocolors "^1.1.0" + picocolors "^1.1.1" uri-js@^4.2.2: version "4.4.1" @@ -6668,14 +6747,6 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -6686,12 +6757,7 @@ utila@~0.4: resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== - -uuid@^8.3.0, uuid@^8.3.2: +uuid@^8.3.0: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== @@ -6701,25 +6767,6 @@ vanilla-colorful@0.7.2: resolved "https://registry.yarnpkg.com/vanilla-colorful/-/vanilla-colorful-0.7.2.tgz#3fb1f4b9f15b797e20fd1ce8e0364f33b073f4a2" integrity sha512-z2YZusTFC6KnLERx1cgoIRX2CjPRP0W75N+3CC6gbvdX5Ch47rZkEMGO2Xnf+IEmi3RiFLxS18gayMA27iU7Kg== -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== - -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - watchpack@^2.4.1: version "2.4.2" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.2.tgz#2feeaed67412e7c33184e5a79ca738fbd38564da" @@ -6728,23 +6775,6 @@ watchpack@^2.4.1: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - webpack-bundle-analyzer@^4.3.0: version "4.10.2" resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd" @@ -6763,71 +6793,25 @@ webpack-bundle-analyzer@^4.3.0: sirv "^2.0.3" ws "^7.3.1" -webpack-cli@^4.10.0: - version "4.10.0" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" - integrity sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w== +webpack-cli@^5.1.0: + version "5.1.4" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-5.1.4.tgz#c8e046ba7eaae4911d7e71e2b25b776fcc35759b" + integrity sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg== dependencies: "@discoveryjs/json-ext" "^0.5.0" - "@webpack-cli/configtest" "^1.2.0" - "@webpack-cli/info" "^1.5.0" - "@webpack-cli/serve" "^1.7.0" + "@webpack-cli/configtest" "^2.1.1" + "@webpack-cli/info" "^2.0.2" + "@webpack-cli/serve" "^2.0.5" colorette "^2.0.14" - commander "^7.0.0" + commander "^10.0.1" cross-spawn "^7.0.3" + envinfo "^7.7.3" fastest-levenshtein "^1.0.12" import-local "^3.0.2" - interpret "^2.2.0" - rechoir "^0.7.0" + interpret "^3.1.1" + rechoir "^0.8.0" webpack-merge "^5.7.3" -webpack-dev-middleware@^5.3.4: - version "5.3.4" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz#eb7b39281cbce10e104eb2b8bf2b63fce49a3517" - integrity sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q== - dependencies: - colorette "^2.0.10" - memfs "^3.4.3" - mime-types "^2.1.31" - range-parser "^1.2.1" - schema-utils "^4.0.0" - -webpack-dev-server@^4.8.0: - version "4.15.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz#9e0c70a42a012560860adb186986da1248333173" - integrity sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g== - dependencies: - "@types/bonjour" "^3.5.9" - "@types/connect-history-api-fallback" "^1.3.5" - "@types/express" "^4.17.13" - "@types/serve-index" "^1.9.1" - "@types/serve-static" "^1.13.10" - "@types/sockjs" "^0.3.33" - "@types/ws" "^8.5.5" - ansi-html-community "^0.0.8" - bonjour-service "^1.0.11" - chokidar "^3.5.3" - colorette "^2.0.10" - compression "^1.7.4" - connect-history-api-fallback "^2.0.0" - default-gateway "^6.0.3" - express "^4.17.3" - graceful-fs "^4.2.6" - html-entities "^2.3.2" - http-proxy-middleware "^2.0.3" - ipaddr.js "^2.0.1" - launch-editor "^2.6.0" - open "^8.0.9" - p-retry "^4.5.0" - rimraf "^3.0.2" - schema-utils "^4.0.0" - selfsigned "^2.1.1" - serve-index "^1.9.1" - sockjs "^0.3.24" - spdy "^4.0.2" - webpack-dev-middleware "^5.3.4" - ws "^8.13.0" - webpack-merge@^5.7.3: version "5.10.0" resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177" @@ -6867,15 +6851,16 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.74.0: - version "5.96.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.96.1.tgz#3676d1626d8312b6b10d0c18cc049fba7ac01f0c" - integrity sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA== + version "5.99.8" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.99.8.tgz#dd31a020b7c092d30c4c6d9a4edb95809e7f5946" + integrity sha512-lQ3CPiSTpfOnrEGeXDwoq5hIGzSjmwD72GdfVzF7CQAI7t47rJG9eDWvcEkEn3CUQymAElVvDg3YNTlCYj+qUQ== dependencies: "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.6" - "@webassemblyjs/ast" "^1.12.1" - "@webassemblyjs/wasm-edit" "^1.12.1" - "@webassemblyjs/wasm-parser" "^1.12.1" + "@types/json-schema" "^7.0.15" + "@webassemblyjs/ast" "^1.14.1" + "@webassemblyjs/wasm-edit" "^1.14.1" + "@webassemblyjs/wasm-parser" "^1.14.1" acorn "^8.14.0" browserslist "^4.24.0" chrome-trace-event "^1.0.2" @@ -6889,46 +6874,76 @@ webpack@^5.74.0: loader-runner "^4.2.0" mime-types "^2.1.27" neo-async "^2.6.2" - schema-utils "^3.2.0" + schema-utils "^4.3.2" tapable "^2.1.1" - terser-webpack-plugin "^5.3.10" + terser-webpack-plugin "^5.3.11" watchpack "^2.4.1" webpack-sources "^3.2.3" -websocket-driver@>=0.5.1, websocket-driver@^0.7.4: - version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== +which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" + integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== dependencies: - http-parser-js ">=0.5.1" - safe-buffer ">=5.1.0" - websocket-extensions ">=0.1.1" + is-bigint "^1.1.0" + is-boolean-object "^1.2.1" + is-number-object "^1.1.1" + is-string "^1.1.1" + is-symbol "^1.1.1" -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== +which-builtin-type@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" + integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== dependencies: - iconv-lite "0.4.24" + call-bound "^1.0.2" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.1.0" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.2.1" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.1.0" + which-collection "^1.0.2" + which-typed-array "^1.1.16" -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which-typed-array@^1.1.16, which-typed-array@^1.1.18: + version "1.1.19" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.19.tgz#df03842e870b6b88e117524a4b364b6fc689f956" + integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + +which@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" which@^2.0.1, which@^2.0.2: version "2.0.2" @@ -6937,43 +6952,49 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" +wide-align@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + wildcard@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -ws@^7.3.1, ws@^7.4.6: +ws@^7.3.1: version "7.5.10" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== -ws@^8.13.0: - version "8.18.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" - integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - -xmldoc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.3.0.tgz#7823225b096c74036347c9ec5924d06b6a3cebab" - integrity sha512-y7IRWW6PvEnYQZNZFMRLNJw+p3pezM4nKYPfr15g4OOW9i8VpeydycFuipE2297OvZnh3jSb2pxOt9QpkZUVng== +xmldoc@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-2.0.1.tgz#a901f6a6341e4d8cba3dbc5fc61017249f2adf24" + integrity sha512-sOOqgsjl3PU6iBw+fBUGAkTCE+JFK+sBaOL3pnZgzqk2/yvOD7RlFmZtDRJAEBzdpOYxSXyOQH4mjubdfs3MSg== dependencies: sax "^1.2.4" +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -6989,17 +7010,57 @@ yaml@^1.10.0: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +yargs-parser@13.1.2, yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^21.0.0: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== +yargs-unparser@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" + integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== + dependencies: + flat "^4.1.0" + lodash "^4.17.15" + yargs "^13.3.0" + +yargs@13.3.2, yargs@^13.3.0: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.2" + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== yocto-queue@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.1.1.tgz#fef65ce3ac9f8a32ceac5a634f74e17e5b232110" - integrity sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g== + version "1.2.1" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.1.tgz#36d7c4739f775b3cbc28e6136e21aa057adec418" + integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg== + +zxing-wasm@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/zxing-wasm/-/zxing-wasm-1.3.4.tgz#4bc45b78dc3594278bb0c24233bfb035ca9efab1" + integrity sha512-9l0QymyATF19FmI92QHe7Dayb+BUN7P7zFAt5iDgTnUf0dFWokz6GVA/W9EepjW5q8s3e89fIE/7uxpX27yqEQ== + dependencies: + "@types/emscripten" "^1.39.13"