diff --git a/.github/user_bug_report.md b/.github/user_bug_report.md index 9e5f2a5..4b92a8e 100755 --- a/.github/user_bug_report.md +++ b/.github/user_bug_report.md @@ -8,9 +8,11 @@ assignees: '' --- # Bug Description + A clear and concise description of what the bug is. # How to Reproduce + Steps to reproduce the behavior: 1. Go to '...' @@ -19,16 +21,20 @@ Steps to reproduce the behavior: 4. See error # Expected Behavior + A clear and concise description of what you expected to happen. # Screenshots + If applicable, add screenshots to help explain your problem. # System Information - - System: [e.g. PC or iPhone11, ...] - - OS: [e.g. iOS] - - Browser [e.g. chrome, safari] - - KarakaVersion [e.g. 22] + +- System: [e.g. PC or iPhone11, ...] +- OS: [e.g. iOS] +- Browser [e.g. chrome, safari] +- KarakaVersion [e.g. 22] # Additional Information + Add any other context about the problem here. diff --git a/.github/user_feature_request.md b/.github/user_feature_request.md index 6eb8ddc..c9595e8 100755 --- a/.github/user_feature_request.md +++ b/.github/user_feature_request.md @@ -8,11 +8,14 @@ assignees: '' --- # What is the feature you request + * A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] * A clear and concise description of what you want to happen. # Alternatives + A clear and concise description of any alternative solutions or features you've considered. # Additional Information + Add any other context or screenshots about the feature request here. diff --git a/.github/workflows/image.yml b/.github/workflows/image.yml index d079329..6f8f14a 100755 --- a/.github/workflows/image.yml +++ b/.github/workflows/image.yml @@ -1,24 +1,10 @@ -name: Compress images -on: - push: - paths: - - '**.jpg' - - '**.png' - - '**.webp' - pull_request: - paths: - - '**.jpg' - - '**.png' - - '**.webp' -jobs: - build: - name: calibreapp/image-actions - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@main +name: Image optimization - - name: Compress Images - uses: calibreapp/image-actions@main - with: - githubToken: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file +on: [push, pull_request] + +jobs: + general_image_workflow: + uses: Karaka-Management/Karaka/.github/workflows/image.yml@develop + secrets: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_PAT: ${{ secrets.GH_PAT }} diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6dcd721..1dacd12 100755 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,281 +1,20 @@ name: CI -on: [push, pull_request] +on: + push: + branches: + - master + - develop + pull_request: + branches: + - master + - develop + schedule: + - cron: '0 0 1,15 * *' jobs: - autoformat: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'NO_CI')" - strategy: - fail-fast: false - max-parallel: 3 - steps: - - name: Checkout Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - - name: Get Composer Cache Directory - id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - name: Cache dependencies - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: ${{ runner.os }}-composer- - - name: Setup Composer - run: composer install - - name: Autoformat - run: 'vendor/bin/php-cs-fixer fix ./ --rules=''{"array_syntax": {"syntax": "short"}, "blank_line_after_namespace": true, "global_namespace_import": {"import_classes": false, "import_constants": false, "import_functions": false}, "binary_operator_spaces": {"operators": {"=": "align", ".=": "align", "+=": "align", "-=": "align", "*=": "align", "/=": "align", "|=": "align", "&=": "align", "=>": "align", "??=": "align"}}, "cast_spaces": {"space": "single"}, "class_attributes_separation": { "elements": {"const": "one", "method": "one", "property": "one"} }, "combine_consecutive_issets": true, "compact_nullable_typehint": true, "declare_strict_types": true, "declare_equal_normalize": {"space": "none"}, "elseif": true, "encoding": true, "explicit_indirect_variable": true, "explicit_string_variable": true, "function_to_constant": true, "implode_call": true, "increment_style": {"style": "pre"}, "is_null": true, "yoda_style": {"equal": false, "identical": false, "less_and_greater": false}, "line_ending": true, "logical_operators": true, "lowercase_cast": true, "constant_case": {"case": "lower"}, "lowercase_keywords": true, "modernize_types_casting": true, "native_constant_invocation": true, "native_function_casing": true, "native_function_invocation": {"include": ["@all"]}, "new_with_braces": true, "no_extra_blank_lines": {"tokens": ["break", "case", "continue", "curly_brace_block", "extra", "return", "switch", "throw", "use"]}, "no_spaces_after_function_name": true, "no_alias_functions": true, "no_closing_tag": true, "no_empty_comment": true, "no_empty_phpdoc": true, "no_empty_statement": true, "no_homoglyph_names": true, "no_mixed_echo_print": {"use": "echo"}, "no_php4_constructor": true, "no_singleline_whitespace_before_semicolons": true, "no_spaces_inside_parenthesis": true, "no_trailing_whitespace": true, "no_unneeded_final_method": true, "no_unused_imports": true, "no_useless_return": true, "no_whitespace_before_comma_in_array": true, "no_whitespace_in_blank_line": true, "non_printable_character": true, "normalize_index_brace": true, "ordered_imports": {"sort_algorithm": "alpha"}, "ordered_interfaces": {"order": "alpha"}, "php_unit_construct": true, "php_unit_internal_class": true, "php_unit_set_up_tear_down_visibility": true, "phpdoc_indent": true, "phpdoc_align": {"align": "vertical"}, "phpdoc_annotation_without_dot": true, "phpdoc_scalar": true, "phpdoc_return_self_reference": {"replacements": {"this": "self"}}, "phpdoc_trim": true, "phpdoc_trim_consecutive_blank_line_separation": true, "random_api_migration": true, "self_accessor": true, "return_type_declaration": {"space_before": "one"}, "semicolon_after_instruction": true, "set_type_to_cast": true, "short_scalar_cast": true, "single_blank_line_at_eof": true, "single_line_after_imports": true, "standardize_increment": true, "trailing_comma_in_multiline": true, "trim_array_spaces": true, "visibility_required": true, "void_return": true}'' --allow-risky=yes' - - name: Check for modified files - id: git-check - run: echo ::set-output name=modified::$(if git diff-index --quiet HEAD --; then echo "false"; else echo "true"; fi) - - name: Push changes - if: steps.git-check.outputs.modified == 'true' - run: | - git config --global user.name 'Formatter Bot' - git config --global user.email 'formatter.bot@karaka.app' - git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} - git commit -am "Automated formatting changes" - git push - code-tests: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'NO_CI')" - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ALLOW_EMPTY_PASSWORD: false - MYSQL_ROOT_PASSWORD: root - MYSQL_DATABASE: oms - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:10.8 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: root - POSTGRES_DB: oms - ports: - - 5432:5432 - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 3 - redis: - image: redis - ports: - - 6379:6379 - options: --entrypoint redis-server - memcached: - image: memcached - ports: - - 11211:11211 - strategy: - fail-fast: false - max-parallel: 3 - matrix: - php-versions: ['8.1'] - steps: - - name: Checkout Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - - name: Checkout Build Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Build - path: Build - - name: Checkout Resource Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Resources - path: Resources - - name: Checkout phpOMS Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/phpOMS - path: phpOMS - token: ${{ secrets.GH_PAT }} - - name: Checkout Karaka Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Karaka - path: Karaka - - name: Setup PHP, with composer and extensions - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - extensions: mbstring, gd, zip, dom, mysql, pgsql, sqlite, imap, bcmath, redis, memcached - ini-values: opcache.jit_buffer_size=256M, opcache.jit=1235, pcre.jit=1 - coverage: pcov - - name: Get Composer Cache Directory - id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - name: Cache dependencies - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: ${{ runner.os }}-composer- - - name: Setup Composer - run: composer install - - name: phpunit - run: vendor/bin/phpunit --coverage-clover tests/coverage.xml --configuration tests/phpunit_default.xml - static-tests: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'NO_CI')" - strategy: - fail-fast: false - max-parallel: 3 - matrix: - php-versions: ['8.1'] - steps: - - name: Checkout Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - submodules: recursive - token: ${{ secrets.GH_PAT }} - - name: Checkout Build Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Build - path: Build - - name: Checkout phpOMS Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/phpOMS - path: phpOMS - token: ${{ secrets.GH_PAT }} - - name: Setup PHP, with composer and extensions - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - extensions: mbstring, gd, zip, dom, mysql, pgsql, sqlite, imap, bcmath, redis, memcached - ini-values: opcache.jit_buffer_size=256M, opcache.jit=1235, pcre.jit=1 - - name: Get Composer Cache Directory - id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - name: Cache dependencies - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: ${{ runner.os }}-composer- - - name: Setup Composer - run: composer install - - name: phpstan - run: vendor/bin/phpstan analyse -a phpOMS/Autoloader.php --no-progress -l 9 -c Build/Config/phpstan.neon ./ - codestyle-tests: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'NO_CI')" - strategy: - fail-fast: false - max-parallel: 3 - matrix: - php-versions: ['8.1'] - steps: - - name: Checkout Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - submodules: recursive - token: ${{ secrets.GH_PAT }} - - name: Checkout Build Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Build - path: Build - - name: Setup PHP, with composer and extensions - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - extensions: mbstring, gd, zip, dom, mysql, pgsql, sqlite, imap, bcmath, redis, memcached - ini-values: opcache.jit_buffer_size=256M, opcache.jit=1235, pcre.jit=1 - - name: Get Composer Cache Directory - id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - name: Cache dependencies - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: ${{ runner.os }}-composer- - - name: Setup Composer - run: composer install - - name: phpcs - run: vendor/bin/phpcs --severity=1 ./ --standard="Build/Config/phpcs.xml" -s --report=full - - name: Install NPM - uses: actions/setup-node@v3 - with: - node-version: '14' - cache: 'npm' - - run: npm install - - name: eslint - run: npx eslint ./ -c Build/Config/.eslintrc.json -# linting: -# runs-on: ubuntu-latest -# if: "!contains(github.event.head_commit.message, 'NO_CI')" -# strategy: -# fail-fast: false -# max-parallel: 3 -# steps: -# - name: Checkout Repository -# uses: actions/checkout@main -# with: -# fetch-depth: 0 -# submodules: recursive -# token: ${{ secrets.GH_TOKEN }} -# - name: Lint Code Base -# uses: github/super-linter/slim@v4 -# env: -# VALIDATE_ALL_CODEBASE: false -# VALIDATE_PHP: true -# VALIDATE_PHP_BUILTIN: true -# DEFAULT_BRANCH: develop -# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - custom: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'NO_CI')" - strategy: - fail-fast: false - max-parallel: 3 - matrix: - php-versions: ['8.1'] - steps: - - name: Checkout Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - - name: Checkout Build Repository - uses: actions/checkout@main - with: - fetch-depth: 1 - ref: develop - repository: Karaka-Management/Build - path: Build - - name: Setup PHP, with composer and extensions - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - extensions: mbstring, gd, zip, dom, mysql, pgsql, sqlite, bcmath, redis, memcached - ini-values: opcache.jit_buffer_size=256M, opcache.jit=1235, pcre.jit=1 - - name: PHP linting - run: | - find ./ -type f \ - -name '*.php' -print0 | xargs -0 -n1 -P4 php -l -n | (! grep -v "No syntax errors detected" ) - - name: Php strict - run: if [[ $(grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ./) -ne "" ]]; then exit 1; fi + general_module_workflow: + uses: Karaka-Management/Karaka/.github/workflows/php_template.yml@develop + secrets: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_PAT: ${{ secrets.GH_PAT }} diff --git a/.gitignore b/.gitignore index 22d0d82..bd6cef1 100755 --- a/.gitignore +++ b/.gitignore @@ -1 +1,15 @@ +Build +*.cache +.directory +Vagrantfile vendor +bower_components +node_modules +*.log +.vagrant +.vscode +.sass-cache +cache +Cache +Libraries +.idea \ No newline at end of file diff --git a/Admin/Install/Navigation.install.json b/Admin/Install/Navigation.install.json index c7ec82c..c7fe417 100755 --- a/Admin/Install/Navigation.install.json +++ b/Admin/Install/Navigation.install.json @@ -19,7 +19,7 @@ "type": 2, "subtype": 1, "name": "Analysis", - "uri": "{/lang}/{/app}/sales/analysis?{?}", + "uri": "{/base}/sales/analysis?{?}", "target": "self", "icon": null, "order": 15, @@ -33,7 +33,7 @@ "type": 3, "subtype": 1, "name": "Dashboard", - "uri": "{/lang}/{/app}/sales/analysis?{?}", + "uri": "{/base}/sales/analysis?{?}", "target": "self", "icon": null, "order": 1, diff --git a/Admin/Install/Navigation.php b/Admin/Install/Navigation.php index e272499..c2368ed 100755 --- a/Admin/Install/Navigation.php +++ b/Admin/Install/Navigation.php @@ -1,12 +1,12 @@ moduleManager->get('Finance'); + + $response = new HttpResponse(); + $request = new HttpRequest(new HttpUri('')); + + $request->header->account = 1; + $request->setData('abbr', $data['abbr'] ?? ''); + $request->setData('percentage_invoice', $data['percentage_invoice'] ?? 0); + $request->setData('percentage_sales_tax', $data['percentage_sales_tax'] ?? 0); + $request->setData('percentage_input_tax', $data['percentage_input_tax'] ?? 0); + $request->setData('title', \reset($data['l11n'])['title'] ?? ''); + $request->setData('short', \reset($data['l11n'])['short'] ?? ''); + $request->setData('long', \reset($data['l11n'])['long'] ?? ''); + $request->setData('language', \array_keys($data['l11n'])[0]); + + $module->apiTaxCodeCreate($request, $response); + + $responseData = $response->get(''); + if (!\is_array($responseData)) { + return []; + } + + /** @var \Modules\Finance\Models\TaxCode $code */ + $code = $responseData['response']; + $id = $code->id; + + $isFirst = true; + foreach ($data['l11n'] as $lang => $l11n) { + if ($isFirst) { + $isFirst = false; + continue; + } + + $response = new HttpResponse(); + $request = new HttpRequest(new HttpUri('')); + + $request->header->account = 1; + $request->setData('title', $l11n['title'] ?? ''); + $request->setData('short', $l11n['short'] ?? ''); + $request->setData('long', $l11n['long'] ?? ''); + $request->setData('language', $lang); + $request->setData('code', $id); + + $module->apiTaxCodeL11nCreate($request, $response); + } + + return $code->toArray(); + } } diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index c98f679..babff24 100755 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -1,12 +1,12 @@ + * + * @since 1.0.0 + */ + private function validateTaxCodeCreate(RequestAbstract $request) : array + { + $val = []; + if (($val['abbr'] = !$request->hasData('abbr')) + || ($val['title'] = !$request->hasData('title')) + ) { + return $val; + } + + return []; + } + + /** + * Api method to create document + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeCreate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeCreate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidCreateResponse($request, $response, $val); + + return; + } + + $code = $this->createTaxCodeFromRequest($request); + $this->createModel($request->header->account, $code, TaxCodeMapper::class, 'tax_code', $request->getOrigin()); + $this->createStandardCreateResponse($request, $response, $code); + } + + /** + * Method to create task from request. + * + * @param RequestAbstract $request Request + * + * @return TaxCode + * + * @since 1.0.0 + */ + private function createTaxCodeFromRequest(RequestAbstract $request) : TaxCode + { + $code = new TaxCode(); + $code->abbr = $request->getDataString('abbr') ?? ''; + $code->percentageInvoice = $request->getDataInt('percentage_invoice') ?? 0; + $code->percentageSales = $request->getDataInt('percentage_sales_tax') ?? 0; + $code->percentageInput = $request->getDataInt('percentage_input_tax') ?? 0; + + if ($request->hasData('title')) { + $code->l11n->title = $request->getDataString('title') ?? ''; + $code->l11n->short = $request->getDataString('short') ?? ''; + $code->l11n->long = $request->getDataString('long') ?? ''; + $code->l11n->setLanguage($request->getDataString('language') ?? 'en'); + } + + return $code; + } + + /** + * Validate l11n create request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @since 1.0.0 + */ + private function validateTaxCodeL11nCreate(RequestAbstract $request) : array + { + $val = []; + if (($val['title'] = !$request->hasData('title')) + || ($val['code'] = !$request->hasData('code')) + ) { + return $val; + } + + return []; + } + + /** + * Api method to create tag localization + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeL11nCreate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeL11nCreate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidCreateResponse($request, $response, $val); + + return; + } + + $l11nCode = $this->createTaxCodeL11nFromRequest($request); + $this->createModel($request->header->account, $l11nCode, TaxCodeL11nMapper::class, 'tax_code_l11n', $request->getOrigin()); + $this->createStandardCreateResponse($request, $response, $l11nCode); + } + + /** + * Method to create tag localization from request. + * + * @param RequestAbstract $request Request + * + * @return TaxCodeL11n + * + * @since 1.0.0 + */ + private function createTaxCodeL11nFromRequest(RequestAbstract $request) : TaxCodeL11n + { + $l11n = new TaxCodeL11n(); + $l11n->title = $request->getDataString('title') ?? ''; + $l11n->short = $request->getDataString('short') ?? ''; + $l11n->long = $request->getDataString('long') ?? ''; + $l11n->code = $request->getDataInt('code') ?? 0; + $l11n->setLanguage($request->getDataString('language') ?? $request->header->l11n->language); + + return $l11n; + } + + /** + * Api method to update TaxCode + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeUpdate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeUpdate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidUpdateResponse($request, $response, $val); + + return; + } + + /** @var \Modules\Finance\Models\TaxCode $old */ + $old = TaxCodeMapper::get()->where('id', (int) $request->getData('id'))->execute(); + $new = $this->updateTaxCodeFromRequest($request, clone $old); + + $this->updateModel($request->header->account, $old, $new, TaxCodeMapper::class, 'tax_code', $request->getOrigin()); + $this->createStandardUpdateResponse($request, $response, $new); + } + + /** + * Method to update TaxCode from request. + * + * @param RequestAbstract $request Request + * @param TaxCode $new Model to modify + * + * @return TaxCode + * + * @todo: implement + * + * @since 1.0.0 + */ + public function updateTaxCodeFromRequest(RequestAbstract $request, TaxCode $new) : TaxCode + { + $new->abbr = $request->getDataString('abbr') ?? $new->abbr; + $new->percentageInvoice = $request->getDataInt('percentage_invoice') ?? $new->percentageInvoice; + $new->percentageSales = $request->getDataInt('percentage_sales_tax') ?? $new->percentageSales; + $new->percentageInput = $request->getDataInt('percentage_input_tax') ?? $new->percentageInput; + + return $new; + } + + /** + * Validate TaxCode update request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @todo: implement + * + * @since 1.0.0 + */ + private function validateTaxCodeUpdate(RequestAbstract $request) : array + { + $val = []; + if (($val['id'] = !$request->hasData('id'))) { + return $val; + } + + return []; + } + + /** + * Api method to delete TaxCode + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeDelete(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeDelete($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidDeleteResponse($request, $response, $val); + + return; + } + + /** @var \Modules\Finance\Models\TaxCode $taxCode */ + $taxCode = TaxCodeMapper::get()->where('id', (int) $request->getData('id'))->execute(); + $this->deleteModel($request->header->account, $taxCode, TaxCodeMapper::class, 'tax_code', $request->getOrigin()); + $this->createStandardDeleteResponse($request, $response, $taxCode); + } + + /** + * Validate TaxCode delete request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @todo: implement + * + * @since 1.0.0 + */ + private function validateTaxCodeDelete(RequestAbstract $request) : array + { + $val = []; + if (($val['id'] = !$request->hasData('id'))) { + return $val; + } + + return []; + } + + /** + * Api method to update TaxCodeL11n + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeL11nUpdate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeL11nUpdate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidUpdateResponse($request, $response, $val); + + return; + } + + /** @var \Modules\Finance\Models\TaxCodeL11n $old */ + $old = TaxCodeL11nMapper::get()->where('id', (int) $request->getData('id'))->execute(); + $new = $this->updateTaxCodeL11nFromRequest($request, clone $old); + + $this->updateModel($request->header->account, $old, $new, TaxCodeL11nMapper::class, 'tax_code_l11n', $request->getOrigin()); + $this->createStandardUpdateResponse($request, $response, $new); + } + + /** + * Method to update TaxCodeL11n from request. + * + * @param RequestAbstract $request Request + * @param TaxCodeL11n $new Model to modify + * + * @return TaxCodeL11n + * + * @todo: implement + * + * @since 1.0.0 + */ + public function updateTaxCodeL11nFromRequest(RequestAbstract $request, TaxCodeL11n $new) : TaxCodeL11n + { + $new->title = $request->getDataString('title') ?? $new->title; + $new->short = $request->getDataString('short') ?? $new->short; + $new->long = $request->getDataString('long') ?? $new->long; + $new->code = $request->getDataInt('code') ?? $new->code; + $new->setLanguage($request->getDataString('language') ?? $new->language); + + return $new; + } + + /** + * Validate TaxCodeL11n update request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @todo: implement + * + * @since 1.0.0 + */ + private function validateTaxCodeL11nUpdate(RequestAbstract $request) : array + { + $val = []; + if (($val['id'] = !$request->hasData('id'))) { + return $val; + } + + return []; + } + + /** + * Api method to delete TaxCodeL11n + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiTaxCodeL11nDelete(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateTaxCodeL11nDelete($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidDeleteResponse($request, $response, $val); + + return; + } + + /** @var \Modules\Finance\Models\TaxCodeL11n $taxCodeL11n */ + $taxCodeL11n = TaxCodeL11nMapper::get()->where('id', (int) $request->getData('id'))->execute(); + $this->deleteModel($request->header->account, $taxCodeL11n, TaxCodeL11nMapper::class, 'tax_code_l11n', $request->getOrigin()); + $this->createStandardDeleteResponse($request, $response, $taxCodeL11n); + } + + /** + * Validate TaxCodeL11n delete request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @todo: implement + * + * @since 1.0.0 + */ + private function validateTaxCodeL11nDelete(RequestAbstract $request) : array + { + $val = []; + if (($val['id'] = !$request->hasData('id'))) { + return $val; + } + + return []; + } +} diff --git a/Controller/BackendController.php b/Controller/BackendController.php index 7f2dd24..4011522 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -1,12 +1,12 @@ get('Content')->getData('head'); + $head = $response->data['Content']->head; + $nonce = $this->app->appSettings->getOption('script-nonce'); + $head->addAsset(AssetType::CSS, 'Resources/chartjs/Chartjs/chart.css'); - $head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js'); - $head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['type' => 'module']); + $head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js', ['nonce' => $nonce]); + $head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['nonce' => $nonce, 'type' => 'module']); $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/Sales/Theme/Backend/sales-analysis-dashboard'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response); ///// $monthlySalesCustomer = []; @@ -64,7 +66,7 @@ final class BackendController extends Controller ]; } - $view->addData('monthlySalesCustomer', $monthlySalesCustomer); + $view->data['monthlySalesCustomer'] = $monthlySalesCustomer; $annualSalesCustomer = []; for ($i = 1; $i < 11; ++$i) { @@ -75,7 +77,7 @@ final class BackendController extends Controller ]; } - $view->addData('annualSalesCustomer', $annualSalesCustomer); + $view->data['annualSalesCustomer'] = $annualSalesCustomer; return $view; } diff --git a/Controller/Controller.php b/Controller/Controller.php index 00112cc..50cc488 100755 --- a/Controller/Controller.php +++ b/Controller/Controller.php @@ -1,12 +1,12 @@ [ + [2000, 'S'], + [1300, 'R'], + [1000, 'R'], + [0, 'Z'], + ], + '_BEL' => [ + [2100, 'S'], + [1200, 'R'], + [600, 'R'], + [0, 'Z'], + ], + '_BGR' => [ + [2000, 'S'], + [2100, 'R'], + [1000, 'R'], + [900, 'R'], + [0, 'Z'], + ], + '_HRV' => [ + [2500, 'S'], + [1300, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_CYP' => [ + [1900, 'S'], + [900, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_CZE' => [ + [2100, 'S'], + [1500, 'R'], + [1000, 'R'], + [0, 'Z'], + ], + '_DNK' => [ + [2500, 'S'], + [0, 'Z'], + ], + '_EST' => [ + [2000, 'S'], + [900, 'R'], + [0, 'Z'], + ], + '_FIN' => [ + [2400, 'S'], + [1400, 'R'], + [1000, 'R'], + [0, 'Z'], + ], + '_FRA' => [ + [2000, 'S'], + [1000, 'R'], + [550, 'R'], + [210, 'R'], + [0, 'Z'], + ], + '_DEU' => [ + [1900, 'S'], + [700, 'R'], + [0, 'Z'], + ], + '_GRC' => [ + [2400, 'S'], + [1300, 'R'], + [600, 'R'], + [0, 'Z'], + ], + '_HUN' => [ + [2700, 'S'], + [1800, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_IRL' => [ + [2300, 'S'], + [1350, 'R'], + [900, 'R'], + [480, 'R'], + [0, 'Z'], + ], + '_ITA' => [ + [2200, 'S'], + [1000, 'R'], + [500, 'R'], + [400, 'R'], + [0, 'Z'], + ], + '_LVA' => [ + [2100, 'S'], + [1200, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_LTU' => [ + [2100, 'S'], + [900, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_LUX' => [ + [1700, 'S'], + [1400, 'R'], + [800, 'R'], + [300, 'R'], + [0, 'Z'], + ], + '_MLT' => [ + [1800, 'S'], + [700, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_NLD' => [ + [2100, 'S'], + [900, 'R'], + [0, 'Z'], + ], + '_POL' => [ + [2300, 'S'], + [800, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_PRT' => [ + [2300, 'S'], + [1300, 'R'], + [600, 'R'], + [0, 'Z'], + ], + '_ROU' => [ + [1900, 'S'], + [900, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_SVK' => [ + [2000, 'S'], + [1000, 'R'], + [0, 'Z'], + ], + '_SVN' => [ + [2200, 'S'], + [950, 'R'], + [500, 'R'], + [0, 'Z'], + ], + '_ESP' => [ + [2100, 'S'], + [1000, 'R'], + [400, 'R'], + [0, 'Z'], + ], + '_SWE' => [ + [2500, 'S'], + [1200, 'R'], + [600, 'R'], + [0, 'Z'], + ], + '_GBR' => [ + [2000, 'S'], + [500, 'R'], + [0, 'Z'], + ], + ]; +} diff --git a/Models/NullTaxCode.php b/Models/NullTaxCode.php new file mode 100755 index 0000000..653b9c5 --- /dev/null +++ b/Models/NullTaxCode.php @@ -0,0 +1,46 @@ +id = $id; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return ['id' => $this->id]; + } +} diff --git a/Models/NullTaxCodeL11n.php b/Models/NullTaxCodeL11n.php new file mode 100755 index 0000000..74ff85d --- /dev/null +++ b/Models/NullTaxCodeL11n.php @@ -0,0 +1,46 @@ +id = $id; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return ['id' => $this->id]; + } +} diff --git a/Models/PermissionCategory.php b/Models/PermissionCategory.php index 877a788..e2e2fb4 100755 --- a/Models/PermissionCategory.php +++ b/Models/PermissionCategory.php @@ -1,12 +1,12 @@ l11n = new TaxCodeL11n(); + } + + /** + * {@inheritdoc} + */ + public function toArray() : array + { + return [ + 'id' => $this->id, + ]; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return $this->toArray(); + } +} diff --git a/Models/TaxCodeL11n.php b/Models/TaxCodeL11n.php new file mode 100755 index 0000000..43076c2 --- /dev/null +++ b/Models/TaxCodeL11n.php @@ -0,0 +1,133 @@ +language; + } + + /** + * Set language + * + * @param string $language Language + * + * @return void + * + * @since 1.0.0 + */ + public function setLanguage(string $language) : void + { + $this->language = $language; + } + + /** + * {@inheritdoc} + */ + public function toArray() : array + { + return [ + 'id' => $this->id, + 'title' => $this->title, + 'short' => $this->short, + 'long' => $this->long, + 'language' => $this->language, + ]; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return $this->toArray(); + } +} diff --git a/Models/TaxCodeL11nMapper.php b/Models/TaxCodeL11nMapper.php new file mode 100755 index 0000000..aac8945 --- /dev/null +++ b/Models/TaxCodeL11nMapper.php @@ -0,0 +1,62 @@ + + */ +final class TaxCodeL11nMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'tax_code_l11n_id' => ['name' => 'tax_code_l11n_id', 'type' => 'int', 'internal' => 'id'], + 'tax_code_l11n_text_title' => ['name' => 'tax_code_l11n_text_title', 'type' => 'string', 'internal' => 'title'], + 'tax_code_l11n_text_short' => ['name' => 'tax_code_l11n_text_short', 'type' => 'string', 'internal' => 'short'], + 'tax_code_l11n_text_long' => ['name' => 'tax_code_l11n_text_long', 'type' => 'string', 'internal' => 'long'], + 'tax_code_l11n_lang' => ['name' => 'tax_code_l11n_lang', 'type' => 'string', 'internal' => 'language'], + 'tax_code_l11n_code' => ['name' => 'tax_code_l11n_code', 'type' => 'int', 'internal' => 'code'], + ]; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'tax_code_l11n'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'tax_code_l11n_id'; +} diff --git a/Models/TaxCodeMapper.php b/Models/TaxCodeMapper.php new file mode 100755 index 0000000..89e20d2 --- /dev/null +++ b/Models/TaxCodeMapper.php @@ -0,0 +1,76 @@ + + */ +final class TaxCodeMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'tax_code_id' => ['name' => 'tax_code_id', 'type' => 'int', 'internal' => 'id'], + 'tax_code_abbr' => ['name' => 'tax_code_abbr', 'type' => 'string', 'internal' => 'abbr'], + 'tax_code_invoice' => ['name' => 'tax_code_invoice', 'type' => 'int', 'internal' => 'percentageInvoice'], + 'tax_code_sales' => ['name' => 'tax_code_sales', 'type' => 'int', 'internal' => 'percentageSales'], + 'tax_code_input' => ['name' => 'tax_code_input', 'type' => 'int', 'internal' => 'percentageInput'], + ]; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'tax_code'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'tax_code_id'; + + /** + * Has many relation. + * + * @var array + * @since 1.0.0 + */ + public const HAS_MANY = [ + 'l11n' => [ + 'mapper' => TaxCodeL11nMapper::class, + 'table' => 'tax_code_l11n', + 'self' => 'tax_code_l11n_code', + 'external' => null, + ], + ]; +} diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/Navigation.ar.lang.php b/Theme/Backend/Lang/Navigation.ar.lang.php index 893966c..f5c0e59 100755 --- a/Theme/Backend/Lang/Navigation.ar.lang.php +++ b/Theme/Backend/Lang/Navigation.ar.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'التحليلات', - 'Articles' => 'مقالات', - 'Clients' => 'عملاء', - 'Create' => 'يخلق', - 'Invoice' => 'فاتورة', - 'Invoices' => 'الفواتير', - 'Profile' => 'الملف الشخصي', - 'Sales' => 'مبيعات', + 'Account' => '', + 'Analysis' => 'التحليلات', + 'Articles' => 'مقالات', + 'Clients' => 'عملاء', + 'Create' => 'يخلق', + 'Finance' => '', + 'Invoice' => 'فاتورة', + 'Invoices' => 'الفواتير', + 'Items' => '', + 'Profile' => 'الملف الشخصي', + 'Sales' => 'مبيعات', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.cs.lang.php b/Theme/Backend/Lang/Navigation.cs.lang.php index 122765d..b3e4bed 100755 --- a/Theme/Backend/Lang/Navigation.cs.lang.php +++ b/Theme/Backend/Lang/Navigation.cs.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analýza', - 'Articles' => 'Články', - 'Clients' => 'Klienti', - 'Create' => 'Vytvořit', - 'Invoice' => 'Faktura', - 'Invoices' => 'Faktury', - 'Profile' => 'Profil', - 'Sales' => 'Odbyt', + 'Account' => '', + 'Analysis' => 'Analýza', + 'Articles' => 'Články', + 'Clients' => 'Klienti', + 'Create' => 'Vytvořit', + 'Finance' => '', + 'Invoice' => 'Faktura', + 'Invoices' => 'Faktury', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Odbyt', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.da.lang.php b/Theme/Backend/Lang/Navigation.da.lang.php index 51be112..2438da4 100755 --- a/Theme/Backend/Lang/Navigation.da.lang.php +++ b/Theme/Backend/Lang/Navigation.da.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analyse', - 'Articles' => 'Artikler', - 'Clients' => 'Klienter.', - 'Create' => 'skab', - 'Invoice' => 'Faktura', - 'Invoices' => 'Fakturaer.', - 'Profile' => 'Profil', - 'Sales' => 'SALG', + 'Account' => '', + 'Analysis' => 'Analyse', + 'Articles' => 'Artikler', + 'Clients' => 'Klienter.', + 'Create' => 'skab', + 'Finance' => '', + 'Invoice' => 'Faktura', + 'Invoices' => 'Fakturaer.', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'SALG', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.de.lang.php b/Theme/Backend/Lang/Navigation.de.lang.php index 36660ad..87c7ac8 100755 --- a/Theme/Backend/Lang/Navigation.de.lang.php +++ b/Theme/Backend/Lang/Navigation.de.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analyse', - 'Articles' => 'Artikel', - 'Clients' => 'Kunden', - 'Create' => 'Erstellen', - 'Invoice' => 'Rechnung', - 'Invoices' => 'Rechnungen', - 'Profile' => 'Profil', - 'Sales' => 'Der Umsatz', + 'Account' => '', + 'Analysis' => 'Analyse', + 'Articles' => 'Artikel', + 'Clients' => 'Kunden', + 'Create' => 'Erstellen', + 'Finance' => '', + 'Invoice' => 'Rechnung', + 'Invoices' => 'Rechnungen', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Der Umsatz', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.el.lang.php b/Theme/Backend/Lang/Navigation.el.lang.php index a56adac..90b52ae 100755 --- a/Theme/Backend/Lang/Navigation.el.lang.php +++ b/Theme/Backend/Lang/Navigation.el.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Ανάλυση', - 'Articles' => 'Είδη', - 'Clients' => 'Πελάτες', - 'Create' => 'Δημιουργώ', - 'Invoice' => 'Τιμολόγιο', - 'Invoices' => 'Τιμολόγια', - 'Profile' => 'Προφίλ', - 'Sales' => 'Εκπτώσεις', + 'Account' => '', + 'Analysis' => 'Ανάλυση', + 'Articles' => 'Είδη', + 'Clients' => 'Πελάτες', + 'Create' => 'Δημιουργώ', + 'Finance' => '', + 'Invoice' => 'Τιμολόγιο', + 'Invoices' => 'Τιμολόγια', + 'Items' => '', + 'Profile' => 'Προφίλ', + 'Sales' => 'Εκπτώσεις', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.en.lang.php b/Theme/Backend/Lang/Navigation.en.lang.php index 870da4a..948bc73 100755 --- a/Theme/Backend/Lang/Navigation.en.lang.php +++ b/Theme/Backend/Lang/Navigation.en.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analysis', - 'Articles' => 'Articles', - 'Clients' => 'Clients', - 'Create' => 'Create', - 'Invoice' => 'Invoice', - 'Invoices' => 'Invoices', - 'Profile' => 'Profile', - 'Sales' => 'Sales', + 'Account' => 'Account', + 'Analysis' => 'Analysis', + 'Articles' => '', + 'Clients' => 'Clients', + 'Create' => 'Create', + 'Finance' => 'Finance', + 'Invoice' => 'Invoice', + 'Invoices' => 'Invoices', + 'Items' => 'Items', + 'Profile' => 'Profile', + 'Sales' => 'Sales', + 'Suppliers' => 'Suppliers', ]]; diff --git a/Theme/Backend/Lang/Navigation.es.lang.php b/Theme/Backend/Lang/Navigation.es.lang.php index 52ea36d..ed03673 100755 --- a/Theme/Backend/Lang/Navigation.es.lang.php +++ b/Theme/Backend/Lang/Navigation.es.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Análisis', - 'Articles' => 'Artículos', - 'Clients' => 'Clientela', - 'Create' => 'Crear', - 'Invoice' => 'Factura', - 'Invoices' => 'Facturas', - 'Profile' => 'Perfil', - 'Sales' => 'Ventas', + 'Account' => '', + 'Analysis' => 'Análisis', + 'Articles' => 'Artículos', + 'Clients' => 'Clientela', + 'Create' => 'Crear', + 'Finance' => '', + 'Invoice' => 'Factura', + 'Invoices' => 'Facturas', + 'Items' => '', + 'Profile' => 'Perfil', + 'Sales' => 'Ventas', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.fi.lang.php b/Theme/Backend/Lang/Navigation.fi.lang.php index b539c16..eff6d90 100755 --- a/Theme/Backend/Lang/Navigation.fi.lang.php +++ b/Theme/Backend/Lang/Navigation.fi.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analyysi', - 'Articles' => 'Artikkelit', - 'Clients' => 'Asiakkaat', - 'Create' => 'Luoda', - 'Invoice' => 'Lasku', - 'Invoices' => 'Laskut', - 'Profile' => 'Profiili', - 'Sales' => 'Myynti', + 'Account' => '', + 'Analysis' => 'Analyysi', + 'Articles' => 'Artikkelit', + 'Clients' => 'Asiakkaat', + 'Create' => 'Luoda', + 'Finance' => '', + 'Invoice' => 'Lasku', + 'Invoices' => 'Laskut', + 'Items' => '', + 'Profile' => 'Profiili', + 'Sales' => 'Myynti', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.fr.lang.php b/Theme/Backend/Lang/Navigation.fr.lang.php index 0adcb23..5f09fc0 100755 --- a/Theme/Backend/Lang/Navigation.fr.lang.php +++ b/Theme/Backend/Lang/Navigation.fr.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analyse', - 'Articles' => 'Des articles', - 'Clients' => 'Clients', - 'Create' => 'Créer', - 'Invoice' => 'Facture d\'achat', - 'Invoices' => 'Factures', - 'Profile' => 'Profil', - 'Sales' => 'Ventes', + 'Account' => '', + 'Analysis' => 'Analyse', + 'Articles' => 'Des articles', + 'Clients' => 'Clients', + 'Create' => 'Créer', + 'Finance' => '', + 'Invoice' => 'Facture d\'achat', + 'Invoices' => 'Factures', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Ventes', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.hu.lang.php b/Theme/Backend/Lang/Navigation.hu.lang.php index 397d1c7..fe698a6 100755 --- a/Theme/Backend/Lang/Navigation.hu.lang.php +++ b/Theme/Backend/Lang/Navigation.hu.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Elemzés', - 'Articles' => 'Árucikkek', - 'Clients' => 'Kliensek', - 'Create' => 'Teremt', - 'Invoice' => 'Számla', - 'Invoices' => 'Számlák', - 'Profile' => 'Profil', - 'Sales' => 'Értékesítés', + 'Account' => '', + 'Analysis' => 'Elemzés', + 'Articles' => 'Árucikkek', + 'Clients' => 'Kliensek', + 'Create' => 'Teremt', + 'Finance' => '', + 'Invoice' => 'Számla', + 'Invoices' => 'Számlák', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Értékesítés', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.it.lang.php b/Theme/Backend/Lang/Navigation.it.lang.php index 91f7d1a..16b9692 100755 --- a/Theme/Backend/Lang/Navigation.it.lang.php +++ b/Theme/Backend/Lang/Navigation.it.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analisi', - 'Articles' => 'Artificio', - 'Clients' => 'Clienti', - 'Create' => 'Creare', - 'Invoice' => 'Fattura', - 'Invoices' => 'Fatture', - 'Profile' => 'Profilo', - 'Sales' => 'Saldi', + 'Account' => '', + 'Analysis' => 'Analisi', + 'Articles' => 'Artificio', + 'Clients' => 'Clienti', + 'Create' => 'Creare', + 'Finance' => '', + 'Invoice' => 'Fattura', + 'Invoices' => 'Fatture', + 'Items' => '', + 'Profile' => 'Profilo', + 'Sales' => 'Saldi', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.ja.lang.php b/Theme/Backend/Lang/Navigation.ja.lang.php index 369910e..d7199b1 100755 --- a/Theme/Backend/Lang/Navigation.ja.lang.php +++ b/Theme/Backend/Lang/Navigation.ja.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => '分析', - 'Articles' => 'articles', - 'Clients' => 'クライアント', - 'Create' => '作成', - 'Invoice' => '請求書', - 'Invoices' => '請求書', - 'Profile' => 'プロフィール', - 'Sales' => '売り返り', + 'Account' => '', + 'Analysis' => '分析', + 'Articles' => 'articles', + 'Clients' => 'クライアント', + 'Create' => '作成', + 'Finance' => '', + 'Invoice' => '請求書', + 'Invoices' => '請求書', + 'Items' => '', + 'Profile' => 'プロフィール', + 'Sales' => '売り返り', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.ko.lang.php b/Theme/Backend/Lang/Navigation.ko.lang.php index 07bdb8b..458b018 100755 --- a/Theme/Backend/Lang/Navigation.ko.lang.php +++ b/Theme/Backend/Lang/Navigation.ko.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => '분석', - 'Articles' => '조항', - 'Clients' => '클라이언트', - 'Create' => '만들다', - 'Invoice' => '송장', - 'Invoices' => '송장', - 'Profile' => '프로필', - 'Sales' => '매상', + 'Account' => '', + 'Analysis' => '분석', + 'Articles' => '조항', + 'Clients' => '클라이언트', + 'Create' => '만들다', + 'Finance' => '', + 'Invoice' => '송장', + 'Invoices' => '송장', + 'Items' => '', + 'Profile' => '프로필', + 'Sales' => '매상', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.no.lang.php b/Theme/Backend/Lang/Navigation.no.lang.php index 7fbeea3..4c4a531 100755 --- a/Theme/Backend/Lang/Navigation.no.lang.php +++ b/Theme/Backend/Lang/Navigation.no.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analyse', - 'Articles' => 'Artikler', - 'Clients' => 'Klienter', - 'Create' => 'Skape', - 'Invoice' => 'Faktura', - 'Invoices' => 'Fakturaer', - 'Profile' => 'Profil', - 'Sales' => 'Salg', + 'Account' => '', + 'Analysis' => 'Analyse', + 'Articles' => 'Artikler', + 'Clients' => 'Klienter', + 'Create' => 'Skape', + 'Finance' => '', + 'Invoice' => 'Faktura', + 'Invoices' => 'Fakturaer', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Salg', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.pl.lang.php b/Theme/Backend/Lang/Navigation.pl.lang.php index 9d0db24..4359504 100755 --- a/Theme/Backend/Lang/Navigation.pl.lang.php +++ b/Theme/Backend/Lang/Navigation.pl.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analiza', - 'Articles' => 'Artykuły', - 'Clients' => 'Klienci.', - 'Create' => 'Tworzyć', - 'Invoice' => 'Faktura', - 'Invoices' => 'Faktury', - 'Profile' => 'Profil', - 'Sales' => 'Obroty', + 'Account' => '', + 'Analysis' => 'Analiza', + 'Articles' => 'Artykuły', + 'Clients' => 'Klienci.', + 'Create' => 'Tworzyć', + 'Finance' => '', + 'Invoice' => 'Faktura', + 'Invoices' => 'Faktury', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Obroty', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.pt.lang.php b/Theme/Backend/Lang/Navigation.pt.lang.php index 4501e84..48d1460 100755 --- a/Theme/Backend/Lang/Navigation.pt.lang.php +++ b/Theme/Backend/Lang/Navigation.pt.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Análise', - 'Articles' => 'Artigos', - 'Clients' => 'Clientes', - 'Create' => 'Crio', - 'Invoice' => 'Fatura', - 'Invoices' => 'Faturas', - 'Profile' => 'Perfil', - 'Sales' => 'Vendas', + 'Account' => '', + 'Analysis' => 'Análise', + 'Articles' => 'Artigos', + 'Clients' => 'Clientes', + 'Create' => 'Crio', + 'Finance' => '', + 'Invoice' => 'Fatura', + 'Invoices' => 'Faturas', + 'Items' => '', + 'Profile' => 'Perfil', + 'Sales' => 'Vendas', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.ru.lang.php b/Theme/Backend/Lang/Navigation.ru.lang.php index 5c370b9..07f2ea3 100755 --- a/Theme/Backend/Lang/Navigation.ru.lang.php +++ b/Theme/Backend/Lang/Navigation.ru.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Анализ', - 'Articles' => 'Статьи', - 'Clients' => 'Клиенты', - 'Create' => 'Создавать', - 'Invoice' => 'Счет', - 'Invoices' => 'Счета', - 'Profile' => 'Профиль', - 'Sales' => 'Продажи', + 'Account' => '', + 'Analysis' => 'Анализ', + 'Articles' => 'Статьи', + 'Clients' => 'Клиенты', + 'Create' => 'Создавать', + 'Finance' => '', + 'Invoice' => 'Счет', + 'Invoices' => 'Счета', + 'Items' => '', + 'Profile' => 'Профиль', + 'Sales' => 'Продажи', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.sv.lang.php b/Theme/Backend/Lang/Navigation.sv.lang.php index 3bd9d37..f13f739 100755 --- a/Theme/Backend/Lang/Navigation.sv.lang.php +++ b/Theme/Backend/Lang/Navigation.sv.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analys', - 'Articles' => 'Artiklar', - 'Clients' => 'Klienter', - 'Create' => 'Skapa', - 'Invoice' => 'Faktura', - 'Invoices' => 'Fakturor', - 'Profile' => 'Profil', - 'Sales' => 'Försäljning', + 'Account' => '', + 'Analysis' => 'Analys', + 'Articles' => 'Artiklar', + 'Clients' => 'Klienter', + 'Create' => 'Skapa', + 'Finance' => '', + 'Invoice' => 'Faktura', + 'Invoices' => 'Fakturor', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Försäljning', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.th.lang.php b/Theme/Backend/Lang/Navigation.th.lang.php index 3cecbe9..c2a09ca 100755 --- a/Theme/Backend/Lang/Navigation.th.lang.php +++ b/Theme/Backend/Lang/Navigation.th.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'การวิเคราะห์', - 'Articles' => 'บทความ', - 'Clients' => 'ลูกค้า', - 'Create' => 'สร้าง', - 'Invoice' => 'ใบแจ้งหนี้', - 'Invoices' => 'ใบแจ้งหนี้', - 'Profile' => 'ประวัติโดยย่อ', - 'Sales' => 'ฝ่ายขาย', + 'Account' => '', + 'Analysis' => 'การวิเคราะห์', + 'Articles' => 'บทความ', + 'Clients' => 'ลูกค้า', + 'Create' => 'สร้าง', + 'Finance' => '', + 'Invoice' => 'ใบแจ้งหนี้', + 'Invoices' => 'ใบแจ้งหนี้', + 'Items' => '', + 'Profile' => 'ประวัติโดยย่อ', + 'Sales' => 'ฝ่ายขาย', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.tr.lang.php b/Theme/Backend/Lang/Navigation.tr.lang.php index 0800030..16000a0 100755 --- a/Theme/Backend/Lang/Navigation.tr.lang.php +++ b/Theme/Backend/Lang/Navigation.tr.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Analiz', - 'Articles' => 'Nesne', - 'Clients' => 'Müşteriler', - 'Create' => 'Yaratmak', - 'Invoice' => 'Fatura', - 'Invoices' => 'Faturalar', - 'Profile' => 'Profil', - 'Sales' => 'Satış', + 'Account' => '', + 'Analysis' => 'Analiz', + 'Articles' => 'Nesne', + 'Clients' => 'Müşteriler', + 'Create' => 'Yaratmak', + 'Finance' => '', + 'Invoice' => 'Fatura', + 'Invoices' => 'Faturalar', + 'Items' => '', + 'Profile' => 'Profil', + 'Sales' => 'Satış', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.uk.lang.php b/Theme/Backend/Lang/Navigation.uk.lang.php index eb77b2d..94ee189 100755 --- a/Theme/Backend/Lang/Navigation.uk.lang.php +++ b/Theme/Backend/Lang/Navigation.uk.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => 'Аналіз', - 'Articles' => 'Статті', - 'Clients' => 'Клієнти', - 'Create' => 'Створювати', - 'Invoice' => 'Рахунок-фактура', - 'Invoices' => 'Рахунки-фактури', - 'Profile' => 'Профіль', - 'Sales' => 'Продаж', + 'Account' => '', + 'Analysis' => 'Аналіз', + 'Articles' => 'Статті', + 'Clients' => 'Клієнти', + 'Create' => 'Створювати', + 'Finance' => '', + 'Invoice' => 'Рахунок-фактура', + 'Invoices' => 'Рахунки-фактури', + 'Items' => '', + 'Profile' => 'Профіль', + 'Sales' => 'Продаж', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/Navigation.zh.lang.php b/Theme/Backend/Lang/Navigation.zh.lang.php index 7c6ae75..bc80e89 100755 --- a/Theme/Backend/Lang/Navigation.zh.lang.php +++ b/Theme/Backend/Lang/Navigation.zh.lang.php @@ -1,24 +1,28 @@ [ - 'Analysis' => '分析', - 'Articles' => '文章', - 'Clients' => '客户', - 'Create' => '创建', - 'Invoice' => '发票', - 'Invoices' => '发票', - 'Profile' => '轮廓', - 'Sales' => '销售量', + 'Account' => '', + 'Analysis' => '分析', + 'Articles' => '文章', + 'Clients' => '客户', + 'Create' => '创建', + 'Finance' => '', + 'Invoice' => '发票', + 'Invoices' => '发票', + 'Items' => '', + 'Profile' => '轮廓', + 'Sales' => '销售量', + 'Suppliers' => '', ]]; diff --git a/Theme/Backend/Lang/ar.lang.php b/Theme/Backend/Lang/ar.lang.php index 619ce23..33209ef 100755 --- a/Theme/Backend/Lang/ar.lang.php +++ b/Theme/Backend/Lang/ar.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'الحساب', 'Active' => 'نشيط', 'Activity' => 'نشاط', diff --git a/Theme/Backend/Lang/cs.lang.php b/Theme/Backend/Lang/cs.lang.php index bf60de9..0fa5d96 100755 --- a/Theme/Backend/Lang/cs.lang.php +++ b/Theme/Backend/Lang/cs.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Účet', 'Active' => 'Aktivní', 'Activity' => 'Aktivita', diff --git a/Theme/Backend/Lang/da.lang.php b/Theme/Backend/Lang/da.lang.php index 7bb6583..5e4213b 100755 --- a/Theme/Backend/Lang/da.lang.php +++ b/Theme/Backend/Lang/da.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Konto', 'Active' => 'Aktiv', 'Activity' => 'Aktivitet', diff --git a/Theme/Backend/Lang/de.lang.php b/Theme/Backend/Lang/de.lang.php index 5d2728e..259438d 100755 --- a/Theme/Backend/Lang/de.lang.php +++ b/Theme/Backend/Lang/de.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Konto', 'Active' => 'Aktiv', 'Activity' => 'Aktivität', diff --git a/Theme/Backend/Lang/el.lang.php b/Theme/Backend/Lang/el.lang.php index d8079df..ed9a551 100755 --- a/Theme/Backend/Lang/el.lang.php +++ b/Theme/Backend/Lang/el.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'λογαριασμός', 'Active' => 'Ενεργός', 'Activity' => 'Δραστηριότητα', diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php index 0d3b729..9da12bb 100755 --- a/Theme/Backend/Lang/en.lang.php +++ b/Theme/Backend/Lang/en.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Account', 'Active' => 'Active', 'Activity' => 'Activity', diff --git a/Theme/Backend/Lang/es.lang.php b/Theme/Backend/Lang/es.lang.php index a0a1778..07f8631 100755 --- a/Theme/Backend/Lang/es.lang.php +++ b/Theme/Backend/Lang/es.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Cuenta', 'Active' => 'Activo', 'Activity' => 'Actividad', diff --git a/Theme/Backend/Lang/fi.lang.php b/Theme/Backend/Lang/fi.lang.php index 1e2e0af..b565273 100755 --- a/Theme/Backend/Lang/fi.lang.php +++ b/Theme/Backend/Lang/fi.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Tili', 'Active' => 'Aktiivinen', 'Activity' => 'Toiminta', diff --git a/Theme/Backend/Lang/fr.lang.php b/Theme/Backend/Lang/fr.lang.php index dde03ef..20ec5e9 100755 --- a/Theme/Backend/Lang/fr.lang.php +++ b/Theme/Backend/Lang/fr.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Compte', 'Active' => 'actif', 'Activity' => 'Activité', diff --git a/Theme/Backend/Lang/hu.lang.php b/Theme/Backend/Lang/hu.lang.php index f1c0d74..fb46aee 100755 --- a/Theme/Backend/Lang/hu.lang.php +++ b/Theme/Backend/Lang/hu.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Számla', 'Active' => 'Aktív', 'Activity' => 'Tevékenység', diff --git a/Theme/Backend/Lang/it.lang.php b/Theme/Backend/Lang/it.lang.php index faedf61..d645eab 100755 --- a/Theme/Backend/Lang/it.lang.php +++ b/Theme/Backend/Lang/it.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Account', 'Active' => 'Attivo', 'Activity' => 'Attività', diff --git a/Theme/Backend/Lang/ja.lang.php b/Theme/Backend/Lang/ja.lang.php index f8a9b33..ad7d876 100755 --- a/Theme/Backend/Lang/ja.lang.php +++ b/Theme/Backend/Lang/ja.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'アカウント', 'Active' => 'アクティブ', 'Activity' => 'アクティビティ', diff --git a/Theme/Backend/Lang/ko.lang.php b/Theme/Backend/Lang/ko.lang.php index f7b7e8b..5664598 100755 --- a/Theme/Backend/Lang/ko.lang.php +++ b/Theme/Backend/Lang/ko.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => '계정', 'Active' => '활동적인', 'Activity' => '활동', diff --git a/Theme/Backend/Lang/no.lang.php b/Theme/Backend/Lang/no.lang.php index f4e708c..c33853b 100755 --- a/Theme/Backend/Lang/no.lang.php +++ b/Theme/Backend/Lang/no.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Regnskap', 'Active' => 'Aktiv', 'Activity' => 'Aktivitet', diff --git a/Theme/Backend/Lang/pl.lang.php b/Theme/Backend/Lang/pl.lang.php index f3eb54e..5f2ae42 100755 --- a/Theme/Backend/Lang/pl.lang.php +++ b/Theme/Backend/Lang/pl.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Rachunek', 'Active' => 'Aktywny', 'Activity' => 'Czynność', diff --git a/Theme/Backend/Lang/pt.lang.php b/Theme/Backend/Lang/pt.lang.php index 681f4bc..72cddb4 100755 --- a/Theme/Backend/Lang/pt.lang.php +++ b/Theme/Backend/Lang/pt.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Conta', 'Active' => 'Ativo', 'Activity' => 'Atividade', diff --git a/Theme/Backend/Lang/ru.lang.php b/Theme/Backend/Lang/ru.lang.php index e59979e..ba8d98e 100755 --- a/Theme/Backend/Lang/ru.lang.php +++ b/Theme/Backend/Lang/ru.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Счет', 'Active' => 'Активный', 'Activity' => 'Мероприятия', diff --git a/Theme/Backend/Lang/sv.lang.php b/Theme/Backend/Lang/sv.lang.php index 667efb9..b3663b2 100755 --- a/Theme/Backend/Lang/sv.lang.php +++ b/Theme/Backend/Lang/sv.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'konto', 'Active' => 'Aktiva', 'Activity' => 'Aktivitet', diff --git a/Theme/Backend/Lang/th.lang.php b/Theme/Backend/Lang/th.lang.php index d9474bb..3e053a1 100755 --- a/Theme/Backend/Lang/th.lang.php +++ b/Theme/Backend/Lang/th.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'บัญชี', 'Active' => 'คล่องแคล่ว', 'Activity' => 'กิจกรรม', diff --git a/Theme/Backend/Lang/tr.lang.php b/Theme/Backend/Lang/tr.lang.php index 9cbdcd9..6f1b9ee 100755 --- a/Theme/Backend/Lang/tr.lang.php +++ b/Theme/Backend/Lang/tr.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Hesap', 'Active' => 'Aktif', 'Activity' => 'Aktivite', diff --git a/Theme/Backend/Lang/uk.lang.php b/Theme/Backend/Lang/uk.lang.php index a3879cd..cc8c8e0 100755 --- a/Theme/Backend/Lang/uk.lang.php +++ b/Theme/Backend/Lang/uk.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => 'Обліковий запис', 'Active' => 'Активний', 'Activity' => 'Діяльність', diff --git a/Theme/Backend/Lang/zh.lang.php b/Theme/Backend/Lang/zh.lang.php index 99f1248..f474917 100755 --- a/Theme/Backend/Lang/zh.lang.php +++ b/Theme/Backend/Lang/zh.lang.php @@ -1,18 +1,18 @@ [ +return ['Finance' => [ 'Account' => '帐户', 'Active' => '积极的', 'Activity' => '活动', diff --git a/Theme/Backend/sales-analysis-dashboard.tpl.php b/Theme/Backend/sales-analysis-dashboard.tpl.php index d650dbb..09e6918 100755 --- a/Theme/Backend/sales-analysis-dashboard.tpl.php +++ b/Theme/Backend/sales-analysis-dashboard.tpl.php @@ -1,12 +1,12 @@ getData('nav')->render(); +echo $this->data['nav']->render(); ?>
@@ -119,7 +119,7 @@ echo $this->getData('nav')->render(); Sales / Profit - Monthly
- getData('monthlySalesCustomer'); ?> + data['monthlySalesCustomer']; ?>
render(); ?> - getCurrency(); ?> + getCurrency(); ?> @@ -243,7 +243,7 @@ echo $this->getData('nav')->render(); Sales / Profit - Annual
- getData('annualSalesCustomer'); ?> + data['annualSalesCustomer']; ?>
render(); ?> - getCurrency(); ?> + getCurrency(); ?> diff --git a/composer.json b/composer.json index fcc0462..0917d4b 100755 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { "name": "karaka/karaka", - "description": "PHP Framework for Karaka.", + "description": "PHP Framework for Jingga.", "authors": [ { "name": "Dennis Eichhorn", @@ -13,7 +13,10 @@ "squizlabs/php_codesniffer": ">=3.6", "phpmd/phpmd": ">=2.9", "phpstan/phpstan": ">=1.8.6", - "phan/phan": ">=3.2.6" + "phan/phan": ">=3.2.6", + "phploc/phploc": ">=7.0", + "phpmetrics/phpmetrics": ">=2.8", + "rector/rector": ">=0.18.0" }, "minimum-stability": "dev", "prefer-stable": true diff --git a/composer.lock b/composer.lock index 708ea35..678d529 100755 --- a/composer.lock +++ b/composer.lock @@ -4,21 +4,21 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "a7d5793a0158a42dd8436aeac8fef6c1", + "content-hash": "d56b865f1ec578bb9f195d54f98695c1", "packages": [], "packages-dev": [ { "name": "composer/pcre", - "version": "3.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { @@ -60,7 +60,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -76,20 +76,20 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", - "version": "3.3.2", + "version": "3.4.0", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" + "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9", + "url": "https://api.github.com/repos/composer/semver/zipball/35e8d0af4486141bc745f23a29cc2091eb624a32", + "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32", "shasum": "" }, "require": { @@ -139,9 +139,9 @@ "versioning" ], "support": { - "irc": "irc://irc.freenode.org/composer", + "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.3.2" + "source": "https://github.com/composer/semver/tree/3.4.0" }, "funding": [ { @@ -157,7 +157,7 @@ "type": "tidelift" } ], - "time": "2022-04-01T19:23:25+00:00" + "time": "2023-08-31T09:50:34+00:00" }, { "name": "composer/xdebug-handler", @@ -226,89 +226,17 @@ "time": "2022-02-25T21:32:43+00:00" }, { - "name": "doctrine/annotations", - "version": "1.13.2", + "name": "doctrine/deprecations", + "version": "v1.1.1", "source": { "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08" + "url": "https://github.com/doctrine/deprecations.git", + "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/5b668aef16090008790395c02c893b1ba13f7e08", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08", - "shasum": "" - }, - "require": { - "doctrine/lexer": "1.*", - "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", - "psr/cache": "^1 || ^2 || ^3" - }, - "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^6.0 || ^8.1", - "phpstan/phpstan": "^0.12.20", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", - "symfony/cache": "^4.4 || ^5.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" - } - }, - "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": "Docblock Annotations Parser", - "homepage": "https://www.doctrine-project.org/projects/annotations.html", - "keywords": [ - "annotations", - "docblock", - "parser" - ], - "support": { - "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.13.2" - }, - "time": "2021-08-05T19:00:23+00:00" - }, - { - "name": "doctrine/instantiator", - "version": "1.4.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", + "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", "shasum": "" }, "require": { @@ -316,13 +244,60 @@ }, "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" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v1.1.1" + }, + "time": "2023-06-03T09:27:29+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^11", "ext-pdo": "*", "ext-phar": "*", - "phpbench/phpbench": "^0.16 || ^1", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-phpunit": "^1", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" }, "type": "library", "autoload": { @@ -349,7 +324,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" + "source": "https://github.com/doctrine/instantiator/tree/2.0.0" }, "funding": [ { @@ -365,83 +340,7 @@ "type": "tidelift" } ], - "time": "2022-03-03T08:28:38+00:00" - }, - { - "name": "doctrine/lexer", - "version": "1.2.3", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" - } - }, - "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": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "https://www.doctrine-project.org/projects/lexer.html", - "keywords": [ - "annotations", - "docblock", - "lexer", - "parser", - "php" - ], - "support": { - "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" - }, - "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%2Flexer", - "type": "tidelift" - } - ], - "time": "2022-02-28T11:07:21+00:00" + "time": "2022-12-30T00:23:10+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -490,51 +389,51 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.8.0", + "version": "v3.28.0", "source": { "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3" + "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", + "reference": "113e09fea3d2306319ffaa2423fe3de768b28cff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/113e09fea3d2306319ffaa2423fe3de768b28cff", + "reference": "113e09fea3d2306319ffaa2423fe3de768b28cff", "shasum": "" }, "require": { - "composer/semver": "^3.2", + "composer/semver": "^3.3", "composer/xdebug-handler": "^3.0.3", - "doctrine/annotations": "^1.13", "ext-json": "*", "ext-tokenizer": "*", "php": "^7.4 || ^8.0", - "php-cs-fixer/diff": "^2.0", + "sebastian/diff": "^4.0 || ^5.0", "symfony/console": "^5.4 || ^6.0", "symfony/event-dispatcher": "^5.4 || ^6.0", "symfony/filesystem": "^5.4 || ^6.0", "symfony/finder": "^5.4 || ^6.0", "symfony/options-resolver": "^5.4 || ^6.0", - "symfony/polyfill-mbstring": "^1.23", - "symfony/polyfill-php80": "^1.25", - "symfony/polyfill-php81": "^1.25", + "symfony/polyfill-mbstring": "^1.27", + "symfony/polyfill-php80": "^1.27", + "symfony/polyfill-php81": "^1.27", "symfony/process": "^5.4 || ^6.0", "symfony/stopwatch": "^5.4 || ^6.0" }, "require-dev": { + "facile-it/paraunit": "^1.3 || ^2.0", "justinrainbow/json-schema": "^5.2", - "keradus/cli-executor": "^1.5", - "mikey179/vfsstream": "^1.6.10", - "php-coveralls/php-coveralls": "^2.5.2", + "keradus/cli-executor": "^2.0", + "mikey179/vfsstream": "^1.6.11", + "php-coveralls/php-coveralls": "^2.5.3", "php-cs-fixer/accessible-object": "^1.1", "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy": "^1.15", + "phpspec/prophecy": "^1.16", "phpspec/prophecy-phpunit": "^2.0", "phpunit/phpunit": "^9.5", - "phpunitgoodpractices/polyfill": "^1.5", - "phpunitgoodpractices/traits": "^1.9.1", - "symfony/phpunit-bridge": "^6.0", + "phpunitgoodpractices/polyfill": "^1.6", + "phpunitgoodpractices/traits": "^1.9.2", + "symfony/phpunit-bridge": "^6.2.3", "symfony/yaml": "^5.4 || ^6.0" }, "suggest": { @@ -565,9 +464,15 @@ } ], "description": "A tool to automatically fix PHP code style", + "keywords": [ + "Static code analysis", + "fixer", + "standards", + "static analysis" + ], "support": { - "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.8.0" + "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.28.0" }, "funding": [ { @@ -575,20 +480,20 @@ "type": "github" } ], - "time": "2022-03-18T17:20:59+00:00" + "time": "2023-09-22T20:43:40+00:00" }, { "name": "microsoft/tolerant-php-parser", - "version": "v0.1.1", + "version": "v0.1.2", "source": { "type": "git", "url": "https://github.com/microsoft/tolerant-php-parser.git", - "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16" + "reference": "3eccfd273323aaf69513e2f1c888393f5947804b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/6a965617cf484355048ac6d2d3de7b6ec93abb16", - "reference": "6a965617cf484355048ac6d2d3de7b6ec93abb16", + "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/3eccfd273323aaf69513e2f1c888393f5947804b", + "reference": "3eccfd273323aaf69513e2f1c888393f5947804b", "shasum": "" }, "require": { @@ -618,22 +523,22 @@ "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios", "support": { "issues": "https://github.com/microsoft/tolerant-php-parser/issues", - "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.1" + "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.2" }, - "time": "2021-07-16T21:28:12+00:00" + "time": "2022-10-05T17:30:19+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -671,7 +576,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -679,20 +584,20 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "netresearch/jsonmapper", - "version": "v4.0.0", + "version": "v4.2.0", "source": { "type": "git", "url": "https://github.com/cweiske/jsonmapper.git", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" + "reference": "f60565f8c0566a31acf06884cdaa591867ecc956" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", + "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/f60565f8c0566a31acf06884cdaa591867ecc956", + "reference": "f60565f8c0566a31acf06884cdaa591867ecc956", "shasum": "" }, "require": { @@ -728,22 +633,22 @@ "support": { "email": "cweiske@cweiske.de", "issues": "https://github.com/cweiske/jsonmapper/issues", - "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" + "source": "https://github.com/cweiske/jsonmapper/tree/v4.2.0" }, - "time": "2020-12-01T19:48:11+00:00" + "time": "2023-04-09T17:37:40+00:00" }, { "name": "nikic/php-parser", - "version": "v4.13.2", + "version": "v4.17.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077" + "reference": "a6303e50c90c355c7eeee2c4a8b27fe8dc8fef1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/210577fe3cf7badcc5814d99455df46564f3c077", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/a6303e50c90c355c7eeee2c4a8b27fe8dc8fef1d", + "reference": "a6303e50c90c355c7eeee2c4a8b27fe8dc8fef1d", "shasum": "" }, "require": { @@ -784,22 +689,22 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.2" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.17.1" }, - "time": "2021-11-30T19:35:32+00:00" + "time": "2023-08-13T19:53:39+00:00" }, { "name": "pdepend/pdepend", - "version": "2.10.3", + "version": "2.15.0", "source": { "type": "git", "url": "https://github.com/pdepend/pdepend.git", - "reference": "da3166a06b4a89915920a42444f707122a1584c9" + "reference": "0d4d8fb87aa74c358c1c4364514017f34b4a68b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pdepend/pdepend/zipball/da3166a06b4a89915920a42444f707122a1584c9", - "reference": "da3166a06b4a89915920a42444f707122a1584c9", + "url": "https://api.github.com/repos/pdepend/pdepend/zipball/0d4d8fb87aa74c358c1c4364514017f34b4a68b9", + "reference": "0d4d8fb87aa74c358c1c4364514017f34b4a68b9", "shasum": "" }, "require": { @@ -833,9 +738,15 @@ "BSD-3-Clause" ], "description": "Official version of pdepend to be handled with Composer", + "keywords": [ + "PHP Depend", + "PHP_Depend", + "dev", + "pdepend" + ], "support": { "issues": "https://github.com/pdepend/pdepend/issues", - "source": "https://github.com/pdepend/pdepend/tree/2.10.3" + "source": "https://github.com/pdepend/pdepend/tree/2.15.0" }, "funding": [ { @@ -843,20 +754,20 @@ "type": "tidelift" } ], - "time": "2022-02-23T07:53:09+00:00" + "time": "2023-09-22T02:30:39+00:00" }, { "name": "phan/phan", - "version": "5.3.2", + "version": "5.4.2", "source": { "type": "git", "url": "https://github.com/phan/phan.git", - "reference": "b7697eb811e912c038f709f8e1c4911c7ada3edc" + "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phan/phan/zipball/b7697eb811e912c038f709f8e1c4911c7ada3edc", - "reference": "b7697eb811e912c038f709f8e1c4911c7ada3edc", + "url": "https://api.github.com/repos/phan/phan/zipball/4f2870ed6fea320f62f3c3c63f3274d357a7980e", + "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e", "shasum": "" }, "require": { @@ -866,7 +777,7 @@ "ext-json": "*", "ext-tokenizer": "*", "felixfbecker/advanced-json-rpc": "^3.0.4", - "microsoft/tolerant-php-parser": "^0.1.0", + "microsoft/tolerant-php-parser": "0.1.2", "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0", "php": "^7.2.0|^8.0.0", "sabre/event": "^5.1.3", @@ -920,9 +831,9 @@ ], "support": { "issues": "https://github.com/phan/phan/issues", - "source": "https://github.com/phan/phan/tree/5.3.2" + "source": "https://github.com/phan/phan/tree/5.4.2" }, - "time": "2022-02-01T00:17:36+00:00" + "time": "2023-03-03T17:20:24+00:00" }, { "name": "phar-io/manifest", @@ -1035,58 +946,6 @@ }, "time": "2022-02-21T01:04:05+00:00" }, - { - "name": "php-cs-fixer/diff", - "version": "v2.0.2", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.23 || ^6.4.3 || ^7.0", - "symfony/process": "^3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "sebastian/diff v3 backport support for PHP 5.6+", - "homepage": "https://github.com/PHP-CS-Fixer", - "keywords": [ - "diff" - ], - "support": { - "issues": "https://github.com/PHP-CS-Fixer/diff/issues", - "source": "https://github.com/PHP-CS-Fixer/diff/tree/v2.0.2" - }, - "time": "2020-10-14T08:32:19+00:00" - }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -1199,25 +1058,33 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.1", + "version": "1.7.3", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "77a32518733312af16a44300404e945338981de3" + "reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/77a32518733312af16a44300404e945338981de3", - "reference": "77a32518733312af16a44300404e945338981de3", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419", + "reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" + "doctrine/deprecations": "^1.0", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" }, "require-dev": { "ext-tokenizer": "*", - "psalm/phar": "^4.8" + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" }, "type": "library", "extra": { @@ -1243,28 +1110,90 @@ "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.6.1" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.3" }, - "time": "2022-03-15T21:29:03+00:00" + "time": "2023-08-12T11:01:26+00:00" }, { - "name": "phpmd/phpmd", - "version": "2.12.0", + "name": "phploc/phploc", + "version": "7.0.2", "source": { "type": "git", - "url": "https://github.com/phpmd/phpmd.git", - "reference": "c0b678ba71902f539c27c14332aa0ddcf14388ec" + "url": "https://github.com/sebastianbergmann/phploc.git", + "reference": "af0d5fc84f3f7725513ba59cdcbe670ac2a4532a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpmd/phpmd/zipball/c0b678ba71902f539c27c14332aa0ddcf14388ec", - "reference": "c0b678ba71902f539c27c14332aa0ddcf14388ec", + "url": "https://api.github.com/repos/sebastianbergmann/phploc/zipball/af0d5fc84f3f7725513ba59cdcbe670ac2a4532a", + "reference": "af0d5fc84f3f7725513ba59cdcbe670ac2a4532a", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-json": "*", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0", + "sebastian/cli-parser": "^1.0", + "sebastian/version": "^3.0" + }, + "bin": [ + "phploc" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "A tool for quickly measuring the size of a PHP project.", + "homepage": "https://github.com/sebastianbergmann/phploc", + "support": { + "issues": "https://github.com/sebastianbergmann/phploc/issues", + "source": "https://github.com/sebastianbergmann/phploc/tree/7.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "abandoned": true, + "time": "2020-12-07T05:51:20+00:00" + }, + { + "name": "phpmd/phpmd", + "version": "2.13.0", + "source": { + "type": "git", + "url": "https://github.com/phpmd/phpmd.git", + "reference": "dad0228156856b3ad959992f9748514fa943f3e3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpmd/phpmd/zipball/dad0228156856b3ad959992f9748514fa943f3e3", + "reference": "dad0228156856b3ad959992f9748514fa943f3e3", "shasum": "" }, "require": { "composer/xdebug-handler": "^1.0 || ^2.0 || ^3.0", "ext-xml": "*", - "pdepend/pdepend": "^2.10.3", + "pdepend/pdepend": "^2.12.1", "php": ">=5.3.9" }, "require-dev": { @@ -1320,7 +1249,7 @@ "support": { "irc": "irc://irc.freenode.org/phpmd", "issues": "https://github.com/phpmd/phpmd/issues", - "source": "https://github.com/phpmd/phpmd/tree/2.12.0" + "source": "https://github.com/phpmd/phpmd/tree/2.13.0" }, "funding": [ { @@ -1328,42 +1257,48 @@ "type": "tidelift" } ], - "time": "2022-03-24T13:33:01+00:00" + "time": "2022-09-10T08:44:15+00:00" }, { - "name": "phpspec/prophecy", - "version": "v1.15.0", + "name": "phpmetrics/phpmetrics", + "version": "v2.8.2", "source": { "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" + "url": "https://github.com/phpmetrics/PhpMetrics.git", + "reference": "4b77140a11452e63c7a9b98e0648320bf6710090" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "url": "https://api.github.com/repos/phpmetrics/PhpMetrics/zipball/4b77140a11452e63c7a9b98e0648320bf6710090", + "reference": "4b77140a11452e63c7a9b98e0648320bf6710090", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.2", - "phpdocumentor/reflection-docblock": "^5.2", - "sebastian/comparator": "^3.0 || ^4.0", - "sebastian/recursion-context": "^3.0 || ^4.0" + "ext-dom": "*", + "ext-tokenizer": "*", + "nikic/php-parser": "^3|^4", + "php": ">=5.5" + }, + "replace": { + "halleck45/php-metrics": "*", + "halleck45/phpmetrics": "*" }, "require-dev": { - "phpspec/phpspec": "^6.0 || ^7.0", - "phpunit/phpunit": "^8.0 || ^9.0" + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14", + "sebastian/comparator": ">=1.2.3", + "squizlabs/php_codesniffer": "^3.5", + "symfony/dom-crawler": "^3.0 || ^4.0 || ^5.0" }, + "bin": [ + "bin/phpmetrics" + ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, "autoload": { - "psr-4": { - "Prophecy\\": "src/Prophecy" + "files": [ + "./src/functions.php" + ], + "psr-0": { + "Hal\\": "./src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1372,43 +1307,85 @@ ], "authors": [ { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" + "name": "Jean-François Lépine", + "email": "lepinejeanfrancois@yahoo.fr", + "homepage": "http://www.lepine.pro", + "role": "Copyright Holder" } ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", + "description": "Static analyzer tool for PHP : Coupling, Cyclomatic complexity, Maintainability Index, Halstead's metrics... and more !", + "homepage": "http://www.phpmetrics.org", "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" + "analysis", + "qa", + "quality", + "testing" ], "support": { - "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" + "issues": "https://github.com/PhpMetrics/PhpMetrics/issues", + "source": "https://github.com/phpmetrics/PhpMetrics/tree/v2.8.2" }, - "time": "2021-12-08T12:19:24+00:00" + "time": "2023-03-08T15:03:36+00:00" }, { - "name": "phpstan/phpstan", - "version": "1.5.4", + "name": "phpstan/phpdoc-parser", + "version": "1.24.1", "source": { "type": "git", - "url": "https://github.com/phpstan/phpstan.git", - "reference": "bbf68cae24f6dc023c607ea0f87da55dd9d55c2b" + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "9f854d275c2dbf84915a5c0ec9a2d17d2cd86b01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/bbf68cae24f6dc023c607ea0f87da55dd9d55c2b", - "reference": "bbf68cae24f6dc023c607ea0f87da55dd9d55c2b", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/9f854d275c2dbf84915a5c0ec9a2d17d2cd86b01", + "reference": "9f854d275c2dbf84915a5c0ec9a2d17d2cd86b01", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^4.15", + "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", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "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.24.1" + }, + "time": "2023-09-18T12:18:02+00:00" + }, + { + "name": "phpstan/phpstan", + "version": "1.10.35", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan.git", + "reference": "e730e5facb75ffe09dfb229795e8c01a459f26c3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e730e5facb75ffe09dfb229795e8c01a459f26c3", + "reference": "e730e5facb75ffe09dfb229795e8c01a459f26c3", "shasum": "" }, "require": { @@ -1432,9 +1409,16 @@ "MIT" ], "description": "PHPStan - PHP Static Analysis Tool", + "keywords": [ + "dev", + "static analysis" + ], "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.5.4" + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" }, "funding": [ { @@ -1445,36 +1429,32 @@ "url": "https://github.com/phpstan", "type": "github" }, - { - "url": "https://www.patreon.com/phpstan", - "type": "patreon" - }, { "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", "type": "tidelift" } ], - "time": "2022-04-03T12:39:00+00:00" + "time": "2023-09-19T15:27:56+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.15", + "version": "9.2.29", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" + "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6a3a87ac2bbe33b25042753df8195ba4aa534c76", + "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.13.0", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -1489,8 +1469,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -1523,7 +1503,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" + "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.29" }, "funding": [ { @@ -1531,7 +1512,7 @@ "type": "github" } ], - "time": "2022-03-07T09:28:20+00:00" + "time": "2023-09-19T04:57:46+00:00" }, { "name": "phpunit/php-file-iterator", @@ -1776,20 +1757,20 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.20", + "version": "9.6.13", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "12bc8879fb65aef2138b26fc633cb1e3620cffba" + "reference": "f3d767f7f9e191eab4189abe41ab37797e30b1be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/12bc8879fb65aef2138b26fc633cb1e3620cffba", - "reference": "12bc8879fb65aef2138b26fc633cb1e3620cffba", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f3d767f7f9e191eab4189abe41ab37797e30b1be", + "reference": "f3d767f7f9e191eab4189abe41ab37797e30b1be", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1", + "doctrine/instantiator": "^1.3.1 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -1800,31 +1781,26 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.13", + "phpunit/php-code-coverage": "^9.2.28", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.3", "phpunit/php-timer": "^5.0.2", "sebastian/cli-parser": "^1.0.1", "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", + "sebastian/comparator": "^4.0.8", "sebastian/diff": "^4.0.3", "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", + "sebastian/exporter": "^4.0.5", "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.0", + "sebastian/type": "^3.2", "sebastian/version": "^3.0.2" }, - "require-dev": { - "ext-pdo": "*", - "phpspec/prophecy-phpunit": "^2.0.1" - }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "bin": [ "phpunit" @@ -1832,7 +1808,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -1863,7 +1839,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.20" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.13" }, "funding": [ { @@ -1873,58 +1850,13 @@ { "url": "https://github.com/sebastianbergmann", "type": "github" - } - ], - "time": "2022-04-01T12:37:26+00:00" - }, - { - "name": "psr/cache", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/cache.git", - "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", - "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Cache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + }, { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" } ], - "description": "Common interface for caching libraries", - "keywords": [ - "cache", - "psr", - "psr-6" - ], - "support": { - "source": "https://github.com/php-fig/cache/tree/3.0.0" - }, - "time": "2021-02-03T23:26:27+00:00" + "time": "2023-09-19T05:39:22+00:00" }, { "name": "psr/container", @@ -2079,6 +2011,62 @@ }, "time": "2021-07-14T16:46:02+00:00" }, + { + "name": "rector/rector", + "version": "0.18.3", + "source": { + "type": "git", + "url": "https://github.com/rectorphp/rector.git", + "reference": "ba7988e3e028e68e07191d75b0d5473ac320c5e7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/rectorphp/rector/zipball/ba7988e3e028e68e07191d75b0d5473ac320c5e7", + "reference": "ba7988e3e028e68e07191d75b0d5473ac320c5e7", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", + "phpstan/phpstan": "^1.10.31" + }, + "conflict": { + "rector/rector-doctrine": "*", + "rector/rector-downgrade-php": "*", + "rector/rector-phpunit": "*", + "rector/rector-symfony": "*" + }, + "bin": [ + "bin/rector" + ], + "type": "library", + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Instant Upgrade and Automated Refactoring of any PHP code", + "keywords": [ + "automation", + "dev", + "migration", + "refactoring" + ], + "support": { + "issues": "https://github.com/rectorphp/rector/issues", + "source": "https://github.com/rectorphp/rector/tree/0.18.3" + }, + "funding": [ + { + "url": "https://github.com/tomasvotruba", + "type": "github" + } + ], + "time": "2023-09-12T20:18:14+00:00" + }, { "name": "sabre/event", "version": "5.1.4", @@ -2314,16 +2302,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.6", + "version": "4.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", "shasum": "" }, "require": { @@ -2376,7 +2364,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" }, "funding": [ { @@ -2384,7 +2372,7 @@ "type": "github" } ], - "time": "2020-10-26T15:49:45+00:00" + "time": "2022-09-14T12:41:17+00:00" }, { "name": "sebastian/complexity", @@ -2445,16 +2433,16 @@ }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131", + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131", "shasum": "" }, "require": { @@ -2499,7 +2487,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5" }, "funding": [ { @@ -2507,20 +2495,20 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2023-05-07T05:35:17+00:00" }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -2562,7 +2550,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -2570,20 +2558,20 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", "shasum": "" }, "require": { @@ -2639,7 +2627,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" }, "funding": [ { @@ -2647,20 +2635,20 @@ "type": "github" } ], - "time": "2021-11-11T14:18:36+00:00" + "time": "2022-09-14T06:03:37+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.5", + "version": "5.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" + "reference": "bde739e7565280bda77be70044ac1047bc007e34" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bde739e7565280bda77be70044ac1047bc007e34", + "reference": "bde739e7565280bda77be70044ac1047bc007e34", "shasum": "" }, "require": { @@ -2703,7 +2691,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.6" }, "funding": [ { @@ -2711,7 +2699,7 @@ "type": "github" } ], - "time": "2022-02-14T08:28:10+00:00" + "time": "2023-08-02T09:26:13+00:00" }, { "name": "sebastian/lines-of-code", @@ -2884,16 +2872,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", "shasum": "" }, "require": { @@ -2932,10 +2920,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" }, "funding": [ { @@ -2943,7 +2931,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -3002,16 +2990,16 @@ }, { "name": "sebastian/type", - "version": "3.0.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -3023,7 +3011,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" } }, "autoload": { @@ -3046,7 +3034,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -3054,7 +3042,7 @@ "type": "github" } ], - "time": "2022-03-15T09:54:48+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", @@ -3111,16 +3099,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.6.2", + "version": "3.7.2", "source": { "type": "git", "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a" + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/5e4e71592f69da17871dba6e80dd51bce74a351a", - "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879", + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879", "shasum": "" }, "require": { @@ -3156,49 +3144,47 @@ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", "keywords": [ "phpcs", - "standards" + "standards", + "static analysis" ], "support": { "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", "source": "https://github.com/squizlabs/PHP_CodeSniffer", "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" }, - "time": "2021-12-12T21:44:58+00:00" + "time": "2023-02-22T23:07:41+00:00" }, { "name": "symfony/config", - "version": "v6.0.7", + "version": "v6.3.2", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "22850bfdd2b6090568ad05dece6843c859d933b7" + "reference": "b47ca238b03e7b0d7880ffd1cf06e8d637ca1467" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/22850bfdd2b6090568ad05dece6843c859d933b7", - "reference": "22850bfdd2b6090568ad05dece6843c859d933b7", + "url": "https://api.github.com/repos/symfony/config/zipball/b47ca238b03e7b0d7880ffd1cf06e8d637ca1467", + "reference": "b47ca238b03e7b0d7880ffd1cf06e8d637ca1467", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/filesystem": "^5.4|^6.0", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php81": "^1.22" + "symfony/polyfill-ctype": "~1.8" }, "conflict": { - "symfony/finder": "<4.4" + "symfony/finder": "<5.4", + "symfony/service-contracts": "<2.5" }, "require-dev": { "symfony/event-dispatcher": "^5.4|^6.0", "symfony/finder": "^5.4|^6.0", "symfony/messenger": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/yaml": "^5.4|^6.0" }, - "suggest": { - "symfony/yaml": "To use the yaml reference dumper" - }, "type": "library", "autoload": { "psr-4": { @@ -3225,7 +3211,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.0.7" + "source": "https://github.com/symfony/config/tree/v6.3.2" }, "funding": [ { @@ -3241,26 +3227,27 @@ "type": "tidelift" } ], - "time": "2022-03-22T16:12:04+00:00" + "time": "2023-07-19T20:22:16+00:00" }, { "name": "symfony/console", - "version": "v6.0.7", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "70dcf7b2ca2ea08ad6ebcc475f104a024fb5632e" + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/70dcf7b2ca2ea08ad6ebcc475f104a024fb5632e", - "reference": "70dcf7b2ca2ea08ad6ebcc475f104a024fb5632e", + "url": "https://api.github.com/repos/symfony/console/zipball/eca495f2ee845130855ddf1cf18460c38966c8b6", + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/string": "^5.4|^6.0" }, "conflict": { @@ -3282,12 +3269,6 @@ "symfony/process": "^5.4|^6.0", "symfony/var-dumper": "^5.4|^6.0" }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, "type": "library", "autoload": { "psr-4": { @@ -3315,12 +3296,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.0.7" + "source": "https://github.com/symfony/console/tree/v6.3.4" }, "funding": [ { @@ -3336,34 +3317,34 @@ "type": "tidelift" } ], - "time": "2022-03-31T17:18:25+00:00" + "time": "2023-08-16T10:10:12+00:00" }, { "name": "symfony/dependency-injection", - "version": "v6.0.7", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "3e8a405fcc2eaf4eadb25b5e259ad9bf90499848" + "reference": "68a5a9570806a087982f383f6109c5e925892a49" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/3e8a405fcc2eaf4eadb25b5e259ad9bf90499848", - "reference": "3e8a405fcc2eaf4eadb25b5e259ad9bf90499848", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/68a5a9570806a087982f383f6109c5e925892a49", + "reference": "68a5a9570806a087982f383f6109c5e925892a49", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php81": "^1.22", - "symfony/service-contracts": "^1.1.6|^2.0|^3.0" + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.2.10" }, "conflict": { "ext-psr": "<1.1|>=2", - "symfony/config": "<5.4", + "symfony/config": "<6.1", "symfony/finder": "<5.4", - "symfony/proxy-manager-bridge": "<5.4", + "symfony/proxy-manager-bridge": "<6.3", "symfony/yaml": "<5.4" }, "provide": { @@ -3371,17 +3352,10 @@ "symfony/service-implementation": "1.1|2.0|3.0" }, "require-dev": { - "symfony/config": "^5.4|^6.0", + "symfony/config": "^6.1", "symfony/expression-language": "^5.4|^6.0", "symfony/yaml": "^5.4|^6.0" }, - "suggest": { - "symfony/config": "", - "symfony/expression-language": "For using expressions in service container configuration", - "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required", - "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", - "symfony/yaml": "" - }, "type": "library", "autoload": { "psr-4": { @@ -3408,7 +3382,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.0.7" + "source": "https://github.com/symfony/dependency-injection/tree/v6.3.4" }, "funding": [ { @@ -3424,29 +3398,29 @@ "type": "tidelift" } ], - "time": "2022-03-08T15:43:52+00:00" + "time": "2023-08-16T17:55:17+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.0.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -3475,7 +3449,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.0.1" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -3491,28 +3465,29 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.0.3", + "version": "v6.3.2", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934" + "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/6472ea2dd415e925b90ca82be64b8bc6157f3934", - "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/adb01fe097a4ee930db9258a3cc906b5beb5cf2e", + "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/event-dispatcher-contracts": "^2|^3" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<5.4" + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, "provide": { "psr/event-dispatcher-implementation": "1.0", @@ -3525,13 +3500,9 @@ "symfony/error-handler": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/stopwatch": "^5.4|^6.0" }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, "type": "library", "autoload": { "psr-4": { @@ -3558,7 +3529,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.0.3" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.2" }, "funding": [ { @@ -3574,33 +3545,30 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-07-06T06:56:43+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.0.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051" + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7bc61cc2db649b4637d331240c5346dcc7708051", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/event-dispatcher": "^1" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -3637,7 +3605,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.1" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0" }, "funding": [ { @@ -3653,24 +3621,24 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/filesystem", - "version": "v6.0.7", + "version": "v6.3.1", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "6c9e4c41f2c51dfde3db298594ed9cba55dbf5ff" + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/6c9e4c41f2c51dfde3db298594ed9cba55dbf5ff", - "reference": "6c9e4c41f2c51dfde3db298594ed9cba55dbf5ff", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, @@ -3700,7 +3668,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.0.7" + "source": "https://github.com/symfony/filesystem/tree/v6.3.1" }, "funding": [ { @@ -3716,24 +3684,27 @@ "type": "tidelift" } ], - "time": "2022-04-01T12:54:51+00:00" + "time": "2023-06-01T08:30:39+00:00" }, { "name": "symfony/finder", - "version": "v6.0.3", + "version": "v6.3.3", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "8661b74dbabc23223f38c9b99d3f8ade71170430" + "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/8661b74dbabc23223f38c9b99d3f8ade71170430", - "reference": "8661b74dbabc23223f38c9b99d3f8ade71170430", + "url": "https://api.github.com/repos/symfony/finder/zipball/9915db259f67d21eefee768c1abcf1cc61b1fc9e", + "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -3761,7 +3732,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.0.3" + "source": "https://github.com/symfony/finder/tree/v6.3.3" }, "funding": [ { @@ -3777,25 +3748,25 @@ "type": "tidelift" } ], - "time": "2022-01-26T17:23:29+00:00" + "time": "2023-07-31T08:31:44+00:00" }, { "name": "symfony/options-resolver", - "version": "v6.0.3", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d" + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/51f7006670febe4cbcbae177cbffe93ff833250d", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/a10f19f5198d589d5c33333cffe98dc9820332dd", + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/deprecation-contracts": "^2.1|^3" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -3828,7 +3799,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.0.3" + "source": "https://github.com/symfony/options-resolver/tree/v6.3.0" }, "funding": [ { @@ -3844,20 +3815,20 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-05-12T14:21:09+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "30885182c981ab175d4d034db0f6f469898070ab" + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", - "reference": "30885182c981ab175d4d034db0f6f469898070ab", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", "shasum": "" }, "require": { @@ -3872,7 +3843,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3910,7 +3881,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0" }, "funding": [ { @@ -3926,20 +3897,20 @@ "type": "tidelift" } ], - "time": "2021-10-20T20:35:02+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783" + "reference": "875e90aeea2777b6f135677f618529449334a612" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/81b86b50cf841a64252b439e738e97f4a34e2783", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612", + "reference": "875e90aeea2777b6f135677f618529449334a612", "shasum": "" }, "require": { @@ -3951,7 +3922,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3991,7 +3962,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0" }, "funding": [ { @@ -4007,20 +3978,20 @@ "type": "tidelift" } ], - "time": "2021-11-23T21:10:46+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8" + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8590a5f561694770bdcd3f9b5c69dde6945028e8", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", "shasum": "" }, "require": { @@ -4032,7 +4003,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4075,7 +4046,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0" }, "funding": [ { @@ -4091,20 +4062,20 @@ "type": "tidelift" } ], - "time": "2021-02-19T12:13:01+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825" + "reference": "42292d99c55abe617799667f454222c54c60e229" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/0abb51d2f102e00a4eefcf46ba7fec406d245825", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229", + "reference": "42292d99c55abe617799667f454222c54c60e229", "shasum": "" }, "require": { @@ -4119,7 +4090,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4158,7 +4129,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0" }, "funding": [ { @@ -4174,20 +4145,20 @@ "type": "tidelift" } ], - "time": "2021-11-30T18:21:41+00:00" + "time": "2023-07-28T09:04:16+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c" + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/4407588e0d3f1f52efb65fbe92babe41f37fe50c", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5", + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5", "shasum": "" }, "require": { @@ -4196,7 +4167,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4241,7 +4212,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0" }, "funding": [ { @@ -4257,20 +4228,20 @@ "type": "tidelift" } ], - "time": "2022-03-04T08:16:47+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.25.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" + "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b", + "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b", "shasum": "" }, "require": { @@ -4279,7 +4250,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.23-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4320,7 +4291,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.25.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0" }, "funding": [ { @@ -4336,24 +4307,24 @@ "type": "tidelift" } ], - "time": "2021-09-13T13:58:11+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/process", - "version": "v6.0.7", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "e13f6757e267d687e20ec5b26ccfcbbe511cd8f4" + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/e13f6757e267d687e20ec5b26ccfcbbe511cd8f4", - "reference": "e13f6757e267d687e20ec5b26ccfcbbe511cd8f4", + "url": "https://api.github.com/repos/symfony/process/zipball/0b5c29118f2e980d455d2e34a5659f4579847c54", + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -4381,7 +4352,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.0.7" + "source": "https://github.com/symfony/process/tree/v6.3.4" }, "funding": [ { @@ -4397,36 +4368,33 @@ "type": "tidelift" } ], - "time": "2022-03-18T16:21:55+00:00" + "time": "2023-08-07T10:39:22+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.0.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "e517458f278c2131ca9f262f8fbaf01410f2c65c" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/e517458f278c2131ca9f262f8fbaf01410f2c65c", - "reference": "e517458f278c2131ca9f262f8fbaf01410f2c65c", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/container": "^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -4436,7 +4404,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -4463,7 +4434,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.0.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -4479,25 +4450,25 @@ "type": "tidelift" } ], - "time": "2022-03-13T20:10:05+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/stopwatch", - "version": "v6.0.5", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "f2c1780607ec6502f2121d9729fd8150a655d337" + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f2c1780607ec6502f2121d9729fd8150a655d337", - "reference": "f2c1780607ec6502f2121d9729fd8150a655d337", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", "shasum": "" }, "require": { - "php": ">=8.0.2", - "symfony/service-contracts": "^1|^2|^3" + "php": ">=8.1", + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -4525,7 +4496,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.0.5" + "source": "https://github.com/symfony/stopwatch/tree/v6.3.0" }, "funding": [ { @@ -4541,36 +4512,37 @@ "type": "tidelift" } ], - "time": "2022-02-21T17:15:17+00:00" + "time": "2023-02-16T10:14:28+00:00" }, { "name": "symfony/string", - "version": "v6.0.3", + "version": "v6.3.2", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2" + "reference": "53d1a83225002635bca3482fcbf963001313fb68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/522144f0c4c004c80d56fa47e40e17028e2eefc2", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2", + "url": "https://api.github.com/repos/symfony/string/zipball/53d1a83225002635bca3482fcbf963001313fb68", + "reference": "53d1a83225002635bca3482fcbf963001313fb68", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { "symfony/error-handler": "^5.4|^6.0", "symfony/http-client": "^5.4|^6.0", - "symfony/translation-contracts": "^2.0|^3.0", + "symfony/intl": "^6.2", + "symfony/translation-contracts": "^2.5|^3.0", "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", @@ -4610,7 +4582,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.0.3" + "source": "https://github.com/symfony/string/tree/v6.3.2" }, "funding": [ { @@ -4626,7 +4598,81 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-07-05T08:41:27+00:00" + }, + { + "name": "symfony/var-exporter", + "version": "v6.3.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-exporter.git", + "reference": "df1f8aac5751871b83d30bf3e2c355770f8f0691" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/df1f8aac5751871b83d30bf3e2c355770f8f0691", + "reference": "df1f8aac5751871b83d30bf3e2c355770f8f0691", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "symfony/var-dumper": "^5.4|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\VarExporter\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Allows exporting any serializable PHP data structure to plain PHP code", + "homepage": "https://symfony.com", + "keywords": [ + "clone", + "construct", + "export", + "hydrate", + "instantiate", + "lazy-loading", + "proxy", + "serialize" + ], + "support": { + "source": "https://github.com/symfony/var-exporter/tree/v6.3.4" + }, + "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": "2023-08-16T18:14:47+00:00" }, { "name": "theseer/tokenizer", @@ -4680,30 +4726,38 @@ }, { "name": "tysonandre/var_representation_polyfill", - "version": "0.1.1", + "version": "0.1.3", "source": { "type": "git", "url": "https://github.com/TysonAndre/var_representation_polyfill.git", - "reference": "0a942e74e18af5514749895507bc6ca7ab96399a" + "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TysonAndre/var_representation_polyfill/zipball/0a942e74e18af5514749895507bc6ca7ab96399a", - "reference": "0a942e74e18af5514749895507bc6ca7ab96399a", + "url": "https://api.github.com/repos/TysonAndre/var_representation_polyfill/zipball/e9116c2c352bb0835ca428b442dde7767c11ad32", + "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32", "shasum": "" }, "require": { "ext-tokenizer": "*", "php": "^7.2.0|^8.0.0" }, + "provide": { + "ext-var_representation": "*" + }, "require-dev": { - "phan/phan": "^4.0", + "phan/phan": "^5.4.1", "phpunit/phpunit": "^8.5.0" }, "suggest": { - "ext-var_representation": "*" + "ext-var_representation": "For best performance" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.1.3-dev" + } + }, "autoload": { "files": [ "src/var_representation.php" @@ -4728,27 +4782,27 @@ ], "support": { "issues": "https://github.com/TysonAndre/var_representation_polyfill/issues", - "source": "https://github.com/TysonAndre/var_representation_polyfill/tree/0.1.1" + "source": "https://github.com/TysonAndre/var_representation_polyfill/tree/0.1.3" }, - "time": "2021-08-16T00:12:50+00:00" + "time": "2022-08-31T12:59:22+00:00" }, { "name": "webmozart/assert", - "version": "1.10.0", + "version": "1.11.0", "source": { "type": "git", "url": "https://github.com/webmozarts/assert.git", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-ctype": "^1.8" + "ext-ctype": "*", + "php": "^7.2 || ^8.0" }, "conflict": { "phpstan/phpstan": "<0.12.20", @@ -4786,9 +4840,9 @@ ], "support": { "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.10.0" + "source": "https://github.com/webmozarts/assert/tree/1.11.0" }, - "time": "2021-03-09T10:59:23+00:00" + "time": "2022-06-03T18:03:27+00:00" } ], "aliases": [], @@ -4798,5 +4852,5 @@ "prefer-lowest": false, "platform": [], "platform-dev": [], - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.2.0" } diff --git a/img/module_teaser_small.png b/img/module_teaser_small.png old mode 100755 new mode 100644 index 27d7f3c..5a15832 Binary files a/img/module_teaser_small.png and b/img/module_teaser_small.png differ diff --git a/info.json b/info.json index d574eb0..157aa8b 100755 --- a/info.json +++ b/info.json @@ -11,7 +11,7 @@ "phpOMS-db": "1.0.0" }, "creator": { - "name": "Karaka", + "name": "Jingga", "website": "jingga.app" }, "description": "Finance module.", diff --git a/tests/Admin/AdminTest.php b/tests/Admin/AdminTest.php index e1bf2cf..bb655de 100755 --- a/tests/Admin/AdminTest.php +++ b/tests/Admin/AdminTest.php @@ -1,12 +1,12 @@ [ 'core' => [ 'masters' => [ 'admin' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'mysql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '3306', /* db host port */ - 'login' => 'root', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mysql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '3306', /* db host port */ + 'login' => 'root', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'postgresql' => [ 'admin' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'pgsql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '5432', /* db host port */ - 'login' => 'postgres', /* db login name */ - 'password' => 'root', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'pgsql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '5432', /* db host port */ + 'login' => 'postgres', /* db login name */ + 'password' => 'root', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'sqlite' => [ 'admin' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'sqlite', /* db type */ - 'database' => __DIR__ . '/test.sqlite', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'sqlite', /* db type */ + 'database' => __DIR__ . '/../Karaka/phpOMS/Localization/Defaults/localization.sqlite', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], 'mssql' => [ 'admin' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'insert' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'select' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'update' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'delete' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], 'schema' => [ - 'db' => 'mssql', /* db type */ - 'host' => '127.0.0.1', /* db host address */ - 'port' => '1433', /* db host port */ - 'login' => 'sa', /* db login name */ - 'password' => 'R00troot', /* db login password */ - 'database' => 'oms', /* db name */ - 'weight' => 1000, /* db table prefix */ + 'db' => 'mssql', /* db type */ + 'host' => '127.0.0.1', /* db host address */ + 'port' => '1433', /* db host port */ + 'login' => 'sa', /* db login name */ + 'password' => 'c0MplicatedP@ssword', /* db login password */ + 'database' => 'oms', /* db name */ + 'weight' => 1000, /* db table prefix */ + 'datetimeformat' => 'Y-m-d H:i:s', ], ], ], @@ -302,7 +373,7 @@ if (\defined('RESET') && RESET === '1') { $db->exec('DROP DATABASE IF EXISTS ' . $CONFIG['db']['core']['masters']['admin']['database']); $db->exec('CREATE DATABASE IF NOT EXISTS ' . $CONFIG['db']['core']['masters']['admin']['database']); $db = null; - } catch (\Throwable $t) { + } catch (\Throwable $_) { echo "\nCouldn't connect to MYSQL DB\n"; } } @@ -317,7 +388,7 @@ if (\defined('RESET') && RESET === '1') { $db->exec('DROP DATABASE IF EXISTS ' . $CONFIG['db']['core']['postgresql']['admin']['database']); $db->exec('CREATE DATABASE ' . $CONFIG['db']['core']['postgresql']['admin']['database']); $db = null; - } catch (\Throwable $t) { + } catch (\Throwable $_) { echo "\nCouldn't connect to POSTGRESQL DB\n"; } } @@ -332,7 +403,7 @@ if (\defined('RESET') && RESET === '1') { $db->exec('DROP DATABASE IF EXISTS ' . $CONFIG['db']['core']['mssql']['admin']['database']); $db->exec('CREATE DATABASE ' . $CONFIG['db']['core']['mssql']['admin']['database']); $db = null; - } catch (\Throwable $t) { + } catch (\Throwable $_) { echo "\nCouldn't connect to MSSQL DB\n"; } } @@ -344,9 +415,9 @@ $GLOBALS['session'] = $httpSession; $GLOBALS['dbpool'] = new DatabasePool(); $GLOBALS['dbpool']->create('admin', $CONFIG['db']['core']['masters']['admin']); $GLOBALS['dbpool']->create('select', $CONFIG['db']['core']['masters']['select']); +$GLOBALS['dbpool']->create('insert', $CONFIG['db']['core']['masters']['insert']); $GLOBALS['dbpool']->create('update', $CONFIG['db']['core']['masters']['update']); $GLOBALS['dbpool']->create('delete', $CONFIG['db']['core']['masters']['delete']); -$GLOBALS['dbpool']->create('insert', $CONFIG['db']['core']['masters']['insert']); $GLOBALS['dbpool']->create('schema', $CONFIG['db']['core']['masters']['schema']); DataMapperFactory::db($GLOBALS['dbpool']->get()); @@ -381,7 +452,7 @@ function phpServe() : void // Execute the command and store the process ID $output = []; - echo \sprintf('Starting server...') . \PHP_EOL; + echo 'Starting server...' . \PHP_EOL; echo \sprintf(' Current directory: %s', \getcwd()) . \PHP_EOL; echo \sprintf(' %s', $command); \exec($command, $output); @@ -406,10 +477,14 @@ function phpServe() : void // Kill the web server when the process ends \register_shutdown_function(function() use ($killCommand, $pid) : void { - echo \PHP_EOL . \sprintf('Stopping server...') . \PHP_EOL; + echo \PHP_EOL . 'Stopping server...' . \PHP_EOL; echo \sprintf(' %s - Killing process with ID %d', \date('r'), $pid) . \PHP_EOL; \exec($killCommand . $pid); }); } -\phpServe(); +try { + \phpServe(); +} catch(\Throwable $t) { + echo $t->getMessage(); +} diff --git a/tests/phpunit_default.xml b/tests/phpunit_default.xml index 4db1f21..ad47a51 100755 --- a/tests/phpunit_default.xml +++ b/tests/phpunit_default.xml @@ -1,13 +1,14 @@ + + ../ + - *vendor* - vendor - ../vendor - ../phpOMS + ../vendor* + ../MainRepository* + ../Admin/Install/Application* ../phpOMS* - ../phpOMS/* ../tests* ../*/tests* ../**/tests* @@ -31,7 +32,7 @@ - ../Karaka/Install/tests* + ../MainRepository/Install/tests* ../tests* @@ -51,7 +52,7 @@ - +