diff --git a/.env.example b/.env.example index c12561de2..5676f7eb2 100644 --- a/.env.example +++ b/.env.example @@ -1,9 +1,10 @@ APP_NAME=Bagisto APP_ENV=local -APP_VERSION=1.1.2 +APP_VERSION=1.3.1 APP_KEY= APP_DEBUG=true APP_URL=http://localhost +APP_ADMIN_URL=admin APP_TIMEZONE=Asia/Kolkata APP_LOCALE=en LOG_CHANNEL=stack @@ -56,9 +57,9 @@ TWITTER_CLIENT_ID= TWITTER_CLIENT_SECRET= TWITTER_CALLBACK_URL=https://yourhost.com/customer/social-login/twitter/callback -GOGGLE_CLIENT_ID= -GOGGLE_CLIENT_SECRET= -GOGGLE_CALLBACK_URL=https://yourhost.com/customer/social-login/google/callback +GOOGLE_CLIENT_ID= +GOOGLE_CLIENT_SECRET= +GOOGLE_CALLBACK_URL=https://yourhost.com/customer/social-login/google/callback LINKEDIN_CLIENT_ID= LINKEDIN_CLIENT_SECRET= @@ -66,4 +67,4 @@ LINKEDIN_CALLBACK_URL=https://yourhost.com/customer/social-login/linkedin/callba GITHUB_CLIENT_ID= GITHUB_CLIENT_SECRET= -GITHUB_CALLBACK_URL=https://yourhost.com/customer/social-login/github/callback \ No newline at end of file +GITHUB_CALLBACK_URL=https://yourhost.com/customer/social-login/github/callback diff --git a/.env.testing b/.env.testing index f872c6bfe..7bdd59aac 100644 --- a/.env.testing +++ b/.env.testing @@ -1,9 +1,10 @@ APP_NAME=Laravel APP_ENV=local -APP_VERSION=1.1.2 +APP_VERSION=1.3.1 APP_KEY=base64:G4KY3tUsTaY9ONo1n/QyJvVLQZdJDgbIkSJswFK01HE= APP_DEBUG=true APP_URL=http://localhost +APP_ADMIN_URL=admin LOG_CHANNEL=stack @@ -42,4 +43,4 @@ MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" SHOP_MAIL_FROM=test@example.com -ADMIN_MAIL_TO=test@example.com +ADMIN_MAIL_TO=test@example.com \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 102686232..361429c11 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,11 +1,10 @@ -**BUGS:** +## Description + + ->Please describe the issue that you solved if its not filed. +## How to test this + ->Otherwise please mention issue #id and use comma if your PR ->solves multiple issues. - -**For things other than bugs:** - -> Describe that thing in very short line, word limit is 200. -> Otherwise use **issue #id** if the issue was filed as **feature** request. \ No newline at end of file +## Documentation +- [ ] My pull request requires a update on the documentation repository. + diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 829a18122..3233c3a54 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,8 +4,12 @@ on: [push, pull_request] jobs: tests: - name: Run tests - runs-on: ubuntu-latest + runs-on: ${{ matrix.operating-system }} + strategy: + matrix: + operating-system: [ubuntu-latest] + php-versions: ['7.3', '7.4', '8.0'] + name: PHP ${{ matrix.php-versions }} test on ${{ matrix.operating-system }} services: mysql: @@ -23,13 +27,13 @@ jobs: - name: Checkout uses: actions/checkout@v2 - - name: Setup php - uses: shivammathur/setup-php@v1 + - name: Setup PHP + uses: shivammathur/setup-php@v2 with: - php-version: '7.3' - extensions: intl, curl, mbstring, openssl, pdo, pdo_mysql, tokenizer + php-version: ${{ matrix.php-versions }} + extensions: curl, gd, intl, mbstring, openssl, pdo, pdo_mysql, tokenizer, zip - - name: Set environment + - name: Set Environment run: | set -e sed -i "s|^\(DB_HOST=\s*\).*$|\1127.0.0.1|" .env.testing @@ -37,25 +41,33 @@ jobs: printf "the complete .env.testing ...\n\n" cat .env.testing - - name: Composer install + - name: Composer Install run: | set -e - composer global require hirak/prestissimo - composer install --no-interaction --ansi --no-progress --no-suggest --optimize-autoloader + composer install --no-cache - - name: Migrate database + - name: Migrate Database run: set -e && php artisan migrate --env=testing - - name: Execute unit tests + - name: Seed Database + run: set -e && php artisan db:seed --env=testing + + - name: Vendor Publish + run: set -e && php artisan vendor:publish --all --force --env=testing + + - name: Optimize Stuffs + run: set -e && php artisan optimize --env=testing + + - name: Execute Unit Tests run: set -e && vendor/bin/codecept run unit - - name: Execute functional tests + - name: Execute Functional Tests run: set -e && vendor/bin/codecept run functional - - name: Execute trigger tests + - name: Execute Trigger Tests run: set -e && vendor/bin/codecept run trigger - - name: Persist test artifacts + - name: Persist Test Artifacts uses: actions/upload-artifact@v1 if: always() with: diff --git a/.gitignore b/.gitignore index 9248d96a3..b26a20012 100644 --- a/.gitignore +++ b/.gitignore @@ -1,26 +1,26 @@ +.env +.idea +.php_cs.cache +.vscode +.vagrant +/data /docker-compose-collection -/node_modules -/public/hot -/public/storage -/public/css -/public/js -/public/vendor -/public/themes -/public/fonts -/vendor -/.idea -/.vscode -/.vagrant Homestead.json Homestead.yaml -npm-debug.log -yarn-error.log -.env /ignorables/* -yarn.lock +/node_modules +npm-debug.log package-lock.json +/public/css +/public/fonts +/public/js +/public/hot +/public/storage +/public/themes +/public/vendor +/resources/lang/vendor +/storage/*.key +/storage/dcc-data/ +/vendor yarn.lock -.php_cs.cache -storage/*.key -/docker-compose-collection/ -/resources/themes/velocity/* \ No newline at end of file +yarn-error.log \ No newline at end of file diff --git a/CHANGELOG for v0.1.x.md b/CHANGELOG for v0.1.x.md index be4c3b3c1..b6bf5b30d 100755 --- a/CHANGELOG for v0.1.x.md +++ b/CHANGELOG for v0.1.x.md @@ -1,20 +1,22 @@ # CHANGELOG for v0.1.x -#### This changelog consists the bug & security fixes and new features being included in the releases listed below. +This changelog consists the bug & security fixes and new features being included in the releases listed below. ## **v0.1.9 (20th of December, 2019)** - *Release* -* #1875 [fixed] - Discount gets applied on cart if condition is "Visible Individually" is set to yes and product added in cart is not visible individually. +* #1942 [fixed] - When editing the cart rule, selected category is not checked. -* #1868 [fixed] - Getting exception on checkout if action Buy X Get Y free is selected in cart rule. +* #1939 [fixed] - Invalid coupon gets applied, if clicking on apply coupon multiple time, although there is no discount amount but its displaying message that coupon code applied successfully. -* #1838 [fixed] - Cart rule not working for condition sku(children only) and sku(parent only). +* #1938 [fixed] - multiple cart rules are getting applied by using only single coupon. -* #1835 [fixed] - Getting exception if condition value remains blank. +* #1935 [fixed] - Categories are not displaying if in condition Categories(children only) or Categories(Parent Only) is selected. -* #1831 [fixed] - Negative sign is not required in discount amount. +* #1931 [fixed] - Catalog rule not applying if in condition type"Any Condition is true" is selected, and some of the condition doesn't match the product. -* #1830 [fixed] - If Coupon type is selected as "No Coupon" then coupon code should not generate for that particular cart rule. +* #1929 [fixed] - Actual product amount and discounted amount both should display on product page for configurable product + +* #1928 [fixed] - Catalog rule should not apply if any of the condition doesn't match, if condition type"All Condition are true" * #1904 [fixed] - Existing tax should display as list on creating catalog rule if in condition "Tax Category" is selected. @@ -26,6 +28,10 @@ * #1882 [fixed] - If from Action "Apply on shipping " is selected as yes then the discounted amount is applying on both product and shipping charge. +* #1875 [fixed] - Discount gets applied on cart if condition is "Visible Individually" is set to yes and product added in cart is not visible individually. + +* #1868 [fixed] - Getting exception on checkout if action Buy X Get Y free is selected in cart rule. + * #1861 [fixed] - Getting exception on checkout if applying invalid coupon code and proceed for checkout. * #1857 [fixed] - Getting exception when creating cart rule with condition URL KEY(children only). @@ -36,49 +42,37 @@ * #1839 [fixed] - Getting exception on filtering cart rule through id. +* #1838 [fixed] - Cart rule not working for condition sku(children only) and sku(parent only). + * #1836 [fixed] - Back button on Edit cart rule page doesn't work. +* #1835 [fixed] - Getting exception if condition value remains blank. + * #1834 [fixed] - On editing any cart rule, its priority updates to 1. * #1833 [fixed] - Discount not applied if "Payment Method", "Shipping Method", "Shipping State" or "Shipping Country" is selected in condition. * #1832 [fixed] - Able to use coupon irrespective of the number given in "Uses per coupon" field. +* #1831 [fixed] - Negative sign is not required in discount amount. + +* #1830 [fixed] - If Coupon type is selected as "No Coupon" then coupon code should not generate for that particular cart rule. + * #1828 [fixed] - Updated changes are not saved on editing cart rule. * #1825 [fixed] - Not able to generate coupon code while creating cart rule. * #1823 [fixed] - Getting exception after clicking on developement. -* #1929 [fixed] - Actual product amount and discounted amount both should display on product page for configurable product - -* #1928 [fixed] - Catalog rule should not apply if any of the condition doesn't match, if condition type"All Condition are true" - -* #1931 [fixed] - Catalog rule not applying if in condition type"Any Condition is true" is selected, and some of the condition doesn't match the product. - -* #1935 [fixed] - Categories are not displaying if in condition Categories(children only) or Categories(Parent Only) is selected. - -* #1938 [fixed] - multiple cart rules are getting applied by using only single coupon. - -* #1939 [fixed] - Invalid coupon gets applied, if clicking on apply coupon multiple time, although there is no discount amount but its displaying message that coupon code applied successfully. - -* #1942 [fixed] - When editing the cart rule, selected category is not checked. - - - ## **v0.1.8 (4th of October, 2019)** - *Release* * [feature] - Refund is added for orders. -* #1338 [fixed] - Fixed the complete header ,header should not scroll on scrolling the page. - -* #1442 [fixed] - Customer should get an email after registration. - -* #1490 [fixed] - Getting Incorrect paid amount and due amount if order contains more than one product. +* #1504 [fixed] - Getting Exception when applying filter in Invoices grid through Invoice Date. * #1492 [fixed] - Not showing orderid with prefix and suffix in Refund section. -* #1504 [fixed] - Getting Exception when applying filter in Invoices grid through Invoice Date. +* #1490 [fixed] - Getting Incorrect paid amount and due amount if order contains more than one product. * #1489 [fixed] - Quantity of Product doesn't get updated after creating a refund. @@ -90,9 +84,13 @@ * #1461 [fixed] - Invoice number length should be number of zeros that appears before invoice id. +* #1460 [fixed] - Getting error on deleting Newsletter. + * #1447 [fixed] - Order ID is not matching after printing invoice. -* #1460 [fixed] - Getting error on deleting Newsletter. +* #1442 [fixed] - Customer should get an email after registration. + +* #1338 [fixed] - Fixed the complete header ,header should not scroll on scrolling the page. * #1172 [fixed] - Default shipping and payment should be selected, currently no shipping method and payment method is selected by default. @@ -114,97 +112,97 @@ * [enhancement] - product_flat will is now scalable according to choice of attributes to be used in it. -* #1258 [fixed] - If payment is done through paypal then invoice should generate automatically and status of Order should be processing. - -* #1320 [fixed] - Catalog rule is not working according to selected attributes, if category is not selected. - -* #1260 [fixed] - Getting broken image link in email. - * #1434 [fixed] - Incorrect discount amount in case of multicurrency. -* #1288 [fixed] - Getting exception while creating cart rules if any of the dropdown field left blank. - -* #1381 [fixed] - Filter is not working properly for action type column in cart rule. - -* #1348 [fixed] - Showing incorrect grandtotal in invoice section of admin, if order is placed in currency other than base currency. - -* #1259 [fixed] - Getting exception if using same sku for variants.. - -* #1380 [fixed] - Getting error after refreshing the page. - -* #1256 [fixed] - Discounted amount is not displaying in invoice and invoice pdf at both customer end and admin end. - -* #1411 [fixed] - Getting exception on updating cart rule. - -* #1284 [fixed] - Updated price for variant is not reflected on store. - -* #1286 [fixed] - Incorrect discount is showing in cart. - -* #1382 [fixed] - In case of "Adjust whole cart to percent" discount amount is getting calculated according to price of one product. - -* #1415 [fixed] - Wrong discount applies if Action "Adjust whole cart to percent" is selected. - * #1417 [fixed] - Discount amount is showing in "Quantity" column. -* #973 [fixed] - Edit Slider, get wrong with: An invalid form control with name='image[image_0]' is not focusable. +* #1415 [fixed] - Wrong discount applies if Action "Adjust whole cart to percent" is selected. -* #1263 [fixed] - For forgot password Submit button should get disabled if user has already clicked on submit button. - -* #1379 [fixed] - Cart rule not working in case of non-coupon if any condition is given. - -* #1239 [fixed] - Filterable attributes should not display in layered navigation if there are no product in that particular category. - -* #1351 [fixed] - Getting exception when assigning the root category to another category. - -* #1372 [fixed] - Getting exception if while updating cart rule , if any option is selected from "How to Choose Products?". - -* #1375 [fixed] - Wrong discount applied on cart in case of fixed discount. - -* #1226 [fixed] - Product variation that has been ordered should display in customer order section in case of configurable product. +* #1411 [fixed] - Getting exception on updating cart rule. * #1391 [fixed] - By default attribute condition gets saved as 1 in db, because of which cart rule not getting applied. -* #1277 [fixed] - Getting exception on creating cart rules. +* #1382 [fixed] - In case of "Adjust whole cart to percent" discount amount is getting calculated according to price of one product. + +* #1381 [fixed] - Filter is not working properly for action type column in cart rule. + +* #1380 [fixed] - Getting error after refreshing the page. + +* #1379 [fixed] - Cart rule not working in case of non-coupon if any condition is given. + +* #1375 [fixed] - Wrong discount applied on cart in case of fixed discount. + +* #1372 [fixed] - Getting exception if while updating cart rule , if any option is selected from "How to Choose Products?". + +* #1351 [fixed] - Getting exception when assigning the root category to another category. + +* #1348 [fixed] - Showing incorrect grandtotal in invoice section of admin, if order is placed in currency other than base currency. * #1334 [fixed] - On editing catalog rule data gets removed from Discount Amount field. -* #778 [fixed] - Error when add item to cart. - -* #1253 [fixed] - Selected Channel for products get deselected after saving the product. +* #1320 [fixed] - Catalog rule is not working according to selected attributes, if category is not selected. * #1319 [fixed] - Getting exception when click on Apply rules if conditions are left empty while creating catalog rule. * #1295 [fixed] - Getting exception on changing the locale from cms page. -* #1233 [fixed] - Got exception on front-end when first time changes the locale ,the changed locale have rtl direction. +* #1288 [fixed] - Getting exception while creating cart rules if any of the dropdown field left blank. + +* #1286 [fixed] - Incorrect discount is showing in cart. + +* #1284 [fixed] - Updated price for variant is not reflected on store. + +* #1277 [fixed] - Getting exception on creating cart rules. + +* #1263 [fixed] - For forgot password Submit button should get disabled if user has already clicked on submit button. + +* #1260 [fixed] - Getting broken image link in email. + +* #1259 [fixed] - Getting exception if using same sku for variants.. + +* #1258 [fixed] - If payment is done through paypal then invoice should generate automatically and status of Order should be processing. + +* #1256 [fixed] - Discounted amount is not displaying in invoice and invoice pdf at both customer end and admin end. + +* #1253 [fixed] - Selected Channel for products get deselected after saving the product. + +* #1239 [fixed] - Filterable attributes should not display in layered navigation if there are no product in that particular category. * #1235 [fixed] - Attributes are not visible in category page to select as filterable attribute if attributes name are not provided in particular locales. -* #1177 [fixed] - Getting exception when trying to recover password. +* #1234 [fixed] - After selecting direction to filter locale acc to direction no other field appears to select format. -* #1228 [fixed] - Getting issue when entering direct url for customer account profile. +* #1233 [fixed] - Got exception on front-end when first time changes the locale ,the changed locale have rtl direction. * #1229 [fixed] - Issue with currency in customer order section, currency code doesn't get converted at orders page of customer. -* #1234 [fixed] - After selecting direction to filter locale acc to direction no other field appears to select format. +* #1228 [fixed] - Getting issue when entering direct url for customer account profile. -* #1015 [fixed] - Adjust Paginator Number of Elements. - -* #968 [fixed] - sorting is not working (price). - -* #1190 [fixed] - After printing invoice at customer end, price is not getting change according to currency in invoice. - -* #1209 [fixed] - There is an image issue while ordering any variant of configurable product. +* #1226 [fixed] - Product variation that has been ordered should display in customer order section in case of configurable product. * #1217 [fixed] - Layered navigation for price is not working, when click on bar it shifts to rightmost end.Getting this issue in case of configurable product only. * #1216 [fixed] - Price filter of layered navigation not working properly in case of Multi Currency. +* #1209 [fixed] - There is an image issue while ordering any variant of configurable product. + +* #1190 [fixed] - After printing invoice at customer end, price is not getting change according to currency in invoice. + +* #1177 [fixed] - Getting exception when trying to recover password. + * #1130 [fixed] - If "does not contain" is used in case of Shipping method, then discount amount get implemented before selecting any shipping method. * #1129 [fixed] - Discount not getting applied if "does not contain" condition is used from Actions for Payment Methods. -## **v0.1.6(28th of June, 2019)** - *Release* +* #1015 [fixed] - Adjust Paginator Number of Elements. + +* #973 [fixed] - Edit Slider, get wrong with: An invalid form control with name='image[image_0]' is not focusable. + +* #968 [fixed] - sorting is not working (price). + +* #778 [fixed] - Error when add item to cart. + +## **v0.1.6 (28th of June, 2019)** - *Release* * [feature] - Cart rules for providing discount with coupons and without coupons. @@ -246,147 +244,27 @@ * [optimization] - Massive performance improvements in page load from last stable release of v0.1.5. -* #636 [fixed] - Getting exception in shipment grid. +* #1131 [fixed] - If "does not contain" is used in case of Shipping city, then discount amount get implemented before selecting any address. -* #638 [fixed] - Colors are not available in swatch on selecting Swatch Type as "Color Swatch". +* #1127 [fixed] - Getting wrong grandtotal if in cart rule shipping is selected as free. -* #639 [fixed] - Broken link of image, on edit page of attribute in case of Swatch Type "Image" when editing first time. +* #1114 [fixed] - Unable to search cart rule by name. -* #642 [fixed] - Getting exception on search in Products, Categories, Shipments & Product Reviews datagrids. +* #1113 [fixed] - Cart rule is not working for guest user. -* #654 [fixed] - Getting Exception while adding product images by gui installer. +* #1112 [fixed] - Provide an option to delete the note added for a customer. -* #646 [fixed] - Warning: array_combine() expects parameter 1 to be array, null given ( install.php on line 32 ). +* #1103 [fixed] - If entered coupon is incorrect then after clicking on Apply coupon button once the button should get disabled until the coupon code changes. -* #647 [fixed] - Special price not working. +* #1102 [fixed] - If in condition percentage of product is selected , then also fixed amount discount is applied. -* #655 [fixed] - Not able to create category with images, category doesn't get save if image is used. +* #1097 [fixed] - Coupon get applied if only one product is added in cart and from action it is saved as buy atleast 2. -* #656 [fixed] - Getting checkout page blank when product is added in cart first and then proceed for checkout.Getting this issue in case of logged-in customer.Getting same issue in case of Buy-now also. +* #1096 [fixed] - If any discount is already applied on cart and customer uses his coupon to get discount then in this case coupon discount should be applied. -* #657 [fixed] - Not able to export order.Not getting any response after clicking on Export.Getting this issue for all export functionality +* #1095 [fixed] - If maximum quantity allowed to discount is selected as 2 then on both product discount should be applied. -* #666 [enhancement] - Create possibility of choose the qty os address line. - -* #671 [fixed] - Having these errors Undefined variable: key/value. - -* #730 [fixed] - Add a word limitation for Category name so that after that limit category name should display in different line. - -* #729 [fixed] - Price Slider overlap with category menu. - -* #728 [fixed] - If multiple products are added in cart and we update the quantity of product which is not available then in this case its not showing a message that request quantity is not available, it shows success message that products in cart is updated. - -* #727 [fixed] - Quantity of Product doesn't get updated at product page after generating shipment. - -* #720 [fixed] - Case issue HomeController.php. - -* #718 [fixed] - If user with custom role doesn't have access of Products and if he click on product link given in dashboard then getting exception.It should display unauthorised access message. - -* #717 [fixed] - Url is not working "Add to Cart" in drop shipping manager. - -* #713 [fixed] - Getting exception on deleting default channel. - -* #712 [fixed] - Correct the filter option in Invoice grid. - -* #710 [fixed] - Getting exception when applying filter on Product according to Status. - -* #709 [fixed] - Getting exception when applying filter according to Order Date of Order grid of Admin. - -* #707 [fixed] - If in display mode for categories "Only Product" is selected then description should not display on front-end and if Only "Description" is selected than product should not display for category. - -* #705 [fixed] - For 3 level menu option if access is given for only first menu and third menu , then getting unauthorized access. - -* #699 [fixed] - Active category class missing - -* #765 [fixed] - Getting issue in mass deletion for the configurable products if we have saved the products but variation and name of products has not saved.Getting this issue when App_Debug mode is false. - -* #764 [fixed] - Make "Sliders" and "Image" field as required.While creating slider if image is not uploaded then slider is not created and its not showing that this field is required validation message. - -* #763 [fixed] - Add a validation in tax rate that it should not be negative. - -* #762 [fixed] - In Order Section of Customer Account no column is available in filter dropdown. - -* #761 [fixed] - Issue in creating products if special characters are used in sku field.On add Product page if we use special character then it will be saved but when we click on Save Product button it gives validation error message that "The sku must be valid slug." admin. - -* #760 [fixed] - Not able to add product to Wishlist from product page. - -* #759 [fixed] - Text for Add to Cart button is not properly visible on product page for locale pt_BR. - -* #757 [fixed] - Product getting save if price and weight is negative in variants of configurable product. - -* #755 [fixed] - When trying to change display mode for product to list view when locale is "arabic" , it changes to default locale. - -* #753 [fixed] - While creating attribute of type swatch, admin name and name according to locale is showing as required but get saved if field is left as blank, and while creating product this attribute field is blank. - -* #752 [fixed] - On creating custom theme for shop it was also affecting admin panel's frontend. - -* #750 [fixed] - Cross site request forgery. - -* #749 [fixed] - Broken access control. - -* #742 [fixed] - Getting exception when we change locale from Search result page. - -* #741 [fixed] - Trying to get property 'permission_type' of non-object. - -* #825 [fixed] - unable to update ( is_filterable ) in attributes. - -* #818 [fixed] - Email should sent to the respective inventory from which shipment has been created. - -* #817 [fixed] - Admin should receive an email when an order is placed. - -* #815 [fixed] - Issue in Attribute while creating configurable product. - -* #814 [fixed] - Implement sort order feature for payment methods, so that payment method should display on front-end according to sort-order. - -* #783 [fixed] - Image display issue of product on front-end when installation is done through GUI Installer. - -* #771 [fixed] - Getting exception when login with custom role. - -* #767 [fixed] - After applying filter of status , the result display in boolean for Active/True and Inactive/False. - -* #879 [fixed] - Getting validation error message for locale while editing attribute.Attribute value is required for all locale. - -* #867 [fixed] - Getting exception if user create shipment for product which has been deleted from catalog. - -* #842 [fixed] - Not able to export. This functionality is not working everywhere, where export is used. - -* #841 [fixed] - Layout issue on 404 Page. - -* #835 [fixed] - Parent Products show instock when all children have quantity 0. - -* #939 [fixed] - Not able to save price in decimal for configurable products. - -* #932 [fixed] - Getting incorrect price of product in case of configurable product if custom attribute of select type is used. - -* #923 [fixed] - Required validation is not working for Lines in a Street Address, and add 1 as default line for address field. - -* #917 [fixed] - Attribute name should display with attribute value. - -* #916 [fixed] - SQLSTATE[42S22]: Column not found: 1054 Unknown column 'phone'. - -* #897 [fixed] - Product get saved without image, if used image is large in size.It should throw an error message. - -* #896 [fixed] - getVariantMinPrice does not look at special_price. - -* #894 [fixed] - Storage link command is missing when installing framework through installer. - -* #890 [fixed] - An error message should show if uploaded mage size is large, while saving the category. - -* #1003 [fixed] - Getting exception if on editing any cart rule we select " Use Coupon" as Yes. - -* #1001 [fixed] - Getting error while placing an order. - -* #997 [fixed] - Change the validation for description. - -* #995 [fixed] - [default] en field of labels section disappear after entering data in "Global Label" field. - -* #994 [fixed] - Getting exception while creating cart rules. - -* #993 [fixed] - Rule Name should be alphanumeric. - -* #957 [fixed] - Typo in event fire. - -* #949 [fixed] - Refresh order summary on every checkout step. +* #1080 [fixed] - Customer should be logged out if admin blocked the user, and a message should display "Your account has been blocked by admin". * #1075 [fixed] - Validation error message is not showing for Customer Group. @@ -418,30 +296,149 @@ * #1005 [fixed] - Cart rule not working correctly with coupon code.Fixed discount of amount 10 is created but after applying amount need to pay by customer is 10. -* #1131 [fixed] - If "does not contain" is used in case of Shipping city, then discount amount get implemented before selecting any address. +* #1003 [fixed] - Getting exception if on editing any cart rule we select " Use Coupon" as Yes. -* #1127 [fixed] - Getting wrong grandtotal if in cart rule shipping is selected as free. +* #1001 [fixed] - Getting error while placing an order. -* #1113 [fixed] - Cart rule is not working for guest user. +* #997 [fixed] - Change the validation for description. -* #1114 [fixed] - Unable to search cart rule by name. +* #995 [fixed] - [default] en field of labels section disappear after entering data in "Global Label" field. -* #1112 [fixed] - Provide an option to delete the note added for a customer. +* #994 [fixed] - Getting exception while creating cart rules. -* #1103 [fixed] - If entered coupon is incorrect then after clicking on Apply coupon button once the button should get disabled until the coupon code changes. +* #993 [fixed] - Rule Name should be alphanumeric. -* #1102 [fixed] - If in condition percentage of product is selected , then also fixed amount discount is applied. +* #957 [fixed] - Typo in event fire. -* #1097 [fixed] - Coupon get applied if only one product is added in cart and from action it is saved as buy atleast 2. +* #949 [fixed] - Refresh order summary on every checkout step. -* #1096 [fixed] - If any discount is already applied on cart and customer uses his coupon to get discount then in this case coupon discount should be applied. +* #939 [fixed] - Not able to save price in decimal for configurable products. -* #1095 [fixed] - If maximum quantity allowed to discount is selected as 2 then on both product discount should be applied. +* #932 [fixed] - Getting incorrect price of product in case of configurable product if custom attribute of select type is used. -* #1080 [fixed] - Customer should be logged out if admin blocked the user, and a message should display "Your account has been blocked by admin". +* #923 [fixed] - Required validation is not working for Lines in a Street Address, and add 1 as default line for address field. +* #917 [fixed] - Attribute name should display with attribute value. -## **v0.1.5(15th of March, 2019)** - *Release* +* #916 [fixed] - SQLSTATE[42S22]: Column not found: 1054 Unknown column 'phone'. + +* #897 [fixed] - Product get saved without image, if used image is large in size.It should throw an error message. + +* #896 [fixed] - getVariantMinPrice does not look at special_price. + +* #894 [fixed] - Storage link command is missing when installing framework through installer. + +* #890 [fixed] - An error message should show if uploaded mage size is large, while saving the category. + +* #879 [fixed] - Getting validation error message for locale while editing attribute.Attribute value is required for all locale. + +* #867 [fixed] - Getting exception if user create shipment for product which has been deleted from catalog. + +* #842 [fixed] - Not able to export. This functionality is not working everywhere, where export is used. + +* #841 [fixed] - Layout issue on 404 Page. + +* #835 [fixed] - Parent Products show instock when all children have quantity 0. + +* #825 [fixed] - unable to update ( is_filterable ) in attributes. + +* #818 [fixed] - Email should sent to the respective inventory from which shipment has been created. + +* #817 [fixed] - Admin should receive an email when an order is placed. + +* #815 [fixed] - Issue in Attribute while creating configurable product. + +* #814 [fixed] - Implement sort order feature for payment methods, so that payment method should display on front-end according to sort-order. + +* #783 [fixed] - Image display issue of product on front-end when installation is done through GUI Installer. + +* #771 [fixed] - Getting exception when login with custom role. + +* #767 [fixed] - After applying filter of status , the result display in boolean for Active/True and Inactive/False. + +* #765 [fixed] - Getting issue in mass deletion for the configurable products if we have saved the products but variation and name of products has not saved.Getting this issue when App_Debug mode is false. + +* #764 [fixed] - Make "Sliders" and "Image" field as required.While creating slider if image is not uploaded then slider is not created and its not showing that this field is required validation message. + +* #763 [fixed] - Add a validation in tax rate that it should not be negative. + +* #762 [fixed] - In Order Section of Customer Account no column is available in filter dropdown. + +* #761 [fixed] - Issue in creating products if special characters are used in sku field.On add Product page if we use special character then it will be saved but when we click on Save Product button it gives validation error message that "The sku must be valid slug." admin. + +* #760 [fixed] - Not able to add product to Wishlist from product page. + +* #759 [fixed] - Text for Add to Cart button is not properly visible on product page for locale pt_BR. + +* #757 [fixed] - Product getting save if price and weight is negative in variants of configurable product. + +* #755 [fixed] - When trying to change display mode for product to list view when locale is "arabic" , it changes to default locale. + +* #753 [fixed] - While creating attribute of type swatch, admin name and name according to locale is showing as required but get saved if field is left as blank, and while creating product this attribute field is blank. + +* #752 [fixed] - On creating custom theme for shop it was also affecting admin panel's frontend. + +* #750 [fixed] - Cross site request forgery. + +* #749 [fixed] - Broken access control. + +* #742 [fixed] - Getting exception when we change locale from Search result page. + +* #741 [fixed] - Trying to get property 'permission_type' of non-object. + +* #730 [fixed] - Add a word limitation for Category name so that after that limit category name should display in different line. + +* #729 [fixed] - Price Slider overlap with category menu. + +* #728 [fixed] - If multiple products are added in cart and we update the quantity of product which is not available then in this case its not showing a message that request quantity is not available, it shows success message that products in cart is updated. + +* #727 [fixed] - Quantity of Product doesn't get updated at product page after generating shipment. + +* #720 [fixed] - Case issue HomeController.php. + +* #718 [fixed] - If user with custom role doesn't have access of Products and if he click on product link given in dashboard then getting exception.It should display unauthorised access message. + +* #717 [fixed] - Url is not working "Add to Cart" in drop shipping manager. + +* #713 [fixed] - Getting exception on deleting default channel. + +* #712 [fixed] - Correct the filter option in Invoice grid. + +* #710 [fixed] - Getting exception when applying filter on Product according to Status. + +* #709 [fixed] - Getting exception when applying filter according to Order Date of Order grid of Admin. + +* #707 [fixed] - If in display mode for categories "Only Product" is selected then description should not display on front-end and if Only "Description" is selected than product should not display for category. + +* #705 [fixed] - For 3 level menu option if access is given for only first menu and third menu , then getting unauthorized access. + +* #699 [fixed] - Active category class missing + +* #671 [fixed] - Having these errors Undefined variable: key/value. + +* #666 [enhancement] - Create possibility of choose the qty os address line. + +* #657 [fixed] - Not able to export order.Not getting any response after clicking on Export.Getting this issue for all export functionality + +* #656 [fixed] - Getting checkout page blank when product is added in cart first and then proceed for checkout.Getting this issue in case of logged-in customer.Getting same issue in case of Buy-now also. + +* #655 [fixed] - Not able to create category with images, category doesn't get save if image is used. + +* #654 [fixed] - Getting Exception while adding product images by gui installer. + +* #647 [fixed] - Special price not working. + +* #646 [fixed] - Warning: array_combine() expects parameter 1 to be array, null given ( install.php on line 32 ). + +* #642 [fixed] - Getting exception on search in Products, Categories, Shipments & Product Reviews datagrids. + +* #639 [fixed] - Broken link of image, on edit page of attribute in case of Swatch Type "Image" when editing first time. + +* #638 [fixed] - Colors are not available in swatch on selecting Swatch Type as "Color Swatch". + +* #636 [fixed] - Getting exception in shipment grid. + +## **v0.1.5 (15th of March, 2019)** - *Release* * [feature] - Category display mode. @@ -453,10 +450,6 @@ * [feature] - Added translations for Arabic and Brazilian languages(thanks to @cgartner-redstage). -* #633 [fixed] - Fixed database custom port issue in installer issue (thanks to @abdulhamid-alattar) - -* #652 [fixed] - Removed black bar in admin panel. - * #676 [fixed] - Can't filter by ID. * #671 [fixed] - Having these errors Undefined variable: key/value. @@ -465,14 +458,18 @@ * #664 [fixed] - CSS issues -* #646 [fixed] - Warning: array_combine() expects parameter 1 to be array, null given ( install.php on line 32 ) +* #652 [fixed] - Removed black bar in admin panel. -* #639 [fixed] - Broken link of image, on edit page of attribute in case of Swatch Type "Image" when editing first time. +* #646 [fixed] - Warning: array_combine() expects parameter 1 to be array, null given ( install.php on line 32 ) * #642 [fixed] - Getting exception on search in Products, Categories, Shipments & Product Reviews datagrids. +* #639 [fixed] - Broken link of image, on edit page of attribute in case of Swatch Type "Image" when editing first time. + * #636 [fixed] - Getting exception in shipment grid. +* #633 [fixed] - Fixed database custom port issue in installer issue (thanks to @abdulhamid-alattar) + * #621 [Added] - Add a column in product grid to identify the attribute family used for creating that product. * #620 [fixed] - "Enter Key" is not working while searching the product. @@ -525,22 +522,21 @@ * #551 [Fixed] - Able to delete root category. -* #545 [Fixed] - Installer doesn't launch admin panel of framework. - * #546 [Fixed] - Getting Exception while uploading category image after installing project using installer. +* #545 [Fixed] - Installer doesn't launch admin panel of framework. + * #534 [Fixed] - Product is displaying as out of stock if default Inventory is zero, while other Inventory sources have products. * #533 [Fixed] - Displaying incorrect number of product on front-end. -## **v0.1.4(4th of Febuary, 2019)** - *Release* +## **v0.1.4 (4th of Febuary, 2019)** - *Release* * [fixed] - Customer account menu issue fixed. * [fixed] - Channel's homepage content updated. - -## **v0.1.4-BETA4(4th of Febuary, 2019)** - *Release* +## **v0.1.4-BETA4 (4th of Febuary, 2019)** - *Release* * [feature] - Product flat, a product subsystem for faster product search, filter & sort on the storefront. @@ -548,67 +544,65 @@ * [feature] - Faster and efficiently refactored datagrids for showing listing data. -* #191 [fixed] - Add a column Shipped to in Order Grid ,to display the name for whom order has been shipped. - -* #368 [fixed] - If products are added in shopping cart and those product get deleted from admin section then it still displays in cart. - -* #353 [fixed] - Getting exception in deleting currency. - -* #143 [fixed] - If user login from checkout page, then it should redirect to checkout page. - -* #402 [fixed] - Change the validation message on moving product from wish-list to cart if product added in wish-list is out of stock. - -* #530 [fixed] - Unable to delete any of the created attributes.Getting validation message that attribute is used in configurable product while attribute is not used for creating any product. - -* #514 [fixed] - Getting Exception on changing the status of Product(On mass update). - * #532 [fixed] - Pagination should not display if there is no product on other page.If 9 products are selected to show on a single page then until the limit reach pagination should not occur. -* #506 [fixed] - While Installing the framework through Installer if at any stage user click on back button and then click on continue to install, then in this case unable to install. - -* #513 [fixed] - Getting Exception in deleting categories. - * #531 [fixed] - Do not use short form of any words for notification. +* #530 [fixed] - Unable to delete any of the created attributes.Getting validation message that attribute is used in configurable product while attribute is not used for creating any product. + * #524 [fixed] - Getting Exception when login with user having custom role(ACL issue). -* #453 [fixed] - Installation of Master Branch. - -* #426 [fixed] - php artisan down does not work. - -* #396 [fixed] - Layout issue on changing locale. - -* #334 [fixed] - My Account Grid displays blank after the bagisto 0.1.2 installation. - -* #457 [fixed] - Admin add product "Undefined variable: configurableFamily". - -* #508 [fixed] - Correct the required php version in installer. - -* #519 [fixed] - Status column of Review remains blank if review is in Pending state. - * #523 [fixed] - Status column of review page remains blank if Status is change to disapprove(Mass update). +* #519 [fixed] - Status column of Review remains blank if review is in Pending state. + +* #514 [fixed] - Getting Exception on changing the status of Product(On mass update). + +* #513 [fixed] - Getting Exception in deleting categories. + +* #508 [fixed] - Correct the required php version in installer. + +* #506 [fixed] - While Installing the framework through Installer if at any stage user click on back button and then click on continue to install, then in this case unable to install. + +* #457 [fixed] - Admin add product "Undefined variable: configurableFamily". + +* #453 [fixed] - Installation of Master Branch. + * #438 [fixed] - Simple Select Attribute Issue -* #381 [fixed] - On front-end currency symbol display only for Indian Rupee and USD. If code is selected other than these two in currency then code displays before price. +* #426 [fixed] - php artisan down does not work. -* #301 [fixed] - Only customer that are on first page get exported. +* #402 [fixed] - Change the validation message on moving product from wish-list to cart if product added in wish-list is out of stock. * #399 [fixed] - Accepting future date of birth for customer. -* #369 [fixed] - Displaying incorrect response message on updating the status of products. +* #396 [fixed] - Layout issue on changing locale. -* #363 [fixed] - Unable to delete last tax rate. - -* #347 [fixed] - Pricing Issue. +* #381 [fixed] - On front-end currency symbol display only for Indian Rupee and USD. If code is selected other than these two in currency then code displays before price. * #378 [fixed] - Images that are applied on Category doesn't display in Edit Category Page. +* #369 [fixed] - Displaying incorrect response message on updating the status of products. + +* #368 [fixed] - If products are added in shopping cart and those product get deleted from admin section then it still displays in cart. + +* #363 [fixed] - Unable to delete last tax rate. + +* #353 [fixed] - Getting exception in deleting currency. + +* #347 [fixed] - Pricing Issue. + +* #334 [fixed] - My Account Grid displays blank after the bagisto 0.1.2 installation. + * #304 [fixed] - If a current user want to delete his account then in this case a password verification should be required before deleting the user. -#### This changelog consists the bug & security fixes and new features being included in the releases listed below. +* #301 [fixed] - Only customer that are on first page get exported. -## **v0.1.3(19th of December, 2018)** - *Release* +* #191 [fixed] - Add a column Shipped to in Order Grid ,to display the name for whom order has been shipped. + +* #143 [fixed] - If user login from checkout page, then it should redirect to checkout page. + +## **v0.1.3 (20th of December, 2018)** - *Release* * [feature] Mass selection features had been implemented in datagrid for deletion and mass updation purposes @@ -620,29 +614,55 @@ * [fixes] Optimized exception handler (thanks to @AliN11) -* #271 [fixed] Provide little space between line and text in review section(frontend) +* #332 [fixed] Unable to change the status of user -* #165 [fixed] If a Product is selected as disabled at time of creation,then also it is visible at store front +* #326 [enhanced] Only customer that are on first page get exported -* #187 [enhanced] We can add column "Group Name" instead of Group Id and also add this column in filter in Customers Grid +* #324 [enhanced] Change the Button title "Create Tax Rate" to "Save Tax Rate" on Tax Rate page + +* #315 [fixed] Getting exception if time taken to subscribe for newsletter increases.Add email validation in newsletter field + +* #314 [fixed] No success message after deleting the News Letter Subscribers + +* #308 [fixed] Accepting the future date of birth in Customer Grid + +* #307 [fixed] Incorrect success message after updating the News Letter Subscribers + +* #306 [enhanced] Customers display randomly irrespective of their id + +* #305 [fixed] Displaying incorrect role name in account + +* #301 [fixed] Only customer that are on first page get exported + +* #298 [enhanced] Provide an Option to delete all reviews in Review section of a customer + +* #295 [fixed] Unable to change gender of customers from Edit Customer Page + +* #287 [fixed] No Status for Order, in customer order grid if Order is placed using "Paypal Standard Payment" method + +* #286 [fixed] Unable to update attribute * #285 [enahanced] Add export functionality for Orders, Invoice and Shipment +* #284 [fixed] Issue with price field.Accepting string also, and if space is provided between two number(5 4) than the price of product is displaying as 5 on frontend + * #283 [fixed] Unable to copy text from any grid -* #155 [enhanced] If a customer writes any review for product then that review is not visible in review section of customer profile until it is approved by admin +* #279 [fixed] If Inventory source is not selected as active then also after saving it, its status changes to Active -* #226 [fixed] Correct the spelling of "expensive" in Sort By +* #278 [fixed] Images that are applied on Category doesn't display in Edit Category Page -* #199 [enhanced] Add button and filter dropdown should be aligned.Changes required in every grid +* #277 [fixed] No email and number validation in Inventory Source Grid -* #204 [enhanced] A pop-up confirmation should display before deleting an address +* #276 [fixed] Description started from centre in Categories and Tax Category * #275 [enhanced] Recent Orders, Shipment and Invoice should display first in grid -* #262 [fixed] System attributes are also getting deleted +* #273 [fixed] Add a validation on price field that it should be numeric on Edit Product Page -* #260 [fixed] Layout issue in Order Status +* #272 [fixed] Getting Exception when click on Save Invoice + +* #271 [fixed] Provide little space between line and text in review section(frontend) * #269 [fixed] Weight of Product is displaying in negative @@ -650,71 +670,43 @@ * #267 [enhanced] Add Pagination for search page on frontend +* #264 [enhanced] Provide mass delete and mass update option in product grid + +* #263 [enhanced] Filter for visible in menu is not working in Category grid. + +* #262 [fixed] System attributes are also getting deleted + +* #260 [fixed] Layout issue in Order Status + * #238 [enhanced] Provide a mass selection option to approve a review -* #182 [fixed] Layout issue on Add Exchange Rate page - -* #279 [fixed] If Inventory source is not selected as active then also after saving it, its status changes to Active - -* #213 [fixed] View all link is not required on Rating and Review page - -* #276 [fixed] Description started from centre in Categories and Tax Category - -* #277 [fixed] No email and number validation in Inventory Source Grid - -* #183 [enhanced] In Target Currency dropdown , currencies for which rate has already been set should not display in dropdown - -* #128 [enhanced] Calender icon should also be clickable,and on click calender should display - -* #272 [fixed] Getting Exception when click on Save Invoice - -* #273 [fixed] Add a validation on price field that it should be numeric on Edit Product Page - * #228 [enhanced] bagisto icon should be clickable and by clicking on it, it should redirect to dashboard -* #287 [fixed] No Status for Order, in customer order grid if Order is placed using "Paypal Standard Payment" method +* #226 [fixed] Correct the spelling of "expensive" in Sort By -* #284 [fixed] Issue with price field.Accepting string also, and if space is provided between two number(5 4) than the price of product is displaying as 5 on frontend - -* #264 [enhanced] Provide mass delete and mass update option in product grid +* #213 [fixed] View all link is not required on Rating and Review page * #209 [enhanced] Add filter according to date in order grid +* #204 [enhanced] A pop-up confirmation should display before deleting an address + +* #199 [enhanced] Add button and filter dropdown should be aligned.Changes required in every grid + * #190 [fixed] Add a default group General in "Customer Group" grid and by default customer should lay in this group -* #307 [fixed] Incorrect success message after updating the News Letter Subscribers +* #187 [enhanced] We can add column "Group Name" instead of Group Id and also add this column in filter in Customers Grid -* #306 [enhanced] Customers display randomly irrespective of their id +* #183 [enhanced] In Target Currency dropdown , currencies for which rate has already been set should not display in dropdown -* #263 [enhanced] Filter for visible in menu is not working in Category grid. #263 -Opened in bagisto/bagisto +* #182 [fixed] Layout issue on Add Exchange Rate page -* #315 [fixed] Getting exception if time taken to subscribe for newsletter increases.Add email validation in newsletter field +* #165 [fixed] If a Product is selected as disabled at time of creation,then also it is visible at store front -* #295 [fixed] Unable to change gender of customers from Edit Customer Page +* #155 [enhanced] If a customer writes any review for product then that review is not visible in review section of customer profile until it is approved by admin -* #314 [fixed] No success message after deleting the News Letter Subscribers +* #128 [enhanced] Calender icon should also be clickable,and on click calender should display -* #298 [enhanced] Provide an Option to delete all reviews in Review section of a customer - -* #308 [fixed] Accepting the future date of birth in Customer Grid - -* #305 [fixed] Displaying incorrect role name in account - -* #286 [fixed] Unable to update attribute - -* #278 [fixed] Images that are applied on Category doesn't display in Edit Category Page - -* #324 [enhanced] Change the Button title "Create Tax Rate" to "Save Tax Rate" on Tax Rate page - -* #332 [fixed] Unable to change the status of user - -* #301 [fixed] Only customer that are on first page get exported - -* #326 [enhanced] Only customer that are on first page get exported - - -## **v0.1.2(30th of November, 2018)** - *Release* +## **v0.1.2 (30th of November, 2018)** - *Release* * [feature] Paypal integration for online payments @@ -724,67 +716,19 @@ Opened in bagisto/bagisto * [feature] News letter grid for Admin -* #185 - [fixed] Search not working in responsive mode - -* #187 - [fixed] We can add column "Group Name" instead of Group Id and also add this column in filter in Customers Grid - * #247 - [fixed] Displaying wrong number of products and sales in category, on dashboard -* #207 - [fixed] Two button are not required to save address - -* #119 - [fixed] Set value in the login form fields(on Demo) - * #245 - [fixed] Add Sales and Customers also in Custom Permission option of Access Control -* #126 - [fixed] Add asterisk symbol on SKU field +* #244 - [fixed] Getting exception when applying sorting on Tax Rate -* #224 - [fixed] Status column in Invoice remains blank - -* #192 - [fixed] Not able to checkout with different shipping address - -* #188 - [fixed] Unable to delete Customer Group - -* #151 - [fixed] Description and Short description field are throwing validation error message even if description is written - -* #162 - [fixed] No response when click on "Add to Cart" for configurable product on home page and category page - -* #180 - [fixed] Not accepting the code for Currency if it is already used in locales - -* #121 - [fixed] buy now button is not working on index page for some products - -* #134 - [fixed] Unable to login with the user account that is created in user grid with custom access - -* #154 - [fixed] While creating channel Description field,Home Page Content and footer _content is required, but it doesn't throw any validation error if we leave that field blank - -* #146 - [fixed] Tax is not added on product at checkout - -* #161 - [fixed] Inappropriate validation message(System wide fix is applied for validation messages) - -* #142 - [fixed] Correct the spelling of "default" in theme - -* #165 - [fixed] If a Product is selected as disabled at time of creation,then also it is visible at store front - -* #133 - [fixed] Add asterisk symbol for email field in Add User page - -* #175 - [fixed] Getting exception in deleting attributes - -* #165 - [feature] No grid is available in back-end to manage Newsletter - -* #235 - [fixed] User name should display on account dropdown(In case of signed-in user) - -* #200 - [fixed] Getting exception when applying filter on Exchange Rates grid - -* #225 - [fixed] Slider button should display as clickable on mouse hover - -* #148 - [fixed] Search Functionality is not working in all grid of Admin panel - -* #216 - [added] Add a Column "Channel" to verify from which channel order has been placed and also add this column in filter +* #242 - [fixed] Confirmation message should be "Do you really want to edit this record?", on editing slider * #237 - [fixed] Incorrect response message after deleting product from wishlist -* #201 - [fixed] Getting exception when applying filter in slider +* #236 - [fixed] Incorrect response message after removing a product from cart -* #202 - [fixed] Correct the background text of filter field in Taxes grid.Text should be according to selected column(placeholder) +* #235 - [fixed] User name should display on account dropdown(In case of signed-in user) * #232 - [added] Add sorting functionality in column "Name" of Inventory Grid @@ -792,74 +736,121 @@ Opened in bagisto/bagisto * #229 - [added] Add sorting functionality on Column "Type" in Product Grid, so that product can be sorted according to type -* #244 - [fixed] Getting exception when applying sorting on Tax Rate +* #225 - [fixed] Slider button should display as clickable on mouse hover -* #242 - [fixed] Confirmation message should be "Do you really want to edit this record?", on editing slider +* #224 - [fixed] Status column in Invoice remains blank -* #236 - [fixed] Incorrect response message after removing a product from cart +* #216 - [added] Add a Column "Channel" to verify from which channel order has been placed and also add this column in filter + +* #207 - [fixed] Two button are not required to save address * #206 - [fixed] Correct the confirmation message in pop-up when click on Edit User -* #174 - [fixed] Getting Exception while applying filter on category page +* #202 - [fixed] Correct the background text of filter field in Taxes grid.Text should be according to selected column(placeholder) -* #149 - [fixed] Getting exception in creating configurable product. +* #201 - [fixed] Getting exception when applying filter in slider + +* #200 - [fixed] Getting exception when applying filter on Exchange Rates grid + +* #192 - [fixed] Not able to checkout with different shipping address + +* #188 - [fixed] Unable to delete Customer Group + +* #187 - [fixed] We can add column "Group Name" instead of Group Id and also add this column in filter in Customers Grid + +* #185 - [fixed] Search not working in responsive mode * #184 - [fixed] Product page mandatory fields are missing '*' or asterisk as failing to indicate required field and inappropriate validation message -* #162 - [fixed] No response when click on "Add to Cart" for configurable product on home page and category page +* #181 - [fixed] Change the column name in filter from "Target Currency" to "Currency Name" -* #164 - [fixed] Loss of data from content field of Slider - -* #166 - [fixed] Getting 404 error on deleting order +* #180 - [fixed] Not accepting the code for Currency if it is already used in locales * #178 - [fixed] Change the Column Name -* #129 - [fixed] Getting issue when deleting orders.Mass action is not working in any grid(Getting Internal server error) while updating status(mass actions will return in next release and the issue will remain open till next release) +* #177 - [fixed] Getting Exception when clicking on column locale -* #181 - [fixed] Change the column name in filter from "Target Currency" to "Currency Name" +* #175 - [fixed] Getting exception in deleting attributes -* #172 - [fixed] Getting 500 Internal Server Error on updating Users +* #174 - [fixed] Getting Exception while applying filter on category page * #173 - [fixed] Getting 500 Internal Server Error on Updating taxes -* #177 - [fixed] Getting Exception when clicking on column locale +* #172 - [fixed] Getting 500 Internal Server Error on updating Users -* #125 - [fixed] Delete button is not available for mass delete of Products in Product Grid(mass actions will return in next release and the issue will remain open till next release) +* #166 - [fixed] Getting 404 error on deleting order -* #132 - [fixed] Issue in Mass Deletion.This issue exists for every grid(mass actions will return in next release and the issue will remain open till next release) +* #165 - [fixed] If a Product is selected as disabled at time of creation,then also it is visible at store front -* #137 - [fixed] By default Gender is selected as Male for every customer +* #165 - [feature] No grid is available in back-end to manage Newsletter -* #141 - [fixed] Subscribe button on storefront is unresponsive +* #164 - [fixed] Loss of data from content field of Slider -* #145 - [fixed] Edit Functionality of Tax Categories is not Working +* #162 - [fixed] No response when click on "Add to Cart" for configurable product on home page and category page + +* #162 - [fixed] No response when click on "Add to Cart" for configurable product on home page and category page + +* #161 - [fixed] Inappropriate validation message(System wide fix is applied for validation messages) * #157 - [fixed] Old password check in edit profile ain't working for customers -* #120 - [fixed] After signup on the frontend, the customer is still not the signup page +* #154 - [fixed] While creating channel Description field,Home Page Content and footer _content is required, but it doesn't throw any validation error if we leave that field blank -* #139 - [fixed] Encountered exception while changing locale on storefront - -* #144 - [fixed] "Move All Products To Cart" and "Delete All" link is not working in Wishlist grid(Move all products to cart is removed and delete all works now) +* #151 - [fixed] Description and Short description field are throwing validation error message even if description is written * #150 - [fixed] If currency changes on store front then on admin panel in Order Grid currency changes according to store front +* #149 - [fixed] Getting exception in creating configurable product. + +* #148 - [fixed] Search Functionality is not working in all grid of Admin panel + +* #146 - [fixed] Tax is not added on product at checkout + +* #145 - [fixed] Edit Functionality of Tax Categories is not Working + +* #144 - [fixed] "Move All Products To Cart" and "Delete All" link is not working in Wishlist grid(Move all products to cart is removed and delete all works now) + +* #142 - [fixed] Correct the spelling of "default" in theme + +* #141 - [fixed] Subscribe button on storefront is unresponsive + +* #139 - [fixed] Encountered exception while changing locale on storefront + +* #137 - [fixed] By default Gender is selected as Male for every customer + +* #134 - [fixed] Unable to login with the user account that is created in user grid with custom access + +* #133 - [fixed] Add asterisk symbol for email field in Add User page + +* #132 - [fixed] Issue in Mass Deletion.This issue exists for every grid(mass actions will return in next release and the issue will remain open till next release) + +* #129 - [fixed] Getting issue when deleting orders.Mass action is not working in any grid(Getting Internal server error) while updating status(mass actions will return in next release and the issue will remain open till next release) + +* #126 - [fixed] Add asterisk symbol on SKU field + +* #125 - [fixed] Delete button is not available for mass delete of Products in Product Grid(mass actions will return in next release and the issue will remain open till next release) + +* #121 - [fixed] buy now button is not working on index page for some products + +* #120 - [fixed] After signup on the frontend, the customer is still not the signup page + +* #119 - [fixed] Set value in the login form fields(on Demo) + * [fixes] More ACL added. +## **v0.1.1 (13th of November, 2018)** - *Release* -## **v0.1.1(13th of November, 2018)** - *Release* - -* #94 - [fixed] Sign-in page shows signup text(@prashant-webkul) - -* #95 - [fixed] Buy Now Button does not work(@prashant-webkul) - -* #96 - [fixed] Search button does not work(@prashant-webkul) - -* #97 - [fixed] client side validation / js validation is missing at login page +* #114 - [fixed] Invoice printing added as a feature * #98 - [fixed] No warning before removing the item from the cart -* #114 - [fixed] Invoice printing added as a feature +* #97 - [fixed] client side validation / js validation is missing at login page + +* #96 - [fixed] Search button does not work(@prashant-webkul) + +* #95 - [fixed] Buy Now Button does not work(@prashant-webkul) + +* #94 - [fixed] Sign-in page shows signup text(@prashant-webkul) * [fixed] Email templates logo issue fixed(@jitendra-webkul) @@ -899,8 +890,7 @@ Opened in bagisto/bagisto * [fixed] Various UI/UX fixes in store front styles and layouts(@prashant-webkul & @jitendra-webkul) - -## **v0.1.0(30th of October 2018)** - *First release* +## **v0.1.0 (30th of October 2018)** - *First Release* * [feature] Add and modify product with simple and configurable types @@ -915,6 +905,7 @@ Opened in bagisto/bagisto * [feature] Add and modify customers * [feature] Add and modify customer groups + * [feature] Add and modify customer reviews for moderation by admin * [feature] Add and modify currently logged in admin user details @@ -948,6 +939,7 @@ Opened in bagisto/bagisto * [feature] Customer profile edit feature account section when logged in * [feature] Customer can view his orders in account section when logged in + * [feature] Customer order notifications via mails * [feature] Multiple locales and currencies on storefront diff --git a/CHANGELOG for v0.2.x.md b/CHANGELOG for v0.2.x.md index bf693debb..b44faa365 100644 --- a/CHANGELOG for v0.2.x.md +++ b/CHANGELOG for v0.2.x.md @@ -1,17 +1,17 @@ # CHANGELOG for v0.2.x -#### This changelog consists the bug & security fixes and new features being included in the releases listed below. +This changelog consists the bug & security fixes and new features being included in the releases listed below. ## **v0.2.0 (23th of December, 2019)** - *Release* -* #1955 [fixed] - Message need to be changed on mouse hover on cross symbol next to applied coupon. - * #1959 [fixed] - if admin has set the same condition twice, then catalog rule is not getting apply * #1958 [fixed] - getting exception on front end, if action type is Buy x get y free in non couponable cart rule. * #1957 [fixed] - if action type is Fixed Amount to Whole Cart, then apply to shipping option should get hide. +* #1955 [fixed] - Message need to be changed on mouse hover on cross symbol next to applied coupon. + * #1954 [fixed] - If any different tax category has been assigned to variants in configurable product, then while using tax category condition in cart rule, rule is not working properly. -* #1950 [fixed] - multiple catalog rule should not get get applied, if 1st one has been created as End Other Rules = yes \ No newline at end of file +* #1950 [fixed] - multiple catalog rule should not get get applied, if 1st one has been created as End Other Rules = yes diff --git a/CHANGELOG for v1.x.x.md b/CHANGELOG for v1.x.x.md index cf19fcff5..1261eb7f0 100644 --- a/CHANGELOG for v1.x.x.md +++ b/CHANGELOG for v1.x.x.md @@ -1,8 +1,298 @@ # CHANGELOG for v1.x.x -#### This changelog consists the bug & security fixes and new features being included in the releases listed below. +This changelog consists of the bug & security fixes and new features being included in the releases listed below. -## **v1.1.3 (19th of June 2020)** - *Release* +## **v1.3.1 (22nd of February 2021)** - *Release* + +* #4659 [fixed] - Only show defaults option in Shipping. + +* #4654 [fixed] - Composer error with `khaled.alshamaa/ar-php` version. + +* #4647 [fixed] - APP_VERSION returns the wrong version number. + +* #4645 [fixed] - `/api/products` returns trying to get property 'product' of non-object. + +* #4643 [fixed] - Getting exception when admin change the status of subscribed user to false. + +* #4641 [fixed] - Getting data in client id "sb" by default. + +* #4633 [fixed] - Incorrect validation message at admin end. + +* #4344 [fixed] - Attribute option positioning not working (Front-end). + +## **v1.3.0 (16th of February 2021)** - *Release* + +* [feature] - PayPal Smart Button for quick and fast payment. + +* [feature] - Email Marketing-Newsletter to send the newsletter to your valuable customers. + +* [feature] - Control on Displaying of out of stock Product. + +* [feature] - Minimum Order Amount by which it will necessary to meet their order subtotal to make a successful purchase. + +* [feature] - Add Video of Your Product. + +* [feature] - Maintenance Mode, let search engines know that your site is currently down. + +* [feature] - Buy Now at Product Page, Admin can easily enable/disable the Buy Now Button for both themes. + +* [feature] - laravel Debugger Mode, This will help the developer/users to see all the packages they are using inside the Webkul folder. + +* [enhancement] - Duplicated queries removed. + +* [enhancement] - Improved lighthouse score. + +* [enhancement] - Slider path should also work in default theme. + +* [enhancement] - Add configuration to enable/disable the image search feature. + +* [enhancement] - Multi product images should be changed on mouse hover. + +* [enhancement] - Add configuration to set admin url while install using bagisto:install command. + +* [enhancement] - Add confirm box while moving an item to wishlist from the cart page. + +* [enhancement] - Add option to export auto generated coupons in cart rule. + +* [enhancement] - Add bulk category delete functionality. + +* [enhancement] - Default shop content should be localized. + +* [enhancement] - Schedule cron job to process newsletter campaigns mails. + +* [enhancement] - Showing configurable product base on catalog rule price. + +* [enhancement] - Wishlist and Cart key in Product API. + +* [enhancement] - Add a option in the channel configuration to enable/disable wishlist. + +* [enhancement] - Add product number. + +* #4620 [fixed] - value is not saved in fallback locale in configuration section. + +* #4597 [fixed] - Add a product to Wishlist twice issue. + +* #4596 [fixed] - Unable to view order at customer end. + +* #4590 [fixed] - getting exception on cart when remove minimum amount from backend. + +* #4583 [fixed] - inactive template are sending in newsletter mail to subscribed users. + +* #4577 [fixed] - error on minicart while adding configurable item. + +* #4573 [fixed] - out of stock items are visible on category & search page when configuration is disabled. + +* #3572 [fixed] - No info about other discounts in case there is multiple group pricing exist in same product. + +* #4571 [fixed] - video is not showing for variant product in product page. + +* #4567 [fixed] - configurable product variant attribute options are not visible in layered navigation. + +* #4566 [fixed] - wrong attribute are visible on layered navigation. + +* #4506 [fixed] - customer group pricing fixed discount should accept decimal values. + +* #4498 [fixed] - able to delete root category which is selected in channel. + +* #4495 [fixed] - Only load the locales that are enabled on the channel. + +* #4486 [fixed] - getting exception when copy cart rule. + +* #4481 [fixed] - Shipping costs are not calculated with grand total. + +* #4459 [fixed] - disabled option should not accessible from routes in frontend. + +* #4456 [fixed] - getting exception when filter category, attribute, customer datagrid based on status. + +* #4457 [fixed] - cart rule status always set as draft. + +* #4452 [fixed] - products are not visible on homepage if filter based on ar locale. + +* #4447 [fixed] - Product URl key not accepting value for Chinese, Japnese, Arabic locale. + +* #4440 [fixed] - getting exception when allow user role with marketing permission. + +* #4435 [fixed] - customer group condition doesn't match while sending newsletter email. + +* #4434 [fixed] - missing date picker option in event filter #4434. + +* #4433 [fixed] - getting exception when filter campaigns/email templates based on status. + +* #4432 [fixed] - subscribed checkbox should be mark if customer is already subscribed. + +* #4428 [fixed] - user roles permission option always save when trying to uncheck selected option. + +* #4425 [fixed] - saved billing address details are not showing on onepage checkout. + +* #4420 [fixed] - Invoice PDF breaking. + +* #4413 [fixed] - getting error when setup fresh bagisto from master. + +* #4408 [fixed] - silder image not work. + +* #4401 [fixed] - composer install --no-dev , gives error. + +* #4399 [fixed] - Role-based security issue - User with no permission has acces to some admin pages/controls. + +* #4392 [fixed] - Multiple cart rule is getting applied in case condition matches on applying only one coupon. + +* #4386 [fixed] - Slow Category Query. + +* #4372 [fixed] - The brand attribute should be deletable. + +* #4369 [fixed] - Product filter [Shop By]. + +* #4335 [fixed] - Image search disable functionality is not working. + +* #4325 [fixed] - address is not saving on onepage checkout. + +* #4299 [fixed] - sort by newest first or oldest first doesn't work in category. + +* #4287 [fixed] - Product locale not correctly selected since admin language select. + +* #4277 [fixed] - subtotal is not updating when remove product from the minicart. + +* #4248 [fixed] - PayPay scripts are being loaded even if inactive. + +* #4234 [fixed] - default values are not working in system configuration. + +* #4228 [fixed] - add a validation if user trying to upload greater size image in image search. + +* #4212 [fixed] - Error uninstall developer dependencies going into production mode. + +* #4192 [fixed] - db connection failed at first time when setup using bagisto:install. + +* #4191 [fixed] - back date should be disabled in booking products. + +* #4130 [fixed] - event ticket price field accepts negative values. + +* #4124 [fixed] - Client Side validation issue in Special Price for ticket booking Product. + +* #4119 [fixed] - Admin should not be able to create multiple cart rule using same coupon code. + +* #4117 [fixed] - error in booking product while booking a slot. + +* #4105 [fixed] - Issue with total due in cash on delivery. + +* #4094 [fixed] - filter is not working properly in case product name contains any special character. + +* #4085 [fixed] - Not able to fetch invoice by API. + +* #4062 [fixed] - search icon in velocity theme is not clickable. + +* #4061 [fixed] - variant image is not visible when item added in wishlist. + +* #4030 [fixed] - featured or new label should not visible if product is not exist in default theme. + +* #4024 [fixed] - customer group price discount is not applied when product price and discount amount is same. + +* #3981 [fixed] - No validation message on creating addresses without required params. + +* #3975 [fixed] - Filter is not working properly for status column in case product has not been name and other required details. + +* #3964 [fixed] - pay with paypal smart button is missing in checkout. + +* #3957 [fixed] - Configurable product parent image is visible in cart instead of variant image. + +* #3954 [fixed] - Featured New Product Adding Special Price the 2 columns in mobile version is broke. + +* #3940 [fixed] - bagisto:install defines APP_URL to localhost by default. + +* #3932 [fixed] - When copying a product, replicating the image causes it to be volatile. + +* #3886 [fixed] - Cart item not bound to the account when login with social login. + +* #3879 [fixed] - Getting exception on uploading high size image in Invoice Slip Design logo. + +* #3807 [fixed] - Can't locate path for migrations in bagisto/packages. + +* #3785 [fixed] - Product filter is not working according to channel filter. + +* #3638 [fixed] - Promotion, combine "percentage" & "fixed amount to whole cart" cart rules get wrong disco * unt amount. + +* #4394 [fixed] - maintenance mode status is not working in channel section. + +* #4393 [fixed] - composer test in windows. + +* #3374 [fixed] - Social Login Error. + +## **v1.2.0 (8th of September 2020)** - *Release* + +* [feature] - Config to add custom css and javascript (Eg. google anlytics) + +* [feature] - Added some config for payment method additional information + +* #3900 [fixed] - layout issue on cart page in ar (Default theme) + +* #3894 [fixed] - Customer is not able to increase or decrease the qty of downloadable product from cart in default theme + +* #3890 [fixed] - Add validation at admin end for bundle items qty + +* #3889 [fixed] - default compare icon should be enabled in french also + +* #3878 [fixed] - Search by name doesn't work when sending a request via API + +* #3872 [fixed] - customer profile section having bug in mobile view for default theme + +* #3871 [fixed] - downloadable sample link issue in RTL + +* #3866 [fixed] - Compare icon is not coming in mobile view as well as layout issue on compare page in mobile view(default theme) + +* #3862 [fixed] - Fix Payment Instruction view in checkout page + +* #3861 [fixed] - Payment Instruction is not implemented for velocity theme + +* #3860 [fixed] - Icon used for the customer note or copy item should not be same + +* #3854 [fixed] - Fix reset password alert message + +* #3852 [fixed] - Product copy functionality is not working properly for configurable products + +* #3847 [fixed] - QTY not returned to inventory when canceling an order after shipping + +* #3831 [fixed] - social icons are not visible in footer + +* #3828 [fixed] - success alert is not visible while removing product from wishlist as guest + +* #3822 [fixed] - Publish translations from Webkul\Admin + +* #3819 [fixed] - Export Function not working in Firefox/Linux + +* #3811 [fixed] - Velocity cms page url should be added by default + +* #3804 [fixed] - uploading image on search is not resulting in any keywords + +* #3802 [fixed] - Layout issue while adding linked products + +* #3800 [fixed] - Header Content Count field should convert the value into 0 if given anything apart from valid data(numeric value) + +* #3799 [fixed] - Featured Products and New Products should not display on front end if admin has set 0 in velocity meta data + +* #3792 [fixed] - Recently viewed product is not working for Locales other than default. + +* #3791 [fixed] - validation message showing for wrong field while editing user from admin end + +* #3789 [fixed] - Filter conditions need to be change according to Boolean in newsletter subscription grid for subscribed column + +* #3786 [fixed] - Default advertisement images should display in images section. + +* #3784 [fixed] - Responsive issue on iPad + +* #3783 [fixed] - Correct the product name alignment in compare list of default theme. + +* #3782 [fixed] - Getting error on running php artisan migrate if db_prefix contains decimal value + +* #3781 [fixed] - Getting exception on frontend after installation. + +* #3772 [fixed] - Unable to add more than 4 products in related products + +* #3643 [fixed] - Invoices should contain the company/store data + +* #3002 [fixed] - Buggggggg iOS Safari images are stretched. + +* #1257 [fixed] - Getting issue in install of v0.1.6 + +## **v1.2.0-BETA1 (18th of August 2020)** - *Release* * [feature] - Customer group price for products implemented @@ -12,511 +302,853 @@ * [feature] - Search engine optimization with rich snippet +* [feature] - Blade file tracer -* #343 [fixed] - Translation strings are missing from awful amount of controllers when returning responses with flash. And optimise translation strings for faster static translations. +* [feature] - Search with Elastic and Algolia -* #824 [fixed] - Framework is not supporting I.E 11 browser. +* [feature] - Support for admin multi theme -* #838 [fixed] - Packages as composer dependency +* [feature] - One click upgrade -* #985 [fixed] - Dynamically insert products +* [feature] - Social login (Facebook, Twitter, Google, Linkedin, Github) -* #1258 [fixed] - If payment is done through paypal then invoice should generate automatically and status of Order should be processing. +* [feature] - Social share -* #1362 [fixed] - Site logo and Category Image are broken +* [feature] - Store configuration added -* #1370 [fixed] - install fails at the last step +* [feature] - Feature to disable compare option -* #1522 [fixed] - Quick Links broken +* [feature] - Store configuration added for product listing -* #1656 [fixed] - Validation error in Phone Field while Adding Address +* #3767 [fixed] - Header-nav on mobile view seem buggy on search item -* #1981 [fixed] - If customer update his address at time of checkout and save this address then address doesn't get save and also on checkout page old address displays. +* #3757 [fixed] - broken image on guest wishlist -* #2009 [fixed] - Using AWS S3 for storage +* #3755 [fixed] - Webinstall - SMTP port is not set -* #2060 [fixed] - auto generate coupon accordion not getting hidden while selecting no specific coupons +* #3751 [fixed] - shipping tab is missing in order details for deleted customer -* #2159 [fixed] - Taking more time to load product details in shopping cart. +* #3747 [fixed] - velocity content header route throwing an exception in spanish locale -* #2415 [fixed] - Add TO CART button should replace by “BOOk NOW” button for booking product. +* #3745 [fixed] - getting exception in backend when having DB_PREFIX -* #2590 [fixed] - hi everyone i'm wondering if customers after register could give a referral code ?? +* #3742 [fixed] - Invoice, ship and cancel buttons are missing in order placed by guest user -* #2702 [fixed] - Getting broken image for products and category. +* #3740 [fixed] - translation of alert when remove compare item in default theme -* #2720 [fixed] - Error during migration on php artisan migrate +* #3735 [fixed] - Make Velocity Meta Data section Channel wise. -* #2725 [fixed] - Variants should not be created if cofigurable product created failed +* #3727 [fixed] - compare page layout issue for logged in user -* #2762 [fixed] - Seeder: SQL Error: Duplicate entry for '1' key 'PRIMARY' +* #3725 [fixed] - getting exception on comparison page of default theme -* #2766 [fixed] - Needs User friendly UI for the event booking in product page +* #3723 [fixed] - getting exception when download uploaded file from backend -* #2789 [fixed] - Product channel and locale dropdowns in the admin dashboard not working +* #3720 [fixed] - Velocity theme option is missing in channel -* #2795 [fixed] - Cart error merging if you authenticate having items with low stock +* #3717 [fixed] - Layout issue in order grid at customer end -* #2800 [fixed] - Add the ability to change Attribute Family for Products +* #3704 [fixed] - No alert message while deleting customer with pending or processing order from admin end. -* #2804 [fixed] - There should be order review section instead of complete section on checkout page +* #3702 [fixed] - On deleting customer their invoice and shipment records are getting disappeared. -* #2805 [fixed] - the sku should be all in caps +* #3700 [fixed] - getting exception while creating refund of order placed by deleted customer -* #2844 [fixed] - showing product image of each color in configurable product +* #3693 [fixed] - There should not be any success message while trying to delete system attributes -* #2863 [fixed] - Search Product Name and Description +* #3692 [fixed] - Channel filter is not working properly in product grid -* #2868 [fixed] - Cart (customer) address not persisted during the checkout +* #3689 [fixed] - There should not be sale icon in shopping cart in velocity theme -* #2874 [fixed] - Order, payment process and payment metadata +* #3688 [fixed] - Select icons should be in right side in RTL on payment page in default theme -* #2888 [fixed] - Always Default locale should be selected when add new product for each channels +* #3678 [fixed] - Customer is able to access downloadable products even when invoice state is pending -* #2889 [fixed] - timezone drop down field is not visible in web installer +* #3676 [fixed] - all cross selling products are not visible in cart page of velocity theme -* #2893 [fixed] - When creating a shipment, display items invoiced +* #3675 [fixed] - Address icon is overlapping on side bar menu in mobile view -* #2931 [fixed] - Customer pays order in PayPal but there is no record in bagisto +* #3674 [fixed] - Bugs on category page for list mode -* #2936 [fixed] - change the admin route for another +* #3657 [fixed] - Auth user can see all users info by id -* #2942 [fixed] - Randomize New and Featured Products +* #3656 [fixed] - Product name gets blank each time we refresh the product page. -* #2949 [fixed] - failed to migrate with new database using installer +* #3649 [fixed] - product datagrid filter layout issue -* #2950 [fixed] - multiple error message on installer +* #3648 [fixed] - custom file type attribute is not visible in PDP -* #2964 [fixed] - Exception when buying non stockable item via API +* #3642 [fixed] - getting exception when creating configurable product in case of DB_Prefix -* #2969 [fixed] - Cancel icon is not visible in velocity theme for customer order detail +* #3638 [fixed] - Promotion, combine "percentage" & "fixed amount to whole cart" cart rules get wrong discount amount -* #2972 [fixed] - can add to homescreen on mobile device in velocity theme +* #3637 [fixed] - No records founds text in downloadable product section of customer should display in centre, in mobile view. -* #2974 [fixed] - Thumbnails are not generating on mobile ifproduct has more than 4 photos +* #3636 [fixed] - Correct the Ui of profile in mobile view,there is no difference in field name test and field data. -* #2886 [fixed] - Configuration option for Compare +* #3631 [fixed] - Category slug should not accept values in capital letters while adding content for Header content -* #2985 [fixed] - Product category is not saving +* #3629 [fixed] - Filter is not working properly in content list grid for content type column -* #2987 [fixed] - mult address +* #3628 [fixed] - Correct the Success message after updating content in velocity meta data. -* #2990 [fixed] - Facebook Pixel integration for Laravel +* #3622 [fixed] - channel filter is not working in cart rule -* #2991 [fixed] - Filters not showing in small devices +* #3621 [fixed] - Ui issue when applying filter in mobile view -* #2994 [fixed] - Shipping method not getting updated after changing the zip code. +* #3617 [fixed] - Add feature to set the category header content limit in velocity -* #2995 [fixed] - filter is not showing when search product from search bar +* #3615 [fixed] - Getting exception while uploading favicon image if image is of high size -* #2996 [fixed] - Incomplete products JSON when type is grouped or bundled +* #3611 [fixed] - The content of CMS page is cropped -* #2997 [fixed] - Category show sidebar +* #3606 [fixed] - showing different number of star in velocity and default theme for same rating -* #3000 [fixed] - arabic product in home page Not lined up in one format +* #3604 [fixed] - show percentage in place count number in review in velocity theme -* #3001 [fixed] - Getting Error Exception when view order details +* #3595 [fixed] - I would like like to change the admin route or url -* #3004 [fixed] - Category Deactivation not working +* #3591 [fixed] - Getting exception while using layered navigation filters on category page -* #3005 [fixed] - One page checkout creating new address in profile every time. +* #3580 [fixed] - Incorrect error message while adding bundle product in cart if no.of bundles contains more qty than available qty -* #3009 [fixed] - Featured product slider and new product slider is not working +* #3577 [fixed] - Customer is able to place order of more than available qty of any bundle option product -* #3011 [fixed] - The product is in cart or not +* #3575 [fixed] - Inactive child product shouldn't visible in grouped product -* #3014 [fixed] - Support for Responsive Admin Panel +* #3574 [fixed] - One page Checkout loader hits on adding single digit in phone number -* #3018 [fixed] - Icons are not showing on imac +* #3570 [fixed] - Translation issue on uploading high size image -* #3020 [fixed] - Images can not add on velocity theme +* #3564 [fixed] - getting exception if admin uploads higher size image in image swatch while editing/adding attribute -* #3021 [fixed] - Deactivating the last category of level1 renders only level2 etc. from deactivated category +* #3562 [fixed] - getting exception when view category page in frontend -* #3022 [fixed] - storage/ should not be included in .gitignore +* #3561 [fixed] - Customer Revenue is not getting minus after refund -* #3024 [fixed] - Blank order comment shouldn't added +* #3558 [fixed] - Incorrect price showing for configurable product on front end -* #3025 [fixed] - save address return error 500 +* #3554 [fixed] - Cart Rule Issue -* #3026 [fixed] - Date validation error when editing Booking Products +* #3550 [fixed] - there should be tooltip text on mouse hover on compare icon on product -* #3029 [fixed] - velocity theme not fully responsive +* #3548 [fixed] - filter is not working properly in attribute grid at admin end -* #3032 [fixed] - [Critical] Onecheckout preventing to continue to shipping method after selecting address +* #3547 [fixed] - checkout country null issue -* #3035 [fixed] - Please update pwa for bagisto +* #3546 [fixed] - Shipping charge is not getting calculated properly in case customer removes the product just before clicking on place order -* #3036 [fixed] - Shipping address options not shown +* #3535 [fixed] - Sort By configuration from admin end is not working properly -* #3037 [fixed] - error mysql 8.0.20 bagisto v 1.1.2 +* #3534 [fixed] - Add validation for products per page field otherwise if admin entered string value then customer gets exception on category page -* #3038 [fixed] - Trying to get property 'code' of non-object +* #3533 [fixed] - Products Per Page configuration is not working properly -* #3040 [fixed] - Api logout not working.. +* #3532 [fixed] - (Mobile view) getting product image issue when set grid as List type in category page -* #3044 [fixed] - Getting exception when click on view shopping cart if adding group product in cart that contains variants of configurable product. +* #3531 [fixed] - In price filter, allow comma(,) for price in filter as in french locale float values used to be separated by , in stead of . -* #3047 [fixed] - The qty of configurable product is 0 when merging cart +* #3530 [fixed] - mobile view sortBy functionality in category page is not working -* #3048 [fixed] - "nwidart/laravel-modules": "^3.2", is the wrong version for laravel 6.* +* #3526 [fixed] - On changing current password admin/customer should get mail -* #3050 [fixed] - Can't override models +* #3522 [fixed] - Admin is not getting mail when customer cancels order -* #3051 [fixed] - error while migrate bagisto manually from console command +* #3521 [fixed] - layout issue in order information in default theme at customer end -* #3053 [fixed] - [Velocity] Checkout: Shipping/Billing Address Name, email does not get updated +* #3520 [fixed] - Admin should get mail according to admin's default locale not customer's locale -* #3054 [fixed] - customer is getting exception while cancel order +* #3519 [fixed] - Customer is getting mails in Arabic for order information and rest mails in English for same order which was placed in ar locale. -* #3061 [fixed] - CORS errors +* #3515 [fixed] - Order id is missing in mail which customer get when admin add any comment in order -* #3067 [fixed] - PHP Notice: date_default_timezone_set(): Timezone ID 'Asia/JakartaAsia/Kolkata' is invalid +* #3514 [fixed] - Use "has been" in place of "had been" in mail to warehouse -* #3068 [fixed] - Inactive inventory source are get select in channel and products +* #3508 [fixed] - Error on PL lang file -* #3070 [fixed] - Edit Attribute -> Add Option or Swatch Item Error 404 for Indonesia(id) country code +* #3507 [fixed] - locale filter is not working properly in product grid -* #3073 [fixed] - HTML entities are not being decoded when editing attribute options +* #3506 [fixed] - Uploaded image is not showing while editing Advertisement 4,3,2 Images for arabic locale -* #3076 [fixed] - checkout disable when add new shipping address +* #3505 [fixed] - No message on removing products or deleting all from compare list in default theme -* #3077 [fixed] - How to change validation messages to spanish not working +* #3502 [fixed] - Side bar menu is getting removed while editing/adding customer address at admin end -* #3079 [fixed] - Tracking Number in My Account +* #3501 [fixed] - unable to download files while comparing products -* #3087 [fixed] - after installation, first product registration does not open detailed page, I only opened from the second product +* #3498 [fixed] - No.of items in compare should be displayed with compare tab in default theme -* #3089 [fixed] - not getting price after changing configurable options +* #3496 [fixed] - showing values in compare list of those attribute which has been removed from attribute family -* #3090 [fixed] - error mysql8 +* #3495 [fixed] - image is not coming in compare list for any image type attribute -* #3095 [fixed] - pending orders detail page is blank when viewing in arabic locale +* #3494 [fixed] - compare feature is not working properly if admin creates a image type attribute and give attribute code and name "image" -* #3096 [fixed] - error when add product in compare list from the search product page +* #3491 [fixed] - broken image for color image swatch type -* #3097 [fixed] - getting console error when remove cart item +* #3490 [fixed] - Back icon is not working in catalog and cart rule grid -* #3113 [fixed] - catalog storefront configuration for per product page is not working +* #3489 [fixed] - Sale icon is not showing even if catalog rule is applied for grouped and bundle type products -* #3115 [fixed] - minify the velocity.js for gtmetrix +* #3488 [fixed] - color attribute default swatch value should be selected as dropdown swatch -* #3118 [fixed] - Home page doesn't display categories and language bar doesn't work. +* #3487 [fixed] - Velocity RTL product image zoom floats right - not showing -* #3120 [fixed] - admin panel multi locale +* #3486 [fixed] - Compare feature shows wrong attribute value -* #3135 [fixed] - How can I cad comment box in checkout form. +* #3485 [fixed] - layout issue on category page for filterable attributes -* #3136 [fixed] - configurable product variant name gets removed from the catalog list +* #3484 [fixed] - missing product quick view icon on search page -* #3140 [fixed] - API for more than one locale ! +* #3478 [fixed] - Getting exception on putting limit =0 in url -* #3144 [fixed] - error if selecting only one currency +* #3472 [fixed] - layout issue in order and downloadable grid at customer end in mobile view -* #3146 [fixed] - how to configure aws smtp server on bagisto +* #3469 [fixed] - Cannot remove a layered navigation attribute from product -* #3150 [fixed] - Attribute not showing on the creating new configurable product page +* #3467 [fixed] - layout issue at shop end in ar -* #3153 [fixed] - Free Shipping and Flat Rate Shipping not desable +* #3465 [fixed] - When I update the folder name from bagisto to new name, the logo image doesn't appear, why? -* #3158 [fixed] - Column not found: 1054 Unknown column 'symbol' in 'field l +* #3460 [fixed] - Add address option should come below in velocity theme -* #3160 [fixed] - Disabled products are not removed from bundles +* #3458 [fixed] - not able to add (virtual,booking etc.) product to compare list by logged in user -* #3161 [fixed] - Trying to access array offset on value of type null +* #3457 [fixed] - number indicator are hidden on wishlist or compare icon RTL format -* #3164 [fixed] - getting exception when add/edit configurable product +* #3453 [fixed] - Invoice state is always set to paid -* #3171 [fixed] - fixed amount is applied on product for customer group price instead of apply in % +* #3451 [fixed] - Change request regarding shipments -* #3172 [fixed] - description or name is missing for comparable items if customer login +* #3447 [fixed] - By default social login should be enabled -* #3183 [fixed] - ErrorException +* #3445 [fixed] - filter tag is out of box in search key term for long product name -* #3184 [fixed] - Site showing blank page on 404 +* #3444 [fixed] - Layout issue on review page -* #3186 [fixed] - replace payment method text with an image on the checkout page +* #3443 [fixed] - customer group price functionality is not working -* #3190 [fixed] - Bagisto v1.1.2 velocity responsive theme issue on iPhone and iPads +* #3425 [fixed] - Impossible to connect, please check your Algolia Application Id. -* #3191 [fixed] - Bagisto v1.1.2 velocity responsive theme issue on iPhone and iPads +* #3423 [fixed] - Cannot change account password -* #3197 [fixed] - Call to undefined function str_limit() when view product in velocity theme +* #3422 [fixed] - getting exception when view order of deleted customer -* #3199 [fixed] - Getting exception when click on product. +* #3417 [fixed] - social login icons in RTL -* #3202 [fixed] - Getting exception in creating grouped product. +* #3411 [fixed] - Sale level is displaying even if special price date has been already expired -* #3203 [fixed] - Getting translation issue in price field of downloadable product. +* #3409 [fixed] - Wrong validation when remove variant(s) of configurable product -* #3204 [fixed] - Getting exception when changing currency from search page. +* #3400 [fixed] - fix UI for the compare page in default theme -* #3205 [fixed] - Able to create the product without selecting required toggles button. +* #3399 [fixed] - Remove from wishlist button is displaying as 1 when mouse not hover on product, this occur in all locale except English. -* #3208 [fixed] - Customer group price functionality is not working. +* #3396 [fixed] - getting error when admin view order placed by social customers -* #3207 [fixed] - Issue in variant product of configurable, only one variant name display at a time and on refreshing it changes. +* #3395 [fixed] - default group should be set for the social login customer -* #3214 [fixed] - Getting exception on forgot password link. +* #3394 [fixed] - Not able to open menu in mobile view having locale arabic. -* #3215 [fixed] - when updating an attribute to 'use_in_flat', bagisto should update the product_flat table with the values of those products +* #3393 [fixed] - Getting broken image link for locales in mobile view. -* #3218 [fixed] - virtual product not shipping step.. +* #3392 [fixed] - Translation key is not added in order settings -* #3219 [fixed] - fix the date/time format in booking products +* #3381 [fixed] - Customer city name does not allow hyphen -* #3222 [fixed] - UI issue in event ticket booking special price date field +* #3380 [fixed] - Layout issues on mobile view in ar locale -* #3232 [fixed] - homepage is showing 404 error page in both theme +* #3379 [fixed] - Getting error on migration command. -* #3234 [fixed] - UI Issue for cart, wishlist, compare icon number indicator in RTL +* #3377 [fixed] - error when click to twitter social login + +* #3374 [fixed] - Social Login Error + +* #3373 [fixed] - New Error migration Bagisto Install MySQL/MariaDB + +* #3371 [fixed] - Easy bug: incorrect PL lang file + +* #3369 [fixed] - getting exception when clicking on any social login icon + +* #3365 [fixed] - On mobile responsive on ios sign up button is missing + +* #3363 [fixed] - null value accepted in filter option at customer end + +* #3360 [fixed] - filter and items per page is getting collapsed in ar + +* #3358 [fixed] - New and sale icon lable on product issue in RTL + +* #3357 [fixed] - Image search feature is not available in mobile view default theme + +* #3356 [fixed] - search term removed from the search bar in default theme + +* #3354 [fixed] - error when upload invalid image/file type in search + +* #3341 [fixed] - filter option should be remove from the search page in mobile view + +* #3340 [fixed] - mobile view not able to updated currency + +* #3339 [fixed] - category display mode options are not working + +* #3338 [fixed] - bundle option should be marked as mandatory if it's required + +* #3335 [fixed] - New Label is missing in VelocityTheme + +* #3331 [fixed] - layout issue while using filter at any grid(admin end) in ar locale + +* #3330 [fixed] - Layout issue while adding configurable product to cart in velocity theme + +* #3328 [fixed] - velocity logo and shop by category override + +* #3323 [fixed] - text written in search page(for invalid search) should be properly aligned + +* #3322 [fixed] - Title and url both are coming same on layered navigation page in velocity theme + +* #3321 [fixed] - Comapre button should come between wishlist and cart in arabic also. + +* #3320 [fixed] - Getting exception on frontend when opening a category in which brand is selected as filterable attribute. + +* #3319 [fixed] - Issue in validation message while placing order of booking type product if customer did not fill select rent time + +* #3317 [fixed] - Pagination layout should be implemented at customer end + +* #3316 [fixed] - layout issues in checkout page while placing order of booking product + +* #3315 [fixed] - compare option should be remove from customer profile options list if the compare is disable + +* #3314 [fixed] - admin back to sign in link always redirects to same page after admin login + +* #3313 [fixed] - In cart, in place of only qty, quantity and price both are coming in ar. + +* #3311 [fixed] - Mobile Bug - Filters disappear when no products match filters + +* #3310 [fixed] - Editing product title should not change URL if it has already been set + +* #3309 [fixed] - 500 error when loading /search with "term" in query string + +* #3307 [fixed] - Getting exception on changing locale when customer has opened order grid from his account + +* #3304 [fixed] - Getting incorrect message on delete all from wishlist in case of guest user only + +* #3303 [fixed] - Getting exception on changing locale when customer has opened downloadable products grid from his account + +* #3301 [fixed] - fix search keys in search bar for analysed keywords in velocity + +* #3298 [fixed] - Header content category always redirect to 404 error page + +* #3297 [fixed] - getting exception when save booking product from edit page + +* #3289 [fixed] - Main product is not showing in catalog grid if configurable product hasn't been created completely. + +* #3286 [fixed] - fix calendar icon css at admin dashboard + +* #3274 [fixed] - Installer Blank Page After Migration + +* #3273 [fixed] - fix calendar icon present at dashboard in RTL + +* #3272 [fixed] - getting exception when booking product type is not same as cart item for same product id + +* #3270 [fixed] - fix icon design on catalog rule when select special price as condition + +* #3265 [fixed] - recently view product heading is overlapped in RTL + +* #3255 [fixed] - Appointment booking slot duration missing in UI for RTL + +* #3254 [fixed] - exception on changing locale to Italian + +* #3250 [fixed] - find product by image in search attempt to an error if app_url isn't define + +* #3249 [fixed] - icons are overlapped in comparison page for RTL + +* #3248 [fixed] - fix css for cancel icon on success alert RTL + +* #3246 [fixed] - fix icon layout in edit booking product page for RTL + +* #3243 [fixed] - Email settings are empty in backend + +* #3241 [fixed] - login fields(email,passwords) are in the center when in RTL + +* #3240 [fixed] - Payment methods in onepage checkout are not visible completely in RTL + +* #3238 [fixed] - Trait 'Illuminate\Foundation\Auth\SendsPasswordResetEmails' not found + +* #3237 [fixed] - Options of attribute not display as per its position * #3236 [fixed] - selected category gets removed from the search in RTL * #3235 [fixed] - need space b/w sign in & sign up box in mini login window for RTL -* #3237 [fixed] - Options of attribute not display as per its position +* #3234 [fixed] - UI Issue for cart, wishlist, compare icon number indicator in RTL -* #3238 [fixed] - Trait 'Illuminate\Foundation\Auth\SendsPasswordResetEmails' not found +* #3232 [fixed] - homepage is showing 404 error page in both theme -* #3240 [fixed] - Payment methods in onepage checkout are not visible completely in RTL +* #3231 [fixed] - "error!options are missing alert" on home page shouldn't be shown -* #3241 [fixed] - login fields(email,passwords) are in the center when in RTL +* #3222 [fixed] - UI issue in event ticket booking special price date field -* #3246 [fixed] - fix icon layout in edit booking product page for RTL +* #3219 [fixed] - fix the date/time format in booking products -* #3248 [fixed] - fix css for cancel icon on success alert RTL +* #3218 [fixed] - virtual product not shipping step.. -* #3249 [fixed] - icons are overlapped in comparison page for RTL +* #3215 [fixed] - when updating an attribute to 'use_in_flat', bagisto should update the product_flat table with the values of those products -* #3250 [fixed] - find product by image in search attempt to an error if app_url isn't define +* #3214 [fixed] - Getting exception on forgot password link. -* #3254 [fixed] - exception on changing locale to Italian +* #3208 [fixed] - Customer group price functionality is not working. -* #3255 [fixed] - Appointment booking slot duration missing in UI for RTL +* #3207 [fixed] - Issue in variant product of configurable, only one variant name display at a time and on refreshing it changes. -* #3265 [fixed] - recently view product heading is overlapped in RTL +* #3205 [fixed] - Able to create the product without selecting required toggles button. -* #3270 [fixed] - fix icon design on catalog rule when select special price as condition +* #3204 [fixed] - Getting exception when changing currency from search page. -* #3272 [fixed] - getting exception when booking product type is not same as cart item for same product id +* #3203 [fixed] - Getting translation issue in price field of downloadable product. -* #3273 [fixed] - fix calendar icon present at dashboard in RTL +* #3202 [fixed] - Getting exception in creating grouped product. -* #3274 [fixed] - Installer Blank Page After Migration +* #3199 [fixed] - Getting exception when click on product. -* #3286 [fixed] - fix calendar icon css at admin dashboard +* #3197 [fixed] - Call to undefined function str_limit() when view product in velocity theme -* #3289 [fixed] - Main product is not showing in catalog grid if configurable product hasn't been created completely. +* #3191 [fixed] - Bagisto v1.1.2 velocity responsive theme issue on iPhone and iPads -* #3297 [fixed] - getting exception when save booking product from edit page +* #3190 [fixed] - Bagisto v1.1.2 velocity responsive theme issue on iPhone and iPads -* #3298 [fixed] - Header content category always redirect to 404 error page +* #3186 [fixed] - replace payment method text with an image on the checkout page +* #3184 [fixed] - Site showing blank page on 404 +* #3183 [fixed] - ErrorException -## **v1.1.2 (24th of March 2020)** - *Release* +* #3172 [fixed] - description or name is missing for comparable items if customer login + +* #3171 [fixed] - fixed amount is applied on product for customer group price instead of apply in % + +* #3164 [fixed] - getting exception when add/edit configurable product + +* #3161 [fixed] - Trying to access array offset on value of type null + +* #3160 [fixed] - Disabled products are not removed from bundles + +* #3158 [fixed] - Column not found: 1054 Unknown column 'symbol' in 'field l + +* #3153 [fixed] - Free Shipping and Flat Rate Shipping not desable + +* #3150 [fixed] - Attribute not showing on the creating new configurable product page + +* #3146 [fixed] - how to configure aws smtp server on bagisto + +* #3144 [fixed] - error if selecting only one currency + +* #3140 [fixed] - API for more than one locale ! + +* #3136 [fixed] - configurable product variant name gets removed from the catalog list + +* #3135 [fixed] - How can I cad comment box in checkout form. + +* #3131 [fixed] - Velocity theme responsiveness issue after changing the language to Arabic RTL + +* #3120 [fixed] - admin panel multi locale + +* #3118 [fixed] - Home page doesn't display categories and language bar doesn't work. + +* #3115 [fixed] - minify the velocity.js for gtmetrix + +* #3113 [fixed] - catalog storefront configuration for per product page is not working + +* #3097 [fixed] - getting console error when remove cart item + +* #3096 [fixed] - error when add product in compare list from the search product page + +* #3095 [fixed] - pending orders detail page is blank when viewing in arabic locale + +* #3090 [fixed] - error mysql8 + +* #3089 [fixed] - not getting price after changing configurable options + +* #3087 [fixed] - after installation, first product registration does not open detailed page, I only opened from the second product + +* #3079 [fixed] - Tracking Number in My Account + +* #3077 [fixed] - How to change validation messages to spanish not working + +* #3076 [fixed] - checkout disable when add new shipping address + +* #3073 [fixed] - HTML entities are not being decoded when editing attribute options + +* #3070 [fixed] - Edit Attribute -> Add Option or Swatch Item Error 404 for Indonesia(id) country code + +* #3068 [fixed] - Inactive inventory source are get select in channel and products + +* #3067 [fixed] - PHP Notice: date_default_timezone_set(): Timezone ID 'Asia/JakartaAsia/Kolkata' is invalid + +* #3061 [fixed] - CORS errors + +* #3054 [fixed] - customer is getting exception while cancel order + +* #3053 [fixed] - [Velocity] Checkout: Shipping/Billing Address Name, email does not get updated + +* #3051 [fixed] - error while migrate bagisto manually from console command + +* #3050 [fixed] - Can't override models + +* #3048 [fixed] - "nwidart/laravel-modules": "^3.2", is the wrong version for laravel 6.* + +* #3047 [fixed] - The qty of configurable product is 0 when merging cart + +* #3044 [fixed] - Getting exception when click on view shopping cart if adding group product in cart that contains variants of configurable product. + +* #3040 [fixed] - Api logout not working.. + +* #3038 [fixed] - Trying to get property 'code' of non-object + +* #3037 [fixed] - error mysql 8.0.20 bagisto v 1.1.2 + +* #3036 [fixed] - Shipping address options not shown + +* #3035 [fixed] - Please update pwa for bagisto + +* #3032 [fixed] - [Critical] Onecheckout preventing to continue to shipping method after selecting address + +* #3030 [fixed] - Api for coupons.. + +* #3029 [fixed] - velocity theme not fully responsive + +* #3026 [fixed] - Date validation error when editing Booking Products + +* #3025 [fixed] - save address return error 500 + +* #3024 [fixed] - Blank order comment shouldn't added + +* #3022 [fixed] - storage/ should not be included in .gitignore + +* #3021 [fixed] - Deactivating the last category of level1 renders only level2 etc. from deactivated category + +* #3020 [fixed] - Images can not add on velocity theme + +* #3018 [fixed] - Icons are not showing on imac + +* #3014 [fixed] - Support for Responsive Admin Panel + +* #3011 [fixed] - The product is in cart or not + +* #3009 [fixed] - Featured product slider and new product slider is not working + +* #3005 [fixed] - One page checkout creating new address in profile every time. + +* #3004 [fixed] - Category Deactivation not working + +* #3001 [fixed] - Getting Error Exception when view order details + +* #3000 [fixed] - arabic product in home page Not lined up in one format + +* #2997 [fixed] - Category show sidebar + +* #2996 [fixed] - Incomplete products JSON when type is grouped or bundled + +* #2995 [fixed] - filter is not showing when search product from search bar + +* #2994 [fixed] - Shipping method not getting updated after changing the zip code. + +* #2991 [fixed] - Filters not showing in small devices + +* #2990 [fixed] - Facebook Pixel integration for Laravel + +* #2987 [fixed] - mult address + +* #2985 [fixed] - Product category is not saving + +* #2981 [fixed] - When paying with Paypal the user can change the amounts of the products + +* #2974 [fixed] - Thumbnails are not generating on mobile ifproduct has more than 4 photos + +* #2973 [fixed] - force the execution of the shipping methods trigger + +* #2972 [fixed] - can add to homescreen on mobile device in velocity theme + +* #2971 [fixed] - Need to add the possibility to translate velocity metadata + +* #2969 [fixed] - Cancel icon is not visible in velocity theme for customer order detail + +* #2964 [fixed] - Exception when buying non stockable item via API + +* #2950 [fixed] - multiple error message on installer + +* #2949 [fixed] - failed to migrate with new database using installer + +* #2942 [fixed] - Randomize New and Featured Products + +* #2937 [fixed] - Checkout old theme + +* #2936 [fixed] - change the admin route for another + +* #2931 [fixed] - Customer pays order in PayPal but there is no record in bagisto + +* #2893 [fixed] - When creating a shipment, display items invoiced + +* #2889 [fixed] - timezone drop down field is not visible in web installer + +* #2888 [fixed] - Always Default locale should be selected when add new product for each channels + +* #2886 [fixed] - Configuration option for Compare + +* #2874 [fixed] - Order, payment process and payment metadata + +* #2868 [fixed] - Cart (customer) address not persisted during the checkout + +* #2863 [fixed] - Search Product Name and Description + +* #2844 [fixed] - showing product image of each color in configurable product + +* #2805 [fixed] - the sku should be all in caps + +* #2804 [fixed] - There should be order review section instead of complete section on checkout page + +* #2800 [fixed] - Add the ability to change Attribute Family for Products + +* #2795 [fixed] - Cart error merging if you authenticate having items with low stock + +* #2789 [fixed] - Product channel and locale dropdowns in the admin dashboard not working + +* #2766 [fixed] - Needs User friendly UI for the event booking in product page + +* #2762 [fixed] - Seeder: SQL Error: Duplicate entry for '1' key 'PRIMARY' + +* #2725 [fixed] - Variants should not be created if cofigurable product created failed + +* #2720 [fixed] - Error during migration on php artisan migrate + +* #2702 [fixed] - Getting broken image for products and category. + +* #2590 [fixed] - hi everyone i'm wondering if customers after register could give a referral code ?? + +* #2415 [fixed] - Add TO CART button should replace by “BOOk NOW” button for booking product. + +* #2159 [fixed] - Taking more time to load product details in shopping cart. + +* #2141 [fixed] - SQLSTATE[42S02]: Base table or view not found: 1146 Table '[DB_PREFIX].category_translations' doesn't exist + +* #2060 [fixed] - auto generate coupon accordion not getting hidden while selecting no specific coupons + +* #2009 [fixed] - Using AWS S3 for storage + +* #1981 [fixed] - If customer update his address at time of checkout and save this address then address doesn't get save and also on checkout page old address displays. + +* #1656 [fixed] - Validation error in Phone Field while Adding Address + +* #1522 [fixed] - Quick Links broken + +* #1370 [fixed] - install fails at the last step + +* #1362 [fixed] - Site logo and Category Image are broken + +* #1258 [fixed] - If payment is done through paypal then invoice should generate automatically and status of Order should be processing. + +* #1246 [fixed] - Implement a feature to import product through csv file. + +* #985 [fixed] - Dynamically insert products + +* #838 [fixed] - Packages as composer dependency + +* #824 [fixed] - Framework is not supporting I.E 11 browser. + +* #343 [fixed] - Translation strings are missing from awful amount of controllers when returning responses with flash. And optimise translation strings for faster static translations. + +## **v1.1.2 (28th of April 2020)** - *Release* * [feature] - Now customer can cancel order. * [feature] - Auto and manual currency exchange rates update feature added. - - -* #797 [fixed] - Add new module - -* #2453 [fixed] - Velocity theme is not loading on fresh instance - -* #2691 [fixed] - Shipping and Payment methods automatically selected on Checkout oage - -* #2752 [fixed] - Error when you create or update a new catalog under root - -* #2793 [fixed] - Stock Check Incorrect for Configurable Items - -* #2826 [fixed] - Not able to view cart icon - -* #2869 [fixed] - Updating "Velocity meta data" throws QueryException - -* #2871 [fixed] - Refund throws "Undefined index: shipping" error - -* #2875 [fixed] - Deleting brands that have been assigned to products causes checkout error - -* #2884 [fixed] - Undefined Index slot: when add to cart rental booking - -* #2890 [fixed] - cart rule condition (price in cart) always set to equal or less than when select greater than/less than - -* #2895 [fixed] - The type hint of view in this blade file is 'address' - there is no tag in any provider which loads view with this type hint. - -* #2896 [fixed] - There are two fields with having same value of name attribute one is hidden and other is of its desired type - is this redundant code or its solving any purpose? - -* #2897 [fixed] - Inventory status field should be passed through validation for boolean in its backend controller. - -* #2898 [fixed] - error when viewing a category and then wanting to change the language of the page in mobile view - -* #2899 [fixed] - showing the configured products as radio button - -* #2900 [fixed] - getting different variant of a configurable product in front end - -* #2901 [fixed] - Error when creating a category - -* #2908 [fixed] - A class is missing from the Velocity ProductRepositiry file - -* #2914 [fixed] - Filter not showing on mobile, also sorting not working on mobile - -* #2915 [fixed] - filters are missing on mobile view. - -* #2919 [fixed] - Header Content not working on other languages - -* #2925 [fixed] - exception for php version 7.4 - -* #2938 [fixed] - Extend Model Class - -* #2939 [fixed] - get product description for API without html tags - -* #2940 [fixed] - creating categories have error - -* #2943 [fixed] - Scroll images is not working +* #2954 [fixed] - The merging cart function does not work when already added all items of product into customer cart * #2945 [fixed] - API product detail return empty array -* #2954 [fixed] - The merging cart function does not work when already added all items of product into customer cart +* #2943 [fixed] - Scroll images is not working +* #2940 [fixed] - creating categories have error -## **v1.1.0 (24th of March 2020)** - *Release* +* #2939 [fixed] - get product description for API without html tags -* #797 [fixed] - Add new module +* #2938 [fixed] - Extend Model Class -* #826 [fixed] - Impossible to create the root directory "". +* #2925 [fixed] - exception for php version 7.4 -* #2152 [fixed] - Product images are not showing +* #2919 [fixed] - Header Content not working on other languages -* #2329 [fixed] - Getting exception on frontend after updating meta data. +* #2915 [fixed] - filters are missing on mobile view. -* #2354 [fixed] - possible integrate this payment +* #2914 [fixed] - Filter not showing on mobile, also sorting not working on mobile -* #2543 [fixed] - Sliders Text should be translatable +* #2908 [fixed] - A class is missing from the Velocity ProductRepositiry file -* #2558 [fixed] - Sliders Text should be translatable +* #2901 [fixed] - Error when creating a category -* #2619 [fixed] - Issue when category slug & product slug are same +* #2900 [fixed] - getting different variant of a configurable product in front end -* #2684 [fixed] - API checkout/cart returns null for guest user +* #2899 [fixed] - showing the configured products as radio button -* #2691 [fixed] - Shipping and Payment methods automatically selected on Checkout oage +* #2898 [fixed] - error when viewing a category and then wanting to change the language of the page in mobile view -* #2706 [fixed] - Getting exception on editing category for pt_BR locale in php 7.4 +* #2897 [fixed] - Inventory status field should be passed through validation for boolean in its backend controller. -* #2708 [fixed] - Able to create booking product from back date. +* #2896 [fixed] - There are two fields with having same value of name attribute one is hidden and other is of its desired type - is this redundant code or its solving any purpose? -* #2713 [fixed] - fix the invoice header in pdf +* #2895 [fixed] - The type hint of view in this blade file is 'address' - there is no tag in any provider which loads view with this type hint. -* #2726 [fixed] - is shop.js the vue framework ?? +* #2890 [fixed] - cart rule condition (price in cart) always set to equal or less than when select greater than/less than -* #2752 [fixed] - Error when you create or update a new catalog under root +* #2884 [fixed] - Undefined Index slot: when add to cart rental booking -* #2763 [fixed] - error to add rental booking into cart - -* #2764 [fixed] - fix UI when select back_date of booking product,the calendar icon is set on another place - -* #2765 [fixed] - Email settings configuration values are not write in .env file - -* #2768 [fixed] - Getting exception in cart when remove one ticket from event booking from backend - -* #2769 [fixed] - Can't delete Exchange Rates data - -* #2774 [fixed] - How to add new icon in bagisto admin panel? - -* #2775 [fixed] - compare icon is missing in each product for default theme - -* #2776 [fixed] - compare option in side bar menu at customer panel should be available - -* #2778 [fixed] - Issue in customer profile dropdown. - -* #2779 [fixed] - Issue on checkout page, email should ask first as in default theme. - -* #2780 [fixed] - Sidebar layout issue. - -* #2781 [fixed] - Mobile menu is not showing correct sub-menu - -* #2784 [fixed] - One booking for many days slot time issue - -* #2785 [fixed] - missing address details in checkout page - -* #2786 [fixed] - Getting error message on adding product to compare product from search page. - -* #2788 [fixed] - guest_checkout is missing from edit product - -* #2790 [fixed] - Minicart disable when use new languages only velocity theme - -* #2792 [fixed] - Weight Validation Inconsistencies - -* #2793 [fixed] - Stock Check Incorrect for Configurable Items - -* #2794 [fixed] - When allow backorder is enabled, display a message available for order rather than in stock. - -* #2796 [fixed] - Try to create category in windows 10 getting exception - -* #2801 [fixed] - Address with more than 2 lines is not added correctly to the cart_address table - -* #2807 [fixed] - Illegal mix of collations - -* #2808 [fixed] - Correct the spelling on registration page. - -* #2810 [fixed] - UI issue on compare similar item page. - -* #2811 [fixed] - how to change checkout proccess - -* #2812 [fixed] - getting timezone error while setup - -* #2813 [fixed] - Ui issue if there is only one product in compare page. - -* #2814 [fixed] - variant product's name aren't update when select their options in Front - -* #2818 [fixed] - Not able to view menu in velocity theme on storefront - -* #2821 [fixed] - Address Line is Null in Emails - -* #2825 [fixed] - PHP Notice: - -* #2827 [fixed] - default local not changing in storefront in velocity theme - -* #2828 [fixed] - currency change error on velocity theme - -* #2829 [fixed] - changing home page content in velocity and npm - -* #2832 [fixed] - Illegal mix of collations - -* #2834 [fixed] - Layout issue in compare page in pt_BR locale - -* #2837 [fixed] - subscription bar content source code is not visible in text editor - -* #2840 [fixed] - Velocity theme is not available on fresh install - -* #2845 [fixed] - Implement custom RegistrationController - -* #2846 [fixed] - does not show next step - -* #2847 [fixed] - Class 'Faker\Factory' not found - -* #2849 [fixed] - Can not add my stylesheet to Velocity theme - -* #2850 [fixed] - admin crash on save configration - -* #2851 [fixed] - Fix date picker icon layout at dashboard - -* #2856 [fixed] - Issue with Sort by functionality, when open any category it by defaults show Newest First but after changing sort by when again select newest first it shows different product. - -* #2865 [fixed] - Save order taking so long time 30s - -* #2866 [fixed] - ayout issue when customer save addresses form +* #2875 [fixed] - Deleting brands that have been assigned to products causes checkout error * #2871 [fixed] - Refund throws "Undefined index: shipping" error +* #2869 [fixed] - Updating "Velocity meta data" throws QueryException + +* #2826 [fixed] - Not able to view cart icon + +* #2793 [fixed] - Stock Check Incorrect for Configurable Items + +* #2752 [fixed] - Error when you create or update a new catalog under root + +* #2691 [fixed] - Shipping and Payment methods automatically selected on Checkout oage + +* #2453 [fixed] - Velocity theme is not loading on fresh instance + +* #797 [fixed] - Add new module + +## **v1.1.1 (14th of April 2020)** - *Release* + * #2876 [fixed] - Place order is disable at checkout when select shipping address +* #2871 [fixed] - Refund throws "Undefined index: shipping" error +* #2866 [fixed] - ayout issue when customer save addresses form +* #2865 [fixed] - Save order taking so long time 30s +* #2856 [fixed] - Issue with Sort by functionality, when open any category it by defaults show Newest First but after changing sort by when again select newest first it shows different product. + +* #2851 [fixed] - Fix date picker icon layout at dashboard + +* #2850 [fixed] - admin crash on save configration + +* #2849 [fixed] - Can not add my stylesheet to Velocity theme + +* #2847 [fixed] - Class 'Faker\Factory' not found + +* #2846 [fixed] - does not show next step + +* #2845 [fixed] - Implement custom RegistrationController + +* #2840 [fixed] - Velocity theme is not available on fresh install + +* #2837 [fixed] - subscription bar content source code is not visible in text editor + +* #2834 [fixed] - Layout issue in compare page in pt_BR locale + +* #2832 [fixed] - Illegal mix of collations + +* #2829 [fixed] - changing home page content in velocity and npm + +* #2828 [fixed] - currency change error on velocity theme + +* #2827 [fixed] - default local not changing in storefront in velocity theme + +* #2825 [fixed] - PHP Notice: + +* #2821 [fixed] - Address Line is Null in Emails + +* #2818 [fixed] - Not able to view menu in velocity theme on storefront + +* #2814 [fixed] - variant product's name aren't update when select their options in Front + +* #2813 [fixed] - Ui issue if there is only one product in compare page. + +* #2812 [fixed] - getting timezone error while setup + +* #2811 [fixed] - how to change checkout proccess + +* #2810 [fixed] - UI issue on compare similar item page. + +* #2808 [fixed] - Correct the spelling on registration page. + +* #2807 [fixed] - Illegal mix of collations + +* #2801 [fixed] - Address with more than 2 lines is not added correctly to the cart_address table + +* #2796 [fixed] - Try to create category in windows 10 getting exception + +* #2794 [fixed] - When allow backorder is enabled, display a message available for order rather than in stock. + +* #2793 [fixed] - Stock Check Incorrect for Configurable Items + +* #2792 [fixed] - Weight Validation Inconsistencies + +* #2790 [fixed] - Minicart disable when use new languages only velocity theme + +* #2788 [fixed] - guest_checkout is missing from edit product + +* #2786 [fixed] - Getting error message on adding product to compare product from search page. + +* #2785 [fixed] - missing address details in checkout page + +* #2784 [fixed] - One booking for many days slot time issue + +* #2781 [fixed] - Mobile menu is not showing correct sub-menu + +* #2780 [fixed] - Sidebar layout issue. + +* #2779 [fixed] - Issue on checkout page, email should ask first as in default theme. + +* #2778 [fixed] - Issue in customer profile dropdown. + +* #2776 [fixed] - compare option in side bar menu at customer panel should be available + +* #2775 [fixed] - compare icon is missing in each product for default theme + +* #2774 [fixed] - How to add new icon in bagisto admin panel? + +* #2769 [fixed] - Can't delete Exchange Rates data + +* #2768 [fixed] - Getting exception in cart when remove one ticket from event booking from backend + +* #2765 [fixed] - Email settings configuration values are not write in .env file + +* #2764 [fixed] - fix UI when select back_date of booking product,the calendar icon is set on another place + +* #2763 [fixed] - error to add rental booking into cart + +* #2752 [fixed] - Error when you create or update a new catalog under root + +* #2726 [fixed] - is shop.js the vue framework ?? + +* #2713 [fixed] - fix the invoice header in pdf + +* #2708 [fixed] - Able to create booking product from back date. + +* #2706 [fixed] - Getting exception on editing category for pt_BR locale in php 7.4 + +* #2691 [fixed] - Shipping and Payment methods automatically selected on Checkout oage + +* #2684 [fixed] - API checkout/cart returns null for guest user + +* #2619 [fixed] - Issue when category slug & product slug are same + +* #2558 [fixed] - Sliders Text should be translatable + +* #2543 [fixed] - Sliders Text should be translatable + +* #2354 [fixed] - possible integrate this payment + +* #2329 [fixed] - Getting exception on frontend after updating meta data. + +* #2152 [fixed] - Product images are not showing + +* #826 [fixed] - Impossible to create the root directory "". + +* #797 [fixed] - Add new module ## **v1.1.0 (24th of March 2020)** - *Release* @@ -526,284 +1158,283 @@ * [feature] Impletment compare product feature. -* #2525 [fixed] - Add more settings to the installers +* #2732 [fixed] - missing product's quick view in category page -* #2541 [fixed] - Showing product's price with the price including tax +* #2726 [fixed] - is shop.js the vue framework ?? -* #2552 [fixed] - error mysql 8 +* #2724 [fixed] - table bookings quantity should update in existing booking added in cart for same slot/date -* #2556 [fixed] - Logo and favicon broken +* #2723 [fixed] - Compare product icon on header showing counts of compare product but there are no product in compare list. -* #2562 [fixed] - error catalog/categories/create +* #2722 [fixed] - warning showing when update event booking cart quantity from the product page -* #2563 [fixed] - error add in cart +* #2717 [fixed] - Getting error message on adding rental product in cart if rental booking is not available for that day. -* #2567 [fixed] - Error 404 found when click on compare product image +* #2716 [fixed] - After saving the default booking time product selected time for date range changes to 00:00:00 ,because of which not able to book appointment on frontend. -* #2568 [fixed] - Getting exception when update to default theme from the comparison page +* #2715 [fixed] - Error message should throw if "To" time is less than "From". -* #2572 [fixed] - custom attribute values are not show in comparison product +* #2707 [fixed] - Getting exception when generate invoice in appointment booking -* #2573 [fixed] - Add to wishlist icon is missing with each product in comparison page +* #2704 [fixed] - product's assigned category can't be removed -* #2574 [fixed] - Quick view popup should be closed when click add to compare +* #2693 [fixed] - Booking product page - add to cart button js error -* #2575 [fixed] - compare feature is not working from the product page for logged In customer +* #2678 [fixed] - UI issue in rental booking product page -* #2576 [fixed] - Compare icon is missing for new products +* #2677 [fixed] - error on cart when rental booking update from backend -* #2577 [fixed] - GUI installer stuck at Migration & Seed +* #2674 [fixed] - Rental booking added to cart without selecting date in velocity -* #2578 [fixed] - Impossible to create the root directory +* #2672 [fixed] - wrong price calculated in cart for rental booking -* #2579 [fixed] - error menu mobile - -* #2580 [fixed] - error recently viewed products in mobile - -* #2581 [fixed] - admin/configuration/general/design - -* #2583 [fixed] - Display 3D product preivew image - -* #2584 [fixed] - Not getting root category name, in categories. - -* #2585 [fixed] - Product name , description and short description gets removed on editing the product. - -* #2586 [fixed] - APP_TIMEZONE and APP_LOCALE values should be available in env file. - -* #2587 [fixed] - Getting some warning during installation. - -* #2589 [fixed] - Getting exception on editing header content on php 7.4. - -* #2596 [fixed] - Allow Email Verification field is given twice, once in Configure->Customers->Setting and in Configure->Admin->Email.Currently if field is enable from any one grid and disable from other grid, then its not working. - -* #2597 [fixed] - Not getting email for "Send Inventory Source Notification E-mail". - -* #2599 [fixed] - login required when add compare product from the category page - -* #2601 [fixed] - all comparable product remove from list only when single product remove - -* #2602 [fixed] - Catalog default image height should be equal to the original image in Velocity - -* #2604 [fixed] - Not able to make product as comparable from the category page as logged In user - -* #2605 [fixed] - Attribute is comparable (yes/no) option is missing when add new attribute - -* #2606 [fixed] - custom attributes are not Visible on Product View Page on Front-end - -* #2607 [fixed] - Getting exception on editing category for pt_BR locale in php 7.4 - -* #2608 [fixed] - Getting exception on creating category. - -* #2609 [fixed] - product removed from comparison page when update product by name - -* #2611 [fixed] - installer error - -* #2612 [fixed] - available slots are not showing for current date even if slot time is not expired - -* #2613 [fixed] - Propaganistas/Laravel-Intl is abandoned - -* #2614 [fixed] - table booking slot time is expired still exist in cart - -* #2619 [fixed] - Issue when category slug & product slug are same - -* #2621 [fixed] - i create a site and it is up kind of noting works - -* #2626 [fixed] - Tax rates zipcode is still required when enable zip range is disabled - -* #2630 [fixed] - Error exception when add booking product - -* #2634 [fixed] - console error when select slots in default booking - -* #2635 [fixed] - Default Booking details remove from edit page for many booking of one day - -* #2636 [fixed] - Error alert when add to cart a simple product from the home page - -* #2638 [fixed] - customer status is not translated in customer list - -* #2639 [fixed] - category slug field should show warning if saved blank header content - -* #2643 [fixed] - Getting exception when add appointment booking - -* #2645 [fixed] - Error on adding product to cart - -* #2649 [fixed] - Incorrect slot time for one booking many days in product page - -* #2650 [fixed] - remove slot duration from the booking product page - -* #2654 [fixed] - warning should be removed once slot field is selected - -* #2658 [fixed] - slot, duration, break time are not saved for appointment booking - -* #2660 [fixed] - guest capacity value is not saved in table booking - -* #2661 [fixed] - Charged_per drop down value is not updating for table booking - -* #2284 [fixed] - Layout issue in pt_BR locale. - -* #2468 [fixed] - Guest user is able to checkout if guest checkout is disabled. - -* #2517 [fixed] - Product description text gets selected if click on drop down icon on product page - -* #2549 [fixed] - Invoices aren't legally valid. - -* #2571 [fixed] - compare icon should classify the total compare product added in the comparison page - -* #2592 [fixed] - No menu for the logged in user when clicking over comparison - -* #2593 [fixed] - Cannot read property 'disabled' of undefined" on filter price - -* #2594 [fixed] - After refund quantity of product increases. - -* #2595 [fixed] - Category image size issue in velocity theme. - -* #2610 [fixed] - some of the attribute values aren't visible in comparison page - -* #2616 [fixed] - Tiny Bug on Admin Pages - -* #2637 [fixed] - blank admin page if username contains whitespaces in email configuration - -* #2640 [fixed] - product moved to cart still showing in wishlist - -* #2641 [fixed] - Issue on wishlist page for guest user - -* #2644 [fixed] - Add an option to set encryption to none during installation - -* #2646 [fixed] - error missing wishlist or compare icon on mobile view - -* #2666 [fixed] - fix the UI for booking product in cart page - -* #2667 [fixed] - By default wishlist option is selected in cart +* #2671 [fixed] - Error on moving booking product to wishlist * #2670 [fixed] - Booking product should be removed from the cart when selected slot time expired * #2669 [fixed] - Browser compatibility issue -* #2671 [fixed] - Error on moving booking product to wishlist +* #2667 [fixed] - By default wishlist option is selected in cart -* #2672 [fixed] - wrong price calculated in cart for rental booking +* #2666 [fixed] - fix the UI for booking product in cart page -* #2674 [fixed] - Rental booking added to cart without selecting date in velocity +* #2661 [fixed] - Charged_per drop down value is not updating for table booking -* #2677 [fixed] - error on cart when rental booking update from backend +* #2660 [fixed] - guest capacity value is not saved in table booking -* #2678 [fixed] - UI issue in rental booking product page +* #2658 [fixed] - slot, duration, break time are not saved for appointment booking -* #2693 [fixed] - Booking product page - add to cart button js error +* #2654 [fixed] - warning should be removed once slot field is selected -* #2704 [fixed] - product's assigned category can't be removed +* #2650 [fixed] - remove slot duration from the booking product page -* #2707 [fixed] - Getting exception when generate invoice in appointment booking +* #2649 [fixed] - Incorrect slot time for one booking many days in product page -* #2715 [fixed] - Error message should throw if "To" time is less than "From". +* #2646 [fixed] - error missing wishlist or compare icon on mobile view -* #2716 [fixed] - After saving the default booking time product selected time for date range changes to 00:00:00 ,because of which not able to book appointment on frontend. +* #2645 [fixed] - Error on adding product to cart -* #2717 [fixed] - Getting error message on adding rental product in cart if rental booking is not available for that day. +* #2644 [fixed] - Add an option to set encryption to none during installation -* #2722 [fixed] - warning showing when update event booking cart quantity from the product page +* #2643 [fixed] - Getting exception when add appointment booking -* #2723 [fixed] - Compare product icon on header showing counts of compare product but there are no product in compare list. +* #2641 [fixed] - Issue on wishlist page for guest user -* #2724 [fixed] - table bookings quantity should update in existing booking added in cart for same slot/date +* #2640 [fixed] - product moved to cart still showing in wishlist -* #2726 [fixed] - is shop.js the vue framework ?? +* #2639 [fixed] - category slug field should show warning if saved blank header content -* #2732 [fixed] - missing product's quick view in category page +* #2638 [fixed] - customer status is not translated in customer list +* #2637 [fixed] - blank admin page if username contains whitespaces in email configuration -## **v1.0.0 (24th of February 2020)** - *Release* +* #2636 [fixed] - Error alert when add to cart a simple product from the home page -* #2377 [fixed] - Getting exception on creating a new category under any other category. +* #2635 [fixed] - Default Booking details remove from edit page for many booking of one day -* #2378 [fixed] - Exception when adding velocity content page list. +* #2634 [fixed] - console error when select slots in default booking -* #2381 [fixed] - Fix UI for linked product (related/upsell/cross sell). +* #2630 [fixed] - Error exception when add booking product -* #2382 [fixed] - If customer use shipping address other than billing address then also its showing the billing address in shipping address section. +* #2626 [fixed] - Tax rates zipcode is still required when enable zip range is disabled -* #2384 [fixed] - Vat id validation rule was changed, since then test action has failed. +* #2621 [fixed] - i create a site and it is up kind of noting works -* #2386 [fixed] - bundle product details in cart page should contains item details. +* #2619 [fixed] - Issue when category slug & product slug are same -* #2388 [fixed] - order placed with blank billing address. +* #2616 [fixed] - Tiny Bug on Admin Pages -* #2390 [fixed] - Add hyphen in Orders->Information section of customer. +* #2614 [fixed] - table booking slot time is expired still exist in cart -* #2391 [fixed] - toogle footer configuration is always true in velocity. +* #2613 [fixed] - Propaganistas/Laravel-Intl is abandoned -* #2393 [fixed] - Getting exception on adding grouped product to cart. +* #2612 [fixed] - available slots are not showing for current date even if slot time is not expired -* #2395 [fixed] - Can not add grouped product in cart more than one time, getting error message. +* #2611 [fixed] - installer error -* #2397 [fixed] - Company Name field is not available in Billing Address form in velocity theme. +* #2610 [fixed] - some of the attribute values aren't visible in comparison page -* #2398 [fixed] - Mark all mandatory field in customer's billing address form. +* #2609 [fixed] - product removed from comparison page when update product by name -* #2399 [fixed] - Layout issue in bundle product. +* #2608 [fixed] - Getting exception on creating category. -* #2400 [fixed] - Whole product price should be in bold in bundle product. +* #2607 [fixed] - Getting exception on editing category for pt_BR locale in php 7.4 -* #2403 [fixed] - Ratings icons show in category product view list for 0 rating. +* #2606 [fixed] - custom attributes are not Visible on Product View Page on Front-end -* #2410 [fixed] - error button update cart. +* #2605 [fixed] - Attribute is comparable (yes/no) option is missing when add new attribute -* #2417 [fixed] - Inactive payment method or shipping method are showing in velocity footer content. +* #2604 [fixed] - Not able to make product as comparable from the category page as logged In user -* #2424 [fixed] - Exception on frontend when default currency is not selected in currencies. +* #2602 [fixed] - Catalog default image height should be equal to the original image in Velocity -* #2436 [fixed] - error velocity/meta-data. +* #2601 [fixed] - all comparable product remove from list only when single product remove -* #2438 [fixed] - Add hyphen - with cart discount amount. +* #2599 [fixed] - login required when add compare product from the category page -* #2439 [fixed] - can't process for further checkout steps until all the address line filled. +* #2597 [fixed] - Not getting email for "Send Inventory Source Notification E-mail". -* #2435 [fixed] - error composer install --no-dev. +* #2596 [fixed] - Allow Email Verification field is given twice, once in Configure->Customers->Setting and in Configure->Admin->Email.Currently if field is enable from any one grid and disable from other grid, then its not working. -* #2440 [fixed] - Advertisement Three Images is not working. +* #2595 [fixed] - Category image size issue in velocity theme. -* #2449 [fixed] - error clicking empty cart. +* #2594 [fixed] - After refund quantity of product increases. -* #2451 [fixed] - Invoice totals don't tally when using non-base currency. +* #2593 [fixed] - Cannot read property 'disabled' of undefined" on filter price -* #2458 [fixed] - Payment method is not updating on checkout page. +* #2592 [fixed] - No menu for the logged in user when clicking over comparison -* #2459 [fixed] - shipping address field warning for guest customer not translated. +* #2589 [fixed] - Getting exception on editing header content on php 7.4. -* #2463 [fixed] - Tax rate is not update on same product. +* #2587 [fixed] - Getting some warning during installation. + +* #2586 [fixed] - APP_TIMEZONE and APP_LOCALE values should be available in env file. + +* #2585 [fixed] - Product name , description and short description gets removed on editing the product. + +* #2584 [fixed] - Not getting root category name, in categories. + +* #2583 [fixed] - Display 3D product preivew image + +* #2581 [fixed] - admin/configuration/general/design + +* #2580 [fixed] - error recently viewed products in mobile + +* #2579 [fixed] - error menu mobile + +* #2578 [fixed] - Impossible to create the root directory + +* #2577 [fixed] - GUI installer stuck at Migration & Seed + +* #2576 [fixed] - Compare icon is missing for new products + +* #2575 [fixed] - compare feature is not working from the product page for logged In customer + +* #2574 [fixed] - Quick view popup should be closed when click add to compare + +* #2573 [fixed] - Add to wishlist icon is missing with each product in comparison page + +* #2572 [fixed] - custom attribute values are not show in comparison product + +* #2571 [fixed] - compare icon should classify the total compare product added in the comparison page + +* #2568 [fixed] - Getting exception when update to default theme from the comparison page + +* #2567 [fixed] - Error 404 found when click on compare product image + +* #2563 [fixed] - error add in cart + +* #2562 [fixed] - error catalog/categories/create + +* #2556 [fixed] - Logo and favicon broken + +* #2552 [fixed] - error mysql 8 + +* #2549 [fixed] - Invoices aren't legally valid. + +* #2541 [fixed] - Showing product's price with the price including tax + +* #2525 [fixed] - Add more settings to the installers + +* #2517 [fixed] - Product description text gets selected if click on drop down icon on product page * #2468 [fixed] - Guest user is able to checkout if guest checkout is disabled. -* #2469 [fixed] - Displaying wrong amount for bundle product in cart. +* #2284 [fixed] - Layout issue in pt_BR locale. -* #2479 [fixed] - showing total review in recent view product list. - -* #2480 [fixed] - Exception is thrown by mini cart when catalog rule is applied on configurable product. - -* #2488 [fixed] - ErrorException When Editing product in different language. - -* #2490 [fixed] - missing zip code & country field in checkout page. - -* #2491 [fixed] - Exception on Create/Edit bundle product. - -* #2494 [fixed] - Product total inventory for all locale is showing wrong. - -* #2500 [fixed] - Database reset fails. - -* #2519 [fixed] - filter price attribute throwing an exception. - -* #2526 [fixed] - Velocity backend route is not accessible in arabic locale. - -* #2527 [fixed] - Order datagrid is using static text. - -* #2529 [fixed] - [Webkul\Admin] Customer firstname & lastname are using wrong translations - -* #2533 [fixed] - Shipment email notification is not sending to customer. - -* #2538 [fixed] - unable to place order for virtual & downloadable product. +## **v1.0.0 (24th of February 2020)** - *Release* * #2540 [fixed] - add to cart and whitelist button overlap. -## **v1.0.0-BETA1(5th of February 2020)** - *Release* +* #2538 [fixed] - unable to place order for virtual & downloadable product. + +* #2533 [fixed] - Shipment email notification is not sending to customer. + +* #2529 [fixed] - [Webkul\Admin] Customer firstname & lastname are using wrong translations + +* #2527 [fixed] - Order datagrid is using static text. + +* #2526 [fixed] - Velocity backend route is not accessible in arabic locale. + +* #2519 [fixed] - filter price attribute throwing an exception. + +* #2500 [fixed] - Database reset fails. + +* #2494 [fixed] - Product total inventory for all locale is showing wrong. + +* #2491 [fixed] - Exception on Create/Edit bundle product. + +* #2490 [fixed] - missing zip code & country field in checkout page. + +* #2488 [fixed] - ErrorException When Editing product in different language. + +* #2480 [fixed] - Exception is thrown by mini cart when catalog rule is applied on configurable product. + +* #2479 [fixed] - showing total review in recent view product list. + +* #2469 [fixed] - Displaying wrong amount for bundle product in cart. + +* #2468 [fixed] - Guest user is able to checkout if guest checkout is disabled. + +* #2463 [fixed] - Tax rate is not update on same product. + +* #2459 [fixed] - shipping address field warning for guest customer not translated. + +* #2458 [fixed] - Payment method is not updating on checkout page. + +* #2451 [fixed] - Invoice totals don't tally when using non-base currency. + +* #2449 [fixed] - error clicking empty cart. + +* #2440 [fixed] - Advertisement Three Images is not working. + +* #2439 [fixed] - can't process for further checkout steps until all the address line filled. + +* #2438 [fixed] - Add hyphen - with cart discount amount. + +* #2436 [fixed] - error velocity/meta-data. + +* #2435 [fixed] - error composer install --no-dev. + +* #2424 [fixed] - Exception on frontend when default currency is not selected in currencies. + +* #2417 [fixed] - Inactive payment method or shipping method are showing in velocity footer content. + +* #2410 [fixed] - error button update cart. + +* #2403 [fixed] - Ratings icons show in category product view list for 0 rating. + +* #2400 [fixed] - Whole product price should be in bold in bundle product. + +* #2399 [fixed] - Layout issue in bundle product. + +* #2398 [fixed] - Mark all mandatory field in customer's billing address form. + +* #2397 [fixed] - Company Name field is not available in Billing Address form in velocity theme. + +* #2395 [fixed] - Can not add grouped product in cart more than one time, getting error message. + +* #2393 [fixed] - Getting exception on adding grouped product to cart. + +* #2391 [fixed] - toogle footer configuration is always true in velocity. + +* #2390 [fixed] - Add hyphen in Orders->Information section of customer. + +* #2388 [fixed] - order placed with blank billing address. + +* #2386 [fixed] - bundle product details in cart page should contains item details. + +* #2384 [fixed] - Vat id validation rule was changed, since then test action has failed. + +* #2382 [fixed] - If customer use shipping address other than billing address then also its showing the billing address in shipping address section. + +* #2381 [fixed] - Fix UI for linked product (related/upsell/cross sell). + +* #2378 [fixed] - Exception when adding velocity content page list. + +* #2377 [fixed] - Getting exception on creating a new category under any other category. + +## **v1.0.0-BETA1 (5th of February 2020)** - *Release* * [feature] Updated to laravel version 6. @@ -811,244 +1442,244 @@ * [feature] Provided new theme (Velocity). -* #1971 [fixed] - Filter is not working properly for id column in autogenerated coupon codes in cart rule. - -* #1976 [fixed] - Default attribute set should be selected in root category. - -* #1977 [fixed] - On editing the product, selected category for that product is not checked. - -* #1978 [fixed] - Getting exception if changing the locale from cart page, if translation is not written for that product. - -* #1979 [fixed] - Wrong calculation at customer as well as at admin end in due amount and grandtotal. - -* #1980 [fixed] - UI issue in cart on changing locale. - -* #1983 [fixed] - Getting exception on deleting admin logo. - -* #1986 [fixed] - Subscribe to newsletter does not work. - -* #1987 [fixed] - MySQL query very slow if products in category is around 3000 - -* #1988 [fixed] - Country and City Names in Create Address is not coming based on Locale - -* #1994 [fixed] - Tax rate should only depend on zip code, state field should not be mandatory. - -* #1997 [fixed] - Getting exception on adding attribute or creating product in bagisto on php version 7.4 . - -* #1998 [fixed] - Showing product sale amount as zero when creating a product, and a existing catalog rule apply on it. - -* #2001 [fixed] - php artisan route:list throws error. - -* #2012 [fixed] - Getting exception when clicking on view all under review section at product page. - -* #2033 [fixed] - API route for products throws error - -* #2045 [fixed] - Login option is not coming while checkout with existing customer mail id. - -* #2051 [fixed] - Forgot password not working due to recent changes in mail keys. - -* #2054 [fixed] -Automatically 1st item of bundle is getting selected as a default after saving product. - -* #2058 [fixed] - Not getting any validation message if entered admin credentials are wrong. - -* #2066 [fixed] - Exception while writing product review. - -* #2071 [fixed] - Customer is not getting forget password email. - -* #2074 [fixed] - Getting exception while creating bundle type product. - -* #2075 [fixed] - Getting exception if trying to select any parent category of root. - -* #2087 [fixed] - Getting exception while adding configurable/bundle/grouped/Downloadable Type product to cart. - -* #2088 [fixed] - Getting exception on customer login. - -* #2089 [fixed] - Info missing on printing invoice at customer and admin end. - -* #2114 [fixed] - getting exception while recovering admin password in case admin did not enter the details in env. - -* #2118 [fixed] - Installation issue, getting exception on migrate command. - -* #2119 [fixed] - confirm password is not matching even if admin is entering similar password in password and confirm password. - -* #2120 [fixed] - Not able to add new user as while creating user password its giving error confirm password doesn't match. - -* #2124 [fixed] - Able to make all product as default while creating bundle product in select type option. - -* #2128 [fixed] - Click on add attribute, error is thrown. - -* #2132 [fixed] - Price range slider not displaying. - -* #2139 [fixed] - Logic error in exchange rate calculation - -* #2143 [fixed] - Attributes filterable checkbox - those who do not know will think that a bug! - -* #2145 [fixed] - Emails don't work on registration. - -* #2146 [fixed] - Getting exception on creating bundle product without any option. - -* #2147 [fixed] - Sort order of bundle product doesn't work. - -* #2149 [fixed] - Ui issue when installing through installer.Getting issue on all steps. - -* #2162 [fixed] - product's special price should not greater than price - -* #2164 [fixed] - Redirect to incorrect url when click on finish button after installing through installer. - -* #2165 [fixed] - Incorrect error message for password field of email configuration. - -* #2167 [fixed] - Translation issue in Payment description field. - -* #2168 [fixed] - locale direction drop down always select ltr. - -* #2173 [fixed] - While creating locales value in direction dropdown is in small letters, but when you edit any locale it display in caps. - -* #2176 [fixed] - product price section is not getting highlighted if the warning exists - -* #2177 [fixed] - Category image can be add from anywhere - -* #2181 [fixed] - Getting exception when creating/editing customer address from Admin end. - -* #2182 [fixed] - missing option in Customer's Gender at admin end - -* #2183 [fixed] - Add toolkit for add address. - -* #2185 [fixed] - Issue with configurable product in case of multi-locale. Variation option are not visible. - -* #2186 [fixed] - Ui issue in cart for pt_BR locale. Quantity is not visible properly. - -* #2190 [fixed] - sku should be shown in product list if new product created - -* #2192 [fixed] - For all grid of sales section when you export data in csv file order id heading is mentioned as increment id. - -* #2196 [fixed] - No data is visible in state field, issue exist at all section where state field is used. - -* #2198 [fixed] - Remove vat id column from customer address list - -* #2202 [fixed] - catalog rule is not applied on product if product's special price date expired - -* #2203 [fixed] - saved categories are not checked in condition of catalog/cart rule - -* #2204 [fixed] - category tree view doesn't visible in catalog rule condition - -* #2207 [fixed] - Unable to delete Category. - -* #2226 [fixed] - Wrong price of product in case of multiple exchange rates. - -* #2225 [fixed] - Not able to export products according to locale. - -* #2227 [fixed] - Grand total column is not visible in invoice pdf, also getting incorrect currency symbol for grand total. - -* #2237 [fixed] - Error when trying to login with app.php locale set to ja - -* #2239 [fixed] - User should not be able to create multiple channel with same hostname. - -* #2241 [fixed] - Getting exception when save a category with category logo - -* #2242 [fixed] - Velocity Header content status should be enabled by default - -* #2243 [fixed] - Remove Image's Height [in Pixel], Image's Width [in Pixel] ,Image Alignment and Number of Subcategory from Configure->velocity theme. - -* #2245 [fixed] - slider content is not showing in velocity theme - -* #2246 [fixed] - slider disable functionality is not working - -* #2248 [fixed] - Provide an option to remove filter in velocity theme. - -* #2251 [fixed] - configurable product options could not get select - -* #2252 [fixed] - Customer is not able to save his/her address in velocity theme. - -* #2253 [fixed] - Customer is not able to update his/her profile in velocity theme. - -* #2254 [fixed] - Fix layout for remove button in cart page for guest customer - -* #2255 [fixed] - Theme page search bar passing string value - -* #2256 [fixed] - close previous popup if clicks on another item - -* #2257 [fixed] - User profile drop down option should be highlighted on mouse hover - -* #2258 [fixed] - Need space between highlighted text. - -* #2259 [fixed] - Not getting category image on category page in velocity theme. - -* #2260 [fixed] - Not getting the header content. - -* #2261 [fixed] - Not getting option to delete review if customer has reviewed only single product. - -* #2262 [fixed] - Issue with multiple images of same product - -* #2263 [fixed] - Fix issue at review page - -* #2264 [fixed] - Getting internal server error when place an order - -* #2265 [fixed] - Migrate issues with Velocity - -* #2271 [fixed] - When clicking on dropdown icon of all categories, category list didn't get open. - -* #2273 [fixed] - Not getting password reset email for velocity theme - -* #2274 [fixed] - Not able to proceed for checkout after checkout/onepage in case of downloadable product. - -* #2275 [fixed] - Not able to place order for virtual product. - -* #2279 [fixed] - Sort By functionality is not working in velocity theme. - -* #2280 [fixed] - Getting small checkbox on refreshing the product page. - -* #2281 [fixed] - In minicart, whole minicart container is showing clickable but only image section gets clicked to redirect to product page. - -* #2282 [fixed] - Not getting any validation error message if current date of birth is selected in customer profile. - -* #2285 [fixed] - Layout issue if category length is large. - -* #2288 [fixed] - Getting exception on mass delete of review from admin end. - -* #2293 [fixed] - On mouse hover, remove filter should be display as clickable. - -* #2295 [fixed] - Admin not able to add address for customer if he add data in Vat id field. - -* #2297 [fixed] - Always showing 0 review for product in recently viewed product even if multiple reviews are given to that product. - -* #2299 [fixed] - Vat Id field is not given is customer address form. - -* #2300 [fixed] - Alignment issue on Billing Information page if user enter an email that already exist. - -* #2317 [fixed] - Multiple pop-up opens at a time if product is added in cart and customer click on Welcome Guest to sign-up or login. - -* #2318 [fixed] - Slider content is not showing properly on slider in velocity theme. - -* #2319 [fixed] - UI issue when customer redirect to reset password page through received email. - -* #2320 [fixed] - UI issue in sort by functionality. - -* #2325 [fixed] - Left arrow should be out of the image area. - -* #2328 [fixed] - Only first three viewed product display in recently viewed section, when customer view 4th product it doesn't get updated. - -* #2330 [fixed] - different route found for customer profile edit page for velocity theme - -* #2335 [fixed] - Success alert should be shown while adding product into cart - -* #2336 [fixed] - Issue with multi level category. - -* #2337 [fixed] - Not getting category logo for 3rd level category. - -* #2339 [fixed] - Selected content type is not showing in Content Pages List - -* #2340 [fixed] - Correct the success message on deleting content. - -* #2341 [fixed] - wish listed items should be labeled by move to cart instead of add to cart if product already added in cart - -* #2346 [fixed] - Exception when search product based on selected category from search bar - -* #2355 [fixed] - UI issue when update product policy - -* #2357 [fixed] - Broken image link for locale logo. - -* #2362 [fixed] - Page Link Target of header content always save with self option. +* #2371 [fixed] - Getting exception on updating Category. * #2366 [fixed] - Not able to add logo for category, after saving the category logo gets removed. -* #2371 [fixed] - Getting exception on updating Category. \ No newline at end of file +* #2362 [fixed] - Page Link Target of header content always save with self option. + +* #2357 [fixed] - Broken image link for locale logo. + +* #2355 [fixed] - UI issue when update product policy + +* #2346 [fixed] - Exception when search product based on selected category from search bar + +* #2341 [fixed] - wish listed items should be labeled by move to cart instead of add to cart if product already added in cart + +* #2340 [fixed] - Correct the success message on deleting content. + +* #2339 [fixed] - Selected content type is not showing in Content Pages List + +* #2337 [fixed] - Not getting category logo for 3rd level category. + +* #2336 [fixed] - Issue with multi level category. + +* #2335 [fixed] - Success alert should be shown while adding product into cart + +* #2330 [fixed] - different route found for customer profile edit page for velocity theme + +* #2328 [fixed] - Only first three viewed product display in recently viewed section, when customer view 4th product it doesn't get updated. + +* #2325 [fixed] - Left arrow should be out of the image area. + +* #2320 [fixed] - UI issue in sort by functionality. + +* #2319 [fixed] - UI issue when customer redirect to reset password page through received email. + +* #2318 [fixed] - Slider content is not showing properly on slider in velocity theme. + +* #2317 [fixed] - Multiple pop-up opens at a time if product is added in cart and customer click on Welcome Guest to sign-up or login. + +* #2300 [fixed] - Alignment issue on Billing Information page if user enter an email that already exist. + +* #2299 [fixed] - Vat Id field is not given is customer address form. + +* #2297 [fixed] - Always showing 0 review for product in recently viewed product even if multiple reviews are given to that product. + +* #2295 [fixed] - Admin not able to add address for customer if he add data in Vat id field. + +* #2293 [fixed] - On mouse hover, remove filter should be display as clickable. + +* #2288 [fixed] - Getting exception on mass delete of review from admin end. + +* #2285 [fixed] - Layout issue if category length is large. + +* #2282 [fixed] - Not getting any validation error message if current date of birth is selected in customer profile. + +* #2281 [fixed] - In minicart, whole minicart container is showing clickable but only image section gets clicked to redirect to product page. + +* #2280 [fixed] - Getting small checkbox on refreshing the product page. + +* #2279 [fixed] - Sort By functionality is not working in velocity theme. + +* #2275 [fixed] - Not able to place order for virtual product. + +* #2274 [fixed] - Not able to proceed for checkout after checkout/onepage in case of downloadable product. + +* #2273 [fixed] - Not getting password reset email for velocity theme + +* #2271 [fixed] - When clicking on dropdown icon of all categories, category list didn't get open. + +* #2265 [fixed] - Migrate issues with Velocity + +* #2264 [fixed] - Getting internal server error when place an order + +* #2263 [fixed] - Fix issue at review page + +* #2262 [fixed] - Issue with multiple images of same product + +* #2261 [fixed] - Not getting option to delete review if customer has reviewed only single product. + +* #2260 [fixed] - Not getting the header content. + +* #2259 [fixed] - Not getting category image on category page in velocity theme. + +* #2258 [fixed] - Need space between highlighted text. + +* #2257 [fixed] - User profile drop down option should be highlighted on mouse hover + +* #2256 [fixed] - close previous popup if clicks on another item + +* #2255 [fixed] - Theme page search bar passing string value + +* #2254 [fixed] - Fix layout for remove button in cart page for guest customer + +* #2253 [fixed] - Customer is not able to update his/her profile in velocity theme. + +* #2252 [fixed] - Customer is not able to save his/her address in velocity theme. + +* #2251 [fixed] - configurable product options could not get select + +* #2248 [fixed] - Provide an option to remove filter in velocity theme. + +* #2246 [fixed] - slider disable functionality is not working + +* #2245 [fixed] - slider content is not showing in velocity theme + +* #2243 [fixed] - Remove Image's Height [in Pixel], Image's Width [in Pixel] ,Image Alignment and Number of Subcategory from Configure->velocity theme. + +* #2242 [fixed] - Velocity Header content status should be enabled by default + +* #2241 [fixed] - Getting exception when save a category with category logo + +* #2239 [fixed] - User should not be able to create multiple channel with same hostname. + +* #2237 [fixed] - Error when trying to login with app.php locale set to ja + +* #2227 [fixed] - Grand total column is not visible in invoice pdf, also getting incorrect currency symbol for grand total. + +* #2226 [fixed] - Wrong price of product in case of multiple exchange rates. + +* #2225 [fixed] - Not able to export products according to locale. + +* #2207 [fixed] - Unable to delete Category. + +* #2204 [fixed] - category tree view doesn't visible in catalog rule condition + +* #2203 [fixed] - saved categories are not checked in condition of catalog/cart rule + +* #2202 [fixed] - catalog rule is not applied on product if product's special price date expired + +* #2198 [fixed] - Remove vat id column from customer address list + +* #2196 [fixed] - No data is visible in state field, issue exist at all section where state field is used. + +* #2192 [fixed] - For all grid of sales section when you export data in csv file order id heading is mentioned as increment id. + +* #2190 [fixed] - sku should be shown in product list if new product created + +* #2186 [fixed] - Ui issue in cart for pt_BR locale. Quantity is not visible properly. + +* #2185 [fixed] - Issue with configurable product in case of multi-locale. Variation option are not visible. + +* #2183 [fixed] - Add toolkit for add address. + +* #2182 [fixed] - missing option in Customer's Gender at admin end + +* #2181 [fixed] - Getting exception when creating/editing customer address from Admin end. + +* #2177 [fixed] - Category image can be add from anywhere + +* #2176 [fixed] - product price section is not getting highlighted if the warning exists + +* #2173 [fixed] - While creating locales value in direction dropdown is in small letters, but when you edit any locale it display in caps. + +* #2168 [fixed] - locale direction drop down always select ltr. + +* #2167 [fixed] - Translation issue in Payment description field. + +* #2165 [fixed] - Incorrect error message for password field of email configuration. + +* #2164 [fixed] - Redirect to incorrect url when click on finish button after installing through installer. + +* #2162 [fixed] - product's special price should not greater than price + +* #2149 [fixed] - Ui issue when installing through installer.Getting issue on all steps. + +* #2147 [fixed] - Sort order of bundle product doesn't work. + +* #2146 [fixed] - Getting exception on creating bundle product without any option. + +* #2145 [fixed] - Emails don't work on registration. + +* #2143 [fixed] - Attributes filterable checkbox - those who do not know will think that a bug! + +* #2139 [fixed] - Logic error in exchange rate calculation + +* #2132 [fixed] - Price range slider not displaying. + +* #2128 [fixed] - Click on add attribute, error is thrown. + +* #2124 [fixed] - Able to make all product as default while creating bundle product in select type option. + +* #2120 [fixed] - Not able to add new user as while creating user password its giving error confirm password doesn't match. + +* #2119 [fixed] - confirm password is not matching even if admin is entering similar password in password and confirm password. + +* #2118 [fixed] - Installation issue, getting exception on migrate command. + +* #2114 [fixed] - getting exception while recovering admin password in case admin did not enter the details in env. + +* #2089 [fixed] - Info missing on printing invoice at customer and admin end. + +* #2088 [fixed] - Getting exception on customer login. + +* #2087 [fixed] - Getting exception while adding configurable/bundle/grouped/Downloadable Type product to cart. + +* #2075 [fixed] - Getting exception if trying to select any parent category of root. + +* #2074 [fixed] - Getting exception while creating bundle type product. + +* #2071 [fixed] - Customer is not getting forget password email. + +* #2066 [fixed] - Exception while writing product review. + +* #2058 [fixed] - Not getting any validation message if entered admin credentials are wrong. + +* #2054 [fixed] -Automatically 1st item of bundle is getting selected as a default after saving product. + +* #2051 [fixed] - Forgot password not working due to recent changes in mail keys. + +* #2045 [fixed] - Login option is not coming while checkout with existing customer mail id. + +* #2033 [fixed] - API route for products throws error + +* #2012 [fixed] - Getting exception when clicking on view all under review section at product page. + +* #2001 [fixed] - php artisan route:list throws error. + +* #1998 [fixed] - Showing product sale amount as zero when creating a product, and a existing catalog rule apply on it. + +* #1997 [fixed] - Getting exception on adding attribute or creating product in bagisto on php version 7.4 . + +* #1994 [fixed] - Tax rate should only depend on zip code, state field should not be mandatory. + +* #1988 [fixed] - Country and City Names in Create Address is not coming based on Locale + +* #1987 [fixed] - MySQL query very slow if products in category is around 3000 + +* #1986 [fixed] - Subscribe to newsletter does not work. + +* #1983 [fixed] - Getting exception on deleting admin logo. + +* #1980 [fixed] - UI issue in cart on changing locale. + +* #1979 [fixed] - Wrong calculation at customer as well as at admin end in due amount and grandtotal. + +* #1978 [fixed] - Getting exception if changing the locale from cart page, if translation is not written for that product. + +* #1977 [fixed] - On editing the product, selected category for that product is not checked. + +* #1976 [fixed] - Default attribute set should be selected in root category. + +* #1971 [fixed] - Filter is not working properly for id column in autogenerated coupon codes in cart rule. diff --git a/README.md b/README.md index 7f7c312b4..0ea462763 100755 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ Total Downloads Latest Stable Version License +Backers on Open Collective Backers on Open Collective Sponsors on Open Collective

@@ -62,11 +63,9 @@ Take advantage of two of the hottest frameworks used in this project -- Laravel ### Requirements -* **OS**: Ubuntu 16.04 LTS or higher / Windows 7 or Higher (WampServer / XAMPP). * **SERVER**: Apache 2 or NGINX. * **RAM**: 3 GB or higher. -* **PHP**: 7.2.0 or higher. -* **Processor**: Clock Cycle 1 Ghz or higher. +* **PHP**: 7.3 or higher. * **For MySQL users**: 5.7.23 or higher. * **For MariaDB users**: 10.2.7 or Higher. * **Node**: 8.11.3 LTS or higher. @@ -83,13 +82,7 @@ Take advantage of two of the hottest frameworks used in this project -- Laravel ##### b. Extract the contents of zip and execute the project in your browser: ~~~ -http(s)://localhost/bagisto/public -~~~ - -or - -~~~ -http(s)://example.com/public +http(s)://example.com ~~~ **2. Or you can install Bagisto from your console.** @@ -97,7 +90,7 @@ http(s)://example.com/public ##### Execute these commands below, in order ~~~ -1. composer create-project bagisto/bagisto-standard +1. composer create-project bagisto/bagisto ~~~ ~~~ @@ -164,4 +157,14 @@ Thank you to all our backers! 🙏 Support this project by becoming a sponsor. Your logo will show up here with a link to your website. - +
+ + + +
+ + + + + + diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 4c2d12de3..3fc667cf3 100755 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -14,7 +14,7 @@ class Kernel extends HttpKernel * @var array */ protected $middleware = [ - \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, + \Webkul\Core\Http\Middleware\CheckForMaintenanceMode::class, \App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, \Illuminate\Session\Middleware\StartSession::class, diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php index 454b89b73..20c90f1a2 100755 --- a/app/Providers/AuthServiceProvider.php +++ b/app/Providers/AuthServiceProvider.php @@ -13,7 +13,7 @@ class AuthServiceProvider extends ServiceProvider * @var array */ protected $policies = [ - 'App\Model' => 'App\Policies\ModelPolicy', + // 'App\Model' => 'App\Policies\ModelPolicy', ]; /** diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index 7ac436fbf..94479b57a 100755 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -3,6 +3,8 @@ namespace App\Providers; use Illuminate\Support\Facades\Event; +use Illuminate\Auth\Events\Registered; +use Illuminate\Auth\Listeners\SendEmailVerificationNotification; use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; class EventServiceProvider extends ServiceProvider @@ -13,8 +15,8 @@ class EventServiceProvider extends ServiceProvider * @var array */ // protected $listen = [ - // 'App\Events\Event' => [ - // 'App\Listeners\EventListener', + // Registered::class => [ + // SendEmailVerificationNotification::class, // ], // ]; @@ -26,7 +28,5 @@ class EventServiceProvider extends ServiceProvider public function boot() { parent::boot(); - - // } -} +} \ No newline at end of file diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 265d66d00..ec27958fd 100755 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -14,7 +14,7 @@ class RouteServiceProvider extends ServiceProvider * * @var string */ - protected $namespace = 'App\Http\Controllers'; + // protected $namespace = 'App\Http\Controllers'; /** * Define your route model bindings, pattern filters, etc. @@ -36,8 +36,6 @@ class RouteServiceProvider extends ServiceProvider $this->mapApiRoutes(); $this->mapWebRoutes(); - - // } /** diff --git a/composer.json b/composer.json index 4a7a583a5..0d398b8e0 100755 --- a/composer.json +++ b/composer.json @@ -1,57 +1,55 @@ { "name": "bagisto/bagisto", - "description": "Bagisto Laravel ECommerce", + "description": "Bagisto Laravel E-Commerce", "keywords": [ "framework", "laravel" ], - "license": "MIT", "type": "project", "require": { - "php": "^7.2.5", - "ext-curl": "*", - "ext-intl": "*", - "ext-mbstring": "*", - "ext-openssl": "*", - "ext-pdo": "*", - "ext-pdo_mysql": "*", - "ext-tokenizer": "*", + "php": "^7.3|^8.0", + "algolia/algoliasearch-client-php": "^2.2", "astrotomic/laravel-translatable": "^11.0.0", + "aws/aws-sdk-php": "^3.171", + "babenkoivan/elastic-scout-driver": "^1.1", + "bagistobrasil/bagisto-product-social-share": "^0.1.2", "barryvdh/laravel-debugbar": "^3.1", - "barryvdh/laravel-dompdf": "0.8.6", - "doctrine/dbal": "2.9.2", + "barryvdh/laravel-dompdf": "^0.8", + "doctrine/dbal": "^2.9", + "enshrined/svg-sanitize": "^0.14.0", + "facade/ignition": "^2.3.6", + "fakerphp/faker": "^1.14", "fideloper/proxy": "^4.2", "flynsarmy/db-blade-compiler": "^5.5", - "fzaninotto/faker": "^1.9.1", - "guzzlehttp/guzzle": "~6.3", + "guzzlehttp/guzzle": "^7.0.1", "intervention/image": "^2.4", "intervention/imagecache": "^2.3", - "kalnoy/nestedset": "5.0.1", + "kalnoy/nestedset": "^5.0", + "khaled.alshamaa/ar-php": "^6.0.0", "konekt/concord": "^1.2", - "laravel/framework": "^7.0", - "laravel/socialite": "^4.4", + "laravel/framework": "^8.0", + "laravel/legacy-factories": "^1.1", + "laravel/scout": "^8.0", + "laravel/socialite": "^5.0", "laravel/tinker": "^2.0", - "laravel/ui": "^2.0", - "maatwebsite/excel": "3.1.19", + "laravel/ui": "^3.0", + "maatwebsite/excel": "^3.1.26", + "paypal/paypal-checkout-sdk": "1.0.1", "prettus/l5-repository": "^2.6", "tymon/jwt-auth": "^1.0.0" }, - "require-dev": { - "barryvdh/laravel-debugbar": "^3.1", - "codeception/codeception": "4.1.1", + "codeception/codeception": "^4.1", "codeception/module-asserts": "^1.1", "codeception/module-filesystem": "^1.0", "codeception/module-laravel5": "^1.0", "codeception/module-webdriver": "^1.0", "filp/whoops": "^2.0", - "fzaninotto/faker": "^1.4", "mockery/mockery": "^1.3.1", - "nunomaduro/collision": "^4.1", - "phpunit/phpunit": "^8.5" + "nunomaduro/collision": "^5.3", + "phpunit/phpunit": "^9.5" }, - "replace": { "bagisto/laravel-user": "v0.1.0", "bagisto/laravel-admin": "v0.1.0", @@ -73,42 +71,40 @@ "bagisto/laravel-paypal": "v0.1.0", "bagisto/laravel-discount": "v0.1.0" }, - "autoload": { - "classmap": [ - "database/seeds", - "database/factories" - ], - "psr-4": { - "App\\": "app/", - "Webkul\\User\\": "packages/Webkul/User/src", - "Webkul\\Admin\\": "packages/Webkul/Admin/src", - "Webkul\\Ui\\": "packages/Webkul/Ui/src", - "Webkul\\Category\\": "packages/Webkul/Category/src", - "Webkul\\Checkout\\": "packages/Webkul/Checkout/src", - "Webkul\\Attribute\\": "packages/Webkul/Attribute/src", - "Webkul\\Shop\\": "packages/Webkul/Shop/src", - "Webkul\\Core\\": "packages/Webkul/Core/src", - "Webkul\\Customer\\": "packages/Webkul/Customer/src", - "Webkul\\Inventory\\": "packages/Webkul/Inventory/src", - "Webkul\\Product\\": "packages/Webkul/Product/src", - "Webkul\\Theme\\": "packages/Webkul/Theme/src", - "Webkul\\Shipping\\": "packages/Webkul/Shipping/src", - "Webkul\\Payment\\": "packages/Webkul/Payment/src", - "Webkul\\Paypal\\": "packages/Webkul/Paypal/src", - "Webkul\\Sales\\": "packages/Webkul/Sales/src", - "Webkul\\Tax\\": "packages/Webkul/Tax/src", - "Webkul\\API\\": "packages/Webkul/API", - "Webkul\\CatalogRule\\": "packages/Webkul/CatalogRule/src", - "Webkul\\CartRule\\": "packages/Webkul/CartRule/src", - "Webkul\\Rule\\": "packages/Webkul/Rule/src", - "Webkul\\CMS\\": "packages/Webkul/CMS/src", - "Webkul\\Velocity\\": "packages/Webkul/Velocity/src", - "Webkul\\BookingProduct\\": "packages/Webkul/BookingProduct/src", - "Webkul\\SocialLogin\\": "packages/Webkul/SocialLogin/src" - } + "psr-4": { + "App\\": "app/", + "Database\\Factories\\": "database/factories/", + "Database\\Seeders\\": "database/seeders/", + "Webkul\\User\\": "packages/Webkul/User/src", + "Webkul\\Admin\\": "packages/Webkul/Admin/src", + "Webkul\\Ui\\": "packages/Webkul/Ui/src", + "Webkul\\Category\\": "packages/Webkul/Category/src", + "Webkul\\Checkout\\": "packages/Webkul/Checkout/src", + "Webkul\\Attribute\\": "packages/Webkul/Attribute/src", + "Webkul\\Shop\\": "packages/Webkul/Shop/src", + "Webkul\\Core\\": "packages/Webkul/Core/src", + "Webkul\\Customer\\": "packages/Webkul/Customer/src", + "Webkul\\Inventory\\": "packages/Webkul/Inventory/src", + "Webkul\\Product\\": "packages/Webkul/Product/src", + "Webkul\\Theme\\": "packages/Webkul/Theme/src", + "Webkul\\Shipping\\": "packages/Webkul/Shipping/src", + "Webkul\\Payment\\": "packages/Webkul/Payment/src", + "Webkul\\Paypal\\": "packages/Webkul/Paypal/src", + "Webkul\\Sales\\": "packages/Webkul/Sales/src", + "Webkul\\Tax\\": "packages/Webkul/Tax/src", + "Webkul\\API\\": "packages/Webkul/API", + "Webkul\\CatalogRule\\": "packages/Webkul/CatalogRule/src", + "Webkul\\CartRule\\": "packages/Webkul/CartRule/src", + "Webkul\\Rule\\": "packages/Webkul/Rule/src", + "Webkul\\CMS\\": "packages/Webkul/CMS/src", + "Webkul\\Velocity\\": "packages/Webkul/Velocity/src", + "Webkul\\BookingProduct\\": "packages/Webkul/BookingProduct/src", + "Webkul\\SocialLogin\\": "packages/Webkul/SocialLogin/src", + "Webkul\\DebugBar\\": "packages/Webkul/DebugBar/src", + "Webkul\\Marketing\\": "packages/Webkul/Marketing/src" + } }, - "autoload-dev": { "psr-4": { "Tests\\Acceptance\\": "tests/acceptance/", @@ -117,26 +113,21 @@ "Tests\\Trigger\\": "tests/trigger/" } }, - "extra": { "laravel": { "dont-discover": [ - "barryvdh/laravel-debugbar", "laravel/dusk" ] } }, - "scripts": { "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], - "post-create-project-cmd": [ "@php artisan key:generate", "Webkul\\Core\\Events\\ComposerEvents::postCreateProject" ], - "post-autoload-dump": [ "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", "@php artisan package:discover" @@ -147,6 +138,13 @@ "vendor/bin/codecept run unit", "vendor/bin/codecept run functional", "vendor/bin/codecept run trigger" + ], + "test-win": [ + "@set -e", + "@php artisan migrate:fresh --env=testing", + "vendor\\bin\\codecept.bat run unit", + "vendor\\bin\\codecept.bat run functional", + "vendor\\bin\\codecept.bat run trigger" ] }, "config": { @@ -156,4 +154,4 @@ }, "minimum-stability": "dev", "prefer-stable": true - } +} diff --git a/composer.lock b/composer.lock index 0583a4c69..04a2b7968 100644 --- a/composer.lock +++ b/composer.lock @@ -4,30 +4,104 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "a64bc9824943e94bc0643161f1bb59d4", + "content-hash": "9de092b253ba36be14bb379b51782427", "packages": [ { - "name": "astrotomic/laravel-translatable", - "version": "v11.8.1", + "name": "algolia/algoliasearch-client-php", + "version": "2.7.3", "source": { "type": "git", - "url": "https://github.com/Astrotomic/laravel-translatable.git", - "reference": "2b7cfd6c48c5340b2d06d8edc8b6995580e64f65" + "url": "https://github.com/algolia/algoliasearch-client-php.git", + "reference": "142a382e4649db0cb64d9eb8893872f1a4ba8dd3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Astrotomic/laravel-translatable/zipball/2b7cfd6c48c5340b2d06d8edc8b6995580e64f65", - "reference": "2b7cfd6c48c5340b2d06d8edc8b6995580e64f65", + "url": "https://api.github.com/repos/algolia/algoliasearch-client-php/zipball/142a382e4649db0cb64d9eb8893872f1a4ba8dd3", + "reference": "142a382e4649db0cb64d9eb8893872f1a4ba8dd3", "shasum": "" }, "require": { - "illuminate/contracts": "5.8.* || ^6.0 || ^7.0", - "illuminate/database": "5.8.* || ^6.0 || ^7.0", - "illuminate/support": "5.8.* || ^6.0 || ^7.0", + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^5.3 || ^7.0 || ^8.0", + "psr/http-message": "^1.0", + "psr/log": "^1.0", + "psr/simple-cache": "^1.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.0", + "fzaninotto/faker": "^1.8", + "julienbourdeau/phpunit": "4.8.37", + "symfony/yaml": "^2.0 || ^4.0" + }, + "suggest": { + "guzzlehttp/guzzle": "If you prefer to use Guzzle HTTP client instead of the Http Client implementation provided by the package" + }, + "bin": [ + "bin/algolia-doctor" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-2.0": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Algolia\\AlgoliaSearch\\": "src/" + }, + "files": [ + "src/Http/Psr7/functions.php", + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Algolia Team", + "email": "contact@algolia.com" + } + ], + "description": "Algolia Search API Client for PHP", + "keywords": [ + "algolia", + "api", + "client", + "php", + "search" + ], + "support": { + "issues": "https://github.com/algolia/algoliasearch-client-php/issues", + "source": "https://github.com/algolia/algoliasearch-client-php/tree/2.7.3" + }, + "time": "2020-12-22T11:27:03+00:00" + }, + { + "name": "astrotomic/laravel-translatable", + "version": "v11.9.1", + "source": { + "type": "git", + "url": "https://github.com/Astrotomic/laravel-translatable.git", + "reference": "d853a3c34be42941dc83c5cddd9e1e98c71abae1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Astrotomic/laravel-translatable/zipball/d853a3c34be42941dc83c5cddd9e1e98c71abae1", + "reference": "d853a3c34be42941dc83c5cddd9e1e98c71abae1", + "shasum": "" + }, + "require": { + "illuminate/contracts": "5.8.* || ^6.0 || ^7.0 || ^8.0", + "illuminate/database": "5.8.* || ^6.0 || ^7.0 || ^8.0", + "illuminate/support": "5.8.* || ^6.0 || ^7.0 || ^8.0", "php": ">=7.2" }, "require-dev": { - "orchestra/testbench": "3.8.* || ^4.0 || ^5.0", + "orchestra/testbench": "3.8.* || ^4.0 || ^5.0 || ^6.0", "phpunit/phpunit": "^8.0 || ^9.0" }, "type": "library", @@ -69,9 +143,15 @@ "laravel", "translation" ], + "support": { + "docs": "https://docs.astrotomic.info/laravel-translatable", + "email": "dev@astrotomic.info", + "issues": "https://github.com/Astrotomic/laravel-translatable/issues", + "source": "https://github.com/Astrotomic/laravel-translatable" + }, "funding": [ { - "url": "https://plant.treeware.earth/Astrotomic/laravel-translatable", + "url": "https://offset.earth/treeware", "type": "custom" }, { @@ -81,44 +161,387 @@ { "url": "https://issuehunt.io/r/astrotomic", "type": "issuehunt" - }, - { - "url": "https://opencollective.com/astrotomic", - "type": "open_collective" } ], - "time": "2020-04-23T08:57:35+00:00" + "time": "2020-11-19T14:10:38+00:00" }, { - "name": "barryvdh/laravel-debugbar", - "version": "v3.3.3", + "name": "aws/aws-sdk-php", + "version": "3.176.4", "source": { "type": "git", - "url": "https://github.com/barryvdh/laravel-debugbar.git", - "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5" + "url": "https://github.com/aws/aws-sdk-php.git", + "reference": "7cafb35d3ef9944f542a97dde4a6bb52ad0f45d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/57f2219f6d9efe41ed1bc880d86701c52f261bf5", - "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/7cafb35d3ef9944f542a97dde4a6bb52ad0f45d1", + "reference": "7cafb35d3ef9944f542a97dde4a6bb52ad0f45d1", "shasum": "" }, "require": { - "illuminate/routing": "^5.5|^6|^7", - "illuminate/session": "^5.5|^6|^7", - "illuminate/support": "^5.5|^6|^7", - "maximebf/debugbar": "^1.15.1", - "php": ">=7.0", - "symfony/debug": "^3|^4|^5", - "symfony/finder": "^3|^4|^5" + "ext-json": "*", + "ext-pcre": "*", + "ext-simplexml": "*", + "guzzlehttp/guzzle": "^5.3.3|^6.2.1|^7.0", + "guzzlehttp/promises": "^1.4.0", + "guzzlehttp/psr7": "^1.7.0", + "mtdowling/jmespath.php": "^2.6", + "php": ">=5.5" }, "require-dev": { - "laravel/framework": "5.5.x" + "andrewsville/php-token-reflection": "^1.4", + "aws/aws-php-sns-message-validator": "~1.0", + "behat/behat": "~3.0", + "doctrine/cache": "~1.4", + "ext-dom": "*", + "ext-openssl": "*", + "ext-pcntl": "*", + "ext-sockets": "*", + "nette/neon": "^2.3", + "paragonie/random_compat": ">= 2", + "phpunit/phpunit": "^4.8.35|^5.4.3", + "psr/cache": "^1.0", + "psr/simple-cache": "^1.0", + "sebastian/comparator": "^1.2.3" + }, + "suggest": { + "aws/aws-php-sns-message-validator": "To validate incoming SNS notifications", + "doctrine/cache": "To use the DoctrineCacheAdapter", + "ext-curl": "To send requests using cURL", + "ext-openssl": "Allows working with CloudFront private distributions and verifying received SNS messages", + "ext-sockets": "To use client-side monitoring" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Aws\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Amazon Web Services", + "homepage": "http://aws.amazon.com" + } + ], + "description": "AWS SDK for PHP - Use Amazon Web Services in your PHP project", + "homepage": "http://aws.amazon.com/sdkforphp", + "keywords": [ + "amazon", + "aws", + "cloud", + "dynamodb", + "ec2", + "glacier", + "s3", + "sdk" + ], + "support": { + "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", + "issues": "https://github.com/aws/aws-sdk-php/issues", + "source": "https://github.com/aws/aws-sdk-php/tree/3.176.4" + }, + "time": "2021-03-30T18:17:07+00:00" + }, + { + "name": "babenkoivan/elastic-adapter", + "version": "v1.13.0", + "source": { + "type": "git", + "url": "https://github.com/babenkoivan/elastic-adapter.git", + "reference": "68e006c893e3fba4594e9788c6cccbe507bd8508" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/babenkoivan/elastic-adapter/zipball/68e006c893e3fba4594e9788c6cccbe507bd8508", + "reference": "68e006c893e3fba4594e9788c6cccbe507bd8508", + "shasum": "" + }, + "require": { + "elasticsearch/elasticsearch": "^7.3", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.16", + "phpstan/phpstan": "^0.12.32", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "ElasticAdapter\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ivan Babenko", + "email": "babenko.i.a@gmail.com" + } + ], + "description": "Adapter for official PHP Elasticsearch client", + "keywords": [ + "adapter", + "client", + "elastic", + "elasticsearch", + "php" + ], + "support": { + "issues": "https://github.com/babenkoivan/elastic-adapter/issues", + "source": "https://github.com/babenkoivan/elastic-adapter/tree/v1.13.0" + }, + "funding": [ + { + "url": "https://www.buymeacoffee.com/ivanbabenko", + "type": "buymeacoffee" + }, + { + "url": "https://paypal.me/babenkoi", + "type": "paypal" + } + ], + "time": "2021-02-16T07:25:59+00:00" + }, + { + "name": "babenkoivan/elastic-client", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/babenkoivan/elastic-client.git", + "reference": "a1e818b444c5e64afd33a578aa4a009c54aff065" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/babenkoivan/elastic-client/zipball/a1e818b444c5e64afd33a578aa4a009c54aff065", + "reference": "a1e818b444c5e64afd33a578aa4a009c54aff065", + "shasum": "" + }, + "require": { + "elasticsearch/elasticsearch": "^7.3", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.16", + "orchestra/testbench": "^6.12", + "phpstan/phpstan": "^0.12.32", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "ElasticClient\\ServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "ElasticClient\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ivan Babenko", + "email": "babenko.i.a@gmail.com" + } + ], + "description": "The official PHP Elasticsearch client integrated with Laravel", + "keywords": [ + "client", + "elastic", + "elasticsearch", + "laravel", + "php" + ], + "support": { + "issues": "https://github.com/babenkoivan/elastic-client/issues", + "source": "https://github.com/babenkoivan/elastic-client/tree/v1.2.0" + }, + "funding": [ + { + "url": "https://www.buymeacoffee.com/ivanbabenko", + "type": "buymeacoffee" + }, + { + "url": "https://paypal.me/babenkoi", + "type": "paypal" + } + ], + "time": "2021-02-16T07:28:08+00:00" + }, + { + "name": "babenkoivan/elastic-scout-driver", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/babenkoivan/elastic-scout-driver.git", + "reference": "3bc0105de26664731a9d5e8a145b010eea8fad4a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/babenkoivan/elastic-scout-driver/zipball/3bc0105de26664731a9d5e8a145b010eea8fad4a", + "reference": "3bc0105de26664731a9d5e8a145b010eea8fad4a", + "shasum": "" + }, + "require": { + "babenkoivan/elastic-adapter": "^1.13", + "babenkoivan/elastic-client": "^1.2", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "babenkoivan/elastic-migrations": "^1.4", + "friendsofphp/php-cs-fixer": "^2.16", + "laravel/legacy-factories": "^1.1", + "laravel/scout": "^8.0", + "orchestra/testbench": "^6.12", + "phpstan/phpstan": "^0.12.32", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "ElasticScoutDriver\\ServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "ElasticScoutDriver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ivan Babenko", + "email": "babenko.i.a@gmail.com" + } + ], + "description": "Elasticsearch driver for Laravel Scout", + "keywords": [ + "driver", + "elastic", + "elasticsearch", + "laravel", + "php", + "scout" + ], + "support": { + "issues": "https://github.com/babenkoivan/elastic-scout-driver/issues", + "source": "https://github.com/babenkoivan/elastic-scout-driver/tree/v1.3.0" + }, + "funding": [ + { + "url": "https://www.buymeacoffee.com/ivanbabenko", + "type": "buymeacoffee" + }, + { + "url": "https://paypal.me/babenkoi", + "type": "paypal" + } + ], + "time": "2021-02-25T12:18:25+00:00" + }, + { + "name": "bagistobrasil/bagisto-product-social-share", + "version": "0.1.3", + "source": { + "type": "git", + "url": "https://github.com/bagistobrasil/bagisto-product-social-share.git", + "reference": "ebc80456b68db409fe53a9adff74d00d72593797" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bagistobrasil/bagisto-product-social-share/zipball/ebc80456b68db409fe53a9adff74d00d72593797", + "reference": "ebc80456b68db409fe53a9adff74d00d72593797", + "shasum": "" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "BagistoBrasil\\ProductSocialShare\\Providers\\ProductSocialShareProvider" + ], + "aliases": [] + } + }, + "autoload": { + "psr-4": { + "BagistoBrasil\\ProductSocialShare\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Carlos Gartner", + "email": "contato@carlosgartner.com.br" + } + ], + "support": { + "issues": "https://github.com/bagistobrasil/bagisto-product-social-share/issues", + "source": "https://github.com/bagistobrasil/bagisto-product-social-share/tree/0.1.3" + }, + "time": "2021-02-10T11:42:52+00:00" + }, + { + "name": "barryvdh/laravel-debugbar", + "version": "v3.5.2", + "source": { + "type": "git", + "url": "https://github.com/barryvdh/laravel-debugbar.git", + "reference": "cae0a8d1cb89b0f0522f65e60465e16d738e069b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/cae0a8d1cb89b0f0522f65e60465e16d738e069b", + "reference": "cae0a8d1cb89b0f0522f65e60465e16d738e069b", + "shasum": "" + }, + "require": { + "illuminate/routing": "^6|^7|^8", + "illuminate/session": "^6|^7|^8", + "illuminate/support": "^6|^7|^8", + "maximebf/debugbar": "^1.16.3", + "php": ">=7.2", + "symfony/debug": "^4.3|^5", + "symfony/finder": "^4.3|^5" + }, + "require-dev": { + "mockery/mockery": "^1.3.3", + "orchestra/testbench-dusk": "^4|^5|^6", + "phpunit/phpunit": "^8.5|^9.0", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.5-dev" }, "laravel": { "providers": [ @@ -155,31 +578,35 @@ "profiler", "webprofiler" ], + "support": { + "issues": "https://github.com/barryvdh/laravel-debugbar/issues", + "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.5.2" + }, "funding": [ { "url": "https://github.com/barryvdh", "type": "github" } ], - "time": "2020-05-05T10:53:32+00:00" + "time": "2021-01-06T14:21:44+00:00" }, { "name": "barryvdh/laravel-dompdf", - "version": "v0.8.6", + "version": "v0.8.7", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-dompdf.git", - "reference": "d7108f78cf5254a2d8c224542967f133e5a6d4e8" + "reference": "30310e0a675462bf2aa9d448c8dcbf57fbcc517d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/d7108f78cf5254a2d8c224542967f133e5a6d4e8", - "reference": "d7108f78cf5254a2d8c224542967f133e5a6d4e8", + "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/30310e0a675462bf2aa9d448c8dcbf57fbcc517d", + "reference": "30310e0a675462bf2aa9d448c8dcbf57fbcc517d", "shasum": "" }, "require": { "dompdf/dompdf": "^0.8", - "illuminate/support": "^5.5|^6|^7", + "illuminate/support": "^5.5|^6|^7|^8", "php": ">=7" }, "type": "library", @@ -217,30 +644,40 @@ "laravel", "pdf" ], - "time": "2020-02-25T20:44:34+00:00" + "support": { + "issues": "https://github.com/barryvdh/laravel-dompdf/issues", + "source": "https://github.com/barryvdh/laravel-dompdf/tree/master" + }, + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2020-09-07T11:50:18+00:00" }, { "name": "brick/math", - "version": "0.8.15", + "version": "0.9.2", "source": { "type": "git", "url": "https://github.com/brick/math.git", - "reference": "9b08d412b9da9455b210459ff71414de7e6241cd" + "reference": "dff976c2f3487d42c1db75a3b180e2b9f0e72ce0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/9b08d412b9da9455b210459ff71414de7e6241cd", - "reference": "9b08d412b9da9455b210459ff71414de7e6241cd", + "url": "https://api.github.com/repos/brick/math/zipball/dff976c2f3487d42c1db75a3b180e2b9f0e72ce0", + "reference": "dff976c2f3487d42c1db75a3b180e2b9f0e72ce0", "shasum": "" }, "require": { "ext-json": "*", - "php": "^7.1|^8.0" + "php": "^7.1 || ^8.0" }, "require-dev": { "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^7.5.15|^8.5", - "vimeo/psalm": "^3.5" + "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0", + "vimeo/psalm": "4.3.2" }, "type": "library", "autoload": { @@ -263,13 +700,17 @@ "brick", "math" ], + "support": { + "issues": "https://github.com/brick/math/issues", + "source": "https://github.com/brick/math/tree/0.9.2" + }, "funding": [ { "url": "https://tidelift.com/funding/github/packagist/brick/math", "type": "tidelift" } ], - "time": "2020-04-15T15:59:35+00:00" + "time": "2021-01-20T22:51:39+00:00" }, { "name": "dnoegel/php-xdg-base-dir", @@ -302,20 +743,24 @@ "MIT" ], "description": "implementation of xdg base directory specification for php", + "support": { + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" + }, "time": "2019-12-04T15:06:13+00:00" }, { "name": "doctrine/cache", - "version": "1.10.1", + "version": "1.10.2", "source": { "type": "git", "url": "https://github.com/doctrine/cache.git", - "reference": "35a4a70cd94e09e2259dfae7488afc6b474ecbd3" + "reference": "13e3381b25847283a91948d04640543941309727" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/35a4a70cd94e09e2259dfae7488afc6b474ecbd3", - "reference": "35a4a70cd94e09e2259dfae7488afc6b474ecbd3", + "url": "https://api.github.com/repos/doctrine/cache/zipball/13e3381b25847283a91948d04640543941309727", + "reference": "13e3381b25847283a91948d04640543941309727", "shasum": "" }, "require": { @@ -384,6 +829,10 @@ "redis", "xcache" ], + "support": { + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/1.10.x" + }, "funding": [ { "url": "https://www.doctrine-project.org/sponsorship.html", @@ -398,35 +847,36 @@ "type": "tidelift" } ], - "time": "2020-05-27T16:24:54+00:00" + "time": "2020-07-07T18:54:01+00:00" }, { "name": "doctrine/dbal", - "version": "v2.9.2", + "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9" + "reference": "67d56d3203b33db29834e6b2fcdbfdc50535d796" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9", - "reference": "22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/67d56d3203b33db29834e6b2fcdbfdc50535d796", + "reference": "67d56d3203b33db29834e6b2fcdbfdc50535d796", "shasum": "" }, "require": { "doctrine/cache": "^1.0", + "doctrine/deprecations": "^0.5.3", "doctrine/event-manager": "^1.0", "ext-pdo": "*", - "php": "^7.1" + "php": "^7.1 || ^8" }, "require-dev": { - "doctrine/coding-standard": "^5.0", - "jetbrains/phpstorm-stubs": "^2018.1.2", - "phpstan/phpstan": "^0.10.1", - "phpunit/phpunit": "^7.4", - "symfony/console": "^2.0.5|^3.0|^4.0", - "symfony/phpunit-bridge": "^3.4.5|^4.0.5" + "doctrine/coding-standard": "8.2.0", + "jetbrains/phpstorm-stubs": "2020.2", + "phpstan/phpstan": "0.12.81", + "phpunit/phpunit": "^7.5.20|^8.5|9.5.0", + "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", + "vimeo/psalm": "4.6.4" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -435,12 +885,6 @@ "bin/doctrine-dbal" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.9.x-dev", - "dev-develop": "3.0.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" @@ -451,6 +895,10 @@ "MIT" ], "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, { "name": "Roman Borschel", "email": "roman@code-factory.org" @@ -459,10 +907,6 @@ "name": "Benjamin Eberlei", "email": "kontakt@beberlei.de" }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, { "name": "Jonathan Wage", "email": "jonwage@gmail.com" @@ -473,31 +917,103 @@ "keywords": [ "abstraction", "database", + "db2", "dbal", + "mariadb", + "mssql", "mysql", - "persistence", + "oci8", + "oracle", + "pdo", "pgsql", - "php", - "queryobject" + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlanywhere", + "sqlite", + "sqlserver", + "sqlsrv" ], - "time": "2018-12-31T03:27:51+00:00" + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/2.13.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "type": "tidelift" + } + ], + "time": "2021-03-28T18:10:53+00:00" }, { - "name": "doctrine/event-manager", - "version": "1.1.0", + "name": "doctrine/deprecations", + "version": "v0.5.3", "source": { "type": "git", - "url": "https://github.com/doctrine/event-manager.git", - "reference": "629572819973f13486371cb611386eb17851e85c" + "url": "https://github.com/doctrine/deprecations.git", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/629572819973f13486371cb611386eb17851e85c", - "reference": "629572819973f13486371cb611386eb17851e85c", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/9504165960a1f83cc1480e2be1dd0a0478561314", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0|^7.0|^8.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0", + "psr/log": "^1.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/v0.5.3" + }, + "time": "2021-03-21T12:59:47+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/41370af6a30faa9dc0368c4a6814d596e81aba7f", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" }, "conflict": { "doctrine/common": "<2.9@dev" @@ -556,7 +1072,25 @@ "event system", "events" ], - "time": "2019-11-10T09:48:07+00:00" + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/1.1.x" + }, + "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%2Fevent-manager", + "type": "tidelift" + } + ], + "time": "2020-05-29T18:28:51+00:00" }, { "name": "doctrine/inflector", @@ -633,6 +1167,10 @@ "uppercase", "words" ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.x" + }, "funding": [ { "url": "https://www.doctrine-project.org/sponsorship.html", @@ -709,6 +1247,10 @@ "parser", "php" ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.1" + }, "funding": [ { "url": "https://www.doctrine-project.org/sponsorship.html", @@ -727,28 +1269,28 @@ }, { "name": "dompdf/dompdf", - "version": "v0.8.5", + "version": "v0.8.3", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "6782abfc090b132134cd6cea0ec6d76f0fce2c56" + "reference": "75f13c700009be21a1965dc2c5b68a8708c22ba2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/6782abfc090b132134cd6cea0ec6d76f0fce2c56", - "reference": "6782abfc090b132134cd6cea0ec6d76f0fce2c56", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/75f13c700009be21a1965dc2c5b68a8708c22ba2", + "reference": "75f13c700009be21a1965dc2c5b68a8708c22ba2", "shasum": "" }, "require": { "ext-dom": "*", "ext-mbstring": "*", - "phenx/php-font-lib": "^0.5.1", - "phenx/php-svg-lib": "^0.3.3", - "php": "^7.1" + "phenx/php-font-lib": "0.5.*", + "phenx/php-svg-lib": "0.3.*", + "php": ">=5.4.0" }, "require-dev": { - "phpunit/phpunit": "^7.5", - "squizlabs/php_codesniffer": "^3.5" + "phpunit/phpunit": "^4.8|^5.5|^6.5", + "squizlabs/php_codesniffer": "2.*" }, "suggest": { "ext-gd": "Needed to process images", @@ -789,34 +1331,40 @@ ], "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", "homepage": "https://github.com/dompdf/dompdf", - "time": "2020-02-20T03:52:51+00:00" + "support": { + "issues": "https://github.com/dompdf/dompdf/issues", + "source": "https://github.com/dompdf/dompdf/tree/master" + }, + "time": "2018-12-14T02:40:31+00:00" }, { "name": "dragonmantank/cron-expression", - "version": "v2.3.0", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27" + "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/72b6fbf76adb3cf5bc0db68559b33d41219aba27", - "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27", + "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", + "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", "shasum": "" }, "require": { - "php": "^7.0" + "php": "^7.2|^8.0", + "webmozart/assert": "^1.7.0" + }, + "replace": { + "mtdowling/cron-expression": "^1.0" }, "require-dev": { - "phpunit/phpunit": "^6.4|^7.0" + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-webmozart-assert": "^0.12.7", + "phpunit/phpunit": "^7.0|^8.0|^9.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.3-dev" - } - }, "autoload": { "psr-4": { "Cron\\": "src/Cron/" @@ -827,11 +1375,6 @@ "MIT" ], "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, { "name": "Chris Tankersley", "email": "chris@ctankersley.com", @@ -843,20 +1386,30 @@ "cron", "schedule" ], - "time": "2019-03-31T00:38:28+00:00" + "support": { + "issues": "https://github.com/dragonmantank/cron-expression/issues", + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.1.0" + }, + "funding": [ + { + "url": "https://github.com/dragonmantank", + "type": "github" + } + ], + "time": "2020-11-24T19:55:57+00:00" }, { "name": "egulias/email-validator", - "version": "2.1.17", + "version": "2.1.25", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "ade6887fd9bd74177769645ab5c474824f8a418a" + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ade6887fd9bd74177769645ab5c474824f8a418a", - "reference": "ade6887fd9bd74177769645ab5c474824f8a418a", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4", "shasum": "" }, "require": { @@ -880,7 +1433,7 @@ }, "autoload": { "psr-4": { - "Egulias\\EmailValidator\\": "EmailValidator" + "Egulias\\EmailValidator\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -901,28 +1454,573 @@ "validation", "validator" ], - "time": "2020-02-13T22:36:52+00:00" + "support": { + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/2.1.25" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2020-12-29T14:50:06+00:00" }, { - "name": "fideloper/proxy", - "version": "4.3.0", + "name": "elasticsearch/elasticsearch", + "version": "v7.12.0", "source": { "type": "git", - "url": "https://github.com/fideloper/TrustedProxy.git", - "reference": "ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a" + "url": "https://github.com/elastic/elasticsearch-php.git", + "reference": "25522ef4f16adcf49d7a1db149f2fcf010655b7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a", - "reference": "ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a", + "url": "https://api.github.com/repos/elastic/elasticsearch-php/zipball/25522ef4f16adcf49d7a1db149f2fcf010655b7f", + "reference": "25522ef4f16adcf49d7a1db149f2fcf010655b7f", + "shasum": "" + }, + "require": { + "ext-json": ">=1.3.7", + "ezimuel/ringphp": "^1.1.2", + "php": "^7.3 || ^8.0", + "psr/log": "~1.0" + }, + "require-dev": { + "doctrine/inflector": "^1.3", + "ext-yaml": "*", + "ext-zip": "*", + "mockery/mockery": "^1.2", + "phpstan/phpstan": "^0.12", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "squizlabs/php_codesniffer": "^3.4", + "symfony/finder": "~4.0", + "symfony/yaml": "~4.0", + "symplify/git-wrapper": "~9.0" + }, + "suggest": { + "ext-curl": "*", + "monolog/monolog": "Allows for client-level logging and tracing" + }, + "type": "library", + "autoload": { + "files": [ + "src/autoload.php" + ], + "psr-4": { + "Elasticsearch\\": "src/Elasticsearch/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Zachary Tong" + }, + { + "name": "Enrico Zimuel" + } + ], + "description": "PHP Client for Elasticsearch", + "keywords": [ + "client", + "elasticsearch", + "search" + ], + "support": { + "issues": "https://github.com/elastic/elasticsearch-php/issues", + "source": "https://github.com/elastic/elasticsearch-php/tree/v7.12.0" + }, + "time": "2021-03-23T18:08:45+00:00" + }, + { + "name": "enshrined/svg-sanitize", + "version": "0.14.0", + "source": { + "type": "git", + "url": "https://github.com/darylldoyle/svg-sanitizer.git", + "reference": "beff89576a72540ee99476aeb9cfe98222e76fb8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/darylldoyle/svg-sanitizer/zipball/beff89576a72540ee99476aeb9cfe98222e76fb8", + "reference": "beff89576a72540ee99476aeb9cfe98222e76fb8", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*" + }, + "require-dev": { + "codeclimate/php-test-reporter": "^0.1.2", + "phpunit/phpunit": "^6" + }, + "type": "library", + "autoload": { + "psr-4": { + "enshrined\\svgSanitize\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Daryll Doyle", + "email": "daryll@enshrined.co.uk" + } + ], + "description": "An SVG sanitizer for PHP", + "support": { + "issues": "https://github.com/darylldoyle/svg-sanitizer/issues", + "source": "https://github.com/darylldoyle/svg-sanitizer/tree/0.14.0" + }, + "time": "2021-01-21T10:13:20+00:00" + }, + { + "name": "ezimuel/guzzlestreams", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/ezimuel/guzzlestreams.git", + "reference": "abe3791d231167f14eb80d413420d1eab91163a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezimuel/guzzlestreams/zipball/abe3791d231167f14eb80d413420d1eab91163a8", + "reference": "abe3791d231167f14eb80d413420d1eab91163a8", "shasum": "" }, "require": { - "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0", "php": ">=5.4.0" }, "require-dev": { - "illuminate/http": "^5.0|^6.0|^7.0|^8.0", + "phpunit/phpunit": "~4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Stream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Fork of guzzle/streams (abandoned) to be used with elasticsearch-php", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "Guzzle", + "stream" + ], + "support": { + "source": "https://github.com/ezimuel/guzzlestreams/tree/3.0.1" + }, + "time": "2020-02-14T23:11:50+00:00" + }, + { + "name": "ezimuel/ringphp", + "version": "1.1.2", + "source": { + "type": "git", + "url": "https://github.com/ezimuel/ringphp.git", + "reference": "0b78f89d8e0bb9e380046c31adfa40347e9f663b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezimuel/ringphp/zipball/0b78f89d8e0bb9e380046c31adfa40347e9f663b", + "reference": "0b78f89d8e0bb9e380046c31adfa40347e9f663b", + "shasum": "" + }, + "require": { + "ezimuel/guzzlestreams": "^3.0.1", + "php": ">=5.4.0", + "react/promise": "~2.0" + }, + "require-dev": { + "ext-curl": "*", + "phpunit/phpunit": "~4.0" + }, + "suggest": { + "ext-curl": "Guzzle will use specific adapters if cURL is present" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Ring\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Fork of guzzle/RingPHP (abandoned) to be used with elasticsearch-php", + "support": { + "source": "https://github.com/ezimuel/ringphp/tree/1.1.2" + }, + "time": "2020-02-14T23:51:21+00:00" + }, + { + "name": "ezyang/htmlpurifier", + "version": "v4.13.0", + "source": { + "type": "git", + "url": "https://github.com/ezyang/htmlpurifier.git", + "reference": "08e27c97e4c6ed02f37c5b2b20488046c8d90d75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/08e27c97e4c6ed02f37c5b2b20488046c8d90d75", + "reference": "08e27c97e4c6ed02f37c5b2b20488046c8d90d75", + "shasum": "" + }, + "require": { + "php": ">=5.2" + }, + "require-dev": { + "simpletest/simpletest": "dev-master#72de02a7b80c6bb8864ef9bf66d41d2f58f826bd" + }, + "type": "library", + "autoload": { + "psr-0": { + "HTMLPurifier": "library/" + }, + "files": [ + "library/HTMLPurifier.composer.php" + ], + "exclude-from-classmap": [ + "/library/HTMLPurifier/Language/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Edward Z. Yang", + "email": "admin@htmlpurifier.org", + "homepage": "http://ezyang.com" + } + ], + "description": "Standards compliant HTML filter written in PHP", + "homepage": "http://htmlpurifier.org/", + "keywords": [ + "html" + ], + "support": { + "issues": "https://github.com/ezyang/htmlpurifier/issues", + "source": "https://github.com/ezyang/htmlpurifier/tree/master" + }, + "time": "2020-06-29T00:56:53+00:00" + }, + { + "name": "facade/flare-client-php", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/facade/flare-client-php.git", + "reference": "ef0f5bce23b30b32d98fd9bb49c6fa37b40eb546" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/flare-client-php/zipball/ef0f5bce23b30b32d98fd9bb49c6fa37b40eb546", + "reference": "ef0f5bce23b30b32d98fd9bb49c6fa37b40eb546", + "shasum": "" + }, + "require": { + "facade/ignition-contracts": "~1.0", + "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0", + "php": "^7.1|^8.0", + "symfony/http-foundation": "^3.3|^4.1|^5.0", + "symfony/mime": "^3.4|^4.0|^5.1", + "symfony/var-dumper": "^3.4|^4.0|^5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.14", + "phpunit/phpunit": "^7.5.16", + "spatie/phpunit-snapshot-assertions": "^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Facade\\FlareClient\\": "src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Send PHP errors to Flare", + "homepage": "https://github.com/facade/flare-client-php", + "keywords": [ + "exception", + "facade", + "flare", + "reporting" + ], + "support": { + "issues": "https://github.com/facade/flare-client-php/issues", + "source": "https://github.com/facade/flare-client-php/tree/1.4.0" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2021-02-16T12:42:06+00:00" + }, + { + "name": "facade/ignition", + "version": "2.7.0", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition.git", + "reference": "bdc8b0b32c888f6edc838ca641358322b3d9506d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition/zipball/bdc8b0b32c888f6edc838ca641358322b3d9506d", + "reference": "bdc8b0b32c888f6edc838ca641358322b3d9506d", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "facade/flare-client-php": "^1.3.7", + "facade/ignition-contracts": "^1.0.2", + "filp/whoops": "^2.4", + "illuminate/support": "^7.0|^8.0", + "monolog/monolog": "^2.0", + "php": "^7.2.5|^8.0", + "symfony/console": "^5.0", + "symfony/var-dumper": "^5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.14", + "mockery/mockery": "^1.3", + "orchestra/testbench": "^5.0|^6.0", + "psalm/plugin-laravel": "^1.2" + }, + "suggest": { + "laravel/telescope": "^3.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Facade\\Ignition\\IgnitionServiceProvider" + ], + "aliases": { + "Flare": "Facade\\Ignition\\Facades\\Flare" + } + } + }, + "autoload": { + "psr-4": { + "Facade\\Ignition\\": "src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A beautiful error page for Laravel applications.", + "homepage": "https://github.com/facade/ignition", + "keywords": [ + "error", + "flare", + "laravel", + "page" + ], + "support": { + "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", + "forum": "https://twitter.com/flareappio", + "issues": "https://github.com/facade/ignition/issues", + "source": "https://github.com/facade/ignition" + }, + "time": "2021-03-30T15:55:38+00:00" + }, + { + "name": "facade/ignition-contracts", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition-contracts.git", + "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition-contracts/zipball/3c921a1cdba35b68a7f0ccffc6dffc1995b18267", + "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267", + "shasum": "" + }, + "require": { + "php": "^7.3|^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^v2.15.8", + "phpunit/phpunit": "^9.3.11", + "vimeo/psalm": "^3.17.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Facade\\IgnitionContracts\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://flareapp.io", + "role": "Developer" + } + ], + "description": "Solution contracts for Ignition", + "homepage": "https://github.com/facade/ignition-contracts", + "keywords": [ + "contracts", + "flare", + "ignition" + ], + "support": { + "issues": "https://github.com/facade/ignition-contracts/issues", + "source": "https://github.com/facade/ignition-contracts/tree/1.0.2" + }, + "time": "2020-10-16T08:27:54+00:00" + }, + { + "name": "fakerphp/faker", + "version": "v1.14.1", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "ed22aee8d17c7b396f74a58b1e7fefa4f90d5ef1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/ed22aee8d17c7b396f74a58b1e7fefa4f90d5ef1", + "reference": "ed22aee8d17c7b396f74a58b1e7fefa4f90d5ef1", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0", + "psr/container": "^1.0", + "symfony/deprecation-contracts": "^2.2" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-intl": "*", + "symfony/phpunit-bridge": "^4.4 || ^5.2" + }, + "suggest": { + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "v1.15-dev" + } + }, + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v.1.14.1" + }, + "time": "2021-03-30T06:27:33+00:00" + }, + { + "name": "fideloper/proxy", + "version": "4.4.1", + "source": { + "type": "git", + "url": "https://github.com/fideloper/TrustedProxy.git", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", + "php": ">=5.4.0" + }, + "require-dev": { + "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", "mockery/mockery": "^1.0", "phpunit/phpunit": "^6.0" }, @@ -955,7 +2053,82 @@ "proxy", "trusted proxy" ], - "time": "2020-02-22T01:51:47+00:00" + "support": { + "issues": "https://github.com/fideloper/TrustedProxy/issues", + "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1" + }, + "time": "2020-10-22T13:48:01+00:00" + }, + { + "name": "filp/whoops", + "version": "2.12.0", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "d501fd2658d55491a2295ff600ae5978eaad7403" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/d501fd2658d55491a2295ff600ae5978eaad7403", + "reference": "d501fd2658d55491a2295ff600ae5978eaad7403", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0", + "psr/log": "^1.0.1" + }, + "require-dev": { + "mockery/mockery": "^0.9 || ^1.0", + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3", + "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" + }, + "suggest": { + "symfony/var-dumper": "Pretty print complex values better with var-dumper available", + "whoops/soap": "Formats errors as SOAP responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Whoops\\": "src/Whoops/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://filp.github.io/whoops/", + "keywords": [ + "error", + "exception", + "handling", + "library", + "throwable", + "whoops" + ], + "support": { + "issues": "https://github.com/filp/whoops/issues", + "source": "https://github.com/filp/whoops/tree/2.12.0" + }, + "funding": [ + { + "url": "https://github.com/denis-sokolov", + "type": "github" + } + ], + "time": "2021-03-30T12:00:00+00:00" }, { "name": "flynsarmy/db-blade-compiler", @@ -1013,39 +2186,42 @@ "laravel", "model" ], + "support": { + "issues": "https://github.com/Flynsarmy/laravel-db-blade-compiler/issues", + "source": "https://github.com/Flynsarmy/laravel-db-blade-compiler/tree/5.5.0" + }, "time": "2019-07-28T22:19:29+00:00" }, { - "name": "fzaninotto/faker", - "version": "v1.9.1", + "name": "graham-campbell/result-type", + "version": "v1.0.1", "source": { "type": "git", - "url": "https://github.com/fzaninotto/Faker.git", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f" + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "7e279d2cd5d7fbb156ce46daada972355cea27bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/7e279d2cd5d7fbb156ce46daada972355cea27bb", + "reference": "7e279d2cd5d7fbb156ce46daada972355cea27bb", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0" + "php": "^7.0|^8.0", + "phpoption/phpoption": "^1.7.3" }, "require-dev": { - "ext-intl": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "squizlabs/php_codesniffer": "^2.9.2" + "phpunit/phpunit": "^6.5|^7.5|^8.5|^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.0-dev" } }, "autoload": { "psr-4": { - "Faker\\": "src/Faker/" + "GrahamCampbell\\ResultType\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1054,50 +2230,74 @@ ], "authors": [ { - "name": "François Zaninotto" + "name": "Graham Campbell", + "email": "graham@alt-three.com" } ], - "description": "Faker is a PHP library that generates fake data for you.", + "description": "An Implementation Of The Result Type", "keywords": [ - "data", - "faker", - "fixtures" + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" ], - "time": "2019-12-12T13:22:17+00:00" + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2020-04-13T13:17:36+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "6.5.4", + "version": "7.3.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "a4a1b6930528a8f7ee03518e6442ec7a44155d9d" + "reference": "7008573787b430c1c1f650e3722d9bba59967628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/a4a1b6930528a8f7ee03518e6442ec7a44155d9d", - "reference": "a4a1b6930528a8f7ee03518e6442ec7a44155d9d", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7008573787b430c1c1f650e3722d9bba59967628", + "reference": "7008573787b430c1c1f650e3722d9bba59967628", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.6.1", - "php": ">=5.5", - "symfony/polyfill-intl-idn": "1.17.0" + "guzzlehttp/promises": "^1.4", + "guzzlehttp/psr7": "^1.7 || ^2.0", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" }, "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", "ext-curl": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.5.5 || ^9.3.5", "psr/log": "^1.1" }, "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr/log": "Required for using the Log middleware" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "6.5-dev" + "dev-master": "7.3-dev" } }, "autoload": { @@ -1117,6 +2317,11 @@ "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" } ], "description": "Guzzle is a PHP HTTP client library", @@ -1127,30 +2332,54 @@ "framework", "http", "http client", + "psr-18", + "psr-7", "rest", "web service" ], - "time": "2020-05-25T19:35:05+00:00" + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.3.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://github.com/alexeyshockov", + "type": "github" + }, + { + "url": "https://github.com/gmponos", + "type": "github" + } + ], + "time": "2021-03-23T11:33:13+00:00" }, { "name": "guzzlehttp/promises", - "version": "v1.3.1", + "version": "1.4.1", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646" + "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646", - "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646", + "url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d", + "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d", "shasum": "" }, "require": { - "php": ">=5.5.0" + "php": ">=5.5" }, "require-dev": { - "phpunit/phpunit": "^4.0" + "symfony/phpunit-bridge": "^4.4 || ^5.1" }, "type": "library", "extra": { @@ -1181,20 +2410,24 @@ "keywords": [ "promise" ], - "time": "2016-12-20T10:07:11+00:00" + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.4.1" + }, + "time": "2021-03-07T09:25:29+00:00" }, { "name": "guzzlehttp/psr7", - "version": "1.6.1", + "version": "1.8.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "239400de7a173fe9901b9ac7c06497751f00727a" + "reference": "35ea11d335fd638b5882ff1725228b3d35496ab1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a", - "reference": "239400de7a173fe9901b9ac7c06497751f00727a", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/35ea11d335fd638b5882ff1725228b3d35496ab1", + "reference": "35ea11d335fd638b5882ff1725228b3d35496ab1", "shasum": "" }, "require": { @@ -1207,15 +2440,15 @@ }, "require-dev": { "ext-zlib": "*", - "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8" + "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10" }, "suggest": { - "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses" + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.6-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -1252,7 +2485,11 @@ "uri", "url" ], - "time": "2019-07-01T23:21:34+00:00" + "support": { + "issues": "https://github.com/guzzle/psr7/issues", + "source": "https://github.com/guzzle/psr7/tree/1.8.1" + }, + "time": "2021-03-21T16:25:00+00:00" }, { "name": "intervention/image", @@ -1322,33 +2559,36 @@ "thumbnail", "watermark" ], + "support": { + "issues": "https://github.com/Intervention/image/issues", + "source": "https://github.com/Intervention/image/tree/master" + }, "time": "2019-11-02T09:15:47+00:00" }, { "name": "intervention/imagecache", - "version": "2.4.1", + "version": "2.5.1", "source": { "type": "git", "url": "https://github.com/Intervention/imagecache.git", - "reference": "2fae78a3f299597c5179740f9e70b4f5e367b350" + "reference": "e714f13298ecaf9b2d11cb7106a0415d5615cbe5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Intervention/imagecache/zipball/2fae78a3f299597c5179740f9e70b4f5e367b350", - "reference": "2fae78a3f299597c5179740f9e70b4f5e367b350", + "url": "https://api.github.com/repos/Intervention/imagecache/zipball/e714f13298ecaf9b2d11cb7106a0415d5615cbe5", + "reference": "e714f13298ecaf9b2d11cb7106a0415d5615cbe5", "shasum": "" }, "require": { - "illuminate/cache": "~4|~5|~6|~7", - "illuminate/filesystem": "~4|~5|~6|~7", - "intervention/image": "dev-master|~2,>=2.2.0", - "jeremeamia/superclosure": "~1|~2", - "nesbot/carbon": "^1.26.3 || ^2.0", - "php": ">=5.3.0" + "illuminate/cache": "^5.5|~6|~7|~8", + "illuminate/filesystem": "^5.5|~6|~7|~8", + "intervention/image": ">=2.2.0", + "nesbot/carbon": "^2.39", + "opis/closure": "^3.5", + "php": ">=7.2" }, "require-dev": { - "mockery/mockery": "~0.9.2", - "phpunit/phpunit": "3.*" + "phpunit/phpunit": "^8.0" }, "type": "library", "autoload": { @@ -1363,8 +2603,8 @@ "authors": [ { "name": "Oliver Vogel", - "email": "oliver@olivervogel.net", - "homepage": "http://olivervogel.net/" + "email": "oliver@olivervogel.com", + "homepage": "http://olivervogel.com/" } ], "description": "Caching extension for the Intervention Image Class", @@ -1376,85 +2616,40 @@ "imagick", "laravel" ], - "time": "2020-03-03T19:18:15+00:00" - }, - { - "name": "jeremeamia/superclosure", - "version": "2.4.0", - "source": { - "type": "git", - "url": "https://github.com/jeremeamia/super_closure.git", - "reference": "5707d5821b30b9a07acfb4d76949784aaa0e9ce9" + "support": { + "issues": "https://github.com/Intervention/imagecache/issues", + "source": "https://github.com/Intervention/imagecache/tree/2.5.1" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jeremeamia/super_closure/zipball/5707d5821b30b9a07acfb4d76949784aaa0e9ce9", - "reference": "5707d5821b30b9a07acfb4d76949784aaa0e9ce9", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^1.2|^2.0|^3.0|^4.0", - "php": ">=5.4", - "symfony/polyfill-php56": "^1.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.0|^5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, - "autoload": { - "psr-4": { - "SuperClosure\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Jeremy Lindblom", - "email": "jeremeamia@gmail.com", - "homepage": "https://github.com/jeremeamia", - "role": "Developer" + "url": "https://www.paypal.me/interventionphp", + "type": "custom" + }, + { + "url": "https://github.com/Intervention", + "type": "github" } ], - "description": "Serialize Closure objects, including their context and binding", - "homepage": "https://github.com/jeremeamia/super_closure", - "keywords": [ - "closure", - "function", - "lambda", - "parser", - "serializable", - "serialize", - "tokenizer" - ], - "abandoned": "opis/closure", - "time": "2018-03-21T22:21:57+00:00" + "time": "2020-12-07T15:07:18+00:00" }, { "name": "kalnoy/nestedset", - "version": "v5.0.1", + "version": "v5.0.3", "source": { "type": "git", "url": "https://github.com/lazychaser/laravel-nestedset.git", - "reference": "d4fe17f9abd3414014bda32a5612c9ed24246f99" + "reference": "789a70bce94a7c3bd206fb05fa4b747cf27acbe2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lazychaser/laravel-nestedset/zipball/d4fe17f9abd3414014bda32a5612c9ed24246f99", - "reference": "d4fe17f9abd3414014bda32a5612c9ed24246f99", + "url": "https://api.github.com/repos/lazychaser/laravel-nestedset/zipball/789a70bce94a7c3bd206fb05fa4b747cf27acbe2", + "reference": "789a70bce94a7c3bd206fb05fa4b747cf27acbe2", "shasum": "" }, "require": { - "illuminate/database": "~5.7.0|~5.8.0|^6.0|^7.0", - "illuminate/events": "~5.7.0|~5.8.0|^6.0|^7.0", - "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/database": "~5.7.0|~5.8.0|^6.0|^7.0|^8.0", + "illuminate/events": "~5.7.0|~5.8.0|^6.0|^7.0|^8.0", + "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0|^8.0", "php": ">=7.1.3" }, "require-dev": { @@ -1494,38 +2689,94 @@ "nested sets", "nsm" ], - "time": "2020-03-04T05:33:20+00:00" + "support": { + "issues": "https://github.com/lazychaser/laravel-nestedset/issues", + "source": "https://github.com/lazychaser/laravel-nestedset/tree/v5.0.3" + }, + "time": "2020-12-07T05:59:45+00:00" }, { - "name": "konekt/concord", - "version": "1.5.1", + "name": "khaled.alshamaa/ar-php", + "version": "v6.0.0", "source": { "type": "git", - "url": "https://github.com/artkonekt/concord.git", - "reference": "e01b5f6c8e0935762ce1dfbd1fb9dd044563277c" + "url": "https://github.com/khaled-alshamaa/ar-php.git", + "reference": "d38de8b7647483857a76b867b1b0efe57258f8c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/artkonekt/concord/zipball/e01b5f6c8e0935762ce1dfbd1fb9dd044563277c", - "reference": "e01b5f6c8e0935762ce1dfbd1fb9dd044563277c", + "url": "https://api.github.com/repos/khaled-alshamaa/ar-php/zipball/d38de8b7647483857a76b867b1b0efe57258f8c6", + "reference": "d38de8b7647483857a76b867b1b0efe57258f8c6", "shasum": "" }, "require": { - "illuminate/console": "~5.5|~6.0|~7.0", - "illuminate/support": "~5.5|~6.0|~7.0", - "konekt/enum": "~2.1|~3.0", - "konekt/enum-eloquent": "^1.3.1", - "php": "^7.2" + "ext-mbstring": "*", + "php": ">=5.6.0" }, "require-dev": { - "orchestra/testbench": "~3.5|~4.0|~5.0", - "phpunit/phpunit": "6.0 - 7.5|~8.0|~9.0" + "phpunit/phpunit": "9.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "ArPHP\\I18N\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0" + ], + "authors": [ + { + "name": "Khaled Al-Sham'aa", + "email": "khaled@ar-php.org", + "homepage": "http://www.ar-php.org" + } + ], + "description": "Set of functionalities enable Arabic website developers to serve professional search, present and process Arabic content in PHP", + "homepage": "https://github.com/khaled-alshamaa/ar-php", + "keywords": [ + "arabic", + "arabic-calendar", + "arabic-glyphs", + "arabic-numbers", + "arabic-segments-identifier", + "arabic-sentiment", + "arabic-sql-query" + ], + "support": { + "issues": "https://github.com/khaled-alshamaa/ar-php/issues", + "source": "https://github.com/khaled-alshamaa/ar-php/tree/v6.0.0" + }, + "time": "2021-02-15T14:15:54+00:00" + }, + { + "name": "konekt/concord", + "version": "1.10.1", + "source": { + "type": "git", + "url": "https://github.com/artkonekt/concord.git", + "reference": "1b34feece903a70e311a6fb713ea6e41bcc67a3b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/artkonekt/concord/zipball/1b34feece903a70e311a6fb713ea6e41bcc67a3b", + "reference": "1b34feece903a70e311a6fb713ea6e41bcc67a3b", + "shasum": "" + }, + "require": { + "illuminate/console": "~6.0|~7.0|~8.0", + "illuminate/support": "~6.0|~7.0|~8.0", + "konekt/enum": "~2.1|~3.0", + "konekt/enum-eloquent": "^1.3.1", + "php": "^7.3 | ^8.0" + }, + "require-dev": { + "orchestra/testbench": "~4.0|~5.0|~6.0", + "phpunit/phpunit": "8 - 9" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" - }, "laravel": { "providers": [ "Konekt\\Concord\\ConcordServiceProvider" @@ -1555,27 +2806,31 @@ } ], "description": "Concord is a Laravel Extension for building modular Laravel Applications", - "time": "2020-03-19T16:34:23+00:00" + "support": { + "issues": "https://github.com/artkonekt/concord", + "source": "https://github.com/artkonekt/concord/tree/1.10.1" + }, + "time": "2021-03-08T10:35:06+00:00" }, { "name": "konekt/enum", - "version": "3.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/artkonekt/enum.git", - "reference": "34e770b69bc8a1713c3845dbfa51e389118b9a56" + "reference": "da96fadf4eda4bd97cc46937e936a6fa6a1e5c94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/artkonekt/enum/zipball/34e770b69bc8a1713c3845dbfa51e389118b9a56", - "reference": "34e770b69bc8a1713c3845dbfa51e389118b9a56", + "url": "https://api.github.com/repos/artkonekt/enum/zipball/da96fadf4eda4bd97cc46937e936a6fa6a1e5c94", + "reference": "da96fadf4eda4bd97cc46937e936a6fa6a1e5c94", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "7 - 8" + "phpunit/phpunit": "7 - 9" }, "type": "library", "autoload": { @@ -1599,31 +2854,34 @@ "enum", "konekt" ], - "time": "2019-06-24T20:39:03+00:00" + "support": { + "issues": "https://github.com/artkonekt/enum/issues", + "source": "https://github.com/artkonekt/enum" + }, + "time": "2020-11-28T21:37:27+00:00" }, { "name": "konekt/enum-eloquent", - "version": "1.5.0", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/artkonekt/enum-eloquent.git", - "reference": "ece65ed54a5ba78265f5b91090e9c33621e6e43b" + "reference": "01ea5ecc9c2fa4f0534d07ffc4cc169764764b41" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/artkonekt/enum-eloquent/zipball/ece65ed54a5ba78265f5b91090e9c33621e6e43b", - "reference": "ece65ed54a5ba78265f5b91090e9c33621e6e43b", + "url": "https://api.github.com/repos/artkonekt/enum-eloquent/zipball/01ea5ecc9c2fa4f0534d07ffc4cc169764764b41", + "reference": "01ea5ecc9c2fa4f0534d07ffc4cc169764764b41", "shasum": "" }, "require": { - "illuminate/database": "5.*|6.*|7.*", + "illuminate/database": "6.*|7.*|8.*", "konekt/enum": "^2.0.2 || ^3.0.0", - "php": "^7.1.3" + "php": "^7.3 | ^8.0" }, "require-dev": { - "illuminate/events": "5.*|6.*|7.*", - "ocramius/package-versions": "^1.2", - "phpunit/phpunit": "6.3 - 7.5|~8.0" + "illuminate/events": "6.*|7.*|8.*", + "phpunit/phpunit": "8 - 9" }, "type": "library", "extra": { @@ -1636,10 +2894,7 @@ "autoload": { "psr-4": { "Konekt\\Enum\\Eloquent\\": "src/" - }, - "files": [ - "src/functions.php" - ] + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1667,51 +2922,54 @@ "konekt", "laravel" ], - "time": "2020-03-05T23:07:16+00:00" + "support": { + "issues": "https://github.com/artkonekt/enum-eloquent/issues", + "source": "https://github.com/artkonekt/enum-eloquent" + }, + "time": "2020-11-28T22:13:08+00:00" }, { "name": "laravel/framework", - "version": "v7.14.1", + "version": "v8.35.1", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "469b7719a8dca40841a74f59f2e9f30f01d3a106" + "reference": "d118c0df39e7524131176aaf76493eae63a8a602" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/469b7719a8dca40841a74f59f2e9f30f01d3a106", - "reference": "469b7719a8dca40841a74f59f2e9f30f01d3a106", + "url": "https://api.github.com/repos/laravel/framework/zipball/d118c0df39e7524131176aaf76493eae63a8a602", + "reference": "d118c0df39e7524131176aaf76493eae63a8a602", "shasum": "" }, "require": { "doctrine/inflector": "^1.4|^2.0", - "dragonmantank/cron-expression": "^2.0", + "dragonmantank/cron-expression": "^3.0.2", "egulias/email-validator": "^2.1.10", "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", "league/commonmark": "^1.3", - "league/flysystem": "^1.0.34", + "league/flysystem": "^1.1", "monolog/monolog": "^2.0", - "nesbot/carbon": "^2.17", - "opis/closure": "^3.1", - "php": "^7.2.5", + "nesbot/carbon": "^2.31", + "opis/closure": "^3.6", + "php": "^7.3|^8.0", "psr/container": "^1.0", "psr/simple-cache": "^1.0", - "ramsey/uuid": "^3.7|^4.0", + "ramsey/uuid": "^4.0", "swiftmailer/swiftmailer": "^6.0", - "symfony/console": "^5.0", - "symfony/error-handler": "^5.0", - "symfony/finder": "^5.0", - "symfony/http-foundation": "^5.0", - "symfony/http-kernel": "^5.0", - "symfony/mime": "^5.0", - "symfony/polyfill-php73": "^1.17", - "symfony/process": "^5.0", - "symfony/routing": "^5.0", - "symfony/var-dumper": "^5.0", + "symfony/console": "^5.1.4", + "symfony/error-handler": "^5.1.4", + "symfony/finder": "^5.1.4", + "symfony/http-foundation": "^5.1.4", + "symfony/http-kernel": "^5.1.4", + "symfony/mime": "^5.1.4", + "symfony/process": "^5.1.4", + "symfony/routing": "^5.1.4", + "symfony/var-dumper": "^5.1.4", "tijsverkoyen/css-to-inline-styles": "^2.2.2", - "vlucas/phpdotenv": "^4.0", + "vlucas/phpdotenv": "^5.2", "voku/portable-ascii": "^1.4.8" }, "conflict": { @@ -1725,6 +2983,7 @@ "illuminate/broadcasting": "self.version", "illuminate/bus": "self.version", "illuminate/cache": "self.version", + "illuminate/collections": "self.version", "illuminate/config": "self.version", "illuminate/console": "self.version", "illuminate/container": "self.version", @@ -1737,6 +2996,7 @@ "illuminate/hashing": "self.version", "illuminate/http": "self.version", "illuminate/log": "self.version", + "illuminate/macroable": "self.version", "illuminate/mail": "self.version", "illuminate/notifications": "self.version", "illuminate/pagination": "self.version", @@ -1752,59 +3012,66 @@ "illuminate/view": "self.version" }, "require-dev": { - "aws/aws-sdk-php": "^3.0", - "doctrine/dbal": "^2.6", - "filp/whoops": "^2.4", - "guzzlehttp/guzzle": "^6.3.1|^7.0", + "aws/aws-sdk-php": "^3.155", + "doctrine/dbal": "^2.6|^3.0", + "filp/whoops": "^2.8", + "guzzlehttp/guzzle": "^6.5.5|^7.0.1", "league/flysystem-cached-adapter": "^1.0", - "mockery/mockery": "^1.3.1", - "moontoast/math": "^1.1", - "orchestra/testbench-core": "^5.0", + "mockery/mockery": "^1.4.2", + "orchestra/testbench-core": "^6.8", "pda/pheanstalk": "^4.0", - "phpunit/phpunit": "^8.4|^9.0", + "phpunit/phpunit": "^8.5.8|^9.3.3", "predis/predis": "^1.1.1", - "symfony/cache": "^5.0" + "symfony/cache": "^5.1.4" }, "suggest": { - "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6).", + "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.155).", + "brianium/paratest": "Required to run tests in parallel (^6.0).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6|^3.0).", + "ext-ftp": "Required to use the Flysystem FTP driver.", "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", "ext-memcached": "Required to use the memcache cache driver.", "ext-pcntl": "Required to use all features of the queue worker.", "ext-posix": "Required to use all features of the queue worker.", "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", - "filp/whoops": "Required for friendly error pages in development (^2.4).", - "fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).", - "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.3.1|^7.0).", + "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", + "filp/whoops": "Required for friendly error pages in development (^2.8).", + "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.5.5|^7.0.1).", "laravel/tinker": "Required to use the tinker console command (^2.0).", "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", - "mockery/mockery": "Required to use mocking (^1.3.1).", - "moontoast/math": "Required to use ordered UUIDs (^1.1).", + "mockery/mockery": "Required to use mocking (^1.4.2).", "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^8.4|^9.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^8.5.8|^9.3.3).", + "predis/predis": "Required to use the predis connector (^1.1.2).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", - "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0).", - "symfony/cache": "Required to PSR-6 cache bridge (^5.0).", - "symfony/filesystem": "Required to create relative storage directory symbolic links (^5.0).", + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0|^5.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^5.1.4).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^5.1.4).", "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).", "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "7.x-dev" + "dev-master": "8.x-dev" } }, "autoload": { "files": [ + "src/Illuminate/Collections/helpers.php", + "src/Illuminate/Events/functions.php", "src/Illuminate/Foundation/helpers.php", "src/Illuminate/Support/helpers.php" ], "psr-4": { - "Illuminate\\": "src/Illuminate/" + "Illuminate\\": "src/Illuminate/", + "Illuminate\\Support\\": [ + "src/Illuminate/Macroable/", + "src/Illuminate/Collections/" + ] } }, "notification-url": "https://packagist.org/downloads/", @@ -1823,40 +3090,169 @@ "framework", "laravel" ], - "time": "2020-06-02T22:34:18+00:00" + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2021-03-30T21:34:17+00:00" }, { - "name": "laravel/socialite", - "version": "v4.4.1", + "name": "laravel/legacy-factories", + "version": "v1.1.0", "source": { "type": "git", - "url": "https://github.com/laravel/socialite.git", - "reference": "80951df0d93435b773aa00efe1fad6d5015fac75" + "url": "https://github.com/laravel/legacy-factories.git", + "reference": "5e3fe2fd5fda64e20ea5c74c831a7346294e902a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/80951df0d93435b773aa00efe1fad6d5015fac75", - "reference": "80951df0d93435b773aa00efe1fad6d5015fac75", + "url": "https://api.github.com/repos/laravel/legacy-factories/zipball/5e3fe2fd5fda64e20ea5c74c831a7346294e902a", + "reference": "5e3fe2fd5fda64e20ea5c74c831a7346294e902a", + "shasum": "" + }, + "require": { + "illuminate/macroable": "^8.0", + "php": "^7.3|^8.0", + "symfony/finder": "^3.4|^4.0|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + }, + "laravel": { + "providers": [ + "Illuminate\\Database\\Eloquent\\LegacyFactoryServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Database\\Eloquent\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The legacy version of the Laravel Eloquent factories.", + "homepage": "http://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2020-10-27T14:25:32+00:00" + }, + { + "name": "laravel/scout", + "version": "v8.6.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/scout.git", + "reference": "54070f7b68fed15f25e61e68884c4110496b8aa1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/scout/zipball/54070f7b68fed15f25e61e68884c4110496b8aa1", + "reference": "54070f7b68fed15f25e61e68884c4110496b8aa1", + "shasum": "" + }, + "require": { + "illuminate/bus": "^6.0|^7.0|^8.0", + "illuminate/contracts": "^6.0|^7.0|^8.0", + "illuminate/database": "^6.0|^7.0|^8.0", + "illuminate/http": "^6.0|^7.0|^8.0", + "illuminate/pagination": "^6.0|^7.0|^8.0", + "illuminate/queue": "^6.0|^7.0|^8.0", + "illuminate/support": "^6.0|^7.0|^8.0", + "php": "^7.2|^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^8.0|^9.3" + }, + "suggest": { + "algolia/algoliasearch-client-php": "Required to use the Algolia engine (^2.2)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "8.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Scout\\ScoutServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Scout\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel Scout provides a driver based solution to searching your Eloquent models.", + "keywords": [ + "algolia", + "laravel", + "search" + ], + "support": { + "issues": "https://github.com/laravel/scout/issues", + "source": "https://github.com/laravel/scout" + }, + "time": "2021-01-19T15:30:52+00:00" + }, + { + "name": "laravel/socialite", + "version": "v5.2.2", + "source": { + "type": "git", + "url": "https://github.com/laravel/socialite.git", + "reference": "8d25d574b4f2005411c0b9cb527ef5e745c1b07d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/socialite/zipball/8d25d574b4f2005411c0b9cb527ef5e745c1b07d", + "reference": "8d25d574b4f2005411c0b9cb527ef5e745c1b07d", "shasum": "" }, "require": { "ext-json": "*", "guzzlehttp/guzzle": "^6.0|^7.0", - "illuminate/http": "~5.7.0|~5.8.0|^6.0|^7.0", - "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/http": "^6.0|^7.0|^8.0", + "illuminate/support": "^6.0|^7.0|^8.0", "league/oauth1-client": "^1.0", - "php": "^7.1.3" + "php": "^7.2|^8.0" }, "require-dev": { - "illuminate/contracts": "~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/contracts": "^6.0|^7.0", "mockery/mockery": "^1.0", - "orchestra/testbench": "^3.7|^3.8|^4.0|^5.0", - "phpunit/phpunit": "^7.0|^8.0" + "orchestra/testbench": "^4.0|^5.0|^6.0", + "phpunit/phpunit": "^8.0|^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev" + "dev-master": "5.x-dev" }, "laravel": { "providers": [ @@ -1888,33 +3284,37 @@ "laravel", "oauth" ], - "time": "2020-06-03T13:30:03+00:00" + "support": { + "issues": "https://github.com/laravel/socialite/issues", + "source": "https://github.com/laravel/socialite" + }, + "time": "2021-03-02T16:50:47+00:00" }, { "name": "laravel/tinker", - "version": "v2.4.0", + "version": "v2.6.1", "source": { "type": "git", "url": "https://github.com/laravel/tinker.git", - "reference": "cde90a7335a2130a4488beb68f4b2141869241db" + "reference": "04ad32c1a3328081097a181875733fa51f402083" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/cde90a7335a2130a4488beb68f4b2141869241db", - "reference": "cde90a7335a2130a4488beb68f4b2141869241db", + "url": "https://api.github.com/repos/laravel/tinker/zipball/04ad32c1a3328081097a181875733fa51f402083", + "reference": "04ad32c1a3328081097a181875733fa51f402083", "shasum": "" }, "require": { "illuminate/console": "^6.0|^7.0|^8.0", "illuminate/contracts": "^6.0|^7.0|^8.0", "illuminate/support": "^6.0|^7.0|^8.0", - "php": "^7.2", - "psy/psysh": "^0.10.3", - "symfony/var-dumper": "^4.3|^5.0" + "php": "^7.2.5|^8.0", + "psy/psysh": "^0.10.4", + "symfony/var-dumper": "^4.3.4|^5.0" }, "require-dev": { - "mockery/mockery": "^1.3.1", - "phpunit/phpunit": "^8.4|^9.0" + "mockery/mockery": "~1.3.3|^1.4.2", + "phpunit/phpunit": "^8.5.8|^9.3.3" }, "suggest": { "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0)." @@ -1952,34 +3352,37 @@ "laravel", "psysh" ], - "time": "2020-04-07T15:01:31+00:00" + "support": { + "issues": "https://github.com/laravel/tinker/issues", + "source": "https://github.com/laravel/tinker/tree/v2.6.1" + }, + "time": "2021-03-02T16:53:12+00:00" }, { "name": "laravel/ui", - "version": "v2.0.3", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "15368c5328efb7ce94f35ca750acde9b496ab1b1" + "reference": "a1f82c6283c8373ea1958b8a27c3d5c98cade351" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/15368c5328efb7ce94f35ca750acde9b496ab1b1", - "reference": "15368c5328efb7ce94f35ca750acde9b496ab1b1", + "url": "https://api.github.com/repos/laravel/ui/zipball/a1f82c6283c8373ea1958b8a27c3d5c98cade351", + "reference": "a1f82c6283c8373ea1958b8a27c3d5c98cade351", "shasum": "" }, "require": { - "illuminate/console": "^7.0", - "illuminate/filesystem": "^7.0", - "illuminate/support": "^7.0", - "php": "^7.2.5" - }, - "require-dev": { - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^8.0" + "illuminate/console": "^8.0", + "illuminate/filesystem": "^8.0", + "illuminate/support": "^8.0", + "php": "^7.3|^8.0" }, "type": "library", "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + }, "laravel": { "providers": [ "Laravel\\Ui\\UiServiceProvider" @@ -2007,34 +3410,41 @@ "laravel", "ui" ], - "time": "2020-04-29T15:06:45+00:00" + "support": { + "issues": "https://github.com/laravel/ui/issues", + "source": "https://github.com/laravel/ui/tree/v3.2.0" + }, + "time": "2021-01-06T19:20:22+00:00" }, { "name": "lcobucci/jwt", - "version": "3.3.2", + "version": "3.2.5", "source": { "type": "git", "url": "https://github.com/lcobucci/jwt.git", - "reference": "56f10808089e38623345e28af2f2d5e4eb579455" + "reference": "82be04b4753f8b7693b62852b7eab30f97524f9b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/jwt/zipball/56f10808089e38623345e28af2f2d5e4eb579455", - "reference": "56f10808089e38623345e28af2f2d5e4eb579455", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/82be04b4753f8b7693b62852b7eab30f97524f9b", + "reference": "82be04b4753f8b7693b62852b7eab30f97524f9b", "shasum": "" }, "require": { - "ext-mbstring": "*", "ext-openssl": "*", - "php": "^5.6 || ^7.0" + "php": ">=5.5" }, "require-dev": { + "mdanter/ecc": "~0.3.1", "mikey179/vfsstream": "~1.5", "phpmd/phpmd": "~2.2", "phpunit/php-invoker": "~1.1", - "phpunit/phpunit": "^5.7 || ^7.3", + "phpunit/phpunit": "~4.5", "squizlabs/php_codesniffer": "~2.3" }, + "suggest": { + "mdanter/ecc": "Required to use Elliptic Curves based algorithms." + }, "type": "library", "extra": { "branch-alias": { @@ -2062,49 +3472,43 @@ "JWS", "jwt" ], - "funding": [ - { - "url": "https://github.com/lcobucci", - "type": "github" - }, - { - "url": "https://www.patreon.com/lcobucci", - "type": "patreon" - } - ], - "time": "2020-05-22T08:21:12+00:00" + "support": { + "issues": "https://github.com/lcobucci/jwt/issues", + "source": "https://github.com/lcobucci/jwt/tree/3.2" + }, + "time": "2018-11-11T12:22:26+00:00" }, { "name": "league/commonmark", - "version": "1.4.3", + "version": "1.5.8", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "412639f7cfbc0b31ad2455b2fe965095f66ae505" + "reference": "08fa59b8e4e34ea8a773d55139ae9ac0e0aecbaf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/412639f7cfbc0b31ad2455b2fe965095f66ae505", - "reference": "412639f7cfbc0b31ad2455b2fe965095f66ae505", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/08fa59b8e4e34ea8a773d55139ae9ac0e0aecbaf", + "reference": "08fa59b8e4e34ea8a773d55139ae9ac0e0aecbaf", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^7.1" + "php": "^7.1 || ^8.0" }, "conflict": { "scrutinizer/ocular": "1.7.*" }, "require-dev": { "cebe/markdown": "~1.0", - "commonmark/commonmark.js": "0.29.1", + "commonmark/commonmark.js": "0.29.2", "erusev/parsedown": "~1.0", "ext-json": "*", "github/gfm": "0.29.0", "michelf/php-markdown": "~1.4", "mikehaertl/php-shellcommand": "^1.4", "phpstan/phpstan": "^0.12", - "phpunit/phpunit": "^7.5", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", "scrutinizer/ocular": "^1.5", "symfony/finder": "^4.2" }, @@ -2112,11 +3516,6 @@ "bin/commonmark" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, "autoload": { "psr-4": { "League\\CommonMark\\": "src" @@ -2146,6 +3545,12 @@ "md", "parser" ], + "support": { + "docs": "https://commonmark.thephpleague.com/", + "issues": "https://github.com/thephpleague/commonmark/issues", + "rss": "https://github.com/thephpleague/commonmark/releases.atom", + "source": "https://github.com/thephpleague/commonmark" + }, "funding": [ { "url": "https://enjoy.gitstore.app/repositories/thephpleague/commonmark", @@ -2172,32 +3577,33 @@ "type": "tidelift" } ], - "time": "2020-05-04T22:15:21+00:00" + "time": "2021-03-28T18:51:39+00:00" }, { "name": "league/flysystem", - "version": "1.0.69", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "7106f78428a344bc4f643c233a94e48795f10967" + "reference": "9be3b16c877d477357c015cec057548cf9b2a14a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/7106f78428a344bc4f643c233a94e48795f10967", - "reference": "7106f78428a344bc4f643c233a94e48795f10967", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/9be3b16c877d477357c015cec057548cf9b2a14a", + "reference": "9be3b16c877d477357c015cec057548cf9b2a14a", "shasum": "" }, "require": { "ext-fileinfo": "*", - "php": ">=5.5.9" + "league/mime-type-detection": "^1.3", + "php": "^7.2.5 || ^8.0" }, "conflict": { "league/flysystem-sftp": "<1.0.6" }, "require-dev": { - "phpspec/phpspec": "^3.4", - "phpunit/phpunit": "^5.7.26" + "phpspec/prophecy": "^1.11.1", + "phpunit/phpunit": "^8.5.8" }, "suggest": { "ext-fileinfo": "Required for MimeType", @@ -2256,46 +3662,114 @@ "sftp", "storage" ], + "support": { + "issues": "https://github.com/thephpleague/flysystem/issues", + "source": "https://github.com/thephpleague/flysystem/tree/1.x" + }, "funding": [ { "url": "https://offset.earth/frankdejonge", "type": "other" } ], - "time": "2020-05-18T15:13:39+00:00" + "time": "2020-08-23T07:39:11+00:00" }, { - "name": "league/oauth1-client", + "name": "league/mime-type-detection", "version": "1.7.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/oauth1-client.git", - "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647" + "url": "https://github.com/thephpleague/mime-type-detection.git", + "reference": "3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/fca5f160650cb74d23fc11aa570dd61f86dcf647", - "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647", + "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3", + "reference": "3b9dff8aaf7323590c1d2e443db701eb1f9aa0d3", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "^6.0", - "php": ">=5.5.0" + "ext-fileinfo": "*", + "php": "^7.2 || ^8.0" }, "require-dev": { - "mockery/mockery": "^0.9", - "phpunit/phpunit": "^4.0", - "squizlabs/php_codesniffer": "^2.0" + "friendsofphp/php-cs-fixer": "^2.18", + "phpstan/phpstan": "^0.12.68", + "phpunit/phpunit": "^8.5.8 || ^9.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\MimeTypeDetection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" + } + ], + "description": "Mime-type detection for Flysystem", + "support": { + "issues": "https://github.com/thephpleague/mime-type-detection/issues", + "source": "https://github.com/thephpleague/mime-type-detection/tree/1.7.0" + }, + "funding": [ + { + "url": "https://github.com/frankdejonge", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/flysystem", + "type": "tidelift" + } + ], + "time": "2021-01-18T20:58:21+00:00" + }, + { + "name": "league/oauth1-client", + "version": "v1.9.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/oauth1-client.git", + "reference": "1e7e6be2dc543bf466236fb171e5b20e1b06aee6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/1e7e6be2dc543bf466236fb171e5b20e1b06aee6", + "reference": "1e7e6be2dc543bf466236fb171e5b20e1b06aee6", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-openssl": "*", + "guzzlehttp/guzzle": "^6.0|^7.0", + "php": ">=7.1||>=8.0" + }, + "require-dev": { + "ext-simplexml": "*", + "friendsofphp/php-cs-fixer": "^2.17", + "mockery/mockery": "^1.3.3", + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5||9.5" + }, + "suggest": { + "ext-simplexml": "For decoding XML-based responses." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.0-dev", + "dev-develop": "2.0-dev" } }, "autoload": { "psr-4": { - "League\\OAuth1\\": "src/" + "League\\OAuth1\\Client\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2325,33 +3799,34 @@ "tumblr", "twitter" ], - "time": "2016-08-17T00:36:58+00:00" + "support": { + "issues": "https://github.com/thephpleague/oauth1-client/issues", + "source": "https://github.com/thephpleague/oauth1-client/tree/v1.9.0" + }, + "time": "2021-01-20T01:40:53+00:00" }, { "name": "maatwebsite/excel", - "version": "3.1.19", + "version": "3.1.29", "source": { "type": "git", "url": "https://github.com/Maatwebsite/Laravel-Excel.git", - "reference": "96527a9ebc2e79e9a5fa7eaef7e23c9e9bcc587c" + "reference": "1e567e6e19a04fd65b5876d5bc92f4015f09fab4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Maatwebsite/Laravel-Excel/zipball/96527a9ebc2e79e9a5fa7eaef7e23c9e9bcc587c", - "reference": "96527a9ebc2e79e9a5fa7eaef7e23c9e9bcc587c", + "url": "https://api.github.com/repos/Maatwebsite/Laravel-Excel/zipball/1e567e6e19a04fd65b5876d5bc92f4015f09fab4", + "reference": "1e567e6e19a04fd65b5876d5bc92f4015f09fab4", "shasum": "" }, "require": { "ext-json": "*", - "illuminate/support": "5.5.*|5.6.*|5.7.*|5.8.*|^6.0|^7.0", - "php": "^7.0", - "phpoffice/phpspreadsheet": "^1.10" + "illuminate/support": "5.8.*|^6.0|^7.0|^8.0", + "php": "^7.0|^8.0", + "phpoffice/phpspreadsheet": "1.16.*" }, "require-dev": { - "mockery/mockery": "^1.1", - "orchestra/database": "^4.0", - "orchestra/testbench": "^4.0", - "phpunit/phpunit": "^8.0", + "orchestra/testbench": "^6.0", "predis/predis": "^1.1" }, "type": "library", @@ -2392,6 +3867,10 @@ "php", "phpspreadsheet" ], + "support": { + "issues": "https://github.com/Maatwebsite/Laravel-Excel/issues", + "source": "https://github.com/Maatwebsite/Laravel-Excel/tree/3.1.29" + }, "funding": [ { "url": "https://laravel-excel.com/commercial-support", @@ -2402,7 +3881,7 @@ "type": "github" } ], - "time": "2020-02-28T15:47:45+00:00" + "time": "2021-03-16T11:56:39+00:00" }, { "name": "maennchen/zipstream-php", @@ -2463,6 +3942,10 @@ "stream", "zip" ], + "support": { + "issues": "https://github.com/maennchen/ZipStream-PHP/issues", + "source": "https://github.com/maennchen/ZipStream-PHP/tree/master" + }, "funding": [ { "url": "https://opencollective.com/zipstream", @@ -2473,30 +3956,30 @@ }, { "name": "markbaker/complex", - "version": "1.4.8", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/MarkBaker/PHPComplex.git", - "reference": "8eaa40cceec7bf0518187530b2e63871be661b72" + "reference": "9999f1432fae467bc93c53f357105b4c31bb994c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/8eaa40cceec7bf0518187530b2e63871be661b72", - "reference": "8eaa40cceec7bf0518187530b2e63871be661b72", + "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/9999f1432fae467bc93c53f357105b4c31bb994c", + "reference": "9999f1432fae467bc93c53f357105b4c31bb994c", "shasum": "" }, "require": { - "php": "^5.6.0|^7.0.0" + "php": "^7.2 || ^8.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", "phpcompatibility/php-compatibility": "^9.0", "phpdocumentor/phpdocumentor": "2.*", - "phploc/phploc": "2.*", + "phploc/phploc": "^4.0", "phpmd/phpmd": "2.*", - "phpunit/phpunit": "^4.8.35|^5.4.0", - "sebastian/phpcpd": "2.*", - "squizlabs/php_codesniffer": "^3.4.0" + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.3", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.4" }, "type": "library", "autoload": { @@ -2564,33 +4047,38 @@ "complex", "mathematics" ], - "time": "2020-03-11T20:15:49+00:00" + "support": { + "issues": "https://github.com/MarkBaker/PHPComplex/issues", + "source": "https://github.com/MarkBaker/PHPComplex/tree/PHP8" + }, + "time": "2020-08-26T10:42:07+00:00" }, { "name": "markbaker/matrix", - "version": "1.2.0", + "version": "2.1.2", "source": { "type": "git", "url": "https://github.com/MarkBaker/PHPMatrix.git", - "reference": "5348c5a67e3b75cd209d70103f916a93b1f1ed21" + "reference": "361c0f545c3172ee26c3d596a0aa03f0cef65e6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/5348c5a67e3b75cd209d70103f916a93b1f1ed21", - "reference": "5348c5a67e3b75cd209d70103f916a93b1f1ed21", + "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/361c0f545c3172ee26c3d596a0aa03f0cef65e6a", + "reference": "361c0f545c3172ee26c3d596a0aa03f0cef65e6a", "shasum": "" }, "require": { - "php": "^5.6.0|^7.0.0" + "php": "^7.1 || ^8.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "dev-master", - "phpcompatibility/php-compatibility": "dev-master", - "phploc/phploc": "^4", - "phpmd/phpmd": "dev-master", - "phpunit/phpunit": "^5.7", - "sebastian/phpcpd": "^3.0", - "squizlabs/php_codesniffer": "^3.0@dev" + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "phpcompatibility/php-compatibility": "^9.0", + "phpdocumentor/phpdocumentor": "2.*", + "phploc/phploc": "^4.0", + "phpmd/phpmd": "2.*", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.3", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.4" }, "type": "library", "autoload": { @@ -2598,22 +4086,22 @@ "Matrix\\": "classes/src/" }, "files": [ - "classes/src/functions/adjoint.php", - "classes/src/functions/antidiagonal.php", - "classes/src/functions/cofactors.php", - "classes/src/functions/determinant.php", - "classes/src/functions/diagonal.php", - "classes/src/functions/identity.php", - "classes/src/functions/inverse.php", - "classes/src/functions/minors.php", - "classes/src/functions/trace.php", - "classes/src/functions/transpose.php", - "classes/src/operations/add.php", - "classes/src/operations/directsum.php", - "classes/src/operations/subtract.php", - "classes/src/operations/multiply.php", - "classes/src/operations/divideby.php", - "classes/src/operations/divideinto.php" + "classes/src/Functions/adjoint.php", + "classes/src/Functions/antidiagonal.php", + "classes/src/Functions/cofactors.php", + "classes/src/Functions/determinant.php", + "classes/src/Functions/diagonal.php", + "classes/src/Functions/identity.php", + "classes/src/Functions/inverse.php", + "classes/src/Functions/minors.php", + "classes/src/Functions/trace.php", + "classes/src/Functions/transpose.php", + "classes/src/Operations/add.php", + "classes/src/Operations/directsum.php", + "classes/src/Operations/subtract.php", + "classes/src/Operations/multiply.php", + "classes/src/Operations/divideby.php", + "classes/src/Operations/divideinto.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -2623,7 +4111,7 @@ "authors": [ { "name": "Mark Baker", - "email": "mark@lange.demon.co.uk" + "email": "mark@demon-angel.eu" } ], "description": "PHP Class for working with matrices", @@ -2633,29 +4121,33 @@ "matrix", "vector" ], - "time": "2019-10-06T11:29:25+00:00" + "support": { + "issues": "https://github.com/MarkBaker/PHPMatrix/issues", + "source": "https://github.com/MarkBaker/PHPMatrix/tree/2.1.2" + }, + "time": "2021-01-23T16:37:31+00:00" }, { "name": "maximebf/debugbar", - "version": "v1.16.3", + "version": "v1.16.5", "source": { "type": "git", "url": "https://github.com/maximebf/php-debugbar.git", - "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372" + "reference": "6d51ee9e94cff14412783785e79a4e7ef97b9d62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/1a1605b8e9bacb34cc0c6278206d699772e1d372", - "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372", + "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/6d51ee9e94cff14412783785e79a4e7ef97b9d62", + "reference": "6d51ee9e94cff14412783785e79a4e7ef97b9d62", "shasum": "" }, "require": { - "php": "^7.1", + "php": "^7.1|^8", "psr/log": "^1.0", "symfony/var-dumper": "^2.6|^3|^4|^5" }, "require-dev": { - "phpunit/phpunit": "^5" + "phpunit/phpunit": "^7.5.20 || ^9.4.2" }, "suggest": { "kriswallsmith/assetic": "The best way to manage assets", @@ -2694,20 +4186,24 @@ "debug", "debugbar" ], - "time": "2020-05-06T07:06:27+00:00" + "support": { + "issues": "https://github.com/maximebf/php-debugbar/issues", + "source": "https://github.com/maximebf/php-debugbar/tree/v1.16.5" + }, + "time": "2020-12-07T11:07:24+00:00" }, { "name": "monolog/monolog", - "version": "2.1.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "38914429aac460e8e4616c8cb486ecb40ec90bb1" + "reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/38914429aac460e8e4616c8cb486ecb40ec90bb1", - "reference": "38914429aac460e8e4616c8cb486ecb40ec90bb1", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/1cb1cde8e8dd0f70cc0fe51354a59acad9302084", + "reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084", "shasum": "" }, "require": { @@ -2720,16 +4216,17 @@ "require-dev": { "aws/aws-sdk-php": "^2.4.9 || ^3.0", "doctrine/couchdb": "~1.0@dev", - "elasticsearch/elasticsearch": "^6.0", + "elasticsearch/elasticsearch": "^7", "graylog2/gelf-php": "^1.4.2", + "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4", "php-console/php-console": "^3.1.3", - "php-parallel-lint/php-parallel-lint": "^1.0", "phpspec/prophecy": "^1.6.1", + "phpstan/phpstan": "^0.12.59", "phpunit/phpunit": "^8.5", "predis/predis": "^1.1", "rollbar/rollbar": "^1.3", - "ruflin/elastica": ">=0.90 <3.0", + "ruflin/elastica": ">=0.90 <7.0.1", "swiftmailer/swiftmailer": "^5.3|^6.0" }, "suggest": { @@ -2749,7 +4246,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.x-dev" + "dev-main": "2.x-dev" } }, "autoload": { @@ -2765,16 +4262,20 @@ { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" + "homepage": "https://seld.be" } ], "description": "Sends your logs to files, sockets, inboxes, databases and various web services", - "homepage": "http://github.com/Seldaek/monolog", + "homepage": "https://github.com/Seldaek/monolog", "keywords": [ "log", "logging", "psr-3" ], + "support": { + "issues": "https://github.com/Seldaek/monolog/issues", + "source": "https://github.com/Seldaek/monolog/tree/2.2.0" + }, "funding": [ { "url": "https://github.com/Seldaek", @@ -2785,30 +4286,91 @@ "type": "tidelift" } ], - "time": "2020-05-22T08:12:19+00:00" + "time": "2020-12-14T13:15:25+00:00" }, { - "name": "myclabs/php-enum", - "version": "1.7.6", + "name": "mtdowling/jmespath.php", + "version": "2.6.0", "source": { "type": "git", - "url": "https://github.com/myclabs/php-enum.git", - "reference": "5f36467c7a87e20fbdc51e524fd8f9d1de80187c" + "url": "https://github.com/jmespath/jmespath.php.git", + "reference": "42dae2cbd13154083ca6d70099692fef8ca84bfb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/php-enum/zipball/5f36467c7a87e20fbdc51e524fd8f9d1de80187c", - "reference": "5f36467c7a87e20fbdc51e524fd8f9d1de80187c", + "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/42dae2cbd13154083ca6d70099692fef8ca84bfb", + "reference": "42dae2cbd13154083ca6d70099692fef8ca84bfb", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0 || ^8.0", + "symfony/polyfill-mbstring": "^1.17" + }, + "require-dev": { + "composer/xdebug-handler": "^1.4", + "phpunit/phpunit": "^4.8.36 || ^7.5.15" + }, + "bin": [ + "bin/jp.php" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "autoload": { + "psr-4": { + "JmesPath\\": "src/" + }, + "files": [ + "src/JmesPath.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + } + ], + "description": "Declaratively specify how to extract elements from a JSON document", + "keywords": [ + "json", + "jsonpath" + ], + "support": { + "issues": "https://github.com/jmespath/jmespath.php/issues", + "source": "https://github.com/jmespath/jmespath.php/tree/2.6.0" + }, + "time": "2020-07-31T21:01:56+00:00" + }, + { + "name": "myclabs/php-enum", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/php-enum.git", + "reference": "46cf3d8498b095bd33727b13fd5707263af99421" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/php-enum/zipball/46cf3d8498b095bd33727b13fd5707263af99421", + "reference": "46cf3d8498b095bd33727b13fd5707263af99421", "shasum": "" }, "require": { "ext-json": "*", - "php": ">=7.1" + "php": "^7.3 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^7", + "phpunit/phpunit": "^9.5", "squizlabs/php_codesniffer": "1.*", - "vimeo/psalm": "^3.8" + "vimeo/psalm": "^4.5.1" }, "type": "library", "autoload": { @@ -2831,7 +4393,21 @@ "keywords": [ "enum" ], - "time": "2020-02-14T08:15:52+00:00" + "support": { + "issues": "https://github.com/myclabs/php-enum/issues", + "source": "https://github.com/myclabs/php-enum/tree/1.8.0" + }, + "funding": [ + { + "url": "https://github.com/mnapoli", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", + "type": "tidelift" + } + ], + "time": "2021-02-15T16:11:48+00:00" }, { "name": "namshi/jose", @@ -2894,20 +4470,24 @@ "jwt", "token" ], + "support": { + "issues": "https://github.com/namshi/jose/issues", + "source": "https://github.com/namshi/jose/tree/master" + }, "time": "2016-12-05T07:27:31+00:00" }, { "name": "nesbot/carbon", - "version": "2.35.0", + "version": "2.46.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "4b9bd835261ef23d36397a46a76b496a458305e5" + "reference": "2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4b9bd835261ef23d36397a46a76b496a458305e5", - "reference": "4b9bd835261ef23d36397a46a76b496a458305e5", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4", + "reference": "2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4", "shasum": "" }, "require": { @@ -2919,10 +4499,11 @@ "require-dev": { "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", - "kylekatarnls/multi-tester": "^1.1", - "phpmd/phpmd": "^2.8", - "phpstan/phpstan": "^0.11", - "phpunit/phpunit": "^7.5 || ^8.0", + "kylekatarnls/multi-tester": "^2.0", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.54", + "phpunit/phpunit": "^7.5.20 || ^8.5.14", "squizlabs/php_codesniffer": "^3.4" }, "bin": [ @@ -2938,6 +4519,11 @@ "providers": [ "Carbon\\Laravel\\ServiceProvider" ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] } }, "autoload": { @@ -2967,6 +4553,10 @@ "datetime", "time" ], + "support": { + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, "funding": [ { "url": "https://opencollective.com/Carbon", @@ -2977,20 +4567,20 @@ "type": "tidelift" } ], - "time": "2020-05-24T18:27:52+00:00" + "time": "2021-02-24T17:30:44+00:00" }, { "name": "nikic/php-parser", - "version": "v4.5.0", + "version": "v4.10.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463" + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/53c2753d756f5adb586dca79c2ec0e2654dd9463", - "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e", + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e", "shasum": "" }, "require": { @@ -2998,8 +4588,8 @@ "php": ">=7.0" }, "require-dev": { - "ircmaxell/php-yacc": "0.0.5", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0" + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" }, "bin": [ "bin/php-parse" @@ -3007,7 +4597,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "4.9-dev" } }, "autoload": { @@ -3029,33 +4619,37 @@ "parser", "php" ], - "time": "2020-06-03T07:24:19+00:00" + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.4" + }, + "time": "2020-12-20T10:01:03+00:00" }, { "name": "opis/closure", - "version": "3.5.4", + "version": "3.6.1", "source": { "type": "git", "url": "https://github.com/opis/closure.git", - "reference": "1d0deef692f66dae5d70663caee2867d0971306b" + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/1d0deef692f66dae5d70663caee2867d0971306b", - "reference": "1d0deef692f66dae5d70663caee2867d0971306b", + "url": "https://api.github.com/repos/opis/closure/zipball/943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", "shasum": "" }, "require": { - "php": "^5.4 || ^7.0" + "php": "^5.4 || ^7.0 || ^8.0" }, "require-dev": { "jeremeamia/superclosure": "^2.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.5.x-dev" + "dev-master": "3.6.x-dev" } }, "autoload": { @@ -3090,7 +4684,108 @@ "serialization", "serialize" ], - "time": "2020-06-07T11:41:29+00:00" + "support": { + "issues": "https://github.com/opis/closure/issues", + "source": "https://github.com/opis/closure/tree/3.6.1" + }, + "time": "2020-11-07T02:01:34+00:00" + }, + { + "name": "paypal/paypal-checkout-sdk", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/paypal/Checkout-PHP-SDK.git", + "reference": "ed6a55075448308b87a8b59dcb7fedf04a048cb1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/paypal/Checkout-PHP-SDK/zipball/ed6a55075448308b87a8b59dcb7fedf04a048cb1", + "reference": "ed6a55075448308b87a8b59dcb7fedf04a048cb1", + "shasum": "" + }, + "require": { + "paypal/paypalhttp": "1.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "PayPalCheckoutSdk\\": "lib/PayPalCheckoutSdk", + "Sample\\": "samples/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "https://github.com/paypal/Checkout-PHP-SDK/blob/master/LICENSE" + ], + "authors": [ + { + "name": "PayPal", + "homepage": "https://github.com/paypal/Checkout-PHP-SDK/contributors" + } + ], + "description": "PayPal's PHP SDK for Checkout REST APIs", + "homepage": "http://github.com/paypal/Checkout-PHP-SDK/", + "keywords": [ + "checkout", + "orders", + "payments", + "paypal", + "rest", + "sdk" + ], + "support": { + "issues": "https://github.com/paypal/Checkout-PHP-SDK/issues", + "source": "https://github.com/paypal/Checkout-PHP-SDK/tree/1.0.1" + }, + "time": "2019-11-07T23:16:44+00:00" + }, + { + "name": "paypal/paypalhttp", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/paypal/paypalhttp_php.git", + "reference": "1ad9b846a046f09d6135cbf2cbaa7701bbc630a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/paypal/paypalhttp_php/zipball/1ad9b846a046f09d6135cbf2cbaa7701bbc630a3", + "reference": "1ad9b846a046f09d6135cbf2cbaa7701bbc630a3", + "shasum": "" + }, + "require": { + "ext-curl": "*" + }, + "require-dev": { + "phpunit/phpunit": "^5.7", + "wiremock-php/wiremock-php": "1.43.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PayPalHttp\\": "lib/PayPalHttp" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PayPal", + "homepage": "https://github.com/paypal/paypalhttp_php/contributors" + } + ], + "support": { + "issues": "https://github.com/paypal/paypalhttp_php/issues", + "source": "https://github.com/paypal/paypalhttp_php/tree/1.0.0" + }, + "abandoned": true, + "time": "2019-11-06T21:27:12+00:00" }, { "name": "phenx/php-font-lib", @@ -3127,6 +4822,10 @@ ], "description": "A library to read, parse, export and make subsets of different types of font files.", "homepage": "https://github.com/PhenX/php-font-lib", + "support": { + "issues": "https://github.com/PhenX/php-font-lib/issues", + "source": "https://github.com/PhenX/php-font-lib/tree/0.5.2" + }, "time": "2020-03-08T15:31:32+00:00" }, { @@ -3167,20 +4866,24 @@ ], "description": "A library to read, parse and export to PDF SVG files.", "homepage": "https://github.com/PhenX/php-svg-lib", + "support": { + "issues": "https://github.com/PhenX/php-svg-lib/issues", + "source": "https://github.com/PhenX/php-svg-lib/tree/master" + }, "time": "2019-09-11T20:02:13+00:00" }, { "name": "phpoffice/phpspreadsheet", - "version": "1.13.0", + "version": "1.16.0", "source": { "type": "git", "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", - "reference": "21bfb5b3243b8ceb9eda499a4d699fc42c11a9d1" + "reference": "76d4323b85129d0c368149c831a07a3e258b2b50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/21bfb5b3243b8ceb9eda499a4d699fc42c11a9d1", - "reference": "21bfb5b3243b8ceb9eda499a4d699fc42c11a9d1", + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/76d4323b85129d0c368149c831a07a3e258b2b50", + "reference": "76d4323b85129d0c368149c831a07a3e258b2b50", "shasum": "" }, "require": { @@ -3197,10 +4900,13 @@ "ext-xmlwriter": "*", "ext-zip": "*", "ext-zlib": "*", - "maennchen/zipstream-php": "^2.0", - "markbaker/complex": "^1.4", - "markbaker/matrix": "^1.2", - "php": "^7.2", + "ezyang/htmlpurifier": "^4.13", + "maennchen/zipstream-php": "^2.1", + "markbaker/complex": "^1.5||^2.0", + "markbaker/matrix": "^1.2||^2.0", + "php": "^7.2||^8.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", "psr/simple-cache": "^1.0" }, "require-dev": { @@ -3209,15 +4915,15 @@ "jpgraph/jpgraph": "^4.0", "mpdf/mpdf": "^8.0", "phpcompatibility/php-compatibility": "^9.3", - "phpunit/phpunit": "^8.5", + "phpunit/phpunit": "^8.5||^9.3", "squizlabs/php_codesniffer": "^3.5", "tecnickcom/tcpdf": "^6.3" }, "suggest": { - "dompdf/dompdf": "Option for rendering PDF with PDF Writer", + "dompdf/dompdf": "Option for rendering PDF with PDF Writer (doesn't yet support PHP8)", "jpgraph/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", "mpdf/mpdf": "Option for rendering PDF with PDF Writer", - "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" + "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer (doesn't yet support PHP8)" }, "type": "library", "autoload": { @@ -3261,28 +4967,32 @@ "xls", "xlsx" ], - "time": "2020-05-31T13:49:28+00:00" + "support": { + "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.16.0" + }, + "time": "2020-12-31T18:03:49+00:00" }, { "name": "phpoption/phpoption", - "version": "1.7.4", + "version": "1.7.5", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3" + "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3", - "reference": "b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/994ecccd8f3283ecf5ac33254543eb0ac946d525", + "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525", "shasum": "" }, "require": { "php": "^5.5.9 || ^7.0 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.3", - "phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0" + "bamarni/composer-bin-plugin": "^1.4.1", + "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0 || ^8.0 || ^9.0" }, "type": "library", "extra": { @@ -3316,6 +5026,10 @@ "php", "type" ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.7.5" + }, "funding": [ { "url": "https://github.com/GrahamCampbell", @@ -3326,31 +5040,31 @@ "type": "tidelift" } ], - "time": "2020-06-07T10:40:07+00:00" + "time": "2020-07-20T17:29:33+00:00" }, { "name": "prettus/l5-repository", - "version": "2.6.45", + "version": "2.7.5", "source": { "type": "git", "url": "https://github.com/andersao/l5-repository.git", - "reference": "c4d9d5834445e13d9ea0f00bfa23c67a0202aab1" + "reference": "ad55bf207d96abe23fcdb5cc7156d06b1984cf10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/andersao/l5-repository/zipball/c4d9d5834445e13d9ea0f00bfa23c67a0202aab1", - "reference": "c4d9d5834445e13d9ea0f00bfa23c67a0202aab1", + "url": "https://api.github.com/repos/andersao/l5-repository/zipball/ad55bf207d96abe23fcdb5cc7156d06b1984cf10", + "reference": "ad55bf207d96abe23fcdb5cc7156d06b1984cf10", "shasum": "" }, "require": { - "illuminate/config": "~5.0|~6.0|~7.0", - "illuminate/console": "~5.0|~6.0|~7.0", - "illuminate/database": "~5.0|~6.0|~7.0", - "illuminate/filesystem": "~5.0|~6.0|~7.0", - "illuminate/http": "~5.0|~6.0|~7.0", - "illuminate/pagination": "~5.0|~6.0|~7.0", - "illuminate/support": "~5.0|~6.0|~7.0", - "illuminate/validation": "~5.0|~6.0|~7.0", + "illuminate/config": "~5.0|~6.0|~7.0|^8.0", + "illuminate/console": "~5.0|~6.0|~7.0|^8.0", + "illuminate/database": "~5.0|~6.0|~7.0|^8.0", + "illuminate/filesystem": "~5.0|~6.0|~7.0|^8.0", + "illuminate/http": "~5.0|~6.0|~7.0|^8.0", + "illuminate/pagination": "~5.0|~6.0|~7.0|^8.0", + "illuminate/support": "~5.0|~6.0|~7.0|^8.0", + "illuminate/validation": "~5.0|~6.0|~7.0|^8.0", "prettus/laravel-validation": "~1.1|~1.2" }, "suggest": { @@ -3383,7 +5097,7 @@ "role": "Developer" } ], - "description": "Laravel 5 - Repositories to the database layer", + "description": "Laravel 5|6|7|8 - Repositories to the database layer", "homepage": "http://andersao.github.io/l5-repository", "keywords": [ "cache", @@ -3392,25 +5106,32 @@ "model", "repository" ], - "time": "2020-05-22T06:32:04+00:00" + "support": { + "docs": "http://andersao.github.io/l5-repository", + "email": "contato@andersonandra.de", + "issues": "https://github.com/andersao/l5-repository/issues", + "source": "https://github.com/andersao/l5-repository", + "wiki": "https://github.com/andersao/l5-repository" + }, + "time": "2021-03-06T21:06:43+00:00" }, { "name": "prettus/laravel-validation", - "version": "1.2.2", + "version": "1.3.0", "source": { "type": "git", "url": "https://github.com/andersao/laravel-validator.git", - "reference": "3d43037c2f497df3f8fbf3d8c16954a83c72e530" + "reference": "cce3c273c9d44f77de031dc4dedd261ab936c497" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/andersao/laravel-validator/zipball/3d43037c2f497df3f8fbf3d8c16954a83c72e530", - "reference": "3d43037c2f497df3f8fbf3d8c16954a83c72e530", + "url": "https://api.github.com/repos/andersao/laravel-validator/zipball/cce3c273c9d44f77de031dc4dedd261ab936c497", + "reference": "cce3c273c9d44f77de031dc4dedd261ab936c497", "shasum": "" }, "require": { - "illuminate/support": "~5.4|^6.0|^7.0", - "illuminate/validation": "~5.4|^6.0|^7.0", + "illuminate/support": "~5.4|^6.0|^7.0|^8.0", + "illuminate/validation": "~5.4|^6.0|^7.0|^8.0", "php": ">=5.4.0" }, "type": "library", @@ -3435,31 +5156,33 @@ "service", "validation" ], - "time": "2020-03-14T19:28:36+00:00" + "support": { + "docs": "http://andersao.github.io/laravel-validation", + "email": "contato@andersonandra.de", + "issues": "https://github.com/andersao/laravel-validation/issues", + "source": "https://github.com/andersao/laravel-validation", + "wiki": "https://github.com/andersao/laravel-validation" + }, + "time": "2020-09-21T20:20:45+00:00" }, { "name": "psr/container", - "version": "1.0.0", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=7.2.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -3472,7 +5195,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common Container Interface (PHP FIG PSR-11)", @@ -3484,7 +5207,11 @@ "container-interop", "psr" ], - "time": "2017-02-14T16:28:37+00:00" + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/1.1.1" + }, + "time": "2021-03-05T17:36:06+00:00" }, { "name": "psr/event-dispatcher", @@ -3530,8 +5257,119 @@ "psr", "psr-14" ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, "time": "2019-01-08T18:20:26+00:00" }, + { + "name": "psr/http-client", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client/tree/master" + }, + "time": "2020-06-29T06:28:15+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, { "name": "psr/http-message", "version": "1.0.1", @@ -3580,6 +5418,9 @@ "request", "response" ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, "time": "2016-08-06T14:39:51+00:00" }, { @@ -3627,6 +5468,9 @@ "psr", "psr-3" ], + "support": { + "source": "https://github.com/php-fig/log/tree/1.1.3" + }, "time": "2020-03-23T09:12:05+00:00" }, { @@ -3675,20 +5519,23 @@ "psr-16", "simple-cache" ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/master" + }, "time": "2017-10-23T01:57:42+00:00" }, { "name": "psy/psysh", - "version": "v0.10.4", + "version": "v0.10.7", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560" + "reference": "a395af46999a12006213c0c8346c9445eb31640c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/a8aec1b2981ab66882a01cce36a49b6317dc3560", - "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/a395af46999a12006213c0c8346c9445eb31640c", + "reference": "a395af46999a12006213c0c8346c9445eb31640c", "shasum": "" }, "require": { @@ -3717,7 +5564,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "0.10.x-dev" + "dev-main": "0.10.x-dev" } }, "autoload": { @@ -3747,7 +5594,11 @@ "interactive", "shell" ], - "time": "2020-05-03T19:32:03+00:00" + "support": { + "issues": "https://github.com/bobthecow/psysh/issues", + "source": "https://github.com/bobthecow/psysh/tree/v0.10.7" + }, + "time": "2021-03-14T02:14:56+00:00" }, { "name": "ralouphie/getallheaders", @@ -3787,39 +5638,46 @@ } ], "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, "time": "2019-03-08T08:55:37+00:00" }, { "name": "ramsey/collection", - "version": "1.0.1", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/ramsey/collection.git", - "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca" + "reference": "28a5c4ab2f5111db6a60b2b4ec84057e0f43b9c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/collection/zipball/925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", - "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", + "url": "https://api.github.com/repos/ramsey/collection/zipball/28a5c4ab2f5111db6a60b2b4ec84057e0f43b9c1", + "reference": "28a5c4ab2f5111db6a60b2b4ec84057e0f43b9c1", "shasum": "" }, "require": { - "php": "^7.2" + "php": "^7.2 || ^8" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0", - "fzaninotto/faker": "^1.5", - "jakub-onderka/php-parallel-lint": "^1", - "jangregor/phpstan-prophecy": "^0.6", + "captainhook/captainhook": "^5.3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "ergebnis/composer-normalize": "^2.6", + "fakerphp/faker": "^1.5", + "hamcrest/hamcrest-php": "^2", + "jangregor/phpstan-prophecy": "^0.8", "mockery/mockery": "^1.3", "phpstan/extension-installer": "^1", - "phpstan/phpdoc-parser": "0.4.1", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-mockery": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^8.5", - "slevomat/coding-standard": "^6.0", - "squizlabs/php_codesniffer": "^3.5" + "phpstan/phpstan": "^0.12.32", + "phpstan/phpstan-mockery": "^0.12.5", + "phpstan/phpstan-phpunit": "^0.12.11", + "phpunit/phpunit": "^8.5 || ^9", + "psy/psysh": "^0.10.4", + "slevomat/coding-standard": "^6.3", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.4" }, "type": "library", "autoload": { @@ -3839,7 +5697,6 @@ } ], "description": "A PHP 7.2+ library for representing and manipulating collections.", - "homepage": "https://github.com/ramsey/collection", "keywords": [ "array", "collection", @@ -3848,24 +5705,38 @@ "queue", "set" ], - "time": "2020-01-05T00:22:59+00:00" + "support": { + "issues": "https://github.com/ramsey/collection/issues", + "source": "https://github.com/ramsey/collection/tree/1.1.3" + }, + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", + "type": "tidelift" + } + ], + "time": "2021-01-21T17:40:04+00:00" }, { "name": "ramsey/uuid", - "version": "4.0.1", + "version": "4.1.1", "source": { "type": "git", "url": "https://github.com/ramsey/uuid.git", - "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d" + "reference": "cd4032040a750077205918c86049aa0f43d22947" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", - "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd4032040a750077205918c86049aa0f43d22947", + "reference": "cd4032040a750077205918c86049aa0f43d22947", "shasum": "" }, "require": { - "brick/math": "^0.8", + "brick/math": "^0.8 || ^0.9", "ext-json": "*", "php": "^7.2 || ^8", "ramsey/collection": "^1.0", @@ -3876,7 +5747,7 @@ }, "require-dev": { "codeception/aspect-mock": "^3", - "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2", + "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7.0", "doctrine/annotations": "^1.8", "goaop/framework": "^2", "mockery/mockery": "^1.3", @@ -3885,8 +5756,8 @@ "php-mock/php-mock-mockery": "^1.3", "php-mock/php-mock-phpunit": "^2.5", "php-parallel-lint/php-parallel-lint": "^1.1", + "phpbench/phpbench": "^0.17.1", "phpstan/extension-installer": "^1.0", - "phpstan/phpdoc-parser": "0.4.3", "phpstan/phpstan": "^0.12", "phpstan/phpstan-mockery": "^0.12", "phpstan/phpstan-phpunit": "^0.12", @@ -3929,13 +5800,68 @@ "identifier", "uuid" ], + "support": { + "issues": "https://github.com/ramsey/uuid/issues", + "rss": "https://github.com/ramsey/uuid/releases.atom", + "source": "https://github.com/ramsey/uuid" + }, "funding": [ { "url": "https://github.com/ramsey", "type": "github" } ], - "time": "2020-03-29T20:13:32+00:00" + "time": "2020-08-18T17:17:46+00:00" + }, + { + "name": "react/promise", + "version": "v2.8.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/promise.git", + "reference": "f3cff96a19736714524ca0dd1d4130de73dbbbc4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/promise/zipball/f3cff96a19736714524ca0dd1d4130de73dbbbc4", + "reference": "f3cff96a19736714524ca0dd1d4130de73dbbbc4", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^7.0 || ^6.5 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Promise\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com" + } + ], + "description": "A lightweight implementation of CommonJS Promises/A for PHP", + "keywords": [ + "promise", + "promises" + ], + "support": { + "issues": "https://github.com/reactphp/promise/issues", + "source": "https://github.com/reactphp/promise/tree/v2.8.0" + }, + "time": "2020-05-12T15:16:56+00:00" }, { "name": "sabberworm/php-css-parser", @@ -3980,36 +5906,39 @@ "parser", "stylesheet" ], + "support": { + "issues": "https://github.com/sabberworm/PHP-CSS-Parser/issues", + "source": "https://github.com/sabberworm/PHP-CSS-Parser/tree/8.3.1" + }, "time": "2020-06-01T09:10:00+00:00" }, { "name": "swiftmailer/swiftmailer", - "version": "v6.2.3", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9" + "reference": "15f7faf8508e04471f666633addacf54c0ab5933" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/149cfdf118b169f7840bbe3ef0d4bc795d1780c9", - "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/15f7faf8508e04471f666633addacf54c0ab5933", + "reference": "15f7faf8508e04471f666633addacf54c0ab5933", "shasum": "" }, "require": { - "egulias/email-validator": "~2.0", + "egulias/email-validator": "^2.0|^3.1", "php": ">=7.0.0", "symfony/polyfill-iconv": "^1.0", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, "require-dev": { - "mockery/mockery": "~0.9.1", - "symfony/phpunit-bridge": "^3.4.19|^4.1.8" + "mockery/mockery": "^1.0", + "symfony/phpunit-bridge": "^4.4|^5.0" }, "suggest": { - "ext-intl": "Needed to support internationalized email addresses", - "true/punycode": "Needed to support internationalized email addresses, if ext-intl is not installed" + "ext-intl": "Needed to support internationalized email addresses" }, "type": "library", "extra": { @@ -4042,20 +5971,34 @@ "mail", "mailer" ], - "time": "2019-11-12T09:31:26+00:00" + "support": { + "issues": "https://github.com/swiftmailer/swiftmailer/issues", + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.2.7" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/swiftmailer/swiftmailer", + "type": "tidelift" + } + ], + "time": "2021-03-09T12:30:35+00:00" }, { "name": "symfony/console", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "00bed125812716d09b163f0727ef33bb49bf3448" + "reference": "35f039df40a3b335ebf310f244cb242b3a83ac8d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/00bed125812716d09b163f0727ef33bb49bf3448", - "reference": "00bed125812716d09b163f0727ef33bb49bf3448", + "url": "https://api.github.com/repos/symfony/console/zipball/35f039df40a3b335ebf310f244cb242b3a83ac8d", + "reference": "35f039df40a3b335ebf310f244cb242b3a83ac8d", "shasum": "" }, "require": { @@ -4092,11 +6035,6 @@ "symfony/process": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Console\\": "" @@ -4119,8 +6057,17 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Console Component", + "description": "Eases the creation of beautiful and testable command line interfaces", "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4135,31 +6082,26 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-03-28T09:42:18+00:00" }, { "name": "symfony/css-selector", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9" + "reference": "f65f217b3314504a1ec99c2d6ef69016bb13490f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/e544e24472d4c97b2d11ade7caacd446727c6bf9", - "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/f65f217b3314504a1ec99c2d6ef69016bb13490f", + "reference": "f65f217b3314504a1ec99c2d6ef69016bb13490f", "shasum": "" }, "require": { "php": ">=7.2.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\CssSelector\\": "" @@ -4186,8 +6128,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony CssSelector Component", + "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/css-selector/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4202,20 +6147,20 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2021-01-27T10:01:46+00:00" }, { "name": "symfony/debug", - "version": "v4.4.9", + "version": "v4.4.20", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6" + "reference": "157bbec4fd773bae53c5483c50951a5530a2cc16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/28f92d08bb6d1fddf8158e02c194ad43870007e6", - "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6", + "url": "https://api.github.com/repos/symfony/debug/zipball/157bbec4fd773bae53c5483c50951a5530a2cc16", + "reference": "157bbec4fd773bae53c5483c50951a5530a2cc16", "shasum": "" }, "require": { @@ -4230,11 +6175,6 @@ "symfony/http-kernel": "^3.4|^4.0|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.4-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Debug\\": "" @@ -4257,8 +6197,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Debug Component", + "description": "Provides tools to ease debugging PHP code", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/debug/tree/v4.4.20" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4273,20 +6216,20 @@ "type": "tidelift" } ], - "time": "2020-05-24T08:33:35+00:00" + "time": "2021-01-28T16:54:48+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.1.2", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337" + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", - "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665", "shasum": "" }, "require": { @@ -4295,7 +6238,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4319,6 +6266,9 @@ ], "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/master" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4333,20 +6283,20 @@ "type": "tidelift" } ], - "time": "2020-05-27T08:34:37+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/error-handler", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896" + "reference": "bdb7fb4188da7f4211e4b88350ba0dfdad002b03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896", - "reference": "7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/bdb7fb4188da7f4211e4b88350ba0dfdad002b03", + "reference": "bdb7fb4188da7f4211e4b88350ba0dfdad002b03", "shasum": "" }, "require": { @@ -4361,11 +6311,6 @@ "symfony/serializer": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\ErrorHandler\\": "" @@ -4388,8 +6333,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony ErrorHandler Component", + "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/error-handler/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4404,20 +6352,20 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-03-16T09:07:47+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "cc0d059e2e997e79ca34125a52f3e33de4424ac7" + "reference": "d08d6ec121a425897951900ab692b612a61d6240" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/cc0d059e2e997e79ca34125a52f3e33de4424ac7", - "reference": "cc0d059e2e997e79ca34125a52f3e33de4424ac7", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d08d6ec121a425897951900ab692b612a61d6240", + "reference": "d08d6ec121a425897951900ab692b612a61d6240", "shasum": "" }, "require": { @@ -4437,6 +6385,7 @@ "psr/log": "~1.0", "symfony/config": "^4.4|^5.0", "symfony/dependency-injection": "^4.4|^5.0", + "symfony/error-handler": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/http-foundation": "^4.4|^5.0", "symfony/service-contracts": "^1.1|^2", @@ -4447,11 +6396,6 @@ "symfony/http-kernel": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" @@ -4474,8 +6418,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony EventDispatcher Component", + "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/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4490,20 +6437,20 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2021-02-18T17:12:37+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.1.2", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "405952c4e90941a17e52ef7489a2bd94870bb290" + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/405952c4e90941a17e52ef7489a2bd94870bb290", - "reference": "405952c4e90941a17e52ef7489a2bd94870bb290", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2", + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2", "shasum": "" }, "require": { @@ -4516,7 +6463,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4548,6 +6499,9 @@ "interoperability", "standards" ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.2.0" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4562,31 +6516,26 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/finder", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187" + "reference": "0d639a0943822626290d169965804f79400e6a04" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/4298870062bfc667cb78d2b379be4bf5dec5f187", - "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187", + "url": "https://api.github.com/repos/symfony/finder/zipball/0d639a0943822626290d169965804f79400e6a04", + "reference": "0d639a0943822626290d169965804f79400e6a04", "shasum": "" }, "require": { "php": ">=7.2.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Finder\\": "" @@ -4609,8 +6558,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Finder Component", + "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4625,20 +6577,99 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2021-02-15T18:55:04+00:00" }, { - "name": "symfony/http-foundation", - "version": "v5.1.0", + "name": "symfony/http-client-contracts", + "version": "v2.3.1", "source": { "type": "git", - "url": "https://github.com/symfony/http-foundation.git", - "reference": "e0d853bddc2b2cfb0d67b0b4496c03fffe1d37fa" + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e0d853bddc2b2cfb0d67b0b4496c03fffe1d37fa", - "reference": "e0d853bddc2b2cfb0d67b0b4496c03fffe1d37fa", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/41db680a15018f9c1d4b23516059633ce280ca33", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33", + "shasum": "" + }, + "require": { + "php": ">=7.2.5" + }, + "suggest": { + "symfony/http-client-implementation": "" + }, + "type": "library", + "extra": { + "branch-version": "2.3", + "branch-alias": { + "dev-main": "2.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + } + }, + "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": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v2.3.1" + }, + "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": "2020-10-14T17:08:19+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v5.2.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/54499baea7f7418bce7b5ec92770fd0799e8e9bf", + "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf", "shasum": "" }, "require": { @@ -4657,11 +6688,6 @@ "symfony/mime": "To use the file extension guesser" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" @@ -4684,8 +6710,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpFoundation Component", + "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4700,20 +6729,20 @@ "type": "tidelift" } ], - "time": "2020-05-24T12:18:07+00:00" + "time": "2021-02-25T17:16:57+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "75ff5327a7d6ede3ccc2fac3ebca9ed776b3e85c" + "reference": "f34de4c61ca46df73857f7f36b9a3805bdd7e3b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/75ff5327a7d6ede3ccc2fac3ebca9ed776b3e85c", - "reference": "75ff5327a7d6ede3ccc2fac3ebca9ed776b3e85c", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f34de4c61ca46df73857f7f36b9a3805bdd7e3b2", + "reference": "f34de4c61ca46df73857f7f36b9a3805bdd7e3b2", "shasum": "" }, "require": { @@ -4722,6 +6751,7 @@ "symfony/deprecation-contracts": "^2.1", "symfony/error-handler": "^4.4|^5.0", "symfony/event-dispatcher": "^5.0", + "symfony/http-client-contracts": "^1.1|^2", "symfony/http-foundation": "^4.4|^5.0", "symfony/polyfill-ctype": "^1.8", "symfony/polyfill-php73": "^1.9", @@ -4732,7 +6762,7 @@ "symfony/cache": "<5.0", "symfony/config": "<5.0", "symfony/console": "<4.4", - "symfony/dependency-injection": "<4.4", + "symfony/dependency-injection": "<5.1.8", "symfony/doctrine-bridge": "<5.0", "symfony/form": "<5.0", "symfony/http-client": "<5.0", @@ -4741,18 +6771,18 @@ "symfony/translation": "<5.0", "symfony/twig-bridge": "<5.0", "symfony/validator": "<5.0", - "twig/twig": "<2.4" + "twig/twig": "<2.13" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { - "psr/cache": "~1.0", + "psr/cache": "^1.0|^2.0|^3.0", "symfony/browser-kit": "^4.4|^5.0", "symfony/config": "^5.0", "symfony/console": "^4.4|^5.0", "symfony/css-selector": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", + "symfony/dependency-injection": "^5.1.8", "symfony/dom-crawler": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/finder": "^4.4|^5.0", @@ -4761,7 +6791,7 @@ "symfony/stopwatch": "^4.4|^5.0", "symfony/translation": "^4.4|^5.0", "symfony/translation-contracts": "^1.1|^2", - "twig/twig": "^2.4|^3.0" + "twig/twig": "^2.13|^3.0.4" }, "suggest": { "symfony/browser-kit": "", @@ -4770,11 +6800,6 @@ "symfony/dependency-injection": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\HttpKernel\\": "" @@ -4797,8 +6822,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpKernel Component", + "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-kernel/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4813,41 +6841,44 @@ "type": "tidelift" } ], - "time": "2020-05-31T06:14:18+00:00" + "time": "2021-03-29T05:16:58+00:00" }, { "name": "symfony/mime", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "56261f89385f9d13cf843a5101ac72131190bc91" + "reference": "1b2092244374cbe48ae733673f2ca0818b37197b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/56261f89385f9d13cf843a5101ac72131190bc91", - "reference": "56261f89385f9d13cf843a5101ac72131190bc91", + "url": "https://api.github.com/repos/symfony/mime/zipball/1b2092244374cbe48ae733673f2ca0818b37197b", + "reference": "1b2092244374cbe48ae733673f2ca0818b37197b", "shasum": "" }, "require": { "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0", "symfony/polyfill-php80": "^1.15" }, "conflict": { + "egulias/email-validator": "~3.0.0", + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", "symfony/mailer": "<4.4" }, "require-dev": { - "egulias/email-validator": "^2.1.10", - "symfony/dependency-injection": "^4.4|^5.0" + "egulias/email-validator": "^2.1.10|^3.1", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/property-access": "^4.4|^5.1", + "symfony/property-info": "^4.4|^5.1", + "symfony/serializer": "^5.2" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Mime\\": "" @@ -4870,12 +6901,15 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "A library to manipulate MIME messages", + "description": "Allows manipulating MIME messages", "homepage": "https://symfony.com", "keywords": [ "mime", "mime-type" ], + "support": { + "source": "https://github.com/symfony/mime/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4890,24 +6924,24 @@ "type": "tidelift" } ], - "time": "2020-05-25T12:33:44+00:00" + "time": "2021-03-12T13:18:39+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9" + "reference": "c6c942b1ac76c82448322025e084cadc56048b4e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e94c8b1bbe2bc77507a1056cdb06451c75b427f9", - "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e", + "reference": "c6c942b1ac76c82448322025e084cadc56048b4e", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-ctype": "For best performance" @@ -4915,7 +6949,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -4948,6 +6986,9 @@ "polyfill", "portable" ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -4962,24 +7003,24 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:14:59+00:00" + "time": "2021-01-07T16:49:33+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "c4de7601eefbf25f9d47190abe07f79fe0a27424" + "reference": "06fb361659649bcfd6a208a0f1fcaf4e827ad342" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/c4de7601eefbf25f9d47190abe07f79fe0a27424", - "reference": "c4de7601eefbf25f9d47190abe07f79fe0a27424", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/06fb361659649bcfd6a208a0f1fcaf4e827ad342", + "reference": "06fb361659649bcfd6a208a0f1fcaf4e827ad342", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-iconv": "For best performance" @@ -4987,7 +7028,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5021,6 +7066,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5035,24 +7083,24 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "e094b0770f7833fdf257e6ba4775be4e258230b2" + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/e094b0770f7833fdf257e6ba4775be4e258230b2", - "reference": "e094b0770f7833fdf257e6ba4775be4e258230b2", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5601e09b69f26c1828b13b6bb87cb07cddba3170", + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-intl": "For best performance" @@ -5060,7 +7108,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5095,6 +7147,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5109,25 +7164,25 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a" + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/3bff59ea7047e925be6b7f2059d60af31bb46d6a", - "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/2d63434d922daf7da8dd863e7907e67ee3031483", + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/polyfill-mbstring": "^1.3", + "php": ">=7.1", + "symfony/polyfill-intl-normalizer": "^1.10", "symfony/polyfill-php72": "^1.10" }, "suggest": { @@ -5136,7 +7191,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5156,6 +7215,10 @@ "name": "Laurent Bassin", "email": "laurent@bassin.info" }, + { + "name": "Trevor Rowbotham", + "email": "trevor.rowbotham@pm.me" + }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" @@ -5171,6 +7234,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5185,24 +7251,24 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "1357b1d168eb7f68ad6a134838e46b0b159444a9" + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/1357b1d168eb7f68ad6a134838e46b0b159444a9", - "reference": "1357b1d168eb7f68ad6a134838e46b0b159444a9", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/43a0283138253ed1d48d352ab6d0bdb3f809f248", + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-intl": "For best performance" @@ -5210,7 +7276,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5248,6 +7318,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5262,24 +7335,24 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:14:59+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "fa79b11539418b02fc5e1897267673ba2c19419c" + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fa79b11539418b02fc5e1897267673ba2c19419c", - "reference": "fa79b11539418b02fc5e1897267673ba2c19419c", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1", + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-mbstring": "For best performance" @@ -5287,7 +7360,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5321,6 +7398,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5335,39 +7415,34 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-php56", - "version": "v1.17.0", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "e3c8c138280cdfe4b81488441555583aa1984e23" + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/e3c8c138280cdfe4b81488441555583aa1984e23", - "reference": "e3c8c138280cdfe4b81488441555583aa1984e23", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/polyfill-util": "~1.0" + "php": ">=7.1" }, - "type": "library", + "type": "metapackage", "extra": { "branch-alias": { - "dev-master": "1.17-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php56\\": "" + "dev-main": "1.20-dev" }, - "files": [ - "bootstrap.php" - ] + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5391,6 +7466,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-php56/tree/v1.20.0" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5405,29 +7483,33 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "f048e612a3905f34931127360bdd2def19a5e582" + "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/f048e612a3905f34931127360bdd2def19a5e582", - "reference": "f048e612a3905f34931127360bdd2def19a5e582", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", + "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5460,6 +7542,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-php72/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5474,29 +7559,33 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-07T16:49:33+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc" + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a760d8964ff79ab9bf057613a5808284ec852ccc", - "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5532,6 +7621,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-php73/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5546,29 +7638,33 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" + "time": "2021-01-07T16:49:33+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.17.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd" + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/5e30b2799bc1ad68f7feb62b60a73743589438dd", - "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dc3063ba22c2a1fd2f45ed856374d79114998f91", + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91", "shasum": "" }, "require": { - "php": ">=7.0.8" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.17-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "autoload": { @@ -5608,6 +7704,9 @@ "portable", "shim" ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.22.1" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5622,86 +7721,20 @@ "type": "tidelift" } ], - "time": "2020-05-12T16:47:27+00:00" - }, - { - "name": "symfony/polyfill-util", - "version": "v1.17.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-util.git", - "reference": "4afb4110fc037752cf0ce9869f9ab8162c4e20d7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/4afb4110fc037752cf0ce9869f9ab8162c4e20d7", - "reference": "4afb4110fc037752cf0ce9869f9ab8162c4e20d7", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.17-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Util\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony utilities for portability of PHP codes", - "homepage": "https://symfony.com", - "keywords": [ - "compat", - "compatibility", - "polyfill", - "shim" - ], - "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": "2020-05-12T16:14:59+00:00" + "time": "2021-01-07T16:49:33+00:00" }, { "name": "symfony/process", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1" + "reference": "313a38f09c77fbcdc1d223e57d368cea76a2fd2f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1", - "reference": "7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1", + "url": "https://api.github.com/repos/symfony/process/zipball/313a38f09c77fbcdc1d223e57d368cea76a2fd2f", + "reference": "313a38f09c77fbcdc1d223e57d368cea76a2fd2f", "shasum": "" }, "require": { @@ -5709,11 +7742,6 @@ "symfony/polyfill-php80": "^1.15" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Process\\": "" @@ -5736,8 +7764,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Process Component", + "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5752,20 +7783,20 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-01-27T10:15:41+00:00" }, { "name": "symfony/routing", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "95cf30145b26c758d6d832aa2d0de3128978d556" + "reference": "31fba555f178afd04d54fd26953501b2c3f0c6e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/95cf30145b26c758d6d832aa2d0de3128978d556", - "reference": "95cf30145b26c758d6d832aa2d0de3128978d556", + "url": "https://api.github.com/repos/symfony/routing/zipball/31fba555f178afd04d54fd26953501b2c3f0c6e6", + "reference": "31fba555f178afd04d54fd26953501b2c3f0c6e6", "shasum": "" }, "require": { @@ -5779,7 +7810,7 @@ "symfony/yaml": "<4.4" }, "require-dev": { - "doctrine/annotations": "~1.2", + "doctrine/annotations": "^1.10.4", "psr/log": "~1.0", "symfony/config": "^5.0", "symfony/dependency-injection": "^4.4|^5.0", @@ -5795,11 +7826,6 @@ "symfony/yaml": "For using the YAML loader" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Routing\\": "" @@ -5822,7 +7848,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Routing Component", + "description": "Maps an HTTP request to a set of configuration variables", "homepage": "https://symfony.com", "keywords": [ "router", @@ -5830,6 +7856,9 @@ "uri", "url" ], + "support": { + "source": "https://github.com/symfony/routing/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5844,20 +7873,20 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-03-14T13:53:33+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.1.2", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b" + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/66a8f0957a3ca54e4f724e49028ab19d75a8918b", - "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", "shasum": "" }, "require": { @@ -5870,7 +7899,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -5902,6 +7935,9 @@ "interoperability", "standards" ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/master" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -5916,20 +7952,20 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/string", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "90c2a5103f07feb19069379f3abdcdbacc7753a9" + "reference": "ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/90c2a5103f07feb19069379f3abdcdbacc7753a9", - "reference": "90c2a5103f07feb19069379f3abdcdbacc7753a9", + "url": "https://api.github.com/repos/symfony/string/zipball/ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572", + "reference": "ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572", "shasum": "" }, "require": { @@ -5947,11 +7983,6 @@ "symfony/var-exporter": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\String\\": "" @@ -5977,7 +8008,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony String component", + "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", "homepage": "https://symfony.com", "keywords": [ "grapheme", @@ -5987,6 +8018,9 @@ "utf-8", "utf8" ], + "support": { + "source": "https://github.com/symfony/string/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -6001,27 +8035,27 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2021-03-17T17:12:15+00:00" }, { "name": "symfony/translation", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2" + "reference": "2cc7f45d96db9adfcf89adf4401d9dfed509f4e1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2", - "reference": "d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2", + "url": "https://api.github.com/repos/symfony/translation/zipball/2cc7f45d96db9adfcf89adf4401d9dfed509f4e1", + "reference": "2cc7f45d96db9adfcf89adf4401d9dfed509f4e1", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15", - "symfony/translation-contracts": "^2" + "symfony/translation-contracts": "^2.3" }, "conflict": { "symfony/config": "<4.4", @@ -6031,7 +8065,7 @@ "symfony/yaml": "<4.4" }, "provide": { - "symfony/translation-implementation": "2.0" + "symfony/translation-implementation": "2.3" }, "require-dev": { "psr/log": "~1.0", @@ -6050,12 +8084,10 @@ "symfony/yaml": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { + "files": [ + "Resources/functions.php" + ], "psr-4": { "Symfony\\Component\\Translation\\": "" }, @@ -6077,8 +8109,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Translation Component", + "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/translation/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -6093,20 +8128,20 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-03-23T19:33:48+00:00" }, { "name": "symfony/translation-contracts", - "version": "v2.1.2", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e" + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e5ca07c8f817f865f618aa072c2fe8e0e637340e", - "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e2eaa60b558f26a4b0354e1bbb25636efaaad105", + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105", "shasum": "" }, "require": { @@ -6118,7 +8153,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -6150,6 +8189,9 @@ "interoperability", "standards" ], + "support": { + "source": "https://github.com/symfony/translation-contracts/tree/v2.3.0" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -6164,20 +8206,20 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-09-28T13:05:58+00:00" }, { "name": "symfony/var-dumper", - "version": "v5.1.0", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "46a942903059b0b05e601f00eb64179e05578c0f" + "reference": "89412a68ea2e675b4e44f260a5666729f77f668e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/46a942903059b0b05e601f00eb64179e05578c0f", - "reference": "46a942903059b0b05e601f00eb64179e05578c0f", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/89412a68ea2e675b4e44f260a5666729f77f668e", + "reference": "89412a68ea2e675b4e44f260a5666729f77f668e", "shasum": "" }, "require": { @@ -6193,7 +8235,7 @@ "ext-iconv": "*", "symfony/console": "^4.4|^5.0", "symfony/process": "^4.4|^5.0", - "twig/twig": "^2.4|^3.0" + "twig/twig": "^2.13|^3.0.4" }, "suggest": { "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", @@ -6204,11 +8246,6 @@ "Resources/bin/var-dump-server" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "files": [ "Resources/functions/dump.php" @@ -6234,12 +8271,15 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony mechanism for exploring and dumping PHP variables", + "description": "Provides mechanisms for walking through any arbitrary PHP variable", "homepage": "https://symfony.com", "keywords": [ "debug", "dump" ], + "support": { + "source": "https://github.com/symfony/var-dumper/tree/v5.2.6" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -6254,30 +8294,30 @@ "type": "tidelift" } ], - "time": "2020-05-30T20:35:19+00:00" + "time": "2021-03-28T09:42:18+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.2", + "version": "2.2.3", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15" + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/dda2ee426acd6d801d5b7fd1001cde9b5f790e15", - "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/b43b05cf43c1b6d849478965062b6ef73e223bb5", + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", - "php": "^5.5 || ^7.0", + "php": "^5.5 || ^7.0 || ^8.0", "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5" }, "type": "library", "extra": { @@ -6303,39 +8343,45 @@ ], "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "time": "2019-10-24T08:53:34+00:00" + "support": { + "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.3" + }, + "time": "2020-07-13T06:12:54+00:00" }, { "name": "tymon/jwt-auth", - "version": "1.0.0", + "version": "dev-develop", "source": { "type": "git", "url": "https://github.com/tymondesigns/jwt-auth.git", - "reference": "d4cf9fd2b98790712d3e6cd1094e5ff018431f19" + "reference": "ab00f2d7cce5f043067aef7849cdc792de2df635" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tymondesigns/jwt-auth/zipball/d4cf9fd2b98790712d3e6cd1094e5ff018431f19", - "reference": "d4cf9fd2b98790712d3e6cd1094e5ff018431f19", + "url": "https://api.github.com/repos/tymondesigns/jwt-auth/zipball/ab00f2d7cce5f043067aef7849cdc792de2df635", + "reference": "ab00f2d7cce5f043067aef7849cdc792de2df635", "shasum": "" }, "require": { - "illuminate/auth": "^5.2|^6|^7", - "illuminate/contracts": "^5.2|^6|^7", - "illuminate/http": "^5.2|^6|^7", - "illuminate/support": "^5.2|^6|^7", - "lcobucci/jwt": "^3.2", + "illuminate/auth": "^5.2|^6|^7|^8", + "illuminate/contracts": "^5.2|^6|^7|^8", + "illuminate/http": "^5.2|^6|^7|^8", + "illuminate/support": "^5.2|^6|^7|^8", + "lcobucci/jwt": "<3.4", "namshi/jose": "^7.0", "nesbot/carbon": "^1.0|^2.0", - "php": "^5.5.9|^7.0" + "php": "^7.2|^8.0" }, "require-dev": { - "illuminate/console": "^5.2|^6|^7", - "illuminate/database": "^5.2|^6|^7", - "illuminate/routing": "^5.2|^6|^7", + "illuminate/console": "^5.2|^6|^7|^8", + "illuminate/database": "^5.2|^6|^7|^8", + "illuminate/routing": "^5.2|^6|^7|^8", "mockery/mockery": ">=0.9.9", - "phpunit/phpunit": "~4.8|~6.0" + "phpunit/phpunit": "^8.5|^9.4", + "yoast/phpunit-polyfills": "^0.2.0" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { @@ -6377,47 +8423,53 @@ "jwt", "laravel" ], + "support": { + "issues": "https://github.com/tymondesigns/jwt-auth/issues", + "source": "https://github.com/tymondesigns/jwt-auth" + }, "funding": [ { "url": "https://www.patreon.com/seantymon", "type": "patreon" } ], - "time": "2020-03-04T11:21:28+00:00" + "time": "2021-02-02T14:44:28+00:00" }, { "name": "vlucas/phpdotenv", - "version": "v4.1.7", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "db63b2ea280fdcf13c4ca392121b0b2450b51193" + "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/db63b2ea280fdcf13c4ca392121b0b2450b51193", - "reference": "db63b2ea280fdcf13c4ca392121b0b2450b51193", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", + "reference": "b3eac5c7ac896e52deab4a99068e3f4ab12d9e56", "shasum": "" }, "require": { - "php": "^5.5.9 || ^7.0 || ^8.0", - "phpoption/phpoption": "^1.7.3", - "symfony/polyfill-ctype": "^1.16" + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.1", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.7.4", + "symfony/polyfill-ctype": "^1.17", + "symfony/polyfill-mbstring": "^1.17", + "symfony/polyfill-php80": "^1.17" }, "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "ext-pcre": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0" + "phpunit/phpunit": "^7.5.20 || ^8.5.14 || ^9.5.1" }, "suggest": { - "ext-filter": "Required to use the boolean validator.", - "ext-pcre": "Required to use most of the library." + "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.1-dev" + "dev-master": "5.3-dev" } }, "autoload": { @@ -6447,6 +8499,10 @@ "env", "environment" ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.3.0" + }, "funding": [ { "url": "https://github.com/GrahamCampbell", @@ -6457,27 +8513,27 @@ "type": "tidelift" } ], - "time": "2020-06-07T18:25:35+00:00" + "time": "2021-01-20T15:23:13+00:00" }, { "name": "voku/portable-ascii", - "version": "1.5.1", + "version": "1.5.6", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "e7f9bd5deff09a57318f9b900ab33a05acfcf4d3" + "reference": "80953678b19901e5165c56752d087fc11526017c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/e7f9bd5deff09a57318f9b900ab33a05acfcf4d3", - "reference": "e7f9bd5deff09a57318f9b900ab33a05acfcf4d3", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/80953678b19901e5165c56752d087fc11526017c", + "reference": "80953678b19901e5165c56752d087fc11526017c", "shasum": "" }, "require": { "php": ">=7.0.0" }, "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0" + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" }, "suggest": { "ext-intl": "Use Intl for transliterator_transliterate() support" @@ -6505,6 +8561,10 @@ "clean", "php" ], + "support": { + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/1.5.6" + }, "funding": [ { "url": "https://www.paypal.me/moelleken", @@ -6514,6 +8574,10 @@ "url": "https://github.com/voku", "type": "github" }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, { "url": "https://www.patreon.com/voku", "type": "patreon" @@ -6523,31 +8587,90 @@ "type": "tidelift" } ], - "time": "2020-05-26T06:40:44+00:00" + "time": "2020-11-12T00:07:28+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.10.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.10.0" + }, + "time": "2021-03-09T10:59:23+00:00" } ], "packages-dev": [ { "name": "behat/gherkin", - "version": "v4.6.2", + "version": "v4.8.0", "source": { "type": "git", "url": "https://github.com/Behat/Gherkin.git", - "reference": "51ac4500c4dc30cbaaabcd2f25694299df666a31" + "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Behat/Gherkin/zipball/51ac4500c4dc30cbaaabcd2f25694299df666a31", - "reference": "51ac4500c4dc30cbaaabcd2f25694299df666a31", + "url": "https://api.github.com/repos/Behat/Gherkin/zipball/2391482cd003dfdc36b679b27e9f5326bd656acd", + "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd", "shasum": "" }, "require": { - "php": ">=5.3.1" + "php": "~7.2|~8.0" }, "require-dev": { - "phpunit/phpunit": "~4.5|~5", - "symfony/phpunit-bridge": "~2.7|~3|~4", - "symfony/yaml": "~2.3|~3|~4" + "cucumber/cucumber": "dev-gherkin-16.0.0", + "phpunit/phpunit": "~8|~9", + "symfony/phpunit-bridge": "~3|~4|~5", + "symfony/yaml": "~3|~4|~5" }, "suggest": { "symfony/yaml": "If you want to parse features, represented in YAML files" @@ -6574,7 +8697,7 @@ "homepage": "http://everzet.com" } ], - "description": "Gherkin DSL parser for PHP 5.3", + "description": "Gherkin DSL parser for PHP", "homepage": "http://behat.org/", "keywords": [ "BDD", @@ -6584,20 +8707,24 @@ "gherkin", "parser" ], - "time": "2020-03-17T14:03:26+00:00" + "support": { + "issues": "https://github.com/Behat/Gherkin/issues", + "source": "https://github.com/Behat/Gherkin/tree/v4.8.0" + }, + "time": "2021-02-04T12:44:21+00:00" }, { "name": "codeception/codeception", - "version": "4.1.1", + "version": "4.1.19", "source": { "type": "git", "url": "https://github.com/Codeception/Codeception.git", - "reference": "be584da4859baf34e05afd26fe4c587be4787ff0" + "reference": "138dc9345a81ec994dcd6b9680c501a752a37b00" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Codeception/zipball/be584da4859baf34e05afd26fe4c587be4787ff0", - "reference": "be584da4859baf34e05afd26fe4c587be4787ff0", + "url": "https://api.github.com/repos/Codeception/Codeception/zipball/138dc9345a81ec994dcd6b9680c501a752a37b00", + "reference": "138dc9345a81ec994dcd6b9680c501a752a37b00", "shasum": "" }, "require": { @@ -6609,7 +8736,7 @@ "ext-json": "*", "ext-mbstring": "*", "guzzlehttp/psr7": "~1.4", - "php": ">=5.6.0 <8.0", + "php": ">=5.6.0 <9.0", "symfony/console": ">=2.7 <6.0", "symfony/css-selector": ">=2.7 <6.0", "symfony/event-dispatcher": ">=2.7 <6.0", @@ -6627,7 +8754,7 @@ "monolog/monolog": "~1.8", "squizlabs/php_codesniffer": "~2.0", "symfony/process": ">=2.7 <6.0", - "vlucas/phpdotenv": "^2.0 | ^3.0 | ^4.0" + "vlucas/phpdotenv": "^2.0 | ^3.0 | ^4.0 | ^5.0" }, "suggest": { "codeception/specify": "BDD-style code blocks", @@ -6669,25 +8796,36 @@ "functional testing", "unit testing" ], - "time": "2020-02-19T16:56:20+00:00" + "support": { + "issues": "https://github.com/Codeception/Codeception/issues", + "source": "https://github.com/Codeception/Codeception/tree/4.1.19" + }, + "funding": [ + { + "url": "https://opencollective.com/codeception", + "type": "open_collective" + } + ], + "time": "2021-03-28T13:26:08+00:00" }, { "name": "codeception/lib-asserts", - "version": "1.12.0", + "version": "1.13.2", "source": { "type": "git", "url": "https://github.com/Codeception/lib-asserts.git", - "reference": "acd0dc8b394595a74b58dcc889f72569ff7d8e71" + "reference": "184231d5eab66bc69afd6b9429344d80c67a33b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/acd0dc8b394595a74b58dcc889f72569ff7d8e71", - "reference": "acd0dc8b394595a74b58dcc889f72569ff7d8e71", + "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/184231d5eab66bc69afd6b9429344d80c67a33b6", + "reference": "184231d5eab66bc69afd6b9429344d80c67a33b6", "shasum": "" }, "require": { "codeception/phpunit-wrapper": ">6.0.15 <6.1.0 | ^6.6.1 | ^7.7.1 | ^8.0.3 | ^9.0", - "php": ">=5.6.0 <8.0" + "ext-dom": "*", + "php": ">=5.6.0 <9.0" }, "type": "library", "autoload": { @@ -6707,32 +8845,43 @@ }, { "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" } ], "description": "Assertion methods used by Codeception core and Asserts module", - "homepage": "http://codeception.com/", + "homepage": "https://codeception.com/", "keywords": [ "codeception" ], - "time": "2020-04-17T18:20:46+00:00" + "support": { + "issues": "https://github.com/Codeception/lib-asserts/issues", + "source": "https://github.com/Codeception/lib-asserts/tree/1.13.2" + }, + "time": "2020-10-21T16:26:20+00:00" }, { "name": "codeception/lib-innerbrowser", - "version": "1.3.1", + "version": "1.4.1", "source": { "type": "git", "url": "https://github.com/Codeception/lib-innerbrowser.git", - "reference": "2123542b1325cc349ac68868abe74638bcb32ab6" + "reference": "693e116f81ef98eae98c43ef785a726faf87394e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/2123542b1325cc349ac68868abe74638bcb32ab6", - "reference": "2123542b1325cc349ac68868abe74638bcb32ab6", + "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/693e116f81ef98eae98c43ef785a726faf87394e", + "reference": "693e116f81ef98eae98c43ef785a726faf87394e", "shasum": "" }, "require": { "codeception/codeception": "*@dev", - "php": ">=5.6.0 <8.0", + "ext-dom": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": ">=5.6.0 <9.0", "symfony/browser-kit": ">=2.7 <6.0", "symfony/dom-crawler": ">=2.7 <6.0" }, @@ -6763,37 +8912,38 @@ } ], "description": "Parent library for all Codeception framework modules and PhpBrowser", - "homepage": "http://codeception.com/", + "homepage": "https://codeception.com/", "keywords": [ "codeception" ], - "time": "2020-02-20T14:46:50+00:00" + "support": { + "issues": "https://github.com/Codeception/lib-innerbrowser/issues", + "source": "https://github.com/Codeception/lib-innerbrowser/tree/1.4.1" + }, + "time": "2021-03-02T08:01:54+00:00" }, { "name": "codeception/module-asserts", - "version": "1.2.1", + "version": "1.3.1", "source": { "type": "git", "url": "https://github.com/Codeception/module-asserts.git", - "reference": "79f13d05b63f2fceba4d0e78044bab668c9b2a6b" + "reference": "59374f2fef0cabb9e8ddb53277e85cdca74328de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/79f13d05b63f2fceba4d0e78044bab668c9b2a6b", - "reference": "79f13d05b63f2fceba4d0e78044bab668c9b2a6b", + "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/59374f2fef0cabb9e8ddb53277e85cdca74328de", + "reference": "59374f2fef0cabb9e8ddb53277e85cdca74328de", "shasum": "" }, "require": { "codeception/codeception": "*@dev", - "codeception/lib-asserts": "^1.12.0", - "php": ">=5.6.0 <8.0" + "codeception/lib-asserts": "^1.13.1", + "php": ">=5.6.0 <9.0" }, "conflict": { "codeception/codeception": "<4.0" }, - "require-dev": { - "codeception/util-robohelpers": "dev-master" - }, "type": "library", "autoload": { "classmap": [ @@ -6810,42 +8960,47 @@ }, { "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" } ], "description": "Codeception module containing various assertions", - "homepage": "http://codeception.com/", + "homepage": "https://codeception.com/", "keywords": [ "assertions", "asserts", "codeception" ], - "time": "2020-04-20T07:26:11+00:00" + "support": { + "issues": "https://github.com/Codeception/module-asserts/issues", + "source": "https://github.com/Codeception/module-asserts/tree/1.3.1" + }, + "time": "2020-10-21T16:48:15+00:00" }, { "name": "codeception/module-filesystem", - "version": "1.0.2", + "version": "1.0.3", "source": { "type": "git", "url": "https://github.com/Codeception/module-filesystem.git", - "reference": "fe3c352479924ec0aaf6a6c3d6825dc14242b81e" + "reference": "781be167fb1557bfc9b61e0a4eac60a32c534ec1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/module-filesystem/zipball/fe3c352479924ec0aaf6a6c3d6825dc14242b81e", - "reference": "fe3c352479924ec0aaf6a6c3d6825dc14242b81e", + "url": "https://api.github.com/repos/Codeception/module-filesystem/zipball/781be167fb1557bfc9b61e0a4eac60a32c534ec1", + "reference": "781be167fb1557bfc9b61e0a4eac60a32c534ec1", "shasum": "" }, "require": { - "codeception/codeception": "*@dev", - "php": ">=5.6.0 <8.0", + "codeception/codeception": "^4.0", + "php": ">=5.6.0 <9.0", "symfony/finder": ">=2.7 <6.0" }, "conflict": { "codeception/codeception": "<4.0" }, - "require-dev": { - "codeception/util-robohelpers": "dev-master" - }, "type": "library", "autoload": { "classmap": [ @@ -6870,31 +9025,34 @@ "codeception", "filesystem" ], - "time": "2019-12-04T17:13:39+00:00" + "support": { + "issues": "https://github.com/Codeception/module-filesystem/issues", + "source": "https://github.com/Codeception/module-filesystem/tree/1.0.3" + }, + "time": "2020-10-24T14:46:40+00:00" }, { "name": "codeception/module-laravel5", - "version": "1.1.0", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/Codeception/module-laravel5.git", - "reference": "419c382fde8a6b2110001fa0a206ec4cdb77c6d4" + "reference": "1d8a82f78a6e8c26f49af65d9001fa311785d54b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/module-laravel5/zipball/419c382fde8a6b2110001fa0a206ec4cdb77c6d4", - "reference": "419c382fde8a6b2110001fa0a206ec4cdb77c6d4", + "url": "https://api.github.com/repos/Codeception/module-laravel5/zipball/1d8a82f78a6e8c26f49af65d9001fa311785d54b", + "reference": "1d8a82f78a6e8c26f49af65d9001fa311785d54b", "shasum": "" }, "require": { "codeception/codeception": "^4.0", "codeception/lib-innerbrowser": "^1.0", - "php": ">=5.6.0 <8.0" + "php": ">=5.6.0 <9.0" }, "require-dev": { "codeception/module-asserts": "^1.0", - "codeception/module-rest": "^1.0", - "codeception/util-robohelpers": "dev-master" + "codeception/module-rest": "^1.0" }, "type": "library", "autoload": { @@ -6920,29 +9078,30 @@ "codeception", "laravel5" ], - "time": "2020-03-28T14:59:53+00:00" + "support": { + "issues": "https://github.com/Codeception/module-laravel5/issues", + "source": "https://github.com/Codeception/module-laravel5/tree/1.1.1" + }, + "time": "2020-10-28T07:00:17+00:00" }, { "name": "codeception/module-webdriver", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/Codeception/module-webdriver.git", - "reference": "09c167817393090ce3dbce96027d94656b1963ce" + "reference": "63ea08880a44df809bdfbca08597e1b68cee9f87" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/module-webdriver/zipball/09c167817393090ce3dbce96027d94656b1963ce", - "reference": "09c167817393090ce3dbce96027d94656b1963ce", + "url": "https://api.github.com/repos/Codeception/module-webdriver/zipball/63ea08880a44df809bdfbca08597e1b68cee9f87", + "reference": "63ea08880a44df809bdfbca08597e1b68cee9f87", "shasum": "" }, "require": { "codeception/codeception": "^4.0", - "php": ">=5.6.0 <8.0", - "php-webdriver/webdriver": "^1.6.0" - }, - "require-dev": { - "codeception/util-robohelpers": "dev-master" + "php": ">=5.6.0 <9.0", + "php-webdriver/webdriver": "^1.8.0" }, "suggest": { "codeception/phpbuiltinserver": "Start and stop PHP built-in web server for your tests" @@ -6975,31 +9134,33 @@ "browser-testing", "codeception" ], - "time": "2020-05-31T08:47:24+00:00" + "support": { + "issues": "https://github.com/Codeception/module-webdriver/issues", + "source": "https://github.com/Codeception/module-webdriver/tree/1.2.0" + }, + "time": "2021-01-17T19:23:20+00:00" }, { "name": "codeception/phpunit-wrapper", - "version": "8.1.2", + "version": "9.0.6", "source": { "type": "git", "url": "https://github.com/Codeception/phpunit-wrapper.git", - "reference": "e610200adf75ebc1ea7cf10d7cdb43e0f5fff3cc" + "reference": "b0c06abb3181eedca690170f7ed0fd26a70bfacc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/e610200adf75ebc1ea7cf10d7cdb43e0f5fff3cc", - "reference": "e610200adf75ebc1ea7cf10d7cdb43e0f5fff3cc", + "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/b0c06abb3181eedca690170f7ed0fd26a70bfacc", + "reference": "b0c06abb3181eedca690170f7ed0fd26a70bfacc", "shasum": "" }, "require": { "php": ">=7.2", - "phpunit/php-code-coverage": "^7.0", - "phpunit/phpunit": "^8.0", - "sebastian/comparator": "^3.0", - "sebastian/diff": "^3.0" + "phpunit/phpunit": "^9.0" }, "require-dev": { "codeception/specify": "*", + "consolidation/robo": "^3.0.0-alpha3", "vlucas/phpdotenv": "^3.0" }, "type": "library", @@ -7016,23 +9177,30 @@ { "name": "Davert", "email": "davert.php@resend.cc" + }, + { + "name": "Naktibalda" } ], "description": "PHPUnit classes used by Codeception", - "time": "2020-04-17T18:30:51+00:00" + "support": { + "issues": "https://github.com/Codeception/phpunit-wrapper/issues", + "source": "https://github.com/Codeception/phpunit-wrapper/tree/9.0.6" + }, + "time": "2020-12-28T13:59:47+00:00" }, { "name": "codeception/stub", - "version": "3.6.1", + "version": "3.7.0", "source": { "type": "git", "url": "https://github.com/Codeception/Stub.git", - "reference": "a3ba01414cbee76a1bced9f9b6b169cc8d203880" + "reference": "468dd5fe659f131fc997f5196aad87512f9b1304" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Codeception/Stub/zipball/a3ba01414cbee76a1bced9f9b6b169cc8d203880", - "reference": "a3ba01414cbee76a1bced9f9b6b169cc8d203880", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/468dd5fe659f131fc997f5196aad87512f9b1304", + "reference": "468dd5fe659f131fc997f5196aad87512f9b1304", "shasum": "" }, "require": { @@ -7049,40 +9217,39 @@ "MIT" ], "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", - "time": "2020-02-07T18:42:28+00:00" + "support": { + "issues": "https://github.com/Codeception/Stub/issues", + "source": "https://github.com/Codeception/Stub/tree/3.7.0" + }, + "time": "2020-07-03T15:54:43+00:00" }, { "name": "doctrine/instantiator", - "version": "1.3.1", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "f350df0268e904597e3bd9c4685c53e0e333feea" + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea", - "reference": "f350df0268e904597e3bd9c4685c53e0e333feea", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^6.0", + "doctrine/coding-standard": "^8.0", "ext-pdo": "*", "ext-phar": "*", - "phpbench/phpbench": "^0.13", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-shim": "^0.11", - "phpunit/phpunit": "^7.0" + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" @@ -7096,7 +9263,7 @@ { "name": "Marco Pivetta", "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" + "homepage": "https://ocramius.github.io/" } ], "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", @@ -7105,6 +9272,10 @@ "constructor", "instantiate" ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.0" + }, "funding": [ { "url": "https://www.doctrine-project.org/sponsorship.html", @@ -7119,129 +9290,24 @@ "type": "tidelift" } ], - "time": "2020-05-29T17:27:14+00:00" - }, - { - "name": "facade/ignition-contracts", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/facade/ignition-contracts.git", - "reference": "f445db0fb86f48e205787b2592840dd9c80ded28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/facade/ignition-contracts/zipball/f445db0fb86f48e205787b2592840dd9c80ded28", - "reference": "f445db0fb86f48e205787b2592840dd9c80ded28", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Facade\\IgnitionContracts\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://flareapp.io", - "role": "Developer" - } - ], - "description": "Solution contracts for Ignition", - "homepage": "https://github.com/facade/ignition-contracts", - "keywords": [ - "contracts", - "flare", - "ignition" - ], - "time": "2019-08-30T14:06:08+00:00" - }, - { - "name": "filp/whoops", - "version": "2.7.2", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/17d0d3f266c8f925ebd035cd36f83cf802b47d4a", - "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a", - "shasum": "" - }, - "require": { - "php": "^5.5.9 || ^7.0", - "psr/log": "^1.0.1" - }, - "require-dev": { - "mockery/mockery": "^0.9 || ^1.0", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0", - "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "time": "2020-05-05T12:28:07+00:00" + "time": "2020-11-10T18:47:58+00:00" }, { "name": "hamcrest/hamcrest-php", - "version": "v2.0.0", + "version": "v2.0.1", "source": { "type": "git", "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad" + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/776503d3a8e85d4f9a1148614f95b7a608b046ad", - "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad", + "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", "shasum": "" }, "require": { - "php": "^5.3|^7.0" + "php": "^5.3|^7.0|^8.0" }, "replace": { "cordoval/hamcrest-php": "*", @@ -7249,14 +9315,13 @@ "kodova/hamcrest-php": "*" }, "require-dev": { - "phpunit/php-file-iterator": "1.3.3", - "phpunit/phpunit": "~4.0", - "satooshi/php-coveralls": "^1.0" + "phpunit/php-file-iterator": "^1.4 || ^2.0", + "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -7266,38 +9331,42 @@ }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD" + "BSD-3-Clause" ], "description": "This is the PHP port of Hamcrest Matchers", "keywords": [ "test" ], - "time": "2016-01-20T08:20:44+00:00" + "support": { + "issues": "https://github.com/hamcrest/hamcrest-php/issues", + "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" + }, + "time": "2020-07-09T08:09:16+00:00" }, { "name": "mockery/mockery", - "version": "1.4.0", + "version": "1.4.3", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "6c6a7c533469873deacf998237e7649fc6b36223" + "reference": "d1339f64479af1bee0e82a0413813fe5345a54ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/6c6a7c533469873deacf998237e7649fc6b36223", - "reference": "6c6a7c533469873deacf998237e7649fc6b36223", + "url": "https://api.github.com/repos/mockery/mockery/zipball/d1339f64479af1bee0e82a0413813fe5345a54ea", + "reference": "d1339f64479af1bee0e82a0413813fe5345a54ea", "shasum": "" }, "require": { - "hamcrest/hamcrest-php": "~2.0", + "hamcrest/hamcrest-php": "^2.0.1", "lib-pcre": ">=7.0", - "php": "^7.3.0" + "php": "^7.3 || ^8.0" }, "conflict": { "phpunit/phpunit": "<8.0" }, "require-dev": { - "phpunit/phpunit": "^8.0.0 || ^9.0.0" + "phpunit/phpunit": "^8.5 || ^9.3" }, "type": "library", "extra": { @@ -7340,24 +9409,28 @@ "test double", "testing" ], - "time": "2020-05-19T14:25:16+00:00" + "support": { + "issues": "https://github.com/mockery/mockery/issues", + "source": "https://github.com/mockery/mockery/tree/1.4.3" + }, + "time": "2021-02-24T09:51:49+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.9.5", + "version": "1.10.2", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef" + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef", - "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220", + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.1 || ^8.0" }, "replace": { "myclabs/deep-copy": "self.version" @@ -7388,39 +9461,49 @@ "object", "object graph" ], - "time": "2020-01-17T21:11:47+00:00" + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2020-11-13T09:40:50+00:00" }, { "name": "nunomaduro/collision", - "version": "v4.2.0", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "d50490417eded97be300a92cd7df7badc37a9018" + "reference": "aca63581f380f63a492b1e3114604e411e39133a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/d50490417eded97be300a92cd7df7badc37a9018", - "reference": "d50490417eded97be300a92cd7df7badc37a9018", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/aca63581f380f63a492b1e3114604e411e39133a", + "reference": "aca63581f380f63a492b1e3114604e411e39133a", "shasum": "" }, "require": { "facade/ignition-contracts": "^1.0", - "filp/whoops": "^2.4", - "php": "^7.2.5", + "filp/whoops": "^2.7.2", + "php": "^7.3 || ^8.0", "symfony/console": "^5.0" }, "require-dev": { - "facade/ignition": "^2.0", - "fideloper/proxy": "^4.2", - "friendsofphp/php-cs-fixer": "^2.16", - "fruitcake/laravel-cors": "^1.0", - "laravel/framework": "^7.0", - "laravel/tinker": "^2.0", - "nunomaduro/larastan": "^0.5", - "orchestra/testbench": "^5.0", - "phpstan/phpstan": "^0.12.3", - "phpunit/phpunit": "^8.5.1 || ^9.0" + "brianium/paratest": "^6.1", + "fideloper/proxy": "^4.4.1", + "friendsofphp/php-cs-fixer": "^2.17.3", + "fruitcake/laravel-cors": "^2.0.3", + "laravel/framework": "^9.0", + "nunomaduro/larastan": "^0.6.2", + "nunomaduro/mock-final-classes": "^1.0", + "orchestra/testbench": "^7.0", + "phpstan/phpstan": "^0.12.64", + "phpunit/phpunit": "^9.5.0" }, "type": "library", "extra": { @@ -7458,6 +9541,10 @@ "php", "symfony" ], + "support": { + "issues": "https://github.com/nunomaduro/collision/issues", + "source": "https://github.com/nunomaduro/collision" + }, "funding": [ { "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L", @@ -7472,32 +9559,33 @@ "type": "patreon" } ], - "time": "2020-04-04T19:56:08+00:00" + "time": "2021-01-25T15:34:13+00:00" }, { "name": "phar-io/manifest", - "version": "1.0.3", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/phar-io/manifest.git", - "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4" + "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", - "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", + "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", "shasum": "" }, "require": { "ext-dom": "*", "ext-phar": "*", - "phar-io/version": "^2.0", - "php": "^5.6 || ^7.0" + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -7527,24 +9615,28 @@ } ], "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "time": "2018-07-08T19:23:20+00:00" + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/master" + }, + "time": "2020-06-27T14:33:11+00:00" }, { "name": "phar-io/version", - "version": "2.0.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/phar-io/version.git", - "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6" + "reference": "bae7c545bef187884426f042434e561ab1ddb182" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6", - "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6", + "url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182", + "reference": "bae7c545bef187884426f042434e561ab1ddb182", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "php": "^7.2 || ^8.0" }, "type": "library", "autoload": { @@ -7574,38 +9666,44 @@ } ], "description": "Library for handling version information and constraints", - "time": "2018-07-08T19:19:57+00:00" + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/3.1.0" + }, + "time": "2021-02-23T14:00:09+00:00" }, { "name": "php-webdriver/webdriver", - "version": "1.8.2", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/php-webdriver/php-webdriver.git", - "reference": "3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab" + "reference": "cd9290b95b7651d495bd69253d6e3ef469a7f211" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab", - "reference": "3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab", + "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/cd9290b95b7651d495bd69253d6e3ef469a7f211", + "reference": "cd9290b95b7651d495bd69253d6e3ef469a7f211", "shasum": "" }, "require": { "ext-curl": "*", "ext-json": "*", "ext-zip": "*", - "php": "^5.6 || ~7.0", + "php": "^5.6 || ~7.0 || ^8.0", "symfony/polyfill-mbstring": "^1.12", "symfony/process": "^2.8 || ^3.1 || ^4.0 || ^5.0" }, + "replace": { + "facebook/webdriver": "*" + }, "require-dev": { "friendsofphp/php-cs-fixer": "^2.0", - "jakub-onderka/php-parallel-lint": "^1.0", - "php-coveralls/php-coveralls": "^2.0", - "php-mock/php-mock-phpunit": "^1.1", - "phpunit/phpunit": "^5.7", - "sebastian/environment": "^1.3.4 || ^2.0 || ^3.0", - "sminnee/phpunit-mock-objects": "^3.4", + "ondram/ci-detector": "^2.1 || ^3.5 || ^4.0", + "php-coveralls/php-coveralls": "^2.4", + "php-mock/php-mock-phpunit": "^1.1 || ^2.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpunit/phpunit": "^5.7 || ^7 || ^8 || ^9", "squizlabs/php_codesniffer": "^3.5", "symfony/var-dumper": "^3.3 || ^4.0 || ^5.0" }, @@ -7615,7 +9713,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.8.x-dev" + "dev-main": "1.8.x-dev" } }, "autoload": { @@ -7639,29 +9737,33 @@ "selenium", "webdriver" ], - "time": "2020-03-04T14:40:12+00:00" + "support": { + "issues": "https://github.com/php-webdriver/php-webdriver/issues", + "source": "https://github.com/php-webdriver/php-webdriver/tree/1.10.0" + }, + "time": "2021-02-25T13:38:09+00:00" }, { "name": "phpdocumentor/reflection-common", - "version": "2.1.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b" + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b", - "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", "shasum": "" }, "require": { - "php": ">=7.1" + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.x-dev" + "dev-2.x": "2.x-dev" } }, "autoload": { @@ -7688,32 +9790,35 @@ "reflection", "static analysis" ], - "time": "2020-04-27T09:25:28+00:00" + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.1.0", + "version": "5.2.2", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e" + "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", - "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", + "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", "shasum": "" }, "require": { - "ext-filter": "^7.1", - "php": "^7.2", - "phpdocumentor/reflection-common": "^2.0", - "phpdocumentor/type-resolver": "^1.0", - "webmozart/assert": "^1" + "ext-filter": "*", + "php": "^7.2 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^1.3", + "webmozart/assert": "^1.9.1" }, "require-dev": { - "doctrine/instantiator": "^1", - "mockery/mockery": "^1" + "mockery/mockery": "~1.3.2" }, "type": "library", "extra": { @@ -7741,34 +9846,37 @@ } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2020-02-22T12:28:44+00:00" + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master" + }, + "time": "2020-09-03T19:13:55+00:00" }, { "name": "phpdocumentor/type-resolver", - "version": "1.1.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "7462d5f123dfc080dfdf26897032a6513644fc95" + "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95", - "reference": "7462d5f123dfc080dfdf26897032a6513644fc95", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", "shasum": "" }, "require": { - "php": "^7.2", + "php": "^7.2 || ^8.0", "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { - "ext-tokenizer": "^7.2", - "mockery/mockery": "~1" + "ext-tokenizer": "*" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-1.x": "1.x-dev" } }, "autoload": { @@ -7787,37 +9895,41 @@ } ], "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "time": "2020-02-18T18:59:58+00:00" + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0" + }, + "time": "2020-09-17T18:55:26+00:00" }, { "name": "phpspec/prophecy", - "version": "v1.10.3", + "version": "1.13.0", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "451c3cd1418cf640de218914901e51b064abb093" + "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093", - "reference": "451c3cd1418cf640de218914901e51b064abb093", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be1996ed8adc35c3fd795488a653f4b518be70ea", + "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.0.2", - "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0", - "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0", - "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0" + "doctrine/instantiator": "^1.2", + "php": "^7.2 || ~8.0, <8.1", + "phpdocumentor/reflection-docblock": "^5.2", + "sebastian/comparator": "^3.0 || ^4.0", + "sebastian/recursion-context": "^3.0 || ^4.0" }, "require-dev": { - "phpspec/phpspec": "^2.5 || ^3.2", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1" + "phpspec/phpspec": "^6.0", + "phpunit/phpunit": "^8.0 || ^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.10.x-dev" + "dev-master": "1.11.x-dev" } }, "autoload": { @@ -7850,44 +9962,52 @@ "spy", "stub" ], - "time": "2020-03-05T15:02:03+00:00" + "support": { + "issues": "https://github.com/phpspec/prophecy/issues", + "source": "https://github.com/phpspec/prophecy/tree/1.13.0" + }, + "time": "2021-03-17T13:42:18+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "7.0.10", + "version": "9.2.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf" + "reference": "f6293e1b30a2354e8428e004689671b83871edde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf", - "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f6293e1b30a2354e8428e004689671b83871edde", + "reference": "f6293e1b30a2354e8428e004689671b83871edde", "shasum": "" }, "require": { "ext-dom": "*", + "ext-libxml": "*", "ext-xmlwriter": "*", - "php": "^7.2", - "phpunit/php-file-iterator": "^2.0.2", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-token-stream": "^3.1.1", - "sebastian/code-unit-reverse-lookup": "^1.0.1", - "sebastian/environment": "^4.2.2", - "sebastian/version": "^2.0.1", - "theseer/tokenizer": "^1.1.3" + "nikic/php-parser": "^4.10.2", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.3", + "phpunit/php-text-template": "^2.0.2", + "sebastian/code-unit-reverse-lookup": "^2.0.2", + "sebastian/complexity": "^2.0", + "sebastian/environment": "^5.1.2", + "sebastian/lines-of-code": "^1.0.3", + "sebastian/version": "^3.0.1", + "theseer/tokenizer": "^1.2.0" }, "require-dev": { - "phpunit/phpunit": "^8.2.2" + "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-xdebug": "^2.7.2" + "ext-pcov": "*", + "ext-xdebug": "*" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "7.0-dev" + "dev-master": "9.2-dev" } }, "autoload": { @@ -7913,32 +10033,42 @@ "testing", "xunit" ], - "time": "2019-11-20T13:55:58+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-03-28T07:26:59+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "2.0.2", + "version": "3.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "050bedf145a257b1ff02746c31894800e5122946" + "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946", - "reference": "050bedf145a257b1ff02746c31894800e5122946", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8", + "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8", "shasum": "" }, "require": { - "php": "^7.1" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^7.1" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -7963,26 +10093,107 @@ "filesystem", "iterator" ], - "time": "2018-09-13T20:33:42+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:57:25+00:00" }, { - "name": "phpunit/php-text-template", - "version": "1.2.1", + "name": "phpunit/php-invoker", + "version": "3.1.1", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.3" + }, + "require-dev": { + "ext-pcntl": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-pcntl": "*" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-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": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "process" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-invoker/issues", + "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:58:55+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, "autoload": { "classmap": [ "src/" @@ -8004,32 +10215,42 @@ "keywords": [ "template" ], - "time": "2015-06-21T13:50:34+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T05:33:50+00:00" }, { "name": "phpunit/php-timer", - "version": "2.1.2", + "version": "5.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "1038454804406b0b5f5f520358e78c1c2f71501e" + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e", - "reference": "1038454804406b0b5f5f520358e78c1c2f71501e", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", "shasum": "" }, "require": { - "php": "^7.1" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^7.0" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -8053,105 +10274,69 @@ "keywords": [ "timer" ], - "time": "2019-06-07T04:22:29+00:00" - }, - { - "name": "phpunit/php-token-stream", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff" + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff", - "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": "^7.1" - }, - "require-dev": { - "phpunit/phpunit": "^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ + "funding": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "url": "https://github.com/sebastianbergmann", + "type": "github" } ], - "description": "Wrapper around PHP's tokenizer extension.", - "homepage": "https://github.com/sebastianbergmann/php-token-stream/", - "keywords": [ - "tokenizer" - ], - "time": "2019-09-17T06:23:10+00:00" + "time": "2020-10-26T13:16:10+00:00" }, { "name": "phpunit/phpunit", - "version": "8.5.5", + "version": "9.5.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "63dda3b212a0025d380a745f91bdb4d8c985adb7" + "reference": "c73c6737305e779771147af66c96ca6a7ed8a741" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/63dda3b212a0025d380a745f91bdb4d8c985adb7", - "reference": "63dda3b212a0025d380a745f91bdb4d8c985adb7", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c73c6737305e779771147af66c96ca6a7ed8a741", + "reference": "c73c6737305e779771147af66c96ca6a7ed8a741", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.2.0", + "doctrine/instantiator": "^1.3.1", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.9.1", - "phar-io/manifest": "^1.0.3", - "phar-io/version": "^2.0.1", - "php": "^7.2", - "phpspec/prophecy": "^1.8.1", - "phpunit/php-code-coverage": "^7.0.7", - "phpunit/php-file-iterator": "^2.0.2", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-timer": "^2.1.2", - "sebastian/comparator": "^3.0.2", - "sebastian/diff": "^3.0.2", - "sebastian/environment": "^4.2.2", - "sebastian/exporter": "^3.1.1", - "sebastian/global-state": "^3.0.0", - "sebastian/object-enumerator": "^3.0.3", - "sebastian/resource-operations": "^2.0.1", - "sebastian/type": "^1.1.3", - "sebastian/version": "^2.0.1" + "myclabs/deep-copy": "^1.10.1", + "phar-io/manifest": "^2.0.1", + "phar-io/version": "^3.0.2", + "php": ">=7.3", + "phpspec/prophecy": "^1.12.1", + "phpunit/php-code-coverage": "^9.2.3", + "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/diff": "^4.0.3", + "sebastian/environment": "^5.1.3", + "sebastian/exporter": "^4.0.3", + "sebastian/global-state": "^5.0.1", + "sebastian/object-enumerator": "^4.0.3", + "sebastian/resource-operations": "^3.0.3", + "sebastian/type": "^2.3", + "sebastian/version": "^3.0.2" }, "require-dev": { - "ext-pdo": "*" + "ext-pdo": "*", + "phpspec/prophecy-phpunit": "^2.0.1" }, "suggest": { "ext-soap": "*", - "ext-xdebug": "*", - "phpunit/php-invoker": "^2.0.0" + "ext-xdebug": "*" }, "bin": [ "phpunit" @@ -8159,12 +10344,15 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "8.5-dev" + "dev-master": "9.5-dev" } }, "autoload": { "classmap": [ "src/" + ], + "files": [ + "src/Framework/Assert/Functions.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -8185,6 +10373,10 @@ "testing", "xunit" ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.4" + }, "funding": [ { "url": "https://phpunit.de/donate.html", @@ -8195,32 +10387,144 @@ "type": "github" } ], - "time": "2020-05-22T13:51:52+00:00" + "time": "2021-03-23T07:16:29+00:00" }, { - "name": "sebastian/code-unit-reverse-lookup", + "name": "sebastian/cli-parser", "version": "1.0.1", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.0" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.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": "Library for parsing CLI options", + "homepage": "https://github.com/sebastianbergmann/cli-parser", + "support": { + "issues": "https://github.com/sebastianbergmann/cli-parser/issues", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:08:49+00:00" + }, + { + "name": "sebastian/code-unit", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit.git", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.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": "Collection of value objects that represent the PHP code units", + "homepage": "https://github.com/sebastianbergmann/code-unit", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit/issues", + "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:08:54+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" } }, "autoload": { @@ -8240,34 +10544,44 @@ ], "description": "Looks up which function or method a line of code belongs to", "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "time": "2017-03-04T06:30:41+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:30:19+00:00" }, { "name": "sebastian/comparator", - "version": "3.0.2", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da" + "reference": "55f4261989e546dc112258c7a75935a81a7ce382" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da", - "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", + "reference": "55f4261989e546dc112258c7a75935a81a7ce382", "shasum": "" }, "require": { - "php": "^7.1", - "sebastian/diff": "^3.0", - "sebastian/exporter": "^3.1" + "php": ">=7.3", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" }, "require-dev": { - "phpunit/phpunit": "^7.1" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -8280,6 +10594,10 @@ "BSD-3-Clause" ], "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, { "name": "Jeff Welch", "email": "whatthejeff@gmail.com" @@ -8291,10 +10609,6 @@ { "name": "Bernhard Schussek", "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" } ], "description": "Provides the functionality to compare PHP values for equality", @@ -8304,33 +10618,43 @@ "compare", "equality" ], - "time": "2018-07-12T15:12:46+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:49:45+00:00" }, { - "name": "sebastian/diff", - "version": "3.0.2", + "name": "sebastian/complexity", + "version": "2.0.2", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29" + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29", - "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", "shasum": "" }, "require": { - "php": "^7.1" + "nikic/php-parser": "^4.7", + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^7.5 || ^8.0", - "symfony/process": "^2 || ^3.3 || ^4" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -8344,12 +10668,69 @@ ], "authors": [ { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for calculating the complexity of PHP code units", + "homepage": "https://github.com/sebastianbergmann/complexity", + "support": { + "issues": "https://github.com/sebastianbergmann/complexity/issues", + "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:52:27+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "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": "Diff implementation", @@ -8360,27 +10741,37 @@ "unidiff", "unified diff" ], - "time": "2019-02-04T06:01:07+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:10:38+00:00" }, { "name": "sebastian/environment", - "version": "4.2.3", + "version": "5.1.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368" + "reference": "388b6ced16caa751030f6a69e588299fa09200ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368", - "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", + "reference": "388b6ced16caa751030f6a69e588299fa09200ac", "shasum": "" }, "require": { - "php": "^7.1" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^7.5" + "phpunit/phpunit": "^9.3" }, "suggest": { "ext-posix": "*" @@ -8388,7 +10779,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -8413,34 +10804,44 @@ "environment", "hhvm" ], - "time": "2019-11-20T08:46:58+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:52:38+00:00" }, { "name": "sebastian/exporter", - "version": "3.1.2", + "version": "4.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e" + "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e", - "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65", + "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65", "shasum": "" }, "require": { - "php": "^7.0", - "sebastian/recursion-context": "^3.0" + "php": ">=7.3", + "sebastian/recursion-context": "^4.0" }, "require-dev": { "ext-mbstring": "*", - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1.x-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -8480,30 +10881,40 @@ "export", "exporter" ], - "time": "2019-09-14T09:02:43+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:24:23+00:00" }, { "name": "sebastian/global-state", - "version": "3.0.0", + "version": "5.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4" + "reference": "a90ccbddffa067b51f574dea6eb25d5680839455" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", - "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455", + "reference": "a90ccbddffa067b51f574dea6eb25d5680839455", "shasum": "" }, "require": { - "php": "^7.2", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^8.0" + "phpunit/phpunit": "^9.3" }, "suggest": { "ext-uopz": "*" @@ -8511,7 +10922,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -8534,34 +10945,101 @@ "keywords": [ "global state" ], - "time": "2019-02-01T05:30:01+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:55:19+00:00" }, { - "name": "sebastian/object-enumerator", - "version": "3.0.3", + "name": "sebastian/lines-of-code", + "version": "1.0.3", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5" + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", "shasum": "" }, "require": { - "php": "^7.0", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" + "nikic/php-parser": "^4.6", + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "1.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": "Library for counting the lines of code in PHP source code", + "homepage": "https://github.com/sebastianbergmann/lines-of-code", + "support": { + "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-28T06:42:11+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" } }, "autoload": { @@ -8581,122 +11059,37 @@ ], "description": "Traverses array structures and object graphs to enumerate all referenced objects", "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "time": "2017-08-03T12:35:26+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:12:34+00:00" }, { "name": "sebastian/object-reflector", - "version": "1.1.1", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "773f97c67f28de00d397be301821b06708fca0be" + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be", - "reference": "773f97c67f28de00d397be301821b06708fca0be", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", "shasum": "" }, "require": { - "php": "^7.0" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "time": "2017-03-29T09:07:27+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2017-03-03T06:23:57+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9", - "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9", - "shasum": "" - }, - "require": { - "php": "^7.1" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { @@ -8719,34 +11112,162 @@ "email": "sebastian@phpunit.de" } ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "time": "2018-10-04T04:07:39+00:00" + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:14:26+00:00" }, { - "name": "sebastian/type", - "version": "1.1.3", + "name": "sebastian/recursion-context", + "version": "4.0.4", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3" + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3", - "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", "shasum": "" }, "require": { - "php": "^7.2" + "php": ">=7.3" }, "require-dev": { - "phpunit/phpunit": "^8.2" + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "http://www.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" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:17:30+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "issues": "https://github.com/sebastianbergmann/resource-operations/issues", + "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:45:17+00:00" + }, + { + "name": "sebastian/type", + "version": "2.3.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2", + "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" } }, "autoload": { @@ -8767,29 +11288,39 @@ ], "description": "Collection of value objects that represent the types of the PHP type system", "homepage": "https://github.com/sebastianbergmann/type", - "time": "2019-07-02T08:10:15+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/2.3.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:18:59+00:00" }, { "name": "sebastian/version", - "version": "2.0.1", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" + "reference": "c6c1022351a901512170118436c764e473f6de8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", + "reference": "c6c1022351a901512170118436c764e473f6de8c", "shasum": "" }, "require": { - "php": ">=5.6" + "php": ">=7.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -8810,20 +11341,30 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", - "time": "2016-10-03T07:35:21+00:00" + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:39:44+00:00" }, { "name": "symfony/browser-kit", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "b9adef763c4f98660d1f8b924f6d61718f8ae0bc" + "reference": "3ca3a57ce9860318b20a924fec5daf5c6db44d93" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/b9adef763c4f98660d1f8b924f6d61718f8ae0bc", - "reference": "b9adef763c4f98660d1f8b924f6d61718f8ae0bc", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/3ca3a57ce9860318b20a924fec5daf5c6db44d93", + "reference": "3ca3a57ce9860318b20a924fec5daf5c6db44d93", "shasum": "" }, "require": { @@ -8840,11 +11381,6 @@ "symfony/process": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\BrowserKit\\": "" @@ -8867,8 +11403,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony BrowserKit Component", + "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/browser-kit/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -8883,20 +11422,20 @@ "type": "tidelift" } ], - "time": "2020-05-23T13:13:03+00:00" + "time": "2021-02-22T06:48:33+00:00" }, { "name": "symfony/dom-crawler", - "version": "v5.1.0", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "907187782c465a564f9030a0c6ace59e8821106f" + "reference": "400e265163f65aceee7e904ef532e15228de674b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/907187782c465a564f9030a0c6ace59e8821106f", - "reference": "907187782c465a564f9030a0c6ace59e8821106f", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/400e265163f65aceee7e904ef532e15228de674b", + "reference": "400e265163f65aceee7e904ef532e15228de674b", "shasum": "" }, "require": { @@ -8916,11 +11455,6 @@ "symfony/css-selector": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\DomCrawler\\": "" @@ -8943,8 +11477,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony DomCrawler Component", + "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dom-crawler/tree/v5.2.4" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -8959,20 +11496,20 @@ "type": "tidelift" } ], - "time": "2020-05-23T13:08:13+00:00" + "time": "2021-02-15T18:55:04+00:00" }, { "name": "symfony/yaml", - "version": "v5.1.0", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23" + "reference": "298a08ddda623485208506fcee08817807a251dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/ea342353a3ef4f453809acc4ebc55382231d4d23", - "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23", + "url": "https://api.github.com/repos/symfony/yaml/zipball/298a08ddda623485208506fcee08817807a251dd", + "reference": "298a08ddda623485208506fcee08817807a251dd", "shasum": "" }, "require": { @@ -8993,11 +11530,6 @@ "Resources/bin/yaml-lint" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Yaml\\": "" @@ -9020,8 +11552,11 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Yaml Component", + "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/yaml/tree/v5.2.5" + }, "funding": [ { "url": "https://symfony.com/sponsor", @@ -9036,27 +11571,27 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2021-03-06T07:59:01+00:00" }, { "name": "theseer/tokenizer", - "version": "1.1.3", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9" + "reference": "75a63c33a8577608444246075ea0af0d052e452a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/11336f6f84e16a720dae9d8e6ed5019efa85a0f9", - "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", + "reference": "75a63c33a8577608444246075ea0af0d052e452a", "shasum": "" }, "require": { "ext-dom": "*", "ext-tokenizer": "*", "ext-xmlwriter": "*", - "php": "^7.0" + "php": "^7.2 || ^8.0" }, "type": "library", "autoload": { @@ -9076,55 +11611,17 @@ } ], "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "time": "2019-06-13T22:48:21+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.8.0", - "source": { - "type": "git", - "url": "https://github.com/webmozart/assert.git", - "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6" + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/master" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/ab2cb0b3b559010b75981b1bdce728da3ee90ad6", - "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "vimeo/psalm": "<3.9.1" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^7.5.13" - }, - "type": "library", - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" + "url": "https://github.com/theseer", + "type": "github" } ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "time": "2020-04-18T12:12:48+00:00" + "time": "2020-07-12T23:59:07+00:00" } ], "aliases": [], @@ -9133,15 +11630,8 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^7.2.5", - "ext-curl": "*", - "ext-intl": "*", - "ext-mbstring": "*", - "ext-openssl": "*", - "ext-pdo": "*", - "ext-pdo_mysql": "*", - "ext-tokenizer": "*" + "php": "^7.3|^8.0" }, "platform-dev": [], - "plugin-api-version": "1.1.0" + "plugin-api-version": "2.0.0" } diff --git a/config/app.php b/config/app.php index 83a642e1d..121445d5d 100755 --- a/config/app.php +++ b/config/app.php @@ -54,6 +54,18 @@ return [ 'url' => env('APP_URL', 'http://localhost'), + /* + |-------------------------------------------------------------------------- + | Application Admin URL + |-------------------------------------------------------------------------- + | + | This URL suffix is used to define the admin url for example + | admin/ or backend/ + | + */ + + 'admin_url' => env('APP_ADMIN_URL', 'admin'), + /* |-------------------------------------------------------------------------- | Application Timezone @@ -116,7 +128,7 @@ return [ | Here you may specify the base currency code for your application. | */ - + 'currency' => env('APP_CURRENCY', 'USD'), /* @@ -234,8 +246,6 @@ return [ //Laravel Maatwebsite Maatwebsite\Excel\ExcelServiceProvider::class, - Barryvdh\Debugbar\ServiceProvider::class, - //Repository Prettus\Repository\Providers\RepositoryServiceProvider::class, Konekt\Concord\ConcordServiceProvider::class, @@ -251,6 +261,7 @@ return [ Webkul\Category\Providers\CategoryServiceProvider::class, Webkul\Attribute\Providers\AttributeServiceProvider::class, Webkul\Core\Providers\CoreServiceProvider::class, + Webkul\Core\Providers\EnvValidatorServiceProvider::class, Webkul\Shop\Providers\ShopServiceProvider::class, Webkul\Customer\Providers\CustomerServiceProvider::class, Webkul\Inventory\Providers\InventoryServiceProvider::class, @@ -269,6 +280,8 @@ return [ Webkul\Velocity\Providers\VelocityServiceProvider::class, Webkul\BookingProduct\Providers\BookingProductServiceProvider::class, Webkul\SocialLogin\Providers\SocialLoginServiceProvider::class, + Webkul\DebugBar\Providers\DebugBarServiceProvider::class, + Webkul\Marketing\Providers\MarketingServiceProvider::class, ], /* @@ -326,6 +339,9 @@ return [ 'PDF' => Barryvdh\DomPDF\Facade::class, 'Excel' => Maatwebsite\Excel\Facades\Excel::class, 'Concord' => Konekt\Concord\Facades\Concord::class, - 'Helper' => Konekt\Concord\Facades\Helper::class + 'Helper' => Konekt\Concord\Facades\Helper::class, + 'Debugbar' => Barryvdh\Debugbar\Facade::class, + 'ProductImage' => Webkul\Product\Facades\ProductImage::class, + 'ProductVideo' => Webkul\Product\Facades\ProductVideo::class ], ]; \ No newline at end of file diff --git a/config/auth.php b/config/auth.php index cd086cdb3..a6d4148b5 100755 --- a/config/auth.php +++ b/config/auth.php @@ -28,7 +28,7 @@ return [ ], 'admin-api' => [ - 'driver' => 'token', + 'driver' => 'jwt', 'provider' => 'admins', ] ], diff --git a/config/cache.php b/config/cache.php index d21c358e7..37ff71237 100755 --- a/config/cache.php +++ b/config/cache.php @@ -69,20 +69,8 @@ return [ ], 'redis' => [ - - 'client' => 'predis', - - 'clusters' => [ - 'default' => [ - [ - 'host' => env('REDIS_HOST', 'localhost'), - 'password' => env('REDIS_PASSWORD', null), - 'port' => env('REDIS_PORT', 6379), - 'database' => 0, - ], - ], - ], - + 'driver' => 'redis', + 'connection' => env('CACHE_CONNECTION', 'cache'), ], ], diff --git a/config/concord.php b/config/concord.php index c42dedbaa..273b5e100 100755 --- a/config/concord.php +++ b/config/concord.php @@ -1,6 +1,9 @@ Webkul\Core\CoreConvention::class, + 'modules' => [ /** * Example: @@ -9,21 +12,31 @@ return [ * */ + \Webkul\Admin\Providers\ModuleServiceProvider::class, + \Webkul\API\Providers\ModuleServiceProvider::class, \Webkul\Attribute\Providers\ModuleServiceProvider::class, \Webkul\BookingProduct\Providers\ModuleServiceProvider::class, + \Webkul\CartRule\Providers\ModuleServiceProvider::class, + \Webkul\CatalogRule\Providers\ModuleServiceProvider::class, \Webkul\Category\Providers\ModuleServiceProvider::class, \Webkul\Checkout\Providers\ModuleServiceProvider::class, \Webkul\Core\Providers\ModuleServiceProvider::class, + \Webkul\CMS\Providers\ModuleServiceProvider::class, \Webkul\Customer\Providers\ModuleServiceProvider::class, \Webkul\Inventory\Providers\ModuleServiceProvider::class, + \Webkul\Marketing\Providers\ModuleServiceProvider::class, + \Webkul\Payment\Providers\ModuleServiceProvider::class, + \Webkul\Paypal\Providers\ModuleServiceProvider::class, \Webkul\Product\Providers\ModuleServiceProvider::class, + \Webkul\Rule\Providers\ModuleServiceProvider::class, \Webkul\Sales\Providers\ModuleServiceProvider::class, - \Webkul\Tax\Providers\ModuleServiceProvider::class, - \Webkul\User\Providers\ModuleServiceProvider::class, - \Webkul\CatalogRule\Providers\ModuleServiceProvider::class, - \Webkul\CartRule\Providers\ModuleServiceProvider::class, - \Webkul\CMS\Providers\ModuleServiceProvider::class, - \Webkul\Velocity\Providers\ModuleServiceProvider::class, + \Webkul\Shipping\Providers\ModuleServiceProvider::class, + \Webkul\Shop\Providers\ModuleServiceProvider::class, \Webkul\SocialLogin\Providers\ModuleServiceProvider::class, + \Webkul\Tax\Providers\ModuleServiceProvider::class, + \Webkul\Theme\Providers\ModuleServiceProvider::class, + \Webkul\Ui\Providers\ModuleServiceProvider::class, + \Webkul\User\Providers\ModuleServiceProvider::class, + \Webkul\Velocity\Providers\ModuleServiceProvider::class, ] ]; \ No newline at end of file diff --git a/config/database.php b/config/database.php index e84936069..dbdd2def2 100755 --- a/config/database.php +++ b/config/database.php @@ -1,5 +1,7 @@ env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), - 'database' => 0, + 'database' => env('REDIS_DEFAULT_DATABASE', '0'), + ], + + 'cache' => [ + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', 6379), + 'database' => env('REDIS_CACHE_DATABASE', '1'), + ], + + 'session' => [ + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'password' => env('REDIS_PASSWORD', null), + 'port' => env('REDIS_PORT', 6379), + 'database' => env('REDIS_SESSION_DATABASE', '2'), ], ], diff --git a/config/debugbar.php b/config/debugbar.php index d1fcc58b0..37c2f6891 100755 --- a/config/debugbar.php +++ b/config/debugbar.php @@ -16,7 +16,8 @@ return [ 'enabled' => env('DEBUGBAR_ENABLED', null), 'except' => [ - 'telescope*' + 'telescope*', + 'horizon*', ], /* @@ -33,10 +34,12 @@ return [ */ 'storage' => [ 'enabled' => true, - 'driver' => 'file', // redis, file, pdo, custom + 'driver' => 'file', // redis, file, pdo, socket, custom 'path' => storage_path('debugbar'), // For file driver 'connection' => null, // Leave null for default connection (Redis/PDO) - 'provider' => '' // Instance of StorageInterface for custom driver + 'provider' => '', // Instance of StorageInterface for custom driver + 'hostname' => '127.0.0.1', // Hostname to use with the "socket" driver + 'port' => 2304, // Port to use with the "socket" driver ], /* @@ -123,6 +126,7 @@ return [ 'config' => false, // Display config settings 'cache' => false, // Display cache events 'models' => true, // Display models + 'livewire' => true, // Display Livewire (when available) ], /* @@ -141,27 +145,29 @@ return [ 'db' => [ 'with_params' => true, // Render SQL with the parameters substituted 'backtrace' => true, // Use a backtrace to find the origin of the query in your files. + 'backtrace_exclude_paths' => [], // Paths to exclude from backtrace. (in addition to defaults) 'timeline' => false, // Add the queries to the timeline 'explain' => [ // Show EXPLAIN output on queries 'enabled' => false, - 'types' => ['SELECT'], // // workaround ['SELECT'] only. https://github.com/barryvdh/laravel-debugbar/issues/888 ['SELECT', 'INSERT', 'UPDATE', 'DELETE']; for MySQL 5.6.3+ + 'types' => ['SELECT'], // Deprecated setting, is always only SELECT ], - 'hints' => true, // Show hints for common mistakes + 'hints' => false, // Show hints for common mistakes + 'show_copy' => false, // Show copy button next to the query ], 'mail' => [ - 'full_log' => false + 'full_log' => false, ], 'views' => [ 'data' => false, //Note: Can slow down the application, because the data can be quite large.. ], 'route' => [ - 'label' => true // show complete route on bar + 'label' => true, // show complete route on bar ], 'logs' => [ - 'file' => null + 'file' => null, ], 'cache' => [ - 'values' => true // collect cache values + 'values' => true, // collect cache values ], ], @@ -199,4 +205,14 @@ return [ | To override default domain, specify it as a non-empty value. */ 'route_domain' => null, + + /* + |-------------------------------------------------------------------------- + | DebugBar theme + |-------------------------------------------------------------------------- + | + | Switches between light and dark theme. If set to auto it will respect system preferences + | Possible values: auto, light, dark + */ + 'theme' => 'auto', ]; diff --git a/config/elastic.client.php b/config/elastic.client.php new file mode 100644 index 000000000..f627ebab8 --- /dev/null +++ b/config/elastic.client.php @@ -0,0 +1,7 @@ + [ + env('ELASTIC_HOST', 'localhost:9200'), + ] +]; diff --git a/config/elastic.scout_driver.php b/config/elastic.scout_driver.php new file mode 100644 index 000000000..a5d123aa8 --- /dev/null +++ b/config/elastic.scout_driver.php @@ -0,0 +1,5 @@ + env('ELASTIC_SCOUT_DRIVER_REFRESH_DOCUMENTS', false), +]; diff --git a/config/excel.php b/config/excel.php index fa3e12b28..c3199b925 100755 --- a/config/excel.php +++ b/config/excel.php @@ -3,7 +3,6 @@ use Maatwebsite\Excel\Excel; return [ - 'exports' => [ /* @@ -24,6 +23,16 @@ return [ */ 'pre_calculate_formulas' => false, + /* + |-------------------------------------------------------------------------- + | Enable strict null comparison + |-------------------------------------------------------------------------- + | + | When enabling strict null comparison empty cells ('') will + | be added to the sheet. + */ + 'strict_null_comparison' => false, + /* |-------------------------------------------------------------------------- | CSV Settings @@ -40,23 +49,66 @@ return [ 'include_separator_line' => false, 'excel_compatibility' => false, ], + + /* + |-------------------------------------------------------------------------- + | Worksheet properties + |-------------------------------------------------------------------------- + | + | Configure e.g. default title, creator, subject,... + | + */ + 'properties' => [ + 'creator' => '', + 'lastModifiedBy' => '', + 'title' => '', + 'description' => '', + 'subject' => '', + 'keywords' => '', + 'category' => '', + 'manager' => '', + 'company' => '', + ], ], 'imports' => [ + /* + |-------------------------------------------------------------------------- + | Read Only + |-------------------------------------------------------------------------- + | + | When dealing with imports, you might only be interested in the + | data that the sheet exists. By default we ignore all styles, + | however if you want to do some logic based on style data + | you can enable it by setting read_only to false. + | + */ 'read_only' => true, - 'heading_row' => [ + /* + |-------------------------------------------------------------------------- + | Ignore Empty + |-------------------------------------------------------------------------- + | + | When dealing with imports, you might be interested in ignoring + | rows that have null values or empty strings. By default rows + | containing empty strings or empty values are not ignored but can be + | ignored by enabling the setting ignore_empty to true. + | + */ + 'ignore_empty' => false, - /* - |-------------------------------------------------------------------------- - | Heading Row Formatter - |-------------------------------------------------------------------------- - | - | Configure the heading row formatter. - | Available options: none|slug|custom - | - */ + /* + |-------------------------------------------------------------------------- + | Heading Row Formatter + |-------------------------------------------------------------------------- + | + | Configure the heading row formatter. + | Available options: none|slug|custom + | + */ + 'heading_row' => [ 'formatter' => 'slug', ], @@ -69,12 +121,33 @@ return [ | */ 'csv' => [ - 'delimiter' => ',', - 'enclosure' => '"', - 'escape_character' => '\\', - 'contiguous' => false, - 'input_encoding' => 'UTF-8', + 'delimiter' => ',', + 'enclosure' => '"', + 'escape_character' => '\\', + 'contiguous' => false, + 'input_encoding' => 'UTF-8', ], + + /* + |-------------------------------------------------------------------------- + | Worksheet properties + |-------------------------------------------------------------------------- + | + | Configure e.g. default title, creator, subject,... + | + */ + 'properties' => [ + 'creator' => '', + 'lastModifiedBy' => '', + 'title' => '', + 'description' => '', + 'subject' => '', + 'keywords' => '', + 'category' => '', + 'manager' => '', + 'company' => '', + ], + ], /* @@ -82,9 +155,8 @@ return [ | Extension detector |-------------------------------------------------------------------------- | - | Configure here which writer type should be used when - | the package needs to guess the correct type - | based on the extension alone. + | Configure here which writer/reader type should be used when the package + | needs to guess the correct type based on the extension alone. | */ 'extension_detector' => [ @@ -116,39 +188,93 @@ return [ 'pdf' => Excel::DOMPDF, ], + /* + |-------------------------------------------------------------------------- + | Value Binder + |-------------------------------------------------------------------------- + | + | PhpSpreadsheet offers a way to hook into the process of a value being + | written to a cell. In there some assumptions are made on how the + | value should be formatted. If you want to change those defaults, + | you can implement your own default value binder. + | + | Possible value binders: + | + | [x] Maatwebsite\Excel\DefaultValueBinder::class + | [x] PhpOffice\PhpSpreadsheet\Cell\StringValueBinder::class + | [x] PhpOffice\PhpSpreadsheet\Cell\AdvancedValueBinder::class + | + */ 'value_binder' => [ - - /* - |-------------------------------------------------------------------------- - | Default Value Binder - |-------------------------------------------------------------------------- - | - | PhpSpreadsheet offers a way to hook into the process of a value being - | written to a cell. In there some assumptions are made on how the - | value should be formatted. If you want to change those defaults, - | you can implement your own default value binder. - | - */ 'default' => Maatwebsite\Excel\DefaultValueBinder::class, ], - 'transactions' => [ + 'cache' => [ + /* + |-------------------------------------------------------------------------- + | Default cell caching driver + |-------------------------------------------------------------------------- + | + | By default PhpSpreadsheet keeps all cell values in memory, however when + | dealing with large files, this might result into memory issues. If you + | want to mitigate that, you can configure a cell caching driver here. + | When using the illuminate driver, it will store each value in a the + | cache store. This can slow down the process, because it needs to + | store each value. You can use the "batch" store if you want to + | only persist to the store when the memory limit is reached. + | + | Drivers: memory|illuminate|batch + | + */ + 'driver' => 'memory', /* |-------------------------------------------------------------------------- - | Transaction Handler + | Batch memory caching |-------------------------------------------------------------------------- | - | By default the import is wrapped in a transaction. This is useful - | for when an import may fail and you want to retry it. With the - | transactions, the previous import gets rolled-back. - | - | You can disable the transaction handler by setting this to null. - | Or you can choose a custom made transaction handler here. - | - | Supported handlers: null|db + | When dealing with the "batch" caching driver, it will only + | persist to the store when the memory limit is reached. + | Here you can tweak the memory limit to your liking. | */ + 'batch' => [ + 'memory_limit' => 60000, + ], + + /* + |-------------------------------------------------------------------------- + | Illuminate cache + |-------------------------------------------------------------------------- + | + | When using the "illuminate" caching driver, it will automatically use + | your default cache store. However if you prefer to have the cell + | cache on a separate store, you can configure the store name here. + | You can use any store defined in your cache config. When leaving + | at "null" it will use the default store. + | + */ + 'illuminate' => [ + 'store' => null, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Transaction Handler + |-------------------------------------------------------------------------- + | + | By default the import is wrapped in a transaction. This is useful + | for when an import may fail and you want to retry it. With the + | transactions, the previous import gets rolled-back. + | + | You can disable the transaction handler by setting this to null. + | Or you can choose a custom made transaction handler here. + | + | Supported handlers: null|db + | + */ + 'transactions' => [ 'handler' => 'db', ], @@ -163,7 +289,7 @@ return [ | storing reading or downloading. Here you can customize that path. | */ - 'local_path' => sys_get_temp_dir(), + 'local_path' => storage_path('framework/laravel-excel'), /* |-------------------------------------------------------------------------- @@ -179,8 +305,24 @@ return [ | in conjunction with queued imports and exports. | */ - 'remote_disk' => null, - 'remote_prefix' => null, + 'remote_disk' => null, + 'remote_prefix' => null, + /* + |-------------------------------------------------------------------------- + | Force Resync + |-------------------------------------------------------------------------- + | + | When dealing with a multi server setup as above, it's possible + | for the clean up that occurs after entire queue has been run to only + | cleanup the server that the last AfterImportJob runs on. The rest of the server + | would still have the local temporary file stored on it. In this case your + | local storage limits can be exceeded and future imports won't be processed. + | To mitigate this you can set this config value to be true, so that after every + | queued chunk is processed the local temporary file is deleted on the server that + | processed it. + | + */ + 'force_resync_remote' => null, ], ]; diff --git a/config/flare.php b/config/flare.php new file mode 100644 index 000000000..c27738831 --- /dev/null +++ b/config/flare.php @@ -0,0 +1,50 @@ + env('FLARE_KEY'), + + /* + |-------------------------------------------------------------------------- + | Reporting Options + |-------------------------------------------------------------------------- + | + | These options determine which information will be transmitted to Flare. + | + */ + + 'reporting' => [ + 'anonymize_ips' => true, + 'collect_git_information' => false, + 'report_queries' => true, + 'maximum_number_of_collected_queries' => 200, + 'report_query_bindings' => true, + 'report_view_data' => true, + 'grouping_type' => null, + 'report_logs' => true, + 'maximum_number_of_collected_logs' => 200, + ], + + /* + |-------------------------------------------------------------------------- + | Reporting Log statements + |-------------------------------------------------------------------------- + | + | If this setting is `false` log statements won't be send as events to Flare, + | no matter which error level you specified in the Flare log channel. + | + */ + + 'send_logs_as_events' => true, +]; diff --git a/config/ignition.php b/config/ignition.php new file mode 100644 index 000000000..148d00b74 --- /dev/null +++ b/config/ignition.php @@ -0,0 +1,125 @@ + env('IGNITION_EDITOR', 'phpstorm'), + + /* + |-------------------------------------------------------------------------- + | Theme + |-------------------------------------------------------------------------- + | + | Here you may specify which theme Ignition should use. + | + | Supported: "light", "dark", "auto" + | + */ + + 'theme' => env('IGNITION_THEME', 'light'), + + /* + |-------------------------------------------------------------------------- + | Sharing + |-------------------------------------------------------------------------- + | + | You can share local errors with colleagues or others around the world. + | Sharing is completely free and doesn't require an account on Flare. + | + | If necessary, you can completely disable sharing below. + | + */ + + 'enable_share_button' => env('IGNITION_SHARING_ENABLED', true), + + /* + |-------------------------------------------------------------------------- + | Register Ignition commands + |-------------------------------------------------------------------------- + | + | Ignition comes with an additional make command that lets you create + | new solution classes more easily. To keep your default Laravel + | installation clean, this command is not registered by default. + | + | You can enable the command registration below. + | + */ + 'register_commands' => env('REGISTER_IGNITION_COMMANDS', false), + + /* + |-------------------------------------------------------------------------- + | Ignored Solution Providers + |-------------------------------------------------------------------------- + | + | You may specify a list of solution providers (as fully qualified class + | names) that shouldn't be loaded. Ignition will ignore these classes + | and possible solutions provided by them will never be displayed. + | + */ + + 'ignored_solution_providers' => [ + \Facade\Ignition\SolutionProviders\MissingPackageSolutionProvider::class, + ], + + /* + |-------------------------------------------------------------------------- + | Runnable Solutions + |-------------------------------------------------------------------------- + | + | Some solutions that Ignition displays are runnable and can perform + | various tasks. Runnable solutions are enabled when your app has + | debug mode enabled. You may also fully disable this feature. + | + */ + + 'enable_runnable_solutions' => env('IGNITION_ENABLE_RUNNABLE_SOLUTIONS', null), + + /* + |-------------------------------------------------------------------------- + | Remote Path Mapping + |-------------------------------------------------------------------------- + | + | If you are using a remote dev server, like Laravel Homestead, Docker, or + | even a remote VPS, it will be necessary to specify your path mapping. + | + | Leaving one, or both of these, empty or null will not trigger the remote + | URL changes and Ignition will treat your editor links as local files. + | + | "remote_sites_path" is an absolute base path for your sites or projects + | in Homestead, Vagrant, Docker, or another remote development server. + | + | Example value: "/home/vagrant/Code" + | + | "local_sites_path" is an absolute base path for your sites or projects + | on your local computer where your IDE or code editor is running on. + | + | Example values: "/Users//Code", "C:\Users\\Documents\Code" + | + */ + + 'remote_sites_path' => env('IGNITION_REMOTE_SITES_PATH', ''), + 'local_sites_path' => env('IGNITION_LOCAL_SITES_PATH', ''), + + /* + |-------------------------------------------------------------------------- + | Housekeeping Endpoint Prefix + |-------------------------------------------------------------------------- + | + | Ignition registers a couple of routes when it is enabled. Below you may + | specify a route prefix that will be used to host all internal links. + | + */ + 'housekeeping_endpoint_prefix' => '_ignition', + +]; diff --git a/config/imagecache.php b/config/imagecache.php index b93d2e94a..af29594b0 100755 --- a/config/imagecache.php +++ b/config/imagecache.php @@ -66,6 +66,6 @@ return array( | */ - 'lifetime' => 43200, + 'lifetime' => 525600, ); \ No newline at end of file diff --git a/config/modules.php b/config/modules.php deleted file mode 100644 index 37bf9a64e..000000000 --- a/config/modules.php +++ /dev/null @@ -1,188 +0,0 @@ - 'Modules', - - /* - |-------------------------------------------------------------------------- - | Module Stubs - |-------------------------------------------------------------------------- - | - | Default module stubs. - | - */ - - 'stubs' => [ - 'enabled' => false, - 'path' => base_path() . '/vendor/nwidart/laravel-modules/src/Commands/stubs', - 'files' => [ - 'start' => 'start.php', - 'routes' => 'Http/routes.php', - 'views/index' => 'Resources/views/index.blade.php', - 'views/master' => 'Resources/views/layouts/master.blade.php', - 'scaffold/config' => 'Config/config.php', - 'composer' => 'composer.json', - 'assets/js/app' => 'Resources/assets/js/app.js', - 'assets/sass/app' => 'Resources/assets/sass/app.scss', - 'webpack' => 'webpack.mix.js', - 'package' => 'package.json', - ], - 'replacements' => [ - 'start' => ['LOWER_NAME', 'ROUTES_LOCATION'], - 'routes' => ['LOWER_NAME', 'STUDLY_NAME', 'MODULE_NAMESPACE'], - 'webpack' => ['LOWER_NAME'], - 'json' => ['LOWER_NAME', 'STUDLY_NAME', 'MODULE_NAMESPACE'], - 'views/index' => ['LOWER_NAME'], - 'views/master' => ['LOWER_NAME', 'STUDLY_NAME'], - 'scaffold/config' => ['STUDLY_NAME'], - 'composer' => [ - 'LOWER_NAME', - 'STUDLY_NAME', - 'VENDOR', - 'AUTHOR_NAME', - 'AUTHOR_EMAIL', - 'MODULE_NAMESPACE', - ], - ], - 'gitkeep' => true, - ], - 'paths' => [ - /* - |-------------------------------------------------------------------------- - | Modules path - |-------------------------------------------------------------------------- - | - | This path used for save the generated module. This path also will be added - | automatically to list of scanned folders. - | - */ - - 'modules' => base_path('Modules'), - /* - |-------------------------------------------------------------------------- - | Modules assets path - |-------------------------------------------------------------------------- - | - | Here you may update the modules assets path. - | - */ - - 'assets' => public_path('modules'), - /* - |-------------------------------------------------------------------------- - | The migrations path - |-------------------------------------------------------------------------- - | - | Where you run 'module:publish-migration' command, where do you publish the - | the migration files? - | - */ - - 'migration' => base_path('database/migrations'), - /* - |-------------------------------------------------------------------------- - | Generator path - |-------------------------------------------------------------------------- - | Customise the paths where the folders will be generated. - | Set the generate key to false to not generate that folder - */ - 'generator' => [ - 'config' => ['path' => 'Config', 'generate' => true], - 'command' => ['path' => 'Console', 'generate' => true], - 'migration' => ['path' => 'Database/Migrations', 'generate' => true], - 'seeder' => ['path' => 'Database/Seeders', 'generate' => true], - 'factory' => ['path' => 'Database/factories', 'generate' => true], - 'model' => ['path' => 'Entities', 'generate' => true], - 'controller' => ['path' => 'Http/Controllers', 'generate' => true], - 'filter' => ['path' => 'Http/Middleware', 'generate' => true], - 'request' => ['path' => 'Http/Requests', 'generate' => true], - 'provider' => ['path' => 'Providers', 'generate' => true], - 'assets' => ['path' => 'Resources/assets', 'generate' => true], - 'lang' => ['path' => 'Resources/lang', 'generate' => true], - 'views' => ['path' => 'Resources/views', 'generate' => true], - 'test' => ['path' => 'Tests', 'generate' => true], - 'repository' => ['path' => 'Repositories', 'generate' => false], - 'event' => ['path' => 'Events', 'generate' => false], - 'listener' => ['path' => 'Listeners', 'generate' => false], - 'policies' => ['path' => 'Policies', 'generate' => false], - 'rules' => ['path' => 'Rules', 'generate' => false], - 'jobs' => ['path' => 'Jobs', 'generate' => false], - 'emails' => ['path' => 'Emails', 'generate' => false], - 'notifications' => ['path' => 'Notifications', 'generate' => false], - 'resource' => ['path' => 'Transformers', 'generate' => false], - ], - ], - /* - |-------------------------------------------------------------------------- - | Scan Path - |-------------------------------------------------------------------------- - | - | Here you define which folder will be scanned. By default will scan vendor - | directory. This is useful if you host the package in packagist website. - | - */ - - 'scan' => [ - 'enabled' => false, - 'paths' => [ - base_path('vendor/*/*'), - ], - ], - /* - |-------------------------------------------------------------------------- - | Composer File Template - |-------------------------------------------------------------------------- - | - | Here is the config for composer.json file, generated by this package - | - */ - - 'composer' => [ - 'vendor' => 'nwidart', - 'author' => [ - 'name' => 'Nicolas Widart', - 'email' => 'n.widart@gmail.com', - ], - ], - /* - |-------------------------------------------------------------------------- - | Caching - |-------------------------------------------------------------------------- - | - | Here is the config for setting up caching feature. - | - */ - 'cache' => [ - 'enabled' => false, - 'key' => 'laravel-modules', - 'lifetime' => 60, - ], - /* - |-------------------------------------------------------------------------- - | Choose what laravel-modules will register as custom namespaces. - | Setting one to false will require you to register that part - | in your own Service Provider class. - |-------------------------------------------------------------------------- - */ - 'register' => [ - 'translations' => true, - /** - * load files on boot or register method - * - * Note: boot not compatible with asgardcms - * - * @example boot|register - */ - 'files' => 'register', - ], -]; diff --git a/config/products.php b/config/products.php new file mode 100644 index 000000000..e48e22b6e --- /dev/null +++ b/config/products.php @@ -0,0 +1,21 @@ +catalog->products->copy product). + // you can also add every relation that should not be copied here to skip them. + // defaults to none (which means everything is copied). + 'skipAttributesOnCopy' => [ + ], + + // Make the original and source product 'related' via the 'product_relations' table + 'linkProductsOnCopy' => false, + + // Ability to set a global callable that defines if a product is saleable. + // Return neither true nor false but null by default to not interrupt the default chain that + // defines if a product is saleable. It depends on the isSaleable() method of the product + // type if this callable is obeyed. + 'isSaleable' => null, +]; diff --git a/config/repository.php b/config/repository.php index 3123c2789..f8498b8db 100755 --- a/config/repository.php +++ b/config/repository.php @@ -169,7 +169,8 @@ return [ */ 'acceptedConditions' => [ '=', - 'like' + 'like', + 'in' ], /* |-------------------------------------------------------------------------- diff --git a/config/scout.php b/config/scout.php new file mode 100644 index 000000000..b2f0f4d22 --- /dev/null +++ b/config/scout.php @@ -0,0 +1,91 @@ + env('SCOUT_DRIVER', null), + + /* + |-------------------------------------------------------------------------- + | Index Prefix + |-------------------------------------------------------------------------- + | + | Here you may specify a prefix that will be applied to all search index + | names used by Scout. This prefix may be useful if you have multiple + | "tenants" or applications sharing the same search infrastructure. + | + */ + + 'prefix' => env('SCOUT_PREFIX', ''), + + /* + |-------------------------------------------------------------------------- + | Queue Data Syncing + |-------------------------------------------------------------------------- + | + | This option allows you to control if the operations that sync your data + | with your search engines are queued. When this is set to "true" then + | all automatic data syncing will get queued for better performance. + | + */ + + 'queue' => env('SCOUT_QUEUE', true), + + /* + |-------------------------------------------------------------------------- + | Chunk Sizes + |-------------------------------------------------------------------------- + | + | These options allow you to control the maximum chunk size when you are + | mass importing data into the search engine. This allows you to fine + | tune each of these chunk sizes based on the power of the servers. + | + */ + + 'chunk' => [ + 'searchable' => 500, + 'unsearchable' => 500, + ], + + /* + |-------------------------------------------------------------------------- + | Soft Deletes + |-------------------------------------------------------------------------- + | + | This option allows to control whether to keep soft deleted records in + | the search indexes. Maintaining soft deleted records can be useful + | if your application still needs to search for the records later. + | + */ + + 'soft_delete' => false, + + /* + |-------------------------------------------------------------------------- + | Algolia Configuration + |-------------------------------------------------------------------------- + | + | Here you may configure your Algolia settings. Algolia is a cloud hosted + | search engine which works great with Scout out of the box. Just plug + | in your application ID and admin API key to get started searching. + | + */ + + 'algolia' => [ + 'id' => env('ALGOLIA_APP_ID', ''), + 'secret' => env('ALGOLIA_SECRET', ''), + ], + +]; diff --git a/config/session.php b/config/session.php index 23ddfde9d..36efcedd2 100755 --- a/config/session.php +++ b/config/session.php @@ -70,7 +70,7 @@ return [ | */ - 'connection' => null, + 'connection' => env('SESSION_CONNECTION', 'session'), /* |-------------------------------------------------------------------------- @@ -96,7 +96,7 @@ return [ | */ - 'store' => null, + 'store' => env('SESSION_STORE', NULL), /* |-------------------------------------------------------------------------- diff --git a/config/themes.php b/config/themes.php index d6610d7e9..35ca67e60 100755 --- a/config/themes.php +++ b/config/themes.php @@ -23,5 +23,15 @@ return [ 'name' => 'Velocity', 'parent' => 'default' ], + ], + + 'admin-default' => 'default', + + 'admin-themes' => [ + 'default' => [ + 'views_path' => 'resources/admin-themes/default/views', + 'assets_path' => 'public/admin-themes/default/assets', + 'name' => 'Default' + ] ] ]; \ No newline at end of file diff --git a/config/tinker.php b/config/tinker.php index 0fdd538d6..c187942d0 100755 --- a/config/tinker.php +++ b/config/tinker.php @@ -19,7 +19,7 @@ return [ /* |-------------------------------------------------------------------------- - | Alias Whitelist + | Auto Aliased Classes |-------------------------------------------------------------------------- | | Tinker will not automatically alias classes in your vendor namespaces @@ -34,7 +34,7 @@ return [ /* |-------------------------------------------------------------------------- - | Alias Blacklist + | Classes That Should Not Be Aliased |-------------------------------------------------------------------------- | | Typically, Tinker automatically aliases classes as you require them in diff --git a/config/view.php b/config/view.php index 2acfd9cc9..a9743c718 100755 --- a/config/view.php +++ b/config/view.php @@ -1,6 +1,16 @@ false, /* |-------------------------------------------------------------------------- diff --git a/database/migrations/2019_11_21_194541_add_column_url_path_to_category_translations.php b/database/migrations/2019_11_21_194541_add_column_url_path_to_category_translations.php new file mode 100644 index 000000000..f8087b39c --- /dev/null +++ b/database/migrations/2019_11_21_194541_add_column_url_path_to_category_translations.php @@ -0,0 +1,33 @@ +string('url_path', 2048) + ->comment('maintained by database triggers'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('category_translations', function (Blueprint $table) { + $table->dropColumn('url_path'); + }); + } +} diff --git a/database/migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php b/database/migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php new file mode 100644 index 000000000..b84ecfadf --- /dev/null +++ b/database/migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php @@ -0,0 +1,70 @@ + 1 + THEN + SELECT + GROUP_CONCAT(parent_translations.slug SEPARATOR '/') INTO urlPath + FROM + ${dbPrefix}categories AS node, + ${dbPrefix}categories AS parent + JOIN ${dbPrefix}category_translations AS parent_translations ON parent.id = parent_translations.category_id + WHERE + node._lft >= parent._lft + AND node._rgt <= parent._rgt + AND node.id = categoryId + AND parent.id <> 1 + AND parent_translations.locale = localeCode + GROUP BY + node.id; + + IF urlPath IS NULL + THEN + SET urlPath = (SELECT slug FROM ${dbPrefix}category_translations WHERE ${dbPrefix}category_translations.category_id = categoryId); + END IF; + ELSE + SET urlPath = ''; + END IF; + + RETURN urlPath; + END; +SQL; + + DB::unprepared($functionSQL); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + DB::unprepared('DROP FUNCTION IF EXISTS `get_url_path_of_category`;'); + } +} diff --git a/database/migrations/2019_11_21_194627_add_trigger_to_category_translations.php b/database/migrations/2019_11_21_194627_add_trigger_to_category_translations.php new file mode 100644 index 000000000..b85455a8f --- /dev/null +++ b/database/migrations/2019_11_21_194627_add_trigger_to_category_translations.php @@ -0,0 +1,103 @@ +getTriggerBody(); + $insertTrigger = <<< SQL + CREATE TRIGGER %s + BEFORE INSERT ON ${dbPrefix}category_translations + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $updateTrigger = <<< SQL + CREATE TRIGGER %s + BEFORE UPDATE ON ${dbPrefix}category_translations + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf($insertTrigger, self::TRIGGER_NAME_INSERT)); + + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + DB::unprepared(sprintf($updateTrigger, self::TRIGGER_NAME_UPDATE)); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + } + + /** + * Returns trigger body as string + * + * @return string + */ + private function getTriggerBody() + { + $dbPrefix = DB::getTablePrefix(); + + return << 1 + THEN + + SELECT + GROUP_CONCAT(parent_translations.slug SEPARATOR '/') INTO parentUrlPath + FROM + ${dbPrefix}categories AS node, + ${dbPrefix}categories AS parent + JOIN ${dbPrefix}category_translations AS parent_translations ON parent.id = parent_translations.category_id + WHERE + node._lft >= parent._lft + AND node._rgt <= parent._rgt + AND node.id = (SELECT parent_id FROM categories WHERE id = NEW.category_id) + AND parent.id <> 1 + AND parent_translations.locale = NEW.locale + GROUP BY + node.id; + + IF parentUrlPath IS NULL + THEN + SET urlPath = NEW.slug; + ELSE + SET urlPath = concat(parentUrlPath, '/', NEW.slug); + END IF; + + SET NEW.url_path = urlPath; + + END IF; +SQL; + + } +} diff --git a/database/migrations/2019_11_21_194648_add_url_path_to_existing_category_translations.php b/database/migrations/2019_11_21_194648_add_url_path_to_existing_category_translations.php new file mode 100644 index 000000000..7b8565bd1 --- /dev/null +++ b/database/migrations/2019_11_21_194648_add_url_path_to_existing_category_translations.php @@ -0,0 +1,35 @@ +getTable(); + + foreach (DB::table($categoryTranslationsTableName)->get() as $categoryTranslation) { + $urlPathQueryResult = DB::selectOne($sqlStoredFunction, [ + 'category_id' => $categoryTranslation->category_id, + 'locale_code' => $categoryTranslation->locale, + ]); + $url_path = $urlPathQueryResult ? $urlPathQueryResult->url_path : ''; + + DB::table($categoryTranslationsTableName) + ->where('id', $categoryTranslation->id) + ->update(['url_path' => $url_path]); + } + } +} diff --git a/database/migrations/2019_11_21_194703_add_trigger_to_categories.php b/database/migrations/2019_11_21_194703_add_trigger_to_categories.php new file mode 100644 index 000000000..206f4c02b --- /dev/null +++ b/database/migrations/2019_11_21_194703_add_trigger_to_categories.php @@ -0,0 +1,102 @@ +getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); + + $insertTrigger = <<< SQL + CREATE TRIGGER %s + AFTER INSERT ON ${dbPrefix}categories + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $updateTrigger = <<< SQL + CREATE TRIGGER %s + AFTER UPDATE ON ${dbPrefix}categories + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf($insertTrigger, self::TRIGGER_NAME_INSERT)); + + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + DB::unprepared(sprintf($updateTrigger, self::TRIGGER_NAME_UPDATE)); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + } + + /** + * Returns trigger body as string + * + * @return string + */ + private function getTriggerBody(): string + { + $dbPrefix = DB::getTablePrefix(); + + return <<< SQL + DECLARE urlPath VARCHAR(255); + DECLARE localeCode VARCHAR(255); + DECLARE done INT; + DECLARE curs CURSOR FOR (SELECT ${dbPrefix}category_translations.locale + FROM ${dbPrefix}category_translations + WHERE category_id = NEW.id); + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; + + + IF EXISTS ( + SELECT * + FROM ${dbPrefix}category_translations + WHERE category_id = NEW.id + ) + THEN + + OPEN curs; + + SET done = 0; + REPEAT + FETCH curs INTO localeCode; + + SELECT get_url_path_of_category(NEW.id, localeCode) INTO urlPath; + + UPDATE ${dbPrefix}category_translations + SET url_path = urlPath + WHERE ${dbPrefix}category_translations.category_id = NEW.id; + + UNTIL done END REPEAT; + + CLOSE curs; + + END IF; +SQL; + } +} diff --git a/database/migrations/2020_01_06_173505_alter_trigger_category_translations.php b/database/migrations/2020_01_06_173505_alter_trigger_category_translations.php new file mode 100644 index 000000000..52f043433 --- /dev/null +++ b/database/migrations/2020_01_06_173505_alter_trigger_category_translations.php @@ -0,0 +1,115 @@ +getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); + + $insertTrigger = <<< SQL + CREATE TRIGGER %s + BEFORE INSERT ON ${dbPrefix}category_translations + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $updateTrigger = <<< SQL + CREATE TRIGGER %s + BEFORE UPDATE ON ${dbPrefix}category_translations + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $this->dropTriggers(); + + DB::unprepared(sprintf($insertTrigger, self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf($updateTrigger, self::TRIGGER_NAME_UPDATE)); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $this->dropTriggers(); + } + + /** + * Drop the triggers + */ + private function dropTriggers() + { + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + } + + /** + * Returns trigger body as string + * + * @return string + */ + private function getTriggerBody() + { + $dbPrefix = DB::getTablePrefix(); + + return <<= parent._lft + AND node._rgt <= parent._rgt + AND node.id = (SELECT parent_id FROM ${dbPrefix}categories WHERE id = NEW.category_id) + AND node.parent_id IS NOT NULL + AND parent.parent_id IS NOT NULL + AND parent_translations.locale = NEW.locale + GROUP BY + node.id; + + IF parentUrlPath IS NULL + THEN + SET urlPath = NEW.slug; + ELSE + SET urlPath = concat(parentUrlPath, '/', NEW.slug); + END IF; + + SET NEW.url_path = urlPath; + + END IF; +SQL; + + } +} diff --git a/database/migrations/2020_01_06_173524_alter_stored_function_url_path_category.php b/database/migrations/2020_01_06_173524_alter_stored_function_url_path_category.php new file mode 100644 index 000000000..84c7d1135 --- /dev/null +++ b/database/migrations/2020_01_06_173524_alter_stored_function_url_path_category.php @@ -0,0 +1,77 @@ += parent._lft + AND node._rgt <= parent._rgt + AND node.id = categoryId + AND node.parent_id IS NOT NULL + AND parent.parent_id IS NOT NULL + AND parent_translations.locale = localeCode + GROUP BY + node.id; + + IF urlPath IS NULL + THEN + SET urlPath = (SELECT slug FROM ${dbPrefix}category_translations WHERE ${dbPrefix}category_translations.category_id = categoryId); + END IF; + ELSE + SET urlPath = ''; + END IF; + + RETURN urlPath; + END; +SQL; + + DB::unprepared($functionSQL); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + DB::unprepared('DROP FUNCTION IF EXISTS `get_url_path_of_category`;'); + } +} diff --git a/database/migrations/2020_01_06_195305_alter_trigger_on_categories.php b/database/migrations/2020_01_06_195305_alter_trigger_on_categories.php new file mode 100644 index 000000000..61722e334 --- /dev/null +++ b/database/migrations/2020_01_06_195305_alter_trigger_on_categories.php @@ -0,0 +1,117 @@ +getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); + + $insertTrigger = <<< SQL + CREATE TRIGGER %s + AFTER INSERT ON ${dbPrefix}categories + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $updateTrigger = <<< SQL + CREATE TRIGGER %s + AFTER UPDATE ON ${dbPrefix}categories + FOR EACH ROW + BEGIN + $triggerBody + END; +SQL; + + $this->dropTriggers(); + + DB::unprepared(sprintf($insertTrigger, self::TRIGGER_NAME_INSERT)); + + DB::unprepared(sprintf($updateTrigger, self::TRIGGER_NAME_UPDATE)); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + $this->dropTriggers(); + } + + private function dropTriggers() + { + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_INSERT)); + DB::unprepared(sprintf('DROP TRIGGER IF EXISTS %s;', self::TRIGGER_NAME_UPDATE)); + } + + + /** + * Returns trigger body as string + * + * @return string + */ + private function getTriggerBody(): string + { + $dbPrefix = DB::getTablePrefix(); + + return <<< SQL + DECLARE urlPath VARCHAR(255); + DECLARE localeCode VARCHAR(255); + DECLARE done INT; + DECLARE curs CURSOR FOR (SELECT ${dbPrefix}category_translations.locale + FROM ${dbPrefix}category_translations + WHERE category_id = NEW.id); + DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; + + + IF EXISTS ( + SELECT * + FROM ${dbPrefix}category_translations + WHERE category_id = NEW.id + ) + THEN + + OPEN curs; + + SET done = 0; + REPEAT + FETCH curs INTO localeCode; + + SELECT get_url_path_of_category(NEW.id, localeCode) INTO urlPath; + + IF NEW.parent_id IS NULL + THEN + SET urlPath = ''; + END IF; + + UPDATE ${dbPrefix}category_translations + SET url_path = urlPath + WHERE + ${dbPrefix}category_translations.category_id = NEW.id + AND ${dbPrefix}category_translations.locale = localeCode; + + UNTIL done END REPEAT; + + CLOSE curs; + + END IF; +SQL; + } +} diff --git a/database/migrations/2020_12_27_121950_create_jobs_table.php b/database/migrations/2020_12_27_121950_create_jobs_table.php new file mode 100644 index 000000000..1be9e8a80 --- /dev/null +++ b/database/migrations/2020_12_27_121950_create_jobs_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->string('queue')->index(); + $table->longText('payload'); + $table->unsignedTinyInteger('attempts'); + $table->unsignedInteger('reserved_at')->nullable(); + $table->unsignedInteger('available_at'); + $table->unsignedInteger('created_at'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('jobs'); + } +} diff --git a/database/seeds/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php similarity index 93% rename from database/seeds/DatabaseSeeder.php rename to database/seeders/DatabaseSeeder.php index 4b94fd2d1..a74fd0aa3 100755 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -1,5 +1,7 @@ guard)->user(); - + $addresses = $customer->addresses()->get(); return CustomerAddressResource::collection($addresses); @@ -63,24 +63,35 @@ class AddressController extends Controller /** * Store a newly created resource in storage. * - * @return \Illuminate\Http\Response + * @return \Illuminate\Http\JsonResponse + * @throws \Illuminate\Validation\ValidationException */ public function store() { $customer = auth($this->guard)->user(); - request()->merge([ - 'address1' => implode(PHP_EOL, array_filter(request()->input('address1'))), - 'customer_id' => $customer->id, - ]); + if (request()->input('address1') && ! is_array(request()->input('address1'))) { + return response()->json([ + 'message' => 'address1 must be an array.', + ]); + } + + if (request()->input('address1')) { + request()->merge([ + 'address1' => implode(PHP_EOL, array_filter(request()->input('address1'))), + 'customer_id' => $customer->id, + ]); + } $this->validate(request(), [ 'address1' => 'string|required', - 'country' => 'string|required', - 'state' => 'string|required', - 'city' => 'string|required', + 'company' => 'string|nullable', + 'vat_id' => 'string|nullable', + 'country' => 'string|required', + 'state' => 'string|nullable', + 'city' => 'string|required', 'postcode' => 'required', - 'phone' => 'required', + 'phone' => 'required', ]); $customerAddress = $this->customerAddressRepository->create(request()->all()); @@ -93,29 +104,37 @@ class AddressController extends Controller /** * Update the specified resource in storage. - * - * @return \Illuminate\Http\Response + * @param int $id + * + * @return \Illuminate\Http\JsonResponse + * @throws \Illuminate\Validation\ValidationException */ - public function update() + public function update(int $id) { - $customer = auth($this->guard)->user(); + if (request()->input('address1') && ! is_array(request()->input('address1'))) { + return response()->json([ + 'message' => 'address1 must be an array.', + ]); + } request()->merge(['address1' => implode(PHP_EOL, array_filter(request()->input('address1')))]); $this->validate(request(), [ 'address1' => 'string|required', - 'country' => 'string|required', - 'state' => 'string|required', - 'city' => 'string|required', + 'company' => 'string|nullable', + 'vat_id' => 'string|nullable', + 'country' => 'string|required', + 'state' => 'string|nullable', + 'city' => 'string|required', 'postcode' => 'required', - 'phone' => 'required', + 'phone' => 'required', ]); - $this->customerAddressRepository->update(request()->all(), request()->input('id')); + $customerAddress = $this->customerAddressRepository->update(request()->all(), $id); return response()->json([ 'message' => 'Your address has been updated successfully.', - 'data' => new CustomerAddressResource($this->customerAddressRepository->find(request()->input('id'))), + 'data' => new CustomerAddressResource($customerAddress), ]); } } \ No newline at end of file diff --git a/packages/Webkul/API/Http/Controllers/Shop/CartController.php b/packages/Webkul/API/Http/Controllers/Shop/CartController.php index dbecc7c01..49c5a55c1 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/CartController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/CartController.php @@ -2,15 +2,17 @@ namespace Webkul\API\Http\Controllers\Shop; +use Cart; use Exception; +use Illuminate\Http\Request; +use Illuminate\Http\Response; use Illuminate\Http\JsonResponse; -use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Log; +use Illuminate\Support\Facades\Event; use Webkul\Checkout\Repositories\CartRepository; use Webkul\Checkout\Repositories\CartItemRepository; -use Webkul\API\Http\Resources\Checkout\Cart as CartResource; -use Cart; use Webkul\Customer\Repositories\WishlistRepository; +use Webkul\API\Http\Resources\Checkout\Cart as CartResource; class CartController extends Controller { @@ -70,7 +72,7 @@ class CartController extends Controller } /** - * Get customer cart + * Get customer cart. * * @return \Illuminate\Http\JsonResponse */ @@ -142,22 +144,28 @@ class CartController extends Controller * * @return \Illuminate\Http\JsonResponse */ - public function update() + public function update(Request $request) { - foreach (request()->get('qty') as $qty) { + $this->validate($request, [ + 'qty' => 'required|array', + ]); + + $requestedQuantity = $request->get('qty'); + + foreach ($requestedQuantity as $qty) { if ($qty <= 0) { return response()->json([ 'message' => trans('shop::app.checkout.cart.quantity.illegal'), - ], 401); + ], Response::HTTP_UNAUTHORIZED); } } - foreach (request()->get('qty') as $itemId => $qty) { + foreach ($requestedQuantity as $itemId => $qty) { $item = $this->cartItemRepository->findOneByField('id', $itemId); Event::dispatch('checkout.cart.item.update.before', $itemId); - Cart::updateItems(request()->all()); + Cart::updateItems(['qty' => $requestedQuantity]); Event::dispatch('checkout.cart.item.update.after', $item); } @@ -242,4 +250,55 @@ class CartController extends Controller 'data' => $cart ? new CartResource($cart) : null, ]); } + + /** + * Apply coupon code. + * + * @return \Illuminate\Http\JsonResponse + */ + public function applyCoupon() + { + $couponCode = request()->get('code'); + + try { + if (strlen($couponCode)) { + Cart::setCouponCode($couponCode)->collectTotals(); + + if (Cart::getCart()->coupon_code == $couponCode) { + return response()->json([ + 'success' => true, + 'message' => trans('shop::app.checkout.total.success-coupon'), + ]); + } + } + + return response()->json([ + 'success' => false, + 'message' => trans('shop::app.checkout.total.invalid-coupon'), + ]); + } catch (\Exception $e) { + report($e); + + return response()->json([ + 'success' => false, + 'message' => trans('shop::app.checkout.total.coupon-apply-issue'), + ]); + } + + } + + /** + * Remove coupon code. + * + * @return \Illuminate\Http\JsonResponse + */ + public function removeCoupon() + { + Cart::removeCouponCode()->collectTotals(); + + return response()->json([ + 'success' => true, + 'message' => trans('shop::app.checkout.total.remove-coupon'), + ]); + } } \ No newline at end of file diff --git a/packages/Webkul/API/Http/Controllers/Shop/CheckoutController.php b/packages/Webkul/API/Http/Controllers/Shop/CheckoutController.php index d30827179..bdb6c1e8f 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/CheckoutController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/CheckoutController.php @@ -2,20 +2,19 @@ namespace Webkul\API\Http\Controllers\Shop; -use Illuminate\Support\Facades\Event; -use Webkul\Checkout\Repositories\CartRepository; -use Webkul\Checkout\Repositories\CartItemRepository; -use Webkul\Shipping\Facades\Shipping; -use Webkul\Payment\Facades\Payment; -use Webkul\API\Http\Resources\Checkout\Cart as CartResource; -use Webkul\API\Http\Resources\Checkout\CartShippingRate as CartShippingRateResource; -use Webkul\API\Http\Resources\Sales\Order as OrderResource; -use Webkul\Checkout\Http\Requests\CustomerAddressForm; -use Webkul\Sales\Repositories\OrderRepository; -use Illuminate\Support\Str; use Cart; use Exception; +use Illuminate\Support\Str; +use Webkul\Payment\Facades\Payment; +use Webkul\Shipping\Facades\Shipping; +use Webkul\Sales\Repositories\OrderRepository; +use Webkul\Checkout\Repositories\CartRepository; use Webkul\Shop\Http\Controllers\OnepageController; +use Webkul\Checkout\Repositories\CartItemRepository; +use Webkul\Checkout\Http\Requests\CustomerAddressForm; +use Webkul\API\Http\Resources\Sales\Order as OrderResource; +use Webkul\API\Http\Resources\Checkout\Cart as CartResource; +use Webkul\API\Http\Resources\Checkout\CartShippingRate as CartShippingRateResource; class CheckoutController extends Controller { @@ -162,6 +161,26 @@ class CheckoutController extends Controller ]); } + /** + * Check for minimum order. + * + * @return \Illuminate\Http\Response + */ + public function checkMinimumOrder() + { + $minimumOrderAmount = (float) core()->getConfigData('sales.orderSettings.minimum-order.minimum_order_amount') ?? 0; + + $status = Cart::checkMinimumOrder(); + + return response()->json([ + 'status' => ! $status ? false : true, + 'message' => ! $status ? trans('shop::app.checkout.cart.minimum-order-message', ['amount' => core()->currency($minimumOrderAmount)]) : 'Success', + 'data' => [ + 'cart' => new CartResource(Cart::getCart()), + ] + ]); + } + /** * Saves order. * diff --git a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php index 222898993..7fb6b796b 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php @@ -2,12 +2,21 @@ namespace Webkul\API\Http\Controllers\Shop; +use Illuminate\Http\Request; +use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Event; use Webkul\Customer\Repositories\CustomerRepository; use Webkul\Customer\Repositories\CustomerGroupRepository; class CustomerController extends Controller { + /** + * Contains current guard + * + * @var array + */ + protected $guard; + /** * Contains route related configuration * @@ -40,8 +49,17 @@ class CustomerController extends Controller CustomerRepository $customerRepository, CustomerGroupRepository $customerGroupRepository ) { + $this->guard = request()->has('token') ? 'api' : 'customer'; + $this->_config = request('_config'); + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + + auth()->setDefaultDriver($this->guard); + + $this->middleware('auth:' . $this->guard); + } + $this->customerRepository = $customerRepository; $this->customerGroupRepository = $customerGroupRepository; @@ -52,24 +70,25 @@ class CustomerController extends Controller * * @return \Illuminate\Http\Response */ - public function create() + public function create(Request $request) { - request()->validate([ + $this->validate($request, [ 'first_name' => 'required', 'last_name' => 'required', 'email' => 'email|required|unique:customers,email', 'password' => 'confirmed|min:6|required', ]); - $data = request()->input(); - - $data = array_merge($data, [ - 'password' => bcrypt($data['password']), - 'channel_id' => core()->getCurrentChannel()->id, - 'is_verified' => 1, - ]); - - $data['customer_group_id'] = $this->customerGroupRepository->findOneWhere(['code' => 'general'])->id; + $data = [ + 'first_name' => $request->get('first_name'), + 'last_name' => $request->get('last_name'), + 'email' => $request->get('email'), + 'password' => $request->get('password'), + 'password' => bcrypt($request->get('password')), + 'channel_id' => core()->getCurrentChannel()->id, + 'is_verified' => 1, + 'customer_group_id' => $this->customerGroupRepository->findOneWhere(['code' => 'general'])->id + ]; Event::dispatch('customer.registration.before'); @@ -81,4 +100,23 @@ class CustomerController extends Controller 'message' => 'Your account has been created successfully.', ]); } + + /** + * Returns a current user data. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function get($id) + { + if (Auth::user($this->guard)->id === (int) $id) { + return new $this->_config['resource']( + $this->customerRepository->findOrFail($id) + ); + } + + return response()->json([ + 'message' => 'Invalid Request.', + ], 403); + } } \ No newline at end of file diff --git a/packages/Webkul/API/Http/Controllers/Shop/InvoiceController.php b/packages/Webkul/API/Http/Controllers/Shop/InvoiceController.php new file mode 100644 index 000000000..4efcb0a19 --- /dev/null +++ b/packages/Webkul/API/Http/Controllers/Shop/InvoiceController.php @@ -0,0 +1,106 @@ +guard = request()->has('token') ? 'api' : 'customer'; + + $this->_config = request('_config'); + + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + + auth()->setDefaultDriver($this->guard); + + $this->middleware('auth:' . $this->guard); + } + + if ($this->_config) { + $this->repository = app($this->_config['repository']); + } + } + + /** + * Returns a listing of the invoices. + * + * @return \Illuminate\Http\Response + */ + public function index() + { + $query = $this->repository->scopeQuery(function($query) { + $query = $query->leftJoin('orders', 'invoices.order_id', '=', 'orders.id')->select('invoices.*', 'orders.customer_id'); + + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + $query = $query->where('customer_id', auth()->user()->id); + } + + foreach (request()->except(['page', 'limit', 'pagination', 'sort', 'order', 'token']) as $input => $value) { + $query = $query->whereIn($input, array_map('trim', explode(',', $value))); + } + + if ($sort = request()->input('sort')) { + $query = $query->orderBy($sort, request()->input('order') ?? 'desc'); + } else { + $query = $query->orderBy('id', 'desc'); + } + + return $query; + }); + + if (is_null(request()->input('pagination')) || request()->input('pagination')) { + $results = $query->paginate(request()->input('limit') ?? 10); + } else { + $results = $query->get(); + } + + return $this->_config['resource']::collection($results); + } + + /** + * Returns an individual invoice. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function get($id) + { + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + $query = $this->repository->leftJoin('orders', 'invoices.order_id', '=', 'orders.id') + ->select('invoices.*', 'orders.customer_id') + ->where('customer_id', auth()->user()->id) + ->findOrFail($id); + } else { + $query = $this->repository->findOrFail($id); + } + + return new $this->_config['resource']($query); + } +} diff --git a/packages/Webkul/API/Http/Controllers/Shop/ResourceController.php b/packages/Webkul/API/Http/Controllers/Shop/ResourceController.php index 5668bd64a..1bc627003 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/ResourceController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/ResourceController.php @@ -12,7 +12,7 @@ class ResourceController extends Controller * @var array */ protected $guard; - + /** * Contains route related configuration * @@ -45,7 +45,9 @@ class ResourceController extends Controller $this->middleware('auth:' . $this->guard); } - $this->repository = app($this->_config['repository']); + if ($this->_config) { + $this->repository = app($this->_config['repository']); + } } /** @@ -56,6 +58,10 @@ class ResourceController extends Controller public function index() { $query = $this->repository->scopeQuery(function($query) { + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + $query = $query->where('customer_id', auth()->user()->id ); + } + foreach (request()->except(['page', 'limit', 'pagination', 'sort', 'order', 'token']) as $input => $value) { $query = $query->whereIn($input, array_map('trim', explode(',', $value))); } @@ -86,9 +92,11 @@ class ResourceController extends Controller */ public function get($id) { - return new $this->_config['resource']( - $this->repository->findOrFail($id) - ); + $query = isset($this->_config['authorization_required']) && $this->_config['authorization_required'] ? + $this->repository->where('customer_id', auth()->user()->id)->findOrFail($id) : + $this->repository->findOrFail($id); + + return new $this->_config['resource']($query); } /** @@ -102,7 +110,7 @@ class ResourceController extends Controller $wishlistProduct = $this->repository->findOrFail($id); $this->repository->delete($id); - + return response()->json([ 'message' => 'Item removed successfully.', ]); diff --git a/packages/Webkul/API/Http/Controllers/Shop/ReviewController.php b/packages/Webkul/API/Http/Controllers/Shop/ReviewController.php index 2a5653ce3..c9582dc3a 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/ReviewController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/ReviewController.php @@ -9,21 +9,21 @@ use Webkul\API\Http\Resources\Catalog\ProductReview as ProductReviewResource; class ReviewController extends Controller { /** - * Contains current guard + * Contains current guard. * * @var array */ protected $guard; /** - * ProductReviewRepository object + * ProductReviewRepository $reviewRepository * * @var \Webkul\Product\Repositories\ProductReviewRepository */ protected $reviewRepository; /** - * Controller instance + * Controller instance. * * @param Webkul\Product\Repositories\ProductReviewRepository $reviewRepository */ @@ -47,24 +47,25 @@ class ReviewController extends Controller { $customer = auth($this->guard)->user(); - $this->validate(request(), [ + $this->validate($request, [ 'comment' => 'required', 'rating' => 'required|numeric|min:1|max:5', 'title' => 'required', ]); - $data = array_merge(request()->all(), [ + $productReview = $this->reviewRepository->create([ 'customer_id' => $customer ? $customer->id : null, - 'name' => $customer ? $customer->name : request()->input('name'), + 'name' => $customer ? $customer->name : $request->get('name'), 'status' => 'pending', 'product_id' => $id, + 'comment' => $request->comment, + 'rating' => $request->rating, + 'title' => $request->title ]); - $productReview = $this->reviewRepository->create($data); - return response()->json([ 'message' => 'Your review submitted successfully.', - 'data' => new ProductReviewResource($this->reviewRepository->find($productReview->id)), + 'data' => new ProductReviewResource($productReview), ]); } } \ No newline at end of file diff --git a/packages/Webkul/API/Http/Controllers/Shop/SessionController.php b/packages/Webkul/API/Http/Controllers/Shop/SessionController.php index 19370d917..b84f3694d 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/SessionController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/SessionController.php @@ -103,23 +103,19 @@ class SessionController extends Controller 'password' => 'confirmed|min:6', ]); - $data = request()->all(); + $data = request()->only('first_name', 'last_name', 'gender', 'date_of_birth', 'email', 'password'); - if (! $data['date_of_birth']) { - unset($data['date_of_birth']); - } - - if (!isset($data['password']) || ! $data['password']) { + if (! isset($data['password']) || ! $data['password']) { unset($data['password']); } else { $data['password'] = bcrypt($data['password']); } - $this->customerRepository->update($data, $customer->id); + $updatedCustomer = $this->customerRepository->update($data, $customer->id); return response()->json([ - 'message' => 'Your account has been created successfully.', - 'data' => new CustomerResource($this->customerRepository->find($customer->id)), + 'message' => 'Your account has been updated successfully.', + 'data' => new CustomerResource($updatedCustomer), ]); } @@ -136,4 +132,4 @@ class SessionController extends Controller 'message' => 'Logged out successfully.', ]); } -} \ No newline at end of file +} diff --git a/packages/Webkul/API/Http/Controllers/Shop/TransactionController.php b/packages/Webkul/API/Http/Controllers/Shop/TransactionController.php new file mode 100644 index 000000000..f64422816 --- /dev/null +++ b/packages/Webkul/API/Http/Controllers/Shop/TransactionController.php @@ -0,0 +1,106 @@ +guard = request()->has('token') ? 'api' : 'customer'; + + $this->_config = request('_config'); + + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + + auth()->setDefaultDriver($this->guard); + + $this->middleware('auth:' . $this->guard); + } + + if ($this->_config) { + $this->repository = app($this->_config['repository']); + } + } + + /** + * Returns a listing of the Order Transactions. + * + * @return \Illuminate\Http\Response + */ + public function index() + { + $query = $this->repository->scopeQuery(function($query) { + $query = $query->leftJoin('orders', 'order_transactions.order_id', '=', 'orders.id')->select('order_transactions.*', 'orders.customer_id'); + + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + $query = $query->where('customer_id', auth()->user()->id); + } + + foreach (request()->except(['page', 'limit', 'pagination', 'sort', 'order', 'token']) as $input => $value) { + $query = $query->whereIn($input, array_map('trim', explode(',', $value))); + } + + if ($sort = request()->input('sort')) { + $query = $query->orderBy($sort, request()->input('order') ?? 'desc'); + } else { + $query = $query->orderBy('id', 'desc'); + } + + return $query; + }); + + if (is_null(request()->input('pagination')) || request()->input('pagination')) { + $results = $query->paginate(request()->input('limit') ?? 10); + } else { + $results = $query->get(); + } + + return $this->_config['resource']::collection($results); + } + + /** + * Returns an individual invoice. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function get($id) + { + if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) { + $query = $this->repository->leftJoin('orders', 'order_transactions.order_id', '=', 'orders.id') + ->select('order_transactions.*', 'orders.customer_id') + ->where('customer_id', auth()->user()->id) + ->findOrFail($id); + } else { + $query = $this->repository->findOrFail($id); + } + + return new $this->_config['resource']($query); + } +} diff --git a/packages/Webkul/API/Http/Resources/Catalog/Category.php b/packages/Webkul/API/Http/Resources/Catalog/Category.php index f99af8723..180f13679 100644 --- a/packages/Webkul/API/Http/Resources/Catalog/Category.php +++ b/packages/Webkul/API/Http/Resources/Catalog/Category.php @@ -2,6 +2,7 @@ namespace Webkul\API\Http\Resources\Catalog; +use Illuminate\Support\Facades\Storage; use Illuminate\Http\Resources\Json\JsonResource; class Category extends JsonResource @@ -15,19 +16,25 @@ class Category extends JsonResource public function toArray($request) { return [ - 'id' => $this->id, - 'code' => $this->code, - 'name' => $this->name, - 'slug' => $this->slug, - 'display_mode' => $this->display_mode, - 'description' => $this->description, - 'meta_title' => $this->meta_title, - 'meta_description' => $this->meta_description, - 'meta_keywords' => $this->meta_keywords, - 'status' => $this->status, - 'image_url' => $this->image_url, - 'created_at' => $this->created_at, - 'updated_at' => $this->updated_at, + 'id' => $this->id, + 'code' => $this->code, + 'name' => $this->name, + 'slug' => $this->slug, + 'display_mode' => $this->display_mode, + 'description' => $this->description, + 'meta_title' => $this->meta_title, + 'meta_description' => $this->meta_description, + 'meta_keywords' => $this->meta_keywords, + 'status' => $this->status, + 'image_url' => $this->image_url, + 'category_icon_path' => $this->category_icon_path + ? Storage::url($this->category_icon_path) + : null, + 'additional' => is_array($this->resource->additional) + ? $this->resource->additional + : json_decode($this->resource->additional, true), + 'created_at' => $this->created_at, + 'updated_at' => $this->updated_at, ]; } -} \ No newline at end of file +} diff --git a/packages/Webkul/API/Http/Resources/Catalog/Product.php b/packages/Webkul/API/Http/Resources/Catalog/Product.php index e81a7b872..649e2c36f 100644 --- a/packages/Webkul/API/Http/Resources/Catalog/Product.php +++ b/packages/Webkul/API/Http/Resources/Catalog/Product.php @@ -3,7 +3,7 @@ namespace Webkul\API\Http\Resources\Catalog; use Illuminate\Http\Resources\Json\JsonResource; -use Webkul\Product\Helpers\ProductType; +use Webkul\Product\Facades\ProductImage as ProductImageFacade; class Product extends JsonResource { @@ -14,10 +14,10 @@ class Product extends JsonResource */ public function __construct($resource) { - $this->productImageHelper = app('Webkul\Product\Helpers\ProductImage'); - $this->productReviewHelper = app('Webkul\Product\Helpers\Review'); + $this->wishlistHelper = app('Webkul\Customer\Helpers\Wishlist'); + parent::__construct($resource); } @@ -29,42 +29,265 @@ class Product extends JsonResource */ public function toArray($request) { + /* assign product */ $product = $this->product ? $this->product : $this; + /* get type instance */ + $productTypeInstance = $product->getTypeInstance(); + + /* generating resource */ return [ + /* product's information */ 'id' => $product->id, + 'sku' => $product->sku, 'type' => $product->type, - 'name' => $this->name, - 'url_key' => $this->url_key, - 'price' => $product->getTypeInstance()->getMinimalPrice(), - 'formated_price' => core()->currency($product->getTypeInstance()->getMinimalPrice()), - 'short_description' => $this->short_description, - 'description' => $this->description, - 'sku' => $this->sku, + 'name' => $product->name, + 'url_key' => $product->url_key, + 'price' => $productTypeInstance->getMinimalPrice(), + 'formated_price' => core()->currency($productTypeInstance->getMinimalPrice()), + 'short_description' => $product->short_description, + 'description' => $product->description, 'images' => ProductImage::collection($product->images), - 'base_image' => $this->productImageHelper->getProductBaseImage($product), - 'variants' => Self::collection($this->variants), - 'in_stock' => $product->haveSufficientQuantity(1), - $this->mergeWhen($product->getTypeInstance()->isComposite(), [ - 'super_attributes' => Attribute::collection($product->super_attributes), - ]), - 'special_price' => $this->when( - $product->getTypeInstance()->haveSpecialPrice(), - $product->getTypeInstance()->getSpecialPrice() - ), - 'formated_special_price' => $this->when( - $product->getTypeInstance()->haveSpecialPrice(), - core()->currency($product->getTypeInstance()->getSpecialPrice()) - ), + 'videos' => ProductVideo::collection($product->videos), + 'base_image' => ProductImageFacade::getProductBaseImage($product), + 'created_at' => $product->created_at, + 'updated_at' => $product->updated_at, + + /* product's reviews */ 'reviews' => [ 'total' => $total = $this->productReviewHelper->getTotalReviews($product), 'total_rating' => $total ? $this->productReviewHelper->getTotalRating($product) : 0, 'average_rating' => $total ? $this->productReviewHelper->getAverageRating($product) : 0, 'percentage' => $total ? json_encode($this->productReviewHelper->getPercentageRating($product)) : [], ], + + /* product's checks */ + 'in_stock' => $product->haveSufficientQuantity(1), 'is_saved' => false, - 'created_at' => $this->created_at, - 'updated_at' => $this->updated_at, + 'is_wishlisted' => $this->wishlistHelper->getWishlistProduct($product) ? true : false, + 'is_item_in_cart' => \Cart::hasProduct($product), + 'show_quantity_changer' => $this->when( + $product->type !== 'grouped', + $product->getTypeInstance()->showQuantityBox() + ), + + /* product's extra information */ + $this->merge($this->allProductExtraInfo()), + + /* special price cases */ + $this->merge($this->specialPriceInfo()), + + /* super attributes */ + $this->mergeWhen($productTypeInstance->isComposite(), [ + 'super_attributes' => Attribute::collection($product->super_attributes), + ]), ]; } -} \ No newline at end of file + + /** + * Get special price information. + * + * @return array + */ + private function specialPriceInfo() + { + $product = $this->product ? $this->product : $this; + + $productTypeInstance = $product->getTypeInstance(); + + return [ + 'special_price' => $this->when( + $productTypeInstance->haveSpecialPrice(), + $productTypeInstance->getSpecialPrice() + ), + 'formated_special_price' => $this->when( + $productTypeInstance->haveSpecialPrice(), + core()->currency($productTypeInstance->getSpecialPrice()) + ), + 'regular_price' => $this->when( + $productTypeInstance->haveSpecialPrice(), + data_get($productTypeInstance->getProductPrices(), 'regular_price.price') + ), + 'formated_regular_price' => $this->when( + $productTypeInstance->haveSpecialPrice(), + data_get($productTypeInstance->getProductPrices(), 'regular_price.formated_price') + ), + ]; + } + + /** + * Get all product's extra information. + * + * @return array + */ + private function allProductExtraInfo() + { + $product = $this->product ? $this->product : $this; + + $productTypeInstance = $product->getTypeInstance(); + + return [ + /* grouped product */ + $this->mergeWhen( + $productTypeInstance instanceof \Webkul\Product\Type\Grouped, + $product->type == 'grouped' + ? $this->getGroupedProductInfo($product) + : null + ), + + /* bundle product */ + $this->mergeWhen( + $productTypeInstance instanceof \Webkul\Product\Type\Bundle, + $product->type == 'bundle' + ? $this->getBundleProductInfo($product) + : null + ), + + /* configurable product */ + $this->mergeWhen( + $productTypeInstance instanceof \Webkul\Product\Type\Configurable, + $product->type == 'configurable' + ? $this->getConfigurableProductInfo($product) + : null + ), + + /* downloadable product */ + $this->mergeWhen( + $productTypeInstance instanceof \Webkul\Product\Type\Downloadable, + $product->type == 'downloadable' + ? $this->getDownloadableProductInfo($product) + : null + ), + + /* booking product */ + $this->mergeWhen( + $product->type == 'booking', + $product->type == 'booking' + ? $this->getBookingProductInfo($product) + : null + ), + ]; + } + + /** + * Get grouped product's extra information. + * + * @param \Webkul\Product\Models\Product + * @return array + */ + private function getGroupedProductInfo($product) + { + return [ + 'grouped_products' => $product->grouped_products->map(function($groupedProduct) { + $associatedProduct = $groupedProduct->associated_product; + + $data = $associatedProduct->toArray(); + + return array_merge($data, [ + 'qty' => $groupedProduct->qty, + 'isSaleable' => $associatedProduct->getTypeInstance()->isSaleable(), + 'formated_price' => $associatedProduct->getTypeInstance()->getPriceHtml(), + 'show_quantity_changer' => $associatedProduct->getTypeInstance()->showQuantityBox(), + ]); + }) + ]; + } + + /** + * Get bundle product's extra information. + * + * @param \Webkul\Product\Models\Product + * @return array + */ + private function getBundleProductInfo($product) + { + return [ + 'currency_options' => core()->getAccountJsSymbols(), + 'bundle_options' => app('Webkul\Product\Helpers\BundleOption')->getBundleConfig($product) + ]; + } + + /** + * Get configurable product's extra information. + * + * @param \Webkul\Product\Models\Product + * @return array + */ + private function getConfigurableProductInfo($product) + { + return [ + 'variants' => $product->variants + ]; + } + + /** + * Get downloadable product's extra information. + * + * @param \Webkul\Product\Models\Product + * @return array + */ + private function getDownloadableProductInfo($product) + { + return [ + 'downloadable_links' => $product->downloadable_links->map(function ($downloadableLink) { + $data = $downloadableLink->toArray(); + + if (isset($data['sample_file'])) { + $data['price'] = core()->currency($downloadableLink->price); + $data['sample_download_url'] = route('shop.downloadable.download_sample', ['type' => 'link', 'id' => $downloadableLink['id']]); + } + + return $data; + }), + + 'downloadable_samples' => $product->downloadable_samples->map(function ($downloadableSample) { + $sample = $downloadableSample->toArray(); + $data = $sample; + $data['download_url'] = route('shop.downloadable.download_sample', ['type' => 'sample', 'id' => $sample['id']]); + return $data; + }) + ]; + } + + /** + * Get booking product's extra information. + * + * @param \Webkul\Product\Models\Product + * @return array + */ + private function getBookingProductInfo($product) + { + $bookingProduct = app('\Webkul\BookingProduct\Repositories\BookingProductRepository')->findOneByField('product_id', $product->id); + + $data['slot_index_route'] = route('booking_product.slots.index', $bookingProduct->id); + + if ($bookingProduct->type == 'appointment') { + $bookingSlotHelper = app('\Webkul\BookingProduct\Helpers\AppointmentSlot'); + + $data['today_slots_html'] = $bookingSlotHelper->getTodaySlotsHtml($bookingProduct); + $data['week_slot_durations'] = $bookingSlotHelper->getWeekSlotDurations($bookingProduct); + $data['appointment_slot'] = $bookingProduct->appointment_slot; + } + + if ($bookingProduct->type == 'event') { + $bookingSlotHelper = app('\Webkul\BookingProduct\Helpers\EventTicket'); + + $data['tickets'] = $bookingSlotHelper->getTickets($bookingProduct); + $data['event_date'] = $bookingSlotHelper->getEventDate($bookingProduct); + } + + if ($bookingProduct->type == 'rental') { + $data['renting_type'] = $bookingProduct->rental_slot->renting_type; + } + + if ($bookingProduct->type == 'table') { + $bookingSlotHelper = app('\Webkul\BookingProduct\Helpers\TableSlot'); + + $data['today_slots_html'] = $bookingSlotHelper->getTodaySlotsHtml($bookingProduct); + $data['week_slot_durations'] = $bookingSlotHelper->getWeekSlotDurations($bookingProduct); + $data['table_slot'] = $bookingProduct->table_slot; + } + + return $data; + } +} diff --git a/packages/Webkul/API/Http/Resources/Catalog/ProductVideo.php b/packages/Webkul/API/Http/Resources/Catalog/ProductVideo.php new file mode 100644 index 000000000..c45239561 --- /dev/null +++ b/packages/Webkul/API/Http/Resources/Catalog/ProductVideo.php @@ -0,0 +1,23 @@ + $this->id, + 'type' => $this->type, + 'url' => $this->url + ]; + } +} \ No newline at end of file diff --git a/packages/Webkul/API/Http/Resources/Checkout/Cart.php b/packages/Webkul/API/Http/Resources/Checkout/Cart.php index 7b6ca3b56..fa0a67cf9 100644 --- a/packages/Webkul/API/Http/Resources/Checkout/Cart.php +++ b/packages/Webkul/API/Http/Resources/Checkout/Cart.php @@ -5,71 +5,75 @@ namespace Webkul\API\Http\Resources\Checkout; use Illuminate\Http\Resources\Json\JsonResource; use Webkul\API\Http\Resources\Core\Channel as ChannelResource; use Webkul\API\Http\Resources\Customer\Customer as CustomerResource; +use Webkul\Tax\Helpers\Tax; class Cart extends JsonResource { /** * Transform the resource into an array. * - * @param \Illuminate\Http\Request + * @param \Illuminate\Http\Request + * * @return array */ - public function toArray($request) + public function toArray($request): array { - $taxes = \Webkul\Tax\Helpers\Tax::getTaxRatesWithAmount($this, false); - $baseTaxes = \Webkul\Tax\Helpers\Tax::getTaxRatesWithAmount($this, true); + $taxes = Tax::getTaxRatesWithAmount($this, false); + $baseTaxes = Tax::getTaxRatesWithAmount($this, true); $formatedTaxes = $this->formatTaxAmounts($taxes, false); $formatedBaseTaxes = $this->formatTaxAmounts($baseTaxes, true); return [ - 'id' => $this->id, - 'customer_email' => $this->customer_email, - 'customer_first_name' => $this->customer_first_name, - 'customer_last_name' => $this->customer_last_name, - 'shipping_method' => $this->shipping_method, - 'coupon_code' => $this->coupon_code, - 'is_gift' => $this->is_gift, - 'items_count' => $this->items_count, - 'items_qty' => $this->items_qty, - 'exchange_rate' => $this->exchange_rate, - 'global_currency_code' => $this->global_currency_code, - 'base_currency_code' => $this->base_currency_code, - 'channel_currency_code' => $this->channel_currency_code, - 'cart_currency_code' => $this->cart_currency_code, - 'grand_total' => $this->grand_total, - 'formated_grand_total' => core()->formatPrice($this->grand_total, $this->cart_currency_code), - 'base_grand_total' => $this->base_grand_total, - 'formated_base_grand_total' => core()->formatBasePrice($this->base_grand_total), - 'sub_total' => $this->sub_total, - 'formated_sub_total' => core()->formatPrice($this->sub_total, $this->cart_currency_code), - 'base_sub_total' => $this->base_sub_total, - 'formated_base_sub_total' => core()->formatBasePrice($this->base_sub_total), - 'tax_total' => $this->tax_total, - 'formated_tax_total' => core()->formatPrice($this->tax_total, $this->cart_currency_code), - 'base_tax_total' => $this->base_tax_total, - 'formated_base_tax_total' => core()->formatBasePrice($this->base_tax_total), - 'discount' => $this->discount_amount, - 'formated_discount' => core()->formatPrice($this->discount_amount, $this->cart_currency_code), - 'base_discount' => $this->base_discount_amount, - 'formated_base_discount' => core()->formatBasePrice($this->base_discount_amount), - 'checkout_method' => $this->checkout_method, - 'is_guest' => $this->is_guest, - 'is_active' => $this->is_active, - 'conversion_time' => $this->conversion_time, - 'customer' => $this->when($this->customer_id, new CustomerResource($this->customer)), - 'channel' => $this->when($this->channel_id, new ChannelResource($this->channel)), - 'items' => CartItem::collection($this->items), - 'selected_shipping_rate' => new CartShippingRate($this->selected_shipping_rate), - 'payment' => new CartPayment($this->payment), - 'billing_address' => new CartAddress($this->billing_address), - 'shipping_address' => new CartAddress($this->shipping_address), - 'created_at' => $this->created_at, - 'updated_at' => $this->updated_at, - 'taxes' => json_encode($taxes, JSON_FORCE_OBJECT), - 'formated_taxes' => json_encode($formatedTaxes, JSON_FORCE_OBJECT), - 'base_taxes' => json_encode($baseTaxes, JSON_FORCE_OBJECT), - 'formated_base_taxes' => json_encode($formatedBaseTaxes, JSON_FORCE_OBJECT), + 'id' => $this->id, + 'customer_email' => $this->customer_email, + 'customer_first_name' => $this->customer_first_name, + 'customer_last_name' => $this->customer_last_name, + 'shipping_method' => $this->shipping_method, + 'coupon_code' => $this->coupon_code, + 'is_gift' => $this->is_gift, + 'items_count' => $this->items_count, + 'items_qty' => $this->items_qty, + 'exchange_rate' => $this->exchange_rate, + 'global_currency_code' => $this->global_currency_code, + 'base_currency_code' => $this->base_currency_code, + 'channel_currency_code' => $this->channel_currency_code, + 'cart_currency_code' => $this->cart_currency_code, + 'grand_total' => $this->grand_total, + 'formated_grand_total' => core()->formatPrice($this->grand_total, $this->cart_currency_code), + 'base_grand_total' => $this->base_grand_total, + 'formated_base_grand_total' => core()->formatBasePrice($this->base_grand_total), + 'sub_total' => $this->sub_total, + 'formated_sub_total' => core()->formatPrice($this->sub_total, $this->cart_currency_code), + 'base_sub_total' => $this->base_sub_total, + 'formated_base_sub_total' => core()->formatBasePrice($this->base_sub_total), + 'tax_total' => $this->tax_total, + 'formated_tax_total' => core()->formatPrice($this->tax_total, $this->cart_currency_code), + 'base_tax_total' => $this->base_tax_total, + 'formated_base_tax_total' => core()->formatBasePrice($this->base_tax_total), + 'discount' => $this->discount_amount, + 'formated_discount' => core()->formatPrice($this->discount_amount, $this->cart_currency_code), + 'base_discount' => $this->base_discount_amount, + 'formated_base_discount' => core()->formatBasePrice($this->base_discount_amount), + 'checkout_method' => $this->checkout_method, + 'is_guest' => $this->is_guest, + 'is_active' => $this->is_active, + 'conversion_time' => $this->conversion_time, + 'customer' => $this->when($this->customer_id, new CustomerResource($this->customer)), + 'channel' => $this->when($this->channel_id, new ChannelResource($this->channel)), + 'items' => CartItem::collection($this->items), + 'selected_shipping_rate' => new CartShippingRate($this->selected_shipping_rate), + 'payment' => new CartPayment($this->payment), + 'billing_address' => new CartAddress($this->billing_address), + 'shipping_address' => new CartAddress($this->shipping_address), + 'created_at' => $this->created_at, + 'updated_at' => $this->updated_at, + 'taxes' => json_encode($taxes, JSON_FORCE_OBJECT), + 'formated_taxes' => json_encode($formatedTaxes, JSON_FORCE_OBJECT), + 'base_taxes' => json_encode($baseTaxes, JSON_FORCE_OBJECT), + 'formated_base_taxes' => json_encode($formatedBaseTaxes, JSON_FORCE_OBJECT), + 'formated_discounted_sub_total' => core()->formatPrice($this->sub_total - $this->discount_amount, $this->cart_currency_code), + 'formated_base_discounted_sub_total' => core()->formatPrice($this->base_sub_total - $this->base_discount_amount, $this->cart_currency_code), ]; } diff --git a/packages/Webkul/API/Http/Resources/Customer/CustomerAddress.php b/packages/Webkul/API/Http/Resources/Customer/CustomerAddress.php index 6538496c0..8c9887b1e 100644 --- a/packages/Webkul/API/Http/Resources/Customer/CustomerAddress.php +++ b/packages/Webkul/API/Http/Resources/Customer/CustomerAddress.php @@ -19,6 +19,7 @@ class CustomerAddress extends JsonResource 'first_name' => $this->first_name, 'last_name' => $this->last_name, 'company_name' => $this->company_name, + 'vat_id' => $this->vat_id, 'address1' => explode(PHP_EOL, $this->address1), 'country' => $this->country, 'country_name' => core()->country_name($this->country), @@ -26,6 +27,7 @@ class CustomerAddress extends JsonResource 'city' => $this->city, 'postcode' => $this->postcode, 'phone' => $this->phone, + 'is_default' => $this->default_address, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at, ]; diff --git a/packages/Webkul/API/Http/Resources/Sales/Order.php b/packages/Webkul/API/Http/Resources/Sales/Order.php index 16aeed1ba..b9d4adc26 100644 --- a/packages/Webkul/API/Http/Resources/Sales/Order.php +++ b/packages/Webkul/API/Http/Resources/Sales/Order.php @@ -19,6 +19,7 @@ class Order extends JsonResource { return [ 'id' => $this->id, + 'increment_id' => $this->increment_id, 'status' => $this->status, 'status_label' => $this->status_label, 'channel_name' => $this->channel_name, @@ -103,7 +104,6 @@ class Order extends JsonResource 'items' => OrderItem::collection($this->items), 'invoices' => Invoice::collection($this->invoices), 'shipments' => Shipment::collection($this->shipments), - 'downloadable_links' => $this->downloadable_link_purchased, 'updated_at' => $this->updated_at, 'created_at' => $this->created_at, ]; diff --git a/packages/Webkul/API/Http/Resources/Sales/OrderItem.php b/packages/Webkul/API/Http/Resources/Sales/OrderItem.php index f7eb3b8cb..67705e958 100644 --- a/packages/Webkul/API/Http/Resources/Sales/OrderItem.php +++ b/packages/Webkul/API/Http/Resources/Sales/OrderItem.php @@ -10,7 +10,8 @@ class OrderItem extends JsonResource /** * Transform the resource into an array. * - * @param \Illuminate\Http\Request + * @param \Illuminate\Http\Request + * * @return array */ public function toArray($request) @@ -75,6 +76,7 @@ class OrderItem extends JsonResource 'formated_grant_total' => core()->formatPrice($this->total + $this->tax_amount, $this->order->order_currency_code), 'base_grant_total' => $this->base_total + $this->base_tax_amount, 'formated_base_grant_total' => core()->formatPrice($this->base_total + $this->base_tax_amount, $this->order->order_currency_code), + 'downloadable_links' => $this->downloadable_link_purchased, 'additional' => is_array($this->resource->additional) ? $this->resource->additional : json_decode($this->resource->additional, true), diff --git a/packages/Webkul/API/Http/Resources/Sales/OrderTransaction.php b/packages/Webkul/API/Http/Resources/Sales/OrderTransaction.php new file mode 100644 index 000000000..5fa82df11 --- /dev/null +++ b/packages/Webkul/API/Http/Resources/Sales/OrderTransaction.php @@ -0,0 +1,28 @@ + $this->id, + 'transaction_id' => $this->transaction_id, + 'status' => $this->status, + 'type' => $this->type, + 'payment_method' => $this->payment_method, + 'data' => $this->data, + 'updated_at' => $this->updated_at, + 'created_at' => $this->created_at, + ]; + } +} \ No newline at end of file diff --git a/packages/Webkul/API/Http/routes.php b/packages/Webkul/API/Http/routes.php index c6ec10827..90ded573b 100755 --- a/packages/Webkul/API/Http/routes.php +++ b/packages/Webkul/API/Http/routes.php @@ -75,7 +75,7 @@ Route::group(['prefix' => 'api'], function ($router) { 'resource' => 'Webkul\API\Http\Resources\Catalog\ProductReview', 'authorization_required' => true ]); - + //Channel routes Route::get('channels', 'ResourceController@index')->defaults('_config', [ @@ -154,7 +154,7 @@ Route::group(['prefix' => 'api'], function ($router) { Route::post('customer/register', 'CustomerController@create'); - Route::get('customers/{id}', 'ResourceController@get')->defaults('_config', [ + Route::get('customers/{id}', 'CustomerController@get')->defaults('_config', [ 'repository' => 'Webkul\Customer\Repositories\CustomerRepository', 'resource' => 'Webkul\API\Http\Resources\Customer\Customer', 'authorization_required' => true @@ -202,20 +202,20 @@ Route::group(['prefix' => 'api'], function ($router) { //Invoice routes - Route::get('invoices', 'ResourceController@index')->defaults('_config', [ + Route::get('invoices', 'InvoiceController@index')->defaults('_config', [ 'repository' => 'Webkul\Sales\Repositories\InvoiceRepository', 'resource' => 'Webkul\API\Http\Resources\Sales\Invoice', 'authorization_required' => true ]); - Route::get('invoices/{id}', 'ResourceController@get')->defaults('_config', [ + Route::get('invoices/{id}', 'InvoiceController@get')->defaults('_config', [ 'repository' => 'Webkul\Sales\Repositories\InvoiceRepository', 'resource' => 'Webkul\API\Http\Resources\Sales\Invoice', 'authorization_required' => true ]); - //Invoice routes + //Shipment routes Route::get('shipments', 'ResourceController@index')->defaults('_config', [ 'repository' => 'Webkul\Sales\Repositories\ShipmentRepository', 'resource' => 'Webkul\API\Http\Resources\Sales\Shipment', @@ -228,6 +228,18 @@ Route::group(['prefix' => 'api'], function ($router) { 'authorization_required' => true ]); + //Transaction routes + Route::get('transactions', 'TransactionController@index')->defaults('_config', [ + 'repository' => 'Webkul\Sales\Repositories\OrderTransactionRepository', + 'resource' => 'Webkul\API\Http\Resources\Sales\OrderTransaction', + 'authorization_required' => true + ]); + + Route::get('transactions/{id}', 'TransactionController@get')->defaults('_config', [ + 'repository' => 'Webkul\Sales\Repositories\OrderTransactionRepository', + 'resource' => 'Webkul\API\Http\Resources\Sales\OrderTransaction', + 'authorization_required' => true + ]); //Wishlist routes Route::get('wishlist', 'ResourceController@index')->defaults('_config', [ @@ -246,7 +258,6 @@ Route::group(['prefix' => 'api'], function ($router) { Route::get('wishlist/add/{id}', 'WishlistController@create'); - //Checkout routes Route::group(['prefix' => 'checkout'], function ($router) { Route::post('cart/add/{id}', 'CartController@store'); @@ -259,6 +270,10 @@ Route::group(['prefix' => 'api'], function ($router) { Route::get('cart/remove-item/{id}', 'CartController@destroyItem'); + Route::post('cart/coupon', 'CartController@applyCoupon'); + + Route::delete('cart/coupon', 'CartController@removeCoupon'); + Route::get('cart/move-to-wishlist/{id}', 'CartController@moveToWishlist'); Route::post('save-address', 'CheckoutController@saveAddress'); @@ -267,6 +282,8 @@ Route::group(['prefix' => 'api'], function ($router) { Route::post('save-payment', 'CheckoutController@savePayment'); + Route::post('check-minimum-order', 'CheckoutController@checkMinimumOrder'); + Route::post('save-order', 'CheckoutController@saveOrder'); }); }); diff --git a/packages/Webkul/API/Providers/ModuleServiceProvider.php b/packages/Webkul/API/Providers/ModuleServiceProvider.php new file mode 100644 index 000000000..d3e3324c5 --- /dev/null +++ b/packages/Webkul/API/Providers/ModuleServiceProvider.php @@ -0,0 +1,11 @@ +.tree-item{padding-right:0}.rtl .radio .radio-view{margin-left:5px}.rtl .image-wrapper .image-item{margin-right:0;margin-left:20px}.rtl .image-wrapper .image-item .remove-image{margin-right:0}.rtl .control-group label.required:before{content:"*";color:#fc6868;font-weight:700}.rtl .control-group label.required:after{content:none}.rtl .control-group label .locale{float:left}.rtl .pagination .page-item .icon{transform:rotate(180deg)}.accordian-header{background-color:#fbfbfb}.btn.btn-primary{background:#0041ff}.fixed-action{top:108px}.fixed-action,.fixed-action-slight{position:fixed;right:32px;z-index:20}.fixed-action-slight{top:94px}.pagination{margin-top:30px} \ No newline at end of file +@import url(https://fonts.googleapis.com/css?family=Montserrat:400,500);body{margin:0;color:#3a3a3a;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;position:static;height:100%;width:100%;background-color:#fff}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px hsla(0,0%,100%,.3);border-radius:10px}::-webkit-scrollbar-thumb{border-radius:10px;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.5)}.navbar-top{height:60px;background-color:#fff;font-size:0;box-shadow:0 3px 6px 0 rgba(0,0,0,.05);border-bottom:1px solid hsla(0,0%,63.5%,.2);position:fixed;left:0;right:0;z-index:5}.navbar-top .navbar-top-left{width:50%;height:60px;display:inline-block;vertical-align:middle;background-color:#fff}.navbar-top .navbar-top-left .brand-logo{padding:10px}.navbar-top .navbar-top-right{width:50%;height:60px;text-align:right;display:inline-block;vertical-align:middle}.navbar-top .navbar-top-right .profile-info{display:inline-block;vertical-align:middle;text-align:left;min-width:50px;padding:12px 0;margin:0 25px 0 30px;font-size:15px;cursor:pointer;position:relative}.navbar-top .navbar-top-right .profile-info .app-version{padding:10px 20px 0;margin-bottom:-10px;display:block;cursor:default;color:#a2a2a2}.navbar-top .navbar-top-right .profile-info .dropdown-list{top:63px;right:0;bottom:inherit!important}.navbar-top .navbar-top-right .profile-info .name{color:#000311;display:block;text-align:left}.navbar-top .navbar-top-right .profile-info .role{font-size:14px;color:#8e8e8e;display:block;text-align:left}.navbar-top .navbar-top-right .profile-info i.icon{margin-left:10px}.navbar-left{position:fixed;left:0;top:60px;width:90px;padding-top:20px;border-right:1px solid hsla(0,0%,63.5%,.2);height:auto;bottom:0;z-index:1;background-color:#fff}.navbar-left ul.menubar li.menu-item{padding:10px 5px;font-size:11px;text-align:center;text-transform:uppercase}.navbar-left ul.menubar li.menu-item a{color:#a2a2a2}.navbar-left ul.menubar li.menu-item.active a{color:#0041ff}.navbar-left ul.menubar li.menu-item span{display:block;margin:auto}.content-container{padding-left:90px;position:absolute;margin-top:60px;top:0;right:0;left:0;bottom:0;height:calc(100% - 60px);width:100%}.content-container .inner-section{height:100%}.content-container .aside-nav{width:280px;position:fixed;top:60px;bottom:0;border-right:1px solid hsla(0,0%,63.5%,.2);background-color:#f8f9fa;padding-top:10px;padding-bottom:10px;z-index:4}.content-container .aside-nav ul{overflow-y:auto;height:90%}.content-container .aside-nav a{padding:15px;display:block;color:#000311}.content-container .aside-nav .active a{background:#fff;border-top:1px solid hsla(0,0%,63.5%,.2);border-bottom:1px solid hsla(0,0%,63.5%,.2)}.content-container .aside-nav .active i{float:right}.content-container .content-wrapper{padding:25px 25px 25px 15px;margin-left:280px;margin-top:1px;background-color:#fff}.content-container .content{margin-top:25px}.content-container .content.full-page{padding:25px}.content-container .content .page-header{display:inline-block;width:100%;padding:15px 10px 15px 0;position:-webkit-sticky;position:sticky;top:50px;z-index:3;background-color:#fff}.content-container .content .page-header .page-title{float:left}.content-container .content .page-header .page-title .back-link{float:left;margin-right:10px;width:24px;height:24px;cursor:pointer;margin-top:5px}.content-container .content .page-header .page-title h1{margin-bottom:0;vertical-align:middle;display:inline-block;line-height:normal}.content-container .content .page-header .page-action{float:right}.content-container .content .page-header .page-action *{display:inline-block}.content-container .content .page-header .page-action a{margin-left:25px}.content-container .content .page-header .control-group{width:180px;display:inline-block;margin-bottom:0;margin-left:20px}.content-container .content .page-header .control{width:100%;margin:0}.content-container .content .page-content{width:100%;display:inline-block}.control-container{display:flex;flex-direction:row;align-items:flex-start;width:750px}.control-container .control{background:#fff;border:2px solid #c7c7c7;border-radius:3px;width:150px;height:36px;display:inline-block;vertical-align:middle;transition:.2s cubic-bezier(.4,0,.2,1);padding:0 10px;font-size:15px}.control-container .control:focus{border-color:#0041ff}.control-container .icon:hover{cursor:pointer}.control-container .control-group::last-child{margin-right:0}.boolean-control-container{display:flex;flex-direction:row;justify-content:flex-start;width:750px}.boolean-control-container .control-group{width:200px}.control-group label{width:70%}.control-group label .locale{float:right;color:#8e8e8e}.control-group .mce-tinymce{margin-top:10px;margin-bottom:5px}.ticket-list .control-group.date:after{left:unset;right:10px;top:34px}.ticket-list .control-group.has-error.date:after{top:47px}.variant-image .image-item{height:100px!important;width:100px!important;background-size:100px 100px!important}.variant-image .trash-icon{position:absolute;cursor:pointer;margin-top:25%}.btn.add-image{display:inline-block;width:auto}.rtl .ticket-list .control-group.has-error.date:after{top:47px;right:100%!important}.dashboard .page-header{margin-bottom:0!important;padding-bottom:15px;border-bottom:1px solid hsla(0,0%,63.5%,.2)}.dashboard .page-header .control-group span{width:100%}.dashboard .page-header .control-group.date:after{margin-top:-13px;left:100%}.dashboard .page-content{margin-top:15px}.dashboard .card{height:445px;background-color:#fff;border:1px solid hsla(0,0%,63.5%,.2);box-shadow:0 5px 10px 2px hsla(0,0%,63.5%,.2);border-radius:.25rem;padding:20px 0 0 20px;overflow:auto}.dashboard .card .card-title{font-size:14px;color:#a2a2a2;letter-spacing:-.26px;text-transform:uppercase}.dashboard .card .card-info{width:100%;display:inline-block}.dashboard .card .card-info.center{text-align:center}.dashboard .card .card-info ul li{border-bottom:1px solid hsla(0,0%,63.5%,.2);width:100%;display:inline-block;padding:10px 0;position:relative}.dashboard .card .card-info ul li .image{height:60px;width:60px;float:left;margin-right:15px}.dashboard .card .card-info ul li .image.product{background:#f2f2f2}.dashboard .card .card-info ul li .image img{width:100%}.dashboard .card .card-info ul li .description{margin-top:10px}.dashboard .card .card-info ul li .description .name{color:#0041ff}.dashboard .card .card-info ul li .description .info{color:#3a3a3a;margin-top:5px}.dashboard .card .card-info ul li .icon.angle-right-icon{position:absolute;right:30px;top:50%;margin-top:-8px}.dashboard .card .card-info ul li:last-child{border-bottom:0}.dashboard .card .card-info .no-result-found{margin-top:146px}.dashboard .card .card-info .no-result-found p{margin:0;color:#a2a2a2}.dashboard .dashboard-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-auto-rows:auto;grid-column-gap:30px;grid-row-gap:15px}.dashboard .dashboard-stats .dashboard-card{height:100px;background:#fff;border:1px solid hsla(0,0%,63.5%,.2);box-shadow:0 5px 10px 2px hsla(0,0%,63.5%,.2);border-radius:5px;position:relative;padding:15px}.dashboard .dashboard-stats .dashboard-card .title{font-size:14px;color:#a2a2a2;text-transform:uppercase}.dashboard .dashboard-stats .dashboard-card .data{padding-top:13px;font-size:32px;color:#0041ff}.dashboard .dashboard-stats .dashboard-card .data .progress{font-size:14px;color:#8e8e8e;float:right;margin-top:-2px}.dashboard .dashboard-stats .dashboard-card .data .progress .icon{vertical-align:middle}.dashboard .graph-stats{margin-top:30px;width:100%;display:inline-block}.dashboard .graph-stats .left-card-container{float:left;width:75%;padding-right:9px}.dashboard .graph-stats .right-card-container{float:left;width:25%;padding-left:21px}.dashboard .sale-stock{width:100%;display:inline-block;display:grid;grid-template-columns:repeat(auto-fill,minmax(435px,1fr));grid-auto-rows:auto;grid-column-gap:30px;grid-row-gap:15px;margin-top:30px}.rtl .dashboard .page-header .control-group.date:after{margin-top:-13px!important;right:100%}.configuration-image{position:relative;height:33px;width:33px;top:15px;border-radius:3px;margin-right:5px}.download{position:relative;height:24px!important;width:24px!important;top:12px;margin-right:10px}.aside-nav-toggle{height:48px;width:100%;padding-top:15px;border-top:1px solid hsla(0,0%,63.5%,.2)}.aside-nav-toggle .close-icon,.aside-nav-toggle .open-icon{position:absolute;cursor:pointer;left:45%}.aside-nav-toggle.open{display:none}.linked-product-search-result{box-shadow:0 2px 4px 0 rgba(0,0,0,.16),0 0 9px 0 rgba(0,0,0,.16);z-index:10;text-align:left;border-radius:3px;background-color:#fff;width:70%;max-height:200px;overflow-y:auto}.linked-product-search-result li{padding:10px;border-bottom:1px solid #e8e8e8;cursor:pointer}.cart-rule-conditions table td.attribute,.catalog-rule-conditions table td.attribute{width:250px;padding-left:0}.cart-rule-conditions table td.operator,.cart-rule-conditions table td.value,.catalog-rule-conditions table td.operator,.catalog-rule-conditions table td.value{width:260px}.cart-rule-conditions table td.actions,.catalog-rule-conditions table td.actions{width:44px}.cart-rule-conditions table td.actions .icon,.catalog-rule-conditions table td.actions .icon{margin-top:6px}.sale-container .sale-section{font-size:16px}.sale-container .sale-section .secton-title{font-size:18px;color:#8e8e8e;padding:15px 0;border-bottom:1px solid hsla(0,0%,63.5%,.2)}.sale-container .sale-section .section-content{display:block;padding:20px 0}.sale-container .sale-section .section-content .row{display:block;padding:7px 0}.sale-container .sale-section .section-content .row .title{width:200px;color:#3a3a3a;letter-spacing:-.26px;display:inline-block}.sale-container .sale-section .section-content .row .value{color:#3a3a3a;letter-spacing:-.26px;display:inline-block}.sale-container .table .qty-row{display:block;margin-bottom:5px}.sale-container .table .qty-row:last-child{margin-bottom:0}.sale-container .table .radio{margin:0}.sale-container .summary-comment-container .comment-container{margin-top:20px;float:left}.sale-container .summary-comment-container .comment-container .comment-list{margin-top:40px}.sale-container .summary-comment-container .comment-container .comment-list li{margin-bottom:20px}.sale-container .summary-comment-container .comment-container .comment-list li:last-child{margin-bottom:0}.sale-container .summary-comment-container .comment-container .comment-list li p{margin:5px 0 0;color:#8e8e8e}.sale-container .sale-summary{margin-top:20px;height:130px;float:right}.sale-container .sale-summary tr td{padding:5px 8px;vertical-align:text-bottom}.sale-container .sale-summary tr.bold{font-weight:600;font-size:15px}.sale-container .sale-summary tr.border td{border-bottom:1px solid hsla(0,0%,63.5%,.2)}.stars{margin-top:5px}.stars .icon{width:16px;height:16px}.export-import{cursor:pointer}.export-import .export-icon,.export-import .import-icon{position:relative;top:10px}.export-import span{margin-left:2px}.rtl{direction:rtl}.rtl .form-container{text-align:right!important}.rtl .navbar-top .navbar-top-right{text-align:left}.rtl .navbar-top .navbar-top-right .profile-info{margin:0 30px 0 25px}.rtl .navbar-top .navbar-top-right .profile-info i.icon{margin-left:0;margin-right:10px}.rtl .navbar-left{border-left:1px solid hsla(0,0%,63.5%,.2);border-right:none;left:calc(100% - 90px);background-color:#fff}.rtl .content-container{padding-right:90px;padding-left:0}.rtl .content-container .content .page-header .page-title{float:right}.rtl .content-container .content .page-header .page-action{float:left}.rtl .content-container .content .page-header .page-action a{margin-left:0}.rtl .content-container .content .page-header .control-group{margin-right:20px;margin-left:0}.rtl .content-container .content-wrapper{padding:25px 305px 25px 25px;margin-left:0}.rtl .content-container .aside-nav .active i{float:left;transform:rotate(180deg)}.rtl .dashboard .dashboard-stats .dashboard-card .data span{float:left}.rtl .dashboard .card{padding:20px 20px 0 0}.rtl .dashboard .card .card-info ul li .image{float:right;margin-right:0;margin-left:15px}.rtl .dashboard .card .card-info ul li .icon.angle-right-icon{left:30px;right:auto;transform:rotate(180deg)}.rtl .dashboard .graph-stats .left-card-container{float:right;padding-right:0}.rtl .dashboard .graph-stats .right-card-container{float:right;padding-left:0;padding-right:30px}.rtl .sale-container .sale-summary{float:left}.rtl .grid-container .table tbody td.action a:first-child{margin-left:10px;margin-right:0}.rtl .table table{text-align:right}.rtl .table table .massaction-remove{margin-right:5px!important;margin-left:10px}.rtl .table table .btn.btn-primary{margin-right:10px!important}.rtl .dropdown-list.bottom-right{left:0;right:auto!important}.rtl .dropdown-list .dropdown-container{text-align:right}.rtl .accordian .accordian-header .icon{float:left}.rtl .tree-container .tree-item{padding-right:30px}.rtl .tree-container .tree-item .expand-icon,.rtl .tree-container .tree-item .folder-icon{margin-left:10px;margin-right:0}.rtl .tree-container>.tree-item{padding-right:0}.rtl .radio .radio-view{margin-left:5px}.rtl .image-wrapper .image-item{margin-right:0;margin-left:20px}.rtl .image-wrapper .image-item .remove-image{margin-right:0}.rtl .control-group label.required:before{content:"*";color:#fc6868;font-weight:700}.rtl .control-group label.required:after{content:none}.rtl .control-group label .locale{float:left}.rtl .multiselect{text-align:unset}.rtl .pagination .page-item .icon{transform:rotate(180deg)}.accordian-header{background-color:#fbfbfb}.btn.btn-primary{background:#0041ff}.fixed-action{top:108px}.fixed-action,.fixed-action-slight{position:fixed;right:32px;z-index:20}.fixed-action-slight{top:94px}.pagination{margin-top:30px}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.do-not-cross-arrow{width:85%}.linked-product-filter-tag{text-transform:capitalize;margin-top:10px;margin-right:0;justify-content:flex-start;height:100%}.linked-product-wrapper{margin-left:0!important;margin-right:10px!important;height:100%!important}.do-not-cross-linked-product-arrow{width:95%} \ No newline at end of file diff --git a/packages/Webkul/Admin/publishable/assets/js/admin.js b/packages/Webkul/Admin/publishable/assets/js/admin.js index 452a3e6db..2da9b6ffc 100755 --- a/packages/Webkul/Admin/publishable/assets/js/admin.js +++ b/packages/Webkul/Admin/publishable/assets/js/admin.js @@ -1,2 +1,2 @@ /*! For license information please see admin.js.LICENSE.txt */ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=0)}({0:function(e,t,n){n("uPOf"),e.exports=n("w/dW")},"2SVd":function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},"5oMp":function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},"8oxB":function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var s,c=[],l=!1,f=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):f=-1,c.length&&p())}function p(){if(!l){var e=u(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++f1)for(var n=1;n0&&t-1 in e)}T.fn=T.prototype={jquery:"3.4.1",constructor:T,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=T.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return T.each(this,e)},map:function(e){return this.pushStack(T.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n+~]|"+F+")"+F+"*"),W=new RegExp(F+"|>"),V=new RegExp(R),Z=new RegExp("^"+P+"$"),Y={ID:new RegExp("^#("+P+")"),CLASS:new RegExp("^\\.("+P+")"),TAG:new RegExp("^("+P+"|[*])"),ATTR:new RegExp("^"+q),PSEUDO:new RegExp("^"+R),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+F+"*(even|odd|(([+-]|)(\\d*)n|)"+F+"*(?:([+-]|)"+F+"*(\\d+)|))"+F+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+F+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+F+"*((?:-\\d)?\\d*)"+F+"*\\)|)(?=[^-]|$)","i")},X=/HTML$/i,G=/^(?:input|select|textarea|button)$/i,K=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+F+"?|("+F+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){d()},ae=_e((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{j.apply(O=I.call(w.childNodes),w.childNodes),O[w.childNodes.length].nodeType}catch(e){j={apply:O.length?function(e,t){N.apply(e,I.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function ue(e,t,r,i){var o,u,c,l,f,h,g,y=t&&t.ownerDocument,x=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==x&&9!==x&&11!==x)return r;if(!i&&((t?t.ownerDocument||t:w)!==p&&d(t),t=t||p,v)){if(11!==x&&(f=J.exec(e)))if(o=f[1]){if(9===x){if(!(c=t.getElementById(o)))return r;if(c.id===o)return r.push(c),r}else if(y&&(c=y.getElementById(o))&&b(t,c)&&c.id===o)return r.push(c),r}else{if(f[2])return j.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return j.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!m||!m.test(e))&&(1!==x||"object"!==t.nodeName.toLowerCase())){if(g=e,y=t,1===x&&W.test(e)){for((l=t.getAttribute("id"))?l=l.replace(re,ie):t.setAttribute("id",l=_),u=(h=a(e)).length;u--;)h[u]="#"+l+" "+be(h[u]);g=h.join(","),y=ee.test(e)&&ge(t.parentNode)||t}try{return j.apply(r,y.querySelectorAll(g)),r}catch(t){k(e,!0)}finally{l===_&&t.removeAttribute("id")}}}return s(e.replace(U,"$1"),t,r,i)}function se(){var e=[];return function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}}function ce(e){return e[_]=!0,e}function le(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=t}function de(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function pe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ve(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function me(e){return ce((function(t){return t=+t,ce((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=ue.support={},o=ue.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!X.test(t||n&&n.nodeName||"HTML")},d=ue.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==p&&9===a.nodeType&&a.documentElement?(h=(p=a).documentElement,v=!o(p),w!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",oe,!1):i.attachEvent&&i.attachEvent("onunload",oe)),n.attributes=le((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=le((function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=Q.test(p.getElementsByClassName),n.getById=le((function(e){return h.appendChild(e).id=_,!p.getElementsByName||!p.getElementsByName(_).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&v){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&v){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&v)return t.getElementsByClassName(e)},g=[],m=[],(n.qsa=Q.test(p.querySelectorAll))&&(le((function(e){h.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+F+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||m.push("\\["+F+"*(?:value|"+L+")"),e.querySelectorAll("[id~="+_+"-]").length||m.push("~="),e.querySelectorAll(":checked").length||m.push(":checked"),e.querySelectorAll("a#"+_+"+*").length||m.push(".#.+[+~]")})),le((function(e){e.innerHTML="";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&m.push("name"+F+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&m.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&m.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),m.push(",.*:")}))),(n.matchesSelector=Q.test(y=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&le((function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),g.push("!=",R)})),m=m.length&&new RegExp(m.join("|")),g=g.length&&new RegExp(g.join("|")),t=Q.test(h.compareDocumentPosition),b=t||Q.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},S=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&b(w,e)?-1:t===p||t.ownerDocument===w&&b(w,t)?1:l?M(l,e)-M(l,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t];if(!i||!o)return e===p?-1:t===p?1:i?-1:o?1:l?M(l,e)-M(l,t):0;if(i===o)return de(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;a[r]===u[r];)r++;return r?de(a[r],u[r]):a[r]===w?-1:u[r]===w?1:0},p):p},ue.matches=function(e,t){return ue(e,null,null,t)},ue.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&d(e),n.matchesSelector&&v&&!k[t+" "]&&(!g||!g.test(t))&&(!m||!m.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){k(t,!0)}return ue(t,p,null,[e]).length>0},ue.contains=function(e,t){return(e.ownerDocument||e)!==p&&d(e),b(e,t)},ue.attr=function(e,t){(e.ownerDocument||e)!==p&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&E.call(r.attrHandle,t.toLowerCase())?i(e,t,!v):void 0;return void 0!==o?o:n.attributes||!v?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ue.escape=function(e){return(e+"").replace(re,ie)},ue.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ue.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,l=!n.sortStable&&e.slice(0),e.sort(S),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return l=null,e},i=ue.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=ue.selectors={cacheLength:50,createPseudo:ce,match:Y,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||ue.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&ue.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return Y.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&V.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=C[e+" "];return t||(t=new RegExp("(^|"+F+")"+e+"("+F+"|$)"))&&C(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=ue.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(B," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),u="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,s){var c,l,f,d,p,h,v=o!==a?"nextSibling":"previousSibling",m=t.parentNode,g=u&&t.nodeName.toLowerCase(),y=!s&&!u,b=!1;if(m){if(o){for(;v;){for(d=t;d=d[v];)if(u?d.nodeName.toLowerCase()===g:1===d.nodeType)return!1;h=v="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&y){for(b=(p=(c=(l=(f=(d=m)[_]||(d[_]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===x&&c[1])&&c[2],d=p&&m.childNodes[p];d=++p&&d&&d[v]||(b=p=0)||h.pop();)if(1===d.nodeType&&++b&&d===t){l[e]=[x,p,b];break}}else if(y&&(b=p=(c=(l=(f=(d=t)[_]||(d[_]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===x&&c[1]),!1===b)for(;(d=++p&&d&&d[v]||(b=p=0)||h.pop())&&((u?d.nodeName.toLowerCase()!==g:1!==d.nodeType)||!++b||(y&&((l=(f=d[_]||(d[_]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]=[x,b]),d!==t)););return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ue.error("unsupported pseudo: "+e);return i[_]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ce((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=M(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:ce((function(e){var t=[],n=[],r=u(e.replace(U,"$1"));return r[_]?ce((function(e,t,n,i){for(var o,a=r(e,null,i,[]),u=e.length;u--;)(o=a[u])&&(e[u]=!(t[u]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:ce((function(e){return function(t){return ue(e,t).length>0}})),contains:ce((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:ce((function(e){return Z.test(e||"")||ue.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=v?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ve(!1),disabled:ve(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return K.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:me((function(){return[0]})),last:me((function(e,t){return[t-1]})),eq:me((function(e,t,n){return[n<0?n+t:n]})),even:me((function(e,t){for(var n=0;nt?t:n;--r>=0;)e.push(r);return e})),gt:me((function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n,r,i){for(var o,a=[],u=0,s=e.length,c=null!=t;u-1&&(o[c]=!(a[c]=f))}}else g=xe(g===a?g.splice(h,g.length):g),i?i(null,a,g,s):j.apply(a,g)}))}function Ce(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],u=a||r.relative[" "],s=a?1:0,l=_e((function(e){return e===t}),u,!0),f=_e((function(e){return M(t,e)>-1}),u,!0),d=[function(e,n,r){var i=!a&&(r||n!==c)||((t=n).nodeType?l(e,n,r):f(e,n,r));return t=null,i}];s1&&we(d),s>1&&be(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(U,"$1"),n,s0,i=e.length>0,o=function(o,a,u,s,l){var f,h,m,g=0,y="0",b=o&&[],_=[],w=c,T=o||i&&r.find.TAG("*",l),C=x+=null==w?1:Math.random()||.1,A=T.length;for(l&&(c=a===p||a||l);y!==A&&null!=(f=T[y]);y++){if(i&&f){for(h=0,a||f.ownerDocument===p||(d(f),u=!v);m=e[h++];)if(m(f,a||p,u)){s.push(f);break}l&&(x=C)}n&&((f=!m&&f)&&g--,o&&b.push(f))}if(g+=y,n&&y!==g){for(h=0;m=t[h++];)m(b,_,a,u);if(o){if(g>0)for(;y--;)b[y]||_[y]||(_[y]=D.call(s));_=xe(_)}j.apply(s,_),l&&!o&&_.length>0&&g+t.length>1&&ue.uniqueSort(s)}return l&&(x=C,c=w),b};return n?ce(o):o}(o,i))).selector=e}return u},s=ue.select=function(e,t,n,i){var o,s,c,l,f,d="function"==typeof e&&e,p=!i&&a(e=d.selector||e);if(n=n||[],1===p.length){if((s=p[0]=p[0].slice(0)).length>2&&"ID"===(c=s[0]).type&&9===t.nodeType&&v&&r.relative[s[1].type]){if(!(t=(r.find.ID(c.matches[0].replace(te,ne),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(s.shift().value.length)}for(o=Y.needsContext.test(e)?0:s.length;o--&&(c=s[o],!r.relative[l=c.type]);)if((f=r.find[l])&&(i=f(c.matches[0].replace(te,ne),ee.test(s[0].type)&&ge(t.parentNode)||t))){if(s.splice(o,1),!(e=i.length&&be(s)))return j.apply(n,i),n;break}}return(d||u(e,p))(i,t,!v,n,!t||ee.test(e)&&ge(t.parentNode)||t),n},n.sortStable=_.split("").sort(S).join("")===_,n.detectDuplicates=!!f,d(),n.sortDetached=le((function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))})),le((function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")}))||fe("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&le((function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||fe("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),le((function(e){return null==e.getAttribute("disabled")}))||fe(L,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),ue}(n);T.find=$,T.expr=$.selectors,T.expr[":"]=T.expr.pseudos,T.uniqueSort=T.unique=$.uniqueSort,T.text=$.getText,T.isXMLDoc=$.isXML,T.contains=$.contains,T.escapeSelector=$.escape;var k=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&T(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},E=T.expr.match.needsContext;function O(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function N(e,t,n){return y(t)?T.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?T.grep(e,(function(e){return e===t!==n})):"string"!=typeof t?T.grep(e,(function(e){return f.call(t,e)>-1!==n})):T.filter(t,e,n)}T.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?T.find.matchesSelector(r,e)?[r]:[]:T.find.matches(e,T.grep(t,(function(e){return 1===e.nodeType})))},T.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(T(e).filter((function(){for(t=0;t1?T.uniqueSort(n):n},filter:function(e){return this.pushStack(N(this,e||[],!1))},not:function(e){return this.pushStack(N(this,e||[],!0))},is:function(e){return!!N(this,"string"==typeof e&&E.test(e)?T(e):e||[],!1).length}});var j,I=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(T.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:I.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof T?t[0]:t,T.merge(this,T.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:a,!0)),D.test(r[1])&&T.isPlainObject(t))for(r in t)y(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=a.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):y(e)?void 0!==n.ready?n.ready(e):e(T):T.makeArray(e,this)}).prototype=T.fn,j=T(a);var M=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function F(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}T.fn.extend({has:function(e){var t=T(e,this),n=t.length;return this.filter((function(){for(var e=0;e-1:1===n.nodeType&&T.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?T.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?f.call(T(e),this[0]):f.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(T.uniqueSort(T.merge(this.get(),T(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),T.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return k(e,"parentNode")},parentsUntil:function(e,t,n){return k(e,"parentNode",n)},next:function(e){return F(e,"nextSibling")},prev:function(e){return F(e,"previousSibling")},nextAll:function(e){return k(e,"nextSibling")},prevAll:function(e){return k(e,"previousSibling")},nextUntil:function(e,t,n){return k(e,"nextSibling",n)},prevUntil:function(e,t,n){return k(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return void 0!==e.contentDocument?e.contentDocument:(O(e,"template")&&(e=e.content||e),T.merge([],e.childNodes))}},(function(e,t){T.fn[e]=function(n,r){var i=T.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=T.filter(r,i)),this.length>1&&(L[e]||T.uniqueSort(i),M.test(e)&&i.reverse()),this.pushStack(i)}}));var P=/[^\x20\t\r\n\f]+/g;function q(e){return e}function R(e){throw e}function B(e,t,n,r){var i;try{e&&y(i=e.promise)?i.call(e).done(t).fail(n):e&&y(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}T.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return T.each(e.match(P)||[],(function(e,n){t[n]=!0})),t}(e):T.extend({},e);var t,n,r,i,o=[],a=[],u=-1,s=function(){for(i=i||e.once,r=t=!0;a.length;u=-1)for(n=a.shift();++u-1;)o.splice(n,1),n<=u&&u--})),this},has:function(e){return e?T.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||s()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},T.extend({Deferred:function(e){var t=[["notify","progress",T.Callbacks("memory"),T.Callbacks("memory"),2],["resolve","done",T.Callbacks("once memory"),T.Callbacks("once memory"),0,"resolved"],["reject","fail",T.Callbacks("once memory"),T.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return T.Deferred((function(n){T.each(t,(function(t,r){var i=y(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&y(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(e,r,i){var o=0;function a(e,t,r,i){return function(){var u=this,s=arguments,c=function(){var n,c;if(!(e=o&&(r!==R&&(u=void 0,s=[n]),t.rejectWith(u,s))}};e?l():(T.Deferred.getStackHook&&(l.stackTrace=T.Deferred.getStackHook()),n.setTimeout(l))}}return T.Deferred((function(n){t[0][3].add(a(0,n,y(i)?i:q,n.notifyWith)),t[1][3].add(a(0,n,y(e)?e:q)),t[2][3].add(a(0,n,y(r)?r:R))})).promise()},promise:function(e){return null!=e?T.extend(e,i):i}},o={};return T.each(t,(function(e,n){var a=n[2],u=n[5];i[n[1]]=a.add,u&&a.add((function(){r=u}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),a.add(n[3].fire),o[n[0]]=function(){return o[n[0]+"With"](this===o?void 0:this,arguments),this},o[n[0]+"With"]=a.fireWith})),i.promise(o),e&&e.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=s.call(arguments),o=T.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?s.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(B(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||y(i[n]&&i[n].then)))return o.then();for(;n--;)B(i[n],a(n),o.reject);return o.promise()}});var U=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;T.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&U.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},T.readyException=function(e){n.setTimeout((function(){throw e}))};var H=T.Deferred();function z(){a.removeEventListener("DOMContentLoaded",z),n.removeEventListener("load",z),T.ready()}T.fn.ready=function(e){return H.then(e).catch((function(e){T.readyException(e)})),this},T.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--T.readyWait:T.isReady)||(T.isReady=!0,!0!==e&&--T.readyWait>0||H.resolveWith(a,[T]))}}),T.ready.then=H.then,"complete"===a.readyState||"loading"!==a.readyState&&!a.documentElement.doScroll?n.setTimeout(T.ready):(a.addEventListener("DOMContentLoaded",z),n.addEventListener("load",z));var W=function(e,t,n,r,i,o,a){var u=0,s=e.length,c=null==n;if("object"===x(n))for(u in i=!0,n)W(e,t,u,n[u],!0,o,a);else if(void 0!==r&&(i=!0,y(r)||(a=!0),c&&(a?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(T(e),n)})),t))for(;u1,null,!0)},removeData:function(e){return this.each((function(){J.remove(this,e)}))}}),T.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Q.get(e,t),n&&(!r||Array.isArray(n)?r=Q.access(e,t,T.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=T.queue(e,t),r=n.length,i=n.shift(),o=T._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,(function(){T.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Q.get(e,n)||Q.access(e,n,{empty:T.Callbacks("once memory").add((function(){Q.remove(e,[t+"queue",n])}))})}}),T.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]*)/i,ge=/^$|^module$|\/(?:java|ecma)script/i,ye={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function be(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&O(e,t)?T.merge([e],n):n}function _e(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(c=ue(o),a=be(f.appendChild(o),"script"),c&&_e(a),n)for(l=0;o=a[l++];)ge.test(o.type||"")&&n.push(o);return f}we=a.createDocumentFragment().appendChild(a.createElement("div")),(xe=a.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),we.appendChild(xe),g.checkClone=we.cloneNode(!0).cloneNode(!0).lastChild.checked,we.innerHTML="",g.noCloneChecked=!!we.cloneNode(!0).lastChild.defaultValue;var Ae=/^key/,$e=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ke=/^([^.]*)(?:\.(.+)|)/;function Se(){return!0}function Ee(){return!1}function Oe(e,t){return e===function(){try{return a.activeElement}catch(e){}}()==("focus"===t)}function De(e,t,n,r,i,o){var a,u;if("object"==typeof t){for(u in"string"!=typeof n&&(r=r||n,n=void 0),t)De(e,u,n,r,t[u],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return T().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=T.guid++)),e.each((function(){T.event.add(this,t,i,r,n)}))}function Ne(e,t,n){n?(Q.set(e,t,!1),T.event.add(e,t,{namespace:!1,handler:function(e){var r,i,o=Q.get(this,t);if(1&e.isTrigger&&this[t]){if(o.length)(T.event.special[t]||{}).delegateType&&e.stopPropagation();else if(o=s.call(arguments),Q.set(this,t,o),r=n(this,t),this[t](),o!==(i=Q.get(this,t))||r?Q.set(this,t,!1):i={},o!==i)return e.stopImmediatePropagation(),e.preventDefault(),i.value}else o.length&&(Q.set(this,t,{value:T.event.trigger(T.extend(o[0],T.Event.prototype),o.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,t)&&T.event.add(e,t,Se)}T.event={global:{},add:function(e,t,n,r,i){var o,a,u,s,c,l,f,d,p,h,v,m=Q.get(e);if(m)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&T.find.matchesSelector(ae,i),n.guid||(n.guid=T.guid++),(s=m.events)||(s=m.events={}),(a=m.handle)||(a=m.handle=function(t){return void 0!==T&&T.event.triggered!==t.type?T.event.dispatch.apply(e,arguments):void 0}),c=(t=(t||"").match(P)||[""]).length;c--;)p=v=(u=ke.exec(t[c])||[])[1],h=(u[2]||"").split(".").sort(),p&&(f=T.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=T.event.special[p]||{},l=T.extend({type:p,origType:v,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&T.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=s[p])||((d=s[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,l):d.push(l),T.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,a,u,s,c,l,f,d,p,h,v,m=Q.hasData(e)&&Q.get(e);if(m&&(s=m.events)){for(c=(t=(t||"").match(P)||[""]).length;c--;)if(p=v=(u=ke.exec(t[c])||[])[1],h=(u[2]||"").split(".").sort(),p){for(f=T.event.special[p]||{},d=s[p=(r?f.delegateType:f.bindType)||p]||[],u=u[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)l=d[o],!i&&v!==l.origType||n&&n.guid!==l.guid||u&&!u.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(d.splice(o,1),l.selector&&d.delegateCount--,f.remove&&f.remove.call(e,l));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,m.handle)||T.removeEvent(e,p,m.handle),delete s[p])}else for(p in s)T.event.remove(e,p+t[c],n,r,!0);T.isEmptyObject(s)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,u=T.event.fix(e),s=new Array(arguments.length),c=(Q.get(this,"events")||{})[u.type]||[],l=T.event.special[u.type]||{};for(s[0]=u,t=1;t=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(o=[],a={},n=0;n-1:T.find(i,this,null,[c]).length),a[i]&&o.push(r);o.length&&u.push({elem:c,handlers:o})}return c=this,s\x20\t\r\n\f]*)[^>]*)\/>/gi,Ie=/\s*$/g;function Fe(e,t){return O(e,"table")&&O(11!==t.nodeType?t:t.firstChild,"tr")&&T(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Re(e,t){var n,r,i,o,a,u,s,c;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),c=o.events))for(i in delete a.handle,a.events={},c)for(n=0,r=c[i].length;n1&&"string"==typeof h&&!g.checkClone&&Me.test(h))return e.each((function(i){var o=e.eq(i);v&&(t[0]=h.call(this,i,o.html())),Ue(o,t,n,r)}));if(d&&(o=(i=Ce(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(u=(a=T.map(be(i,"script"),Pe)).length;f")},clone:function(e,t,n){var r,i,o,a,u=e.cloneNode(!0),s=ue(e);if(!(g.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||T.isXMLDoc(e)))for(a=be(u),r=0,i=(o=be(e)).length;r0&&_e(a,!s&&be(e,"script")),u},cleanData:function(e){for(var t,n,r,i=T.event.special,o=0;void 0!==(n=e[o]);o++)if(G(n)){if(t=n[Q.expando]){if(t.events)for(r in t.events)i[r]?T.event.remove(n,r):T.removeEvent(n,r,t.handle);n[Q.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),T.fn.extend({detach:function(e){return He(this,e,!0)},remove:function(e){return He(this,e)},text:function(e){return W(this,(function(e){return void 0===e?T.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return Ue(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Fe(this,e).appendChild(e)}))},prepend:function(){return Ue(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Fe(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Ue(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Ue(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(T.cleanData(be(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return T.clone(this,e,t)}))},html:function(e){return W(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ie.test(e)&&!ye[(me.exec(e)||["",""])[1].toLowerCase()]){e=T.htmlPrefilter(e);try{for(;n=0&&(s+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-s-u-.5))||0),s}function ot(e,t,n){var r=We(e),i=(!g.boxSizingReliable()||n)&&"border-box"===T.css(e,"boxSizing",!1,r),o=i,a=Ze(e,t,r),u="offset"+t[0].toUpperCase()+t.slice(1);if(ze.test(a)){if(!n)return a;a="auto"}return(!g.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===T.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===T.css(e,"boxSizing",!1,r),(o=u in e)&&(a=e[u])),(a=parseFloat(a)||0)+it(e,t,n||(i?"border":"content"),o,r,a)+"px"}function at(e,t,n,r,i){return new at.prototype.init(e,t,n,r,i)}T.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Ze(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,u=X(t),s=et.test(t),c=e.style;if(s||(t=Qe(u)),a=T.cssHooks[t]||T.cssHooks[u],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:c[t];"string"===(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=fe(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||s||(n+=i&&i[3]||(T.cssNumber[u]?"":"px")),g.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(s?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,a,u=X(t);return et.test(t)||(t=Qe(u)),(a=T.cssHooks[t]||T.cssHooks[u])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Ze(e,t,r)),"normal"===i&&t in nt&&(i=nt[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),T.each(["height","width"],(function(e,t){T.cssHooks[t]={get:function(e,n,r){if(n)return!Je.test(T.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?ot(e,t,r):le(e,tt,(function(){return ot(e,t,r)}))},set:function(e,n,r){var i,o=We(e),a=!g.scrollboxSize()&&"absolute"===o.position,u=(a||r)&&"border-box"===T.css(e,"boxSizing",!1,o),s=r?it(e,t,r,u,o):0;return u&&a&&(s-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-it(e,t,"border",!1,o)-.5)),s&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=T.css(e,t)),rt(0,n,s)}}})),T.cssHooks.marginLeft=Ye(g.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Ze(e,"marginLeft"))||e.getBoundingClientRect().left-le(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),T.each({margin:"",padding:"",border:"Width"},(function(e,t){T.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(T.cssHooks[e+t].set=rt)})),T.fn.extend({css:function(e,t){return W(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a1)}}),T.Tween=at,at.prototype={constructor:at,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||T.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(T.cssNumber[n]?"":"px")},cur:function(){var e=at.propHooks[this.prop];return e&&e.get?e.get(this):at.propHooks._default.get(this)},run:function(e){var t,n=at.propHooks[this.prop];return this.options.duration?this.pos=t=T.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):at.propHooks._default.set(this),this}},at.prototype.init.prototype=at.prototype,at.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=T.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){T.fx.step[e.prop]?T.fx.step[e.prop](e):1!==e.elem.nodeType||!T.cssHooks[e.prop]&&null==e.elem.style[Qe(e.prop)]?e.elem[e.prop]=e.now:T.style(e.elem,e.prop,e.now+e.unit)}}},at.propHooks.scrollTop=at.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},T.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},T.fx=at.prototype.init,T.fx.step={};var ut,st,ct=/^(?:toggle|show|hide)$/,lt=/queueHooks$/;function ft(){st&&(!1===a.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(ft):n.setTimeout(ft,T.fx.interval),T.fx.tick())}function dt(){return n.setTimeout((function(){ut=void 0})),ut=Date.now()}function pt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ht(e,t,n){for(var r,i=(vt.tweeners[t]||[]).concat(vt.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(e){return this.each((function(){T.removeAttr(this,e)}))}}),T.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?T.prop(e,t,n):(1===o&&T.isXMLDoc(e)||(i=T.attrHooks[t.toLowerCase()]||(T.expr.match.bool.test(t)?mt:void 0)),void 0!==n?null===n?void T.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=T.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!g.radioValue&&"radio"===t&&O(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),mt={set:function(e,t,n){return!1===t?T.removeAttr(e,n):e.setAttribute(n,n),n}},T.each(T.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=gt[t]||T.find.attr;gt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=gt[a],gt[a]=i,i=null!=n(e,t,r)?a:null,gt[a]=o),i}}));var yt=/^(?:input|select|textarea|button)$/i,bt=/^(?:a|area)$/i;function _t(e){return(e.match(P)||[]).join(" ")}function wt(e){return e.getAttribute&&e.getAttribute("class")||""}function xt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}T.fn.extend({prop:function(e,t){return W(this,T.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[T.propFix[e]||e]}))}}),T.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&T.isXMLDoc(e)||(t=T.propFix[t]||t,i=T.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=T.find.attr(e,"tabindex");return t?parseInt(t,10):yt.test(e.nodeName)||bt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),g.optSelected||(T.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),T.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){T.propFix[this.toLowerCase()]=this})),T.fn.extend({addClass:function(e){var t,n,r,i,o,a,u,s=0;if(y(e))return this.each((function(t){T(this).addClass(e.call(this,t,wt(this)))}));if((t=xt(e)).length)for(;n=this[s++];)if(i=wt(n),r=1===n.nodeType&&" "+_t(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(u=_t(r))&&n.setAttribute("class",u)}return this},removeClass:function(e){var t,n,r,i,o,a,u,s=0;if(y(e))return this.each((function(t){T(this).removeClass(e.call(this,t,wt(this)))}));if(!arguments.length)return this.attr("class","");if((t=xt(e)).length)for(;n=this[s++];)if(i=wt(n),r=1===n.nodeType&&" "+_t(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");i!==(u=_t(r))&&n.setAttribute("class",u)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):y(e)?this.each((function(n){T(this).toggleClass(e.call(this,n,wt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=T(this),a=xt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||((t=wt(this))&&Q.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Q.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+_t(wt(n))+" ").indexOf(t)>-1)return!0;return!1}});var Tt=/\r/g;T.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=y(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,T(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=T.map(i,(function(e){return null==e?"":e+""}))),(t=T.valHooks[this.type]||T.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}))):i?(t=T.valHooks[i.type]||T.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(Tt,""):null==n?"":n:void 0}}),T.extend({valHooks:{option:{get:function(e){var t=T.find.attr(e,"value");return null!=t?t:_t(T.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,u=a?null:[],s=a?o+1:i.length;for(r=o<0?s:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),T.each(["radio","checkbox"],(function(){T.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=T.inArray(T(e).val(),t)>-1}},g.checkOn||(T.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),g.focusin="onfocusin"in n;var Ct=/^(?:focusinfocus|focusoutblur)$/,At=function(e){e.stopPropagation()};T.extend(T.event,{trigger:function(e,t,r,i){var o,u,s,c,l,f,d,p,v=[r||a],m=h.call(e,"type")?e.type:e,g=h.call(e,"namespace")?e.namespace.split("."):[];if(u=p=s=r=r||a,3!==r.nodeType&&8!==r.nodeType&&!Ct.test(m+T.event.triggered)&&(m.indexOf(".")>-1&&(g=m.split("."),m=g.shift(),g.sort()),l=m.indexOf(":")<0&&"on"+m,(e=e[T.expando]?e:new T.Event(m,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=g.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:T.makeArray(t,[e]),d=T.event.special[m]||{},i||!d.trigger||!1!==d.trigger.apply(r,t))){if(!i&&!d.noBubble&&!b(r)){for(c=d.delegateType||m,Ct.test(c+m)||(u=u.parentNode);u;u=u.parentNode)v.push(u),s=u;s===(r.ownerDocument||a)&&v.push(s.defaultView||s.parentWindow||n)}for(o=0;(u=v[o++])&&!e.isPropagationStopped();)p=u,e.type=o>1?c:d.bindType||m,(f=(Q.get(u,"events")||{})[e.type]&&Q.get(u,"handle"))&&f.apply(u,t),(f=l&&u[l])&&f.apply&&G(u)&&(e.result=f.apply(u,t),!1===e.result&&e.preventDefault());return e.type=m,i||e.isDefaultPrevented()||d._default&&!1!==d._default.apply(v.pop(),t)||!G(r)||l&&y(r[m])&&!b(r)&&((s=r[l])&&(r[l]=null),T.event.triggered=m,e.isPropagationStopped()&&p.addEventListener(m,At),r[m](),e.isPropagationStopped()&&p.removeEventListener(m,At),T.event.triggered=void 0,s&&(r[l]=s)),e.result}},simulate:function(e,t,n){var r=T.extend(new T.Event,n,{type:e,isSimulated:!0});T.event.trigger(r,null,t)}}),T.fn.extend({trigger:function(e,t){return this.each((function(){T.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return T.event.trigger(e,t,n,!0)}}),g.focusin||T.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){T.event.simulate(t,e.target,T.event.fix(e))};T.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Q.access(r,t);i||r.addEventListener(e,n,!0),Q.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Q.access(r,t)-1;i?Q.access(r,t,i):(r.removeEventListener(e,n,!0),Q.remove(r,t))}}}));var $t=n.location,kt=Date.now(),St=/\?/;T.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||T.error("Invalid XML: "+e),t};var Et=/\[\]$/,Ot=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function jt(e,t,n,r){var i;if(Array.isArray(t))T.each(t,(function(t,i){n||Et.test(e)?r(e,i):jt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)}));else if(n||"object"!==x(t))r(e,t);else for(i in t)jt(e+"["+i+"]",t[i],n,r)}T.param=function(e,t){var n,r=[],i=function(e,t){var n=y(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!T.isPlainObject(e))T.each(e,(function(){i(this.name,this.value)}));else for(n in e)jt(n,e[n],t,i);return r.join("&")},T.fn.extend({serialize:function(){return T.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=T.prop(this,"elements");return e?T.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!T(this).is(":disabled")&&Nt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!ve.test(e))})).map((function(e,t){var n=T(this).val();return null==n?null:Array.isArray(n)?T.map(n,(function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}})):{name:t.name,value:n.replace(Ot,"\r\n")}})).get()}});var It=/%20/g,Mt=/#.*$/,Lt=/([?&])_=[^&]*/,Ft=/^(.*?):[ \t]*([^\r\n]*)$/gm,Pt=/^(?:GET|HEAD)$/,qt=/^\/\//,Rt={},Bt={},Ut="*/".concat("*"),Ht=a.createElement("a");function zt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(P)||[];if(y(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Wt(e,t,n,r){var i={},o=e===Bt;function a(u){var s;return i[u]=!0,T.each(e[u]||[],(function(e,u){var c=u(t,n,r);return"string"!=typeof c||o||i[c]?o?!(s=c):void 0:(t.dataTypes.unshift(c),a(c),!1)})),s}return a(t.dataTypes[0])||!i["*"]&&a("*")}function Vt(e,t){var n,r,i=T.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&T.extend(!0,e,r),e}Ht.href=$t.href,T.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:$t.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test($t.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ut,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":T.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Vt(Vt(e,T.ajaxSettings),t):Vt(T.ajaxSettings,e)},ajaxPrefilter:zt(Rt),ajaxTransport:zt(Bt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,u,s,c,l,f,d,p,h=T.ajaxSetup({},t),v=h.context||h,m=h.context&&(v.nodeType||v.jquery)?T(v):T.event,g=T.Deferred(),y=T.Callbacks("once memory"),b=h.statusCode||{},_={},w={},x="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(l){if(!u)for(u={};t=Ft.exec(o);)u[t[1].toLowerCase()+" "]=(u[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=u[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,_[e]=t),this},overrideMimeType:function(e){return null==l&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)C.always(e[C.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||x;return r&&r.abort(t),A(0,t),this}};if(g.promise(C),h.url=((e||h.url||$t.href)+"").replace(qt,$t.protocol+"//"),h.type=t.method||t.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(P)||[""],null==h.crossDomain){c=a.createElement("a");try{c.href=h.url,c.href=c.href,h.crossDomain=Ht.protocol+"//"+Ht.host!=c.protocol+"//"+c.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=T.param(h.data,h.traditional)),Wt(Rt,h,t,C),l)return C;for(d in(f=T.event&&h.global)&&0==T.active++&&T.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Pt.test(h.type),i=h.url.replace(Mt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(It,"+")):(p=h.url.slice(i.length),h.data&&(h.processData||"string"==typeof h.data)&&(i+=(St.test(i)?"&":"?")+h.data,delete h.data),!1===h.cache&&(i=i.replace(Lt,"$1"),p=(St.test(i)?"&":"?")+"_="+kt+++p),h.url=i+p),h.ifModified&&(T.lastModified[i]&&C.setRequestHeader("If-Modified-Since",T.lastModified[i]),T.etag[i]&&C.setRequestHeader("If-None-Match",T.etag[i])),(h.data&&h.hasContent&&!1!==h.contentType||t.contentType)&&C.setRequestHeader("Content-Type",h.contentType),C.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Ut+"; q=0.01":""):h.accepts["*"]),h.headers)C.setRequestHeader(d,h.headers[d]);if(h.beforeSend&&(!1===h.beforeSend.call(v,C,h)||l))return C.abort();if(x="abort",y.add(h.complete),C.done(h.success),C.fail(h.error),r=Wt(Bt,h,t,C)){if(C.readyState=1,f&&m.trigger("ajaxSend",[C,h]),l)return C;h.async&&h.timeout>0&&(s=n.setTimeout((function(){C.abort("timeout")}),h.timeout));try{l=!1,r.send(_,A)}catch(e){if(l)throw e;A(-1,e)}}else A(-1,"No Transport");function A(e,t,a,u){var c,d,p,_,w,x=t;l||(l=!0,s&&n.clearTimeout(s),r=void 0,o=u||"",C.readyState=e>0?4:0,c=e>=200&&e<300||304===e,a&&(_=function(e,t,n){for(var r,i,o,a,u=e.contents,s=e.dataTypes;"*"===s[0];)s.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in u)if(u[i]&&u[i].test(r)){s.unshift(i);break}if(s[0]in n)o=s[0];else{for(i in n){if(!s[0]||e.converters[i+" "+s[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==s[0]&&s.unshift(o),n[o]}(h,C,a)),_=function(e,t,n,r){var i,o,a,u,s,c={},l=e.dataTypes.slice();if(l[1])for(a in e.converters)c[a.toLowerCase()]=e.converters[a];for(o=l.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!s&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),s=o,o=l.shift())if("*"===o)o=s;else if("*"!==s&&s!==o){if(!(a=c[s+" "+o]||c["* "+o]))for(i in c)if((u=i.split(" "))[1]===o&&(a=c[s+" "+u[0]]||c["* "+u[0]])){!0===a?a=c[i]:!0!==c[i]&&(o=u[0],l.unshift(u[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+s+" to "+o}}}return{state:"success",data:t}}(h,_,C,c),c?(h.ifModified&&((w=C.getResponseHeader("Last-Modified"))&&(T.lastModified[i]=w),(w=C.getResponseHeader("etag"))&&(T.etag[i]=w)),204===e||"HEAD"===h.type?x="nocontent":304===e?x="notmodified":(x=_.state,d=_.data,c=!(p=_.error))):(p=x,!e&&x||(x="error",e<0&&(e=0))),C.status=e,C.statusText=(t||x)+"",c?g.resolveWith(v,[d,x,C]):g.rejectWith(v,[C,x,p]),C.statusCode(b),b=void 0,f&&m.trigger(c?"ajaxSuccess":"ajaxError",[C,h,c?d:p]),y.fireWith(v,[C,x]),f&&(m.trigger("ajaxComplete",[C,h]),--T.active||T.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return T.get(e,t,n,"json")},getScript:function(e,t){return T.get(e,void 0,t,"script")}}),T.each(["get","post"],(function(e,t){T[t]=function(e,n,r,i){return y(n)&&(i=i||r,r=n,n=void 0),T.ajax(T.extend({url:e,type:t,dataType:i,data:n,success:r},T.isPlainObject(e)&&e))}})),T._evalUrl=function(e,t){return T.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){T.globalEval(e,t)}})},T.fn.extend({wrapAll:function(e){var t;return this[0]&&(y(e)&&(e=e.call(this[0])),t=T(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return y(e)?this.each((function(t){T(this).wrapInner(e.call(this,t))})):this.each((function(){var t=T(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=y(e);return this.each((function(n){T(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){T(this).replaceWith(this.childNodes)})),this}}),T.expr.pseudos.hidden=function(e){return!T.expr.pseudos.visible(e)},T.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},T.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Zt={0:200,1223:204},Yt=T.ajaxSettings.xhr();g.cors=!!Yt&&"withCredentials"in Yt,g.ajax=Yt=!!Yt,T.ajaxTransport((function(e){var t,r;if(g.cors||Yt&&!e.crossDomain)return{send:function(i,o){var a,u=e.xhr();if(u.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)u[a]=e.xhrFields[a];for(a in e.mimeType&&u.overrideMimeType&&u.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)u.setRequestHeader(a,i[a]);t=function(e){return function(){t&&(t=r=u.onload=u.onerror=u.onabort=u.ontimeout=u.onreadystatechange=null,"abort"===e?u.abort():"error"===e?"number"!=typeof u.status?o(0,"error"):o(u.status,u.statusText):o(Zt[u.status]||u.status,u.statusText,"text"!==(u.responseType||"text")||"string"!=typeof u.responseText?{binary:u.response}:{text:u.responseText},u.getAllResponseHeaders()))}},u.onload=t(),r=u.onerror=u.ontimeout=t("error"),void 0!==u.onabort?u.onabort=r:u.onreadystatechange=function(){4===u.readyState&&n.setTimeout((function(){t&&r()}))},t=t("abort");try{u.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}})),T.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),T.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return T.globalEval(e),e}}}),T.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),T.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=T(" \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/assets/js/components/validators/required-if.vue b/packages/Webkul/Admin/src/Resources/assets/js/components/validators/required-if.vue new file mode 100644 index 000000000..0a37c8fa7 --- /dev/null +++ b/packages/Webkul/Admin/src/Resources/assets/js/components/validators/required-if.vue @@ -0,0 +1,86 @@ + + + \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/assets/sass/app.scss b/packages/Webkul/Admin/src/Resources/assets/sass/app.scss index 287410a9e..ea7a1dbea 100755 --- a/packages/Webkul/Admin/src/Resources/assets/sass/app.scss +++ b/packages/Webkul/Admin/src/Resources/assets/sass/app.scss @@ -14,3 +14,31 @@ @import "partials/rtl"; @import "partials/ui/components"; + +.ellipsis { + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} + +.do-not-cross-arrow { + width: 85%; +} + +.linked-product-filter-tag { + text-transform: capitalize; + margin-top: 10px; + margin-right: 0px; + justify-content: flex-start; + height: 100%; +} + +.linked-product-wrapper { + margin-left: 0px !important; + margin-right: 10px !important; + height: 100% !important; +} + +.do-not-cross-linked-product-arrow { + width: 95%; +} \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_default.scss b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_default.scss index 602fd28dd..3371db33f 100644 --- a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_default.scss +++ b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_default.scss @@ -108,7 +108,7 @@ body { border-right: 1px solid rgba(162, 162, 162, 0.2); height: auto; bottom: 0; - z-index: 2; + z-index: 1; background-color: $white; ul.menubar { @@ -341,6 +341,25 @@ body { } } +.variant-image { + .image-item { + height: 100px !important; + width: 100px !important; + background-size: 100px 100px !important; + } + + .trash-icon { + position: absolute; + cursor: pointer; + margin-top: 25%; + } +} + +.btn.add-image { + display: inline-block; + width: auto; +} + .rtl { .ticket-list { .control-group { diff --git a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_rtl.scss b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_rtl.scss index 015577f41..acd6c05d4 100644 --- a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_rtl.scss +++ b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_rtl.scss @@ -174,6 +174,10 @@ float: left; } + .multiselect { + text-align: unset; + } + .pagination .page-item .icon { transform: rotate(180deg); } diff --git a/packages/Webkul/Admin/src/Resources/lang/ar/app.php b/packages/Webkul/Admin/src/Resources/lang/ar/app.php index 793e577a6..91b0406f6 100644 --- a/packages/Webkul/Admin/src/Resources/lang/ar/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ar/app.php @@ -1,20 +1,22 @@ 'حفظ', - 'create' => 'خلق', - 'update' => 'تحديث', - 'delete' => 'حذف', - 'failed' => 'فشل', - 'store' => 'متجر', - 'image' => 'صورة', - 'no result' => 'لا نتيجة', - 'product' => 'المنتج', - 'attribute' => 'ينسب', - 'actions' => 'أجراءات', - 'id' => 'ID', - 'action' => 'عمل', - 'yes' => 'نعم', + 'save' => 'حفظ', + 'create' => 'إنشاء', + 'update' => 'تحديث', + 'delete' => 'حذف', + 'copy-of' => 'نسخة من ', + 'copy-of-slug' => 'نسخة-من-', + 'failed' => 'فشل', + 'store' => 'متجر', + 'image' => 'صورة', + 'no result' => 'لا نتيجة', + 'product' => 'المنتج', + 'attribute' => 'ينسب', + 'actions' => 'أجراءات', + 'id' => 'ID', + 'action' => 'عمل', + 'yes' => 'نعم', 'no' => 'لا', 'true' => 'صحيح', 'false' => 'خاطئة', @@ -45,20 +47,20 @@ return [ 'my-account' => 'حسابي', 'logout' => 'خروج', 'visit-shop' => 'قم بزيارة المتجر', - 'dashboard' => 'لوحة العدادات', + 'dashboard' => 'لوحة التحكم', 'sales' => 'المبيعات', - 'orders' => 'الأوامر', + 'orders' => 'الطلبات', 'shipments' => 'الشحنات', 'invoices' => 'الفواتير', 'catalog' => 'فهرس', 'products' => 'المنتجات', 'categories' => 'الفئات', - 'attributes' => 'الصفات', + 'attributes' => 'الخصائص', 'attribute-families' => 'وصف الأسر', 'customers' => 'زبائن', 'groups' => 'المجموعات', - 'reviews' => 'باء-الاستعراضات', - 'newsletter-subscriptions' => 'الاشتراك في الرسالة الإخبارية', + 'reviews' => 'التقييمات', + 'newsletter-subscriptions' => 'الاشتراك في النشرة البريدية', 'configure' => 'اضبط', 'settings' => 'إعدادات', 'locales' => 'لغات', @@ -73,23 +75,33 @@ return [ 'tax-categories' => 'فئات الضرائب', 'tax-rates' => 'المعدلات الضريبية', 'refunds' => 'المبالغ المستردة', + 'marketing' => 'Marketing', 'promotions' => 'الترقيات', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'خصم', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ - 'dashboard' => 'لوحة العدادات', + 'dashboard' => 'لوحة التحكم', 'sales' => 'المبيعات', - 'orders' => 'الأوامر', + 'cancel' => 'Cancel', + 'orders' => 'الطلبات', 'shipments' => 'الشحنات', 'invoices' => 'الفواتير', + 'refunds' => 'Refunds', 'catalog' => 'فهرس', 'products' => 'المنتجات', + 'copy' => 'Copy', 'categories' => 'الفئات', 'attributes' => 'الصفات', 'attribute-families' => 'وصف الأسر', 'customers' => 'زبائن', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'المجموعات', 'reviews' => 'باء-الاستعراضات', 'newsletter-subscriptions' => 'الاشتراك في الرسالة الإخبارية', @@ -106,16 +118,20 @@ return [ 'taxes' => 'الضرائب', 'tax-categories' => 'فئات الضرائب', 'tax-rates' => 'المعدلات الضريبية', + 'view' => 'View', 'edit' => 'تعديل', 'create' => 'أضف', 'delete' => 'حذف', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'الترقيات', 'cart-rules' => 'قواعد سلة التسوق', 'catalog-rules' => 'قواعد الكتالوج', ], 'dashboard' => [ - 'title' => 'لوحة العدادات', + 'title' => 'لوحة التحكم', 'from' => 'من', 'to' => 'إلى', 'total-customers' => 'مجموع الزبائن', @@ -138,27 +154,28 @@ return [ 'datagrid' => [ 'mass-ops' => [ - 'method-error' => 'خطأ! تم اكتشاف طريقة خاطئة ، الرجاء التحقق من تشكيل حركة الكتلة', - 'delete-success' => "تم حذف المورد بنجاح :Selected", + 'method-error' => 'خطأ! تم اكتشاف طريقة خاطئة، الرجاء التحقق من تشكيل حركة الكتلة', + 'delete-success' => "تم الحذف بنجاح :Selected", 'partial-action' => 'ولم تنفذ بعض الإجراءات بسبب القيود المفروضة على النظام :resource', - 'update-success' => "تم تحديث المورد بنجاح :Selected", - 'no-resource' => 'المورد المقدم غير كاف للعمل' + 'update-success' => "تم التحديث بنجاح :Selected", + 'no-resource' => 'المورد المقدم غير كاف للعمل', ], - 'id' => 'ID', - 'status' => 'الحالة', - 'code' => 'رمز', - 'admin-name' => 'اسم', - 'name' => 'اسم', - 'direction' => 'اتجاه', - 'fullname' => 'الاسم الكامل', - 'type' => 'النوع', - 'required' => 'مطلوب', - 'unique' => 'فريد', - 'per-locale' => 'على أساس اللغة', - 'per-channel' => 'قائم على القناة', - 'position' => 'موضع', - 'locale' => 'لغة', + 'id' => 'ID', + 'status' => 'الحالة', + 'code' => 'رمز', + 'admin-name' => 'اسم', + 'copy' => 'نسخ', + 'name' => 'اسم', + 'direction' => 'اتجاه', + 'fullname' => 'الاسم بالكامل', + 'type' => 'النوع', + 'required' => 'مطلوب', + 'unique' => 'فريد', + 'per-locale' => 'على أساس اللغة', + 'per-channel' => 'قائم على القناة', + 'position' => 'موضع', + 'locale' => 'لغة', 'hostname' => 'اسم المضيف', 'email' => 'البريد الإلكتروني', 'group' => 'المجموعة', @@ -168,10 +185,10 @@ return [ 'layout' => 'نسق', 'url-key' => 'مفتاح URL', 'comment' => 'تعليق', - 'product-name' => 'المنتج', + 'product-name' => 'إسم المنتج', 'currency-name' => 'اسم العملة', 'exch-rate' => 'باء-سعر الصرف', - 'priority' => 'Priority', + 'priority' => 'الأولوية', 'subscribed' => 'مشترك', 'base-total' => 'المجموع الأساسي', 'grand-total' => 'المجموع الكلي', @@ -186,6 +203,7 @@ return [ 'shipment-date' => 'تاريخ الشحن', 'shipment-to' => 'الشحن إلى', 'sku' => 'SKU', + 'product-number' => 'رقم المنتج', 'price' => 'السعر', 'qty' => 'كمية', 'permission-type' => 'نوع الإذن', @@ -223,16 +241,18 @@ return [ 'view' => 'رأي', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'تحديث الحالة' + 'update-status' => 'تحديث الحالة', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ 'title' => 'حسابي', 'save-btn-title' => 'احفظ', - 'general' => 'ألف-لمحة عامة', + 'general' => 'عام', 'name' => 'اسم', 'email' => 'البريد الإلكتروني', - 'password' => 'كلمه السر', + 'password' => 'كلمه المرور', 'confirm-password' => 'تأكيد كلمة المرور', 'change-password' => 'غير كلمة سر الحساب', 'current-password' => 'كلمة المرور الحالية' @@ -240,22 +260,22 @@ return [ 'users' => [ 'forget-password' => [ - 'title' => 'انس كلمة السر', - 'header-title' => 'استرجع كلمة السر', + 'title' => 'نسيت كلمة المرور', + 'header-title' => 'استرجع كلمة المرور', 'email' => 'البريد الإلكتروني المسجل', - 'password' => 'كلمه السر', + 'password' => 'كلمه المرور', 'confirm-password' => 'تأكيد كلمة المرور', 'back-link-title' => 'العودة للتوقيع', 'submit-btn-title' => 'بريد إلكتروني كلمة مرور إعادة تعيين وصلة' ], 'reset-password' => [ - 'title' => 'أعد ضبط كلمة السر', + 'title' => 'أعد ضبط كلمة المرور', 'email' => 'البريد الإلكتروني المسجل', - 'password' => 'كلمه السر', + 'password' => 'كلمه المرور', 'confirm-password' => 'تأكيد كلمة المرور', 'back-link-title' => 'العودة للتوقيع', - 'submit-btn-title' => 'أعد ضبط كلمة السر' + 'submit-btn-title' => 'أعد ضبط كلمة المرور' ], 'roles' => [ @@ -263,10 +283,10 @@ return [ 'add-role-title' => 'أضف الدور', 'edit-role-title' => 'حرر الدور', 'save-btn-title' => 'احفظ الدور', - 'general' => 'ألف-لمحة عامة', + 'general' => 'عام', 'name' => 'اسم', 'description' => 'الوصف', - 'access-control' => 'مراقبة الدخول', + 'access-control' => 'صلاحيات الوصول', 'permissions' => 'الأذون', 'custom' => 'مخصص', 'all' => 'الكل' @@ -277,33 +297,33 @@ return [ 'add-user-title' => 'إضافة مستخدم', 'edit-user-title' => 'حرر المستخدم', 'save-btn-title' => 'احفظ المستخدم', - 'general' => 'ألف-لمحة عامة', + 'general' => 'عام', 'email' => 'البريد الإلكتروني', 'name' => 'اسم', - 'password' => 'كلمه الس', + 'password' => 'كلمه المرور', 'confirm-password' => 'تأكيد كلمة المرور', 'status-and-role' => 'المركز والدور', 'role' => 'الدور', 'status' => 'الحالة', 'account-is-active' => 'الحساب نشط', - 'current-password' => 'أدخل كلمة السر الحالية', + 'current-password' => 'أدخل كلمة المرور الحالية', 'confirm-delete' => 'تأكيد حذف هذا الحساب', - 'confirm-delete-title' => 'تأكيد كلمة السر قبل حذف', + 'confirm-delete-title' => 'تأكيد كلمة المرور قبل حذف', 'delete-last' => 'على الأقل مدير واحد مطلوب.', 'delete-success' => 'نجاح! حذف المستخدم', - 'incorrect-password' => 'كلمة السر التي أدخلتها غير صحيحة', - 'password-match' => 'كلمة السر الحالية لا تطابق.', + 'incorrect-password' => 'كلمة المرور التي أدخلتها غير صحيحة', + 'password-match' => 'كلمة المرور الحالية لا تطابق.', 'account-save' => 'الحساب التغييرات و الموفرة بنجاح.', 'login-error' => 'الرجاء التحقق من أوراق اعتمادك ومحاولة مرة أخرى.', - 'activate-warning' => 'حسابك لم يتم تفعيله بعد ، الرجاء الاتصال بالمدير.' + 'activate-warning' => 'حسابك لم يتم تفعيله بعد، الرجاء الاتصال بالمدير.' ], 'sessions' => [ 'title' => 'وقع هنا', 'email' => 'البريد الإلكتروني', - 'password' => 'كلمه السر', - 'forget-password-link-title' => 'نسيت كلمة السر ؟', - 'remember-me' => 'تذكريني', + 'password' => 'كلمه المرور', + 'forget-password-link-title' => 'نسيت كلمة المرور؟', + 'remember-me' => 'تذكرني', 'submit-btn-title' => 'وقع هنا' ] ], @@ -375,12 +395,14 @@ return [ 'comment' => 'Comment', 'submit-comment' => 'Submit Comment', 'notify-customer' => 'Notify Customer', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'الفواتير', 'id' => 'Id', 'invoice-id' => 'هوية صوتية', + 'invoice' => 'فاتورة', 'date' => 'تاريخ الفاتورة', 'order-id' => 'Id طلب', 'customer-name' => 'اسم الزبون', @@ -450,6 +472,20 @@ return [ 'action' => 'عمل', 'view-title' => '#:refund_id إعادة مال', 'invalid-refund-amount-error' => 'يجب ألا يكون المبلغ المسترد صفرًا' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -524,7 +560,13 @@ return [ 'checkbox' => 'خانة اختيار', 'multiselect' => 'تحديد متعدد', 'new-option' => 'خيار جديد', - 'is-default' => 'افتراضي' + 'is-default' => 'افتراضي', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -800,7 +842,9 @@ return [ 'seo-title' => 'عنوان Meta', 'seo-description' => 'وصف Meta', 'seo-keywords' => 'الكلمات الدالة Meta', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -818,7 +862,9 @@ return [ 'update-success' => 'تم تحديث عنصر المزلق بنجاح', 'update-fail' => 'المنزلق لا يمكن تحديثه', 'delete-success' => 'لا يستطيع حذف الأخير عنصر', - 'delete-fail' => 'تم حذف عنصر المزلق بنجاح' + 'delete-fail' => 'تم حذف عنصر المزلق بنجاح', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -1117,6 +1163,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'إذهب إلى البيت', 'in-maitainace' => 'في الصيانة', @@ -1201,17 +1309,20 @@ return [ ], 'response' => [ - 'being-used' => ':source في :name يتم استخدام هذا المورد', - 'cannot-delete-default' => 'لا يمكن حذف القناة الافتراضية', - 'create-success' => 'إنشاء الاسم بنجاح:name', - 'update-success' => 'تحديث الاسم بنجاح :name ', - 'delete-success' => 'حذف الاسم بنجاح :name', - 'delete-failed' => ':name حدث خطأ أثناء حذف', - 'last-delete-error' => 'مطلوب name: واحد على الأقل', - 'user-define-error' => 'لا يستطيع حذف نظام :name', - 'attribute-error' => 'في المنتجات القابلة للتكوين :name يستخدم ' , - 'attribute-product-error' => 'في المنتجات :name يستخدم ' , - 'customer-associate' => 'لا يمكن حذف :name لأن العميل مرتبط بهذه المجموعة.', + 'being-used' => ':source في :name يتم استخدام هذا المورد', + 'product-copied' => 'تم نسخ المنتج', + 'error-while-copying' => 'خطأ في نسخ المنتج', + 'product-can-not-be-copied' => 'لا يمكن نسخ منتجات الحجز', + 'cannot-delete-default' => 'لا يمكن حذف القناة الافتراضية', + 'create-success' => 'إنشاء الاسم بنجاح:name', + 'update-success' => 'تحديث الاسم بنجاح :name ', + 'delete-success' => 'حذف الاسم بنجاح :name', + 'delete-failed' => ':name حدث خطأ أثناء حذف', + 'last-delete-error' => 'مطلوب name: واحد على الأقل', + 'user-define-error' => 'لا يستطيع حذف نظام :name', + 'attribute-error' => 'في المنتجات القابلة للتكوين :name يستخدم ', + 'attribute-product-error' => 'في المنتجات :name يستخدم ', + 'customer-associate' => 'لا يمكن حذف :name لأن العميل مرتبط بهذه المجموعة.', 'currency-delete-error' => 'يتم تعيين هذه العملة كعملة أساسية القناة لذلك لا يمكن حذفها.', 'upload-success' => 'بنجاح :name تم تحميل', 'delete-category-root' => 'لا يستطيع حذف الجذر الفئة', @@ -1228,7 +1339,7 @@ return [ 'admin' => [ 'emails' => [ - 'email' => 'Email', + 'email' => 'البريد الإلكتروني', 'notification_label' => 'إشعارات', 'notifications' => [ 'verification' => 'ارسل ايميل التفعيل', @@ -1246,6 +1357,10 @@ return [ ], 'system' => [ 'catalog' => 'فهرس', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'منتجات', 'guest-checkout' => 'ضيف المحاسبة', 'allow-guest-checkout' => 'السماح للضيف بالخروج', @@ -1274,6 +1389,7 @@ return [ 'description' => 'وصف', 'rate' => 'معدل', 'status' => 'الحالة', + 'calculate-tax' => 'احسب الضريبة', 'type' => 'اكتب', 'payment-methods' => 'طرق الدفع', 'cash-on-delivery' => 'الدفع عند الاستلام', @@ -1294,6 +1410,11 @@ return [ 'weight-unit' => 'وحدة الوزن', 'admin-page-limit' => 'العناصر الافتراضية لكل صفحة (المشرف)', 'design' => 'التصميم', + 'email-settings' => 'إعدادات البريد الإلكتروني', + 'email-sender-name' => 'اسم مرسل البريد الإلكتروني', + 'shop-email-from' => 'متجر عنوان البريد الإلكتروني [لإرسال رسائل البريد الإلكتروني]', + 'admin-name' => 'اسم المسؤول', + 'admin-email' => 'البريد الإلكتروني للمسؤول', 'admin-logo' => 'شعار المسؤول', 'logo-image' => 'صورة الشعار', 'credit-max' => 'الحد الأقصى لائتمان العميل', @@ -1304,40 +1425,69 @@ return [ 'order-number-prefix' => 'بادئة رقم الطلب', 'order-number-length' => 'طول رقم الطلب', 'order-number-suffix' => 'لاحقة رقم الطلب', + 'order-number-generator-class' => 'مولد رقم الطلب', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'إفتراضي', 'sandbox' => 'صندوق الرمل', 'all-channels' => 'الكل', 'all-locales' => 'الكل', - 'invoice-slip-design' => 'Invoice Slip Design', - 'logo' => 'Logo', - 'storefront' => 'Storefront', - 'default-list-mode' => 'Default List Mode', - 'grid' => 'Grid', - 'list' => 'List', - 'products-per-page' => 'Products Per Page', - 'sort-by' => 'Sort By', + 'invoice-slip-design' => 'تصميم قسيمة الفاتورة', + 'logo' => 'شعار', + 'storefront' => 'واجهة المحل', + 'default-list-mode' => 'وضع القائمة الافتراضي', + 'grid' => 'جريد', + 'list' => 'قائمة', + 'products-per-page' => 'المنتجات في الصفحة', + 'sort-by' => 'صنف حسب', 'from-z-a' => 'From Z-A', 'from-a-z' => 'From A-Z', 'newest-first' => 'Newest First', 'oldest-first' => 'Oldest First', 'cheapest-first' => 'Cheapest First', 'expensive-first' => 'Expensive First', - 'comma-seperated' => 'Comma Seperated', - 'favicon' => 'Favicon', + 'comma-seperated' => 'مفصولة بفواصل', + 'favicon' => 'فافيكون', 'seo' => 'SEO', - 'rich-snippets' => 'Rich Snippets', - 'products' => 'Products', - 'enable' => 'Enable', - 'show-weight' => 'Show Weight', - 'show-categories' => 'Show Categories', - 'show-images' => 'Show Images', - 'show-reviews' => 'Show Reviews', - 'show-ratings' => 'Show Ratings', - 'show-offers' => 'Show Offers', - 'show-sku' => 'Show SKU', - 'categories' => 'Categories', - 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'rich-snippets' => 'قصاصات غنية', + 'products' => 'منتجات', + 'enable' => 'ممكن', + 'show-weight' => 'عرض الوزن', + 'show-categories' => 'إظهار الفئات', + 'show-images' => 'عرض الصور', + 'show-reviews' => 'عرض التعليقات', + 'show-ratings' => 'إظهار التقييمات', + 'show-offers' => 'عرض العروض', + 'show-sku' => 'عرض SKU', + 'categories' => 'التصنيفات', + 'show-sku' => 'عرض SKU', + 'show-search-input-field' => 'إظهار حقل إدخال البحث', + 'store-name' => 'اسم المتجر', + 'vat-number' => 'ظريبه الشراء', + 'contact-number' => 'رقم الاتصال', + 'bank-details' => 'التفاصيل المصرفية', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'mailing-address' => 'أرسل الشيك إلى', + 'instructions' => 'تعليمات', + 'custom-scripts' => 'البرامج النصية المخصصة', + 'custom-css' => 'لغة تنسيق ويب حسب الطلب', + 'custom-javascript' => 'جافا سكريبت مخصص', + 'paypal-smart-button' => 'زر PayPal الذكي', + 'client-id' => 'معرف العميل', + 'client-id-info' => 'استخدم "sb" للاختبار.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/de/app.php b/packages/Webkul/Admin/src/Resources/lang/de/app.php index bc078db9b..35310bca3 100755 --- a/packages/Webkul/Admin/src/Resources/lang/de/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/de/app.php @@ -1,1329 +1,1469 @@ 'Speichern', - 'copy-of' => 'Kopie von', - 'create' => 'Erstellen', - 'update' => 'Update', - 'delete' => 'Löschen', - 'failed' => 'Fehlgeschlagen', - 'store' => 'Speichern', - 'image' => 'Bild', - 'no result' => 'Kein Ergebnis', - 'product' => 'Produkt', - 'attribute' => 'Attribut', - 'actions' => 'Aktionen', - 'id' => 'Id', - 'action' => 'Aktion', - 'yes' => 'Ja', - 'no' => 'Nein', - 'true' => 'Wahr', - 'false' => 'Falsch', - 'apply' => 'Anwenden', - 'label' => 'Label', - 'name' => 'Name', - 'title' => 'Titel', - 'code' => 'Code', - 'type' => 'Typ', - 'required' => 'Erforderlich', - 'unique' => 'Einzigartig', - 'locale-based' => 'Sprachabhängig', +return [ + 'save' => 'Speichern', + 'copy-of' => 'Kopie von ', + 'copy-of-slug' => 'kopie-von-', + 'create' => 'Erstellen', + 'update' => 'Update', + 'delete' => 'Löschen', + 'failed' => 'Fehlgeschlagen', + 'store' => 'Speichern', + 'image' => 'Bild', + 'no result' => 'Kein Ergebnis', + 'product' => 'Produkt', + 'attribute' => 'Attribut', + 'actions' => 'Aktionen', + 'id' => 'Id', + 'action' => 'Aktion', + 'yes' => 'Ja', + 'no' => 'Nein', + 'true' => 'Wahr', + 'false' => 'Falsch', + 'apply' => 'Anwenden', + 'label' => 'Label', + 'name' => 'Name', + 'title' => 'Titel', + 'code' => 'Code', + 'type' => 'Typ', + 'required' => 'Erforderlich', + 'unique' => 'Einzigartig', + 'locale-based' => 'Sprachabhängig', 'channel-based' => 'Channelabhängig', - 'status' => 'Status', + 'status' => 'Status', 'select-option' => 'Wählen Sie eine Option', - 'category' => 'Kategorie', - 'common' => - array ( - 'no-result-found' => 'Wir konnten keine Aufzeichnungen finden.', - 'country' => 'Land', - 'state' => 'Staat', - 'true' => 'Wahr', - 'false' => 'Falsch', - ), - 'layouts' => - array ( - 'my-account' => 'Mein Konto', - 'logout' => 'Logout', - 'visit-shop' => 'Shop besuchen', - 'dashboard' => 'Dashboard', - 'sales' => 'Vertrieb', - 'orders' => 'Bestellungen', - 'shipments' => 'Sendungen', - 'invoices' => 'Rechnungen', - 'refunds' => 'Erstattungen', - 'catalog' => 'Katalog', - 'products' => 'Produkte', - 'categories' => 'Kategorien', - 'attributes' => 'Attribute', - 'attribute-families' => 'Attributgruppen', - 'customers' => 'Kunden', - 'groups' => 'Gruppen', - 'reviews' => 'Bewertungen', - 'newsletter-subscriptions' => 'Newsletter-Abonnements', - 'configure' => 'Konfigurieren', - 'settings' => 'Einstellungen', - 'locales' => 'Sprachen', - 'currencies' => 'Währungen', - 'exchange-rates' => 'Wechselkurse', - 'inventory-sources' => 'Inventar-Quellen', - 'channels' => 'Kanäle', - 'users' => 'Benutzer', - 'roles' => 'Rollen', - 'sliders' => 'Slider', - 'taxes' => 'Steuern', - 'tax-categories' => 'Steuer-Kategorien', - 'tax-rates' => 'Steuersätze', - 'promotions' => 'Promotions', - 'discount' => 'Rabatt', - 'cms' => 'CMS', - ), - 'acl' => - array ( - 'dashboard' => 'Dashboard', - 'sales' => 'Vertrieb', - 'orders' => 'Bestellungen', - 'shipments' => 'Sendungen', - 'invoices' => 'Rechnungen', - 'catalog' => 'Katalog', - 'products' => 'Produkte', - 'categories' => 'Kategorien', - 'attributes' => 'Attribute', - 'attribute-families' => 'Attributgruppen', - 'customers' => 'Kunden', - 'groups' => 'Gruppen', - 'reviews' => 'Bewertungen', - 'newsletter-subscriptions' => 'Newsletter-Abonnements', - 'configure' => 'Konfigurieren', - 'settings' => 'Einstellungen', - 'locales' => 'Sprachen', - 'currencies' => 'Währungen', - 'exchange-rates' => 'Wechselkurse', - 'inventory-sources' => 'Inventarquellen', - 'channels' => 'Kanäle', - 'users' => 'Benutzer', - 'roles' => 'Rollen', - 'sliders' => 'Sliders', - 'taxes' => 'Steuern', - 'tax-categories' => 'Steuerkategorien', - 'tax-rates' => 'Steuersätze', - 'edit' => 'Bearbeiten', - 'create' => 'Hinzufügen', - 'delete' => 'Löschen', - 'promotions' => 'Promotions', - 'cart-rules' => 'Warenkorbregeln', - 'catalog-rules' => 'Katalogregeln', - ), - 'dashboard' => - array ( - 'title' => 'Dashboard', - 'from' => 'Von', - 'to' => 'An', - 'total-customers' => 'Anzahl Kunden', - 'total-orders' => 'Anzahl Aufträge', - 'total-sale' => 'Gesamterlös', - 'average-sale' => 'Durchschnitt pro Verkauf', - 'increased' => ':progress%', - 'decreased' => ':progress%', - 'sales' => 'Vertrieb', - 'top-performing-categories' => 'Top Kategorien', - 'product-count' => ':count Produkte', - 'top-selling-products' => 'Top Produkte', - 'sale-count' => ':count Verkäufe', - 'customer-with-most-sales' => 'Kunden Mit Dem Meisten Umsatz', - 'order-count' => ':count Bestellungen', - 'revenue' => 'Einnahmen :total', - 'stock-threshold' => 'Lagerbestand', - 'qty-left' => ':qty Verbleibend', - ), - 'datagrid' => - array ( - 'mass-ops' => - array ( - 'method-error' => 'Fehler! Falsche Methode erkannt, überprüfen Sie die Konfiguration der Massenaktion', - 'delete-success' => 'Ausgewählte :resource wurden erfolgreich gelöscht', - 'partial-action' => 'Einige Aktionen wurden nicht durchgeführt, aufgrund von System-Einschränkungen von :resource', - 'update-success' => 'Ausgewählt :resource wurden erfolgreich aktualisiert', - 'no-resource' => 'Die bereitgestellte Ressource reicht für die Aktion nicht aus', - ), - 'id' => 'Id', - 'status' => 'Status', - 'code' => 'Code', - 'admin-name' => 'Name', - 'name' => 'Name', - 'direction' => 'Richtung', - 'fullname' => 'Vollständiger Name', - 'type' => 'Typ', - 'copy' => 'Kopieren', - 'required' => 'Erforderlich', - 'unique' => 'Einzigartig', - 'per-locale' => 'Sprach-basierend', - 'per-channel' => 'Channel-basierend', - 'position' => 'Position', - 'locale' => 'Sprache', - 'hostname' => 'Hostname', - 'email' => 'E-Mail', - 'group' => 'Gruppe', - 'phone' => 'Telefon', - 'gender' => 'Geschlecht', - 'title' => 'Titel', - 'layout' => 'Layout', - 'url-key' => 'URL-Schlüssel', - 'comment' => 'Kommentar', - 'product-name' => 'Produkt', - 'currency-name' => 'Währungsname', - 'exch-rate' => 'Tauschrate', - 'priority' => 'Priorität', - 'subscribed' => 'Abonniert', - 'base-total' => 'Basis Gesamt', - 'grand-total' => 'Gesamtsumme', - 'order-date' => 'Bestelldatum', - 'channel-name' => 'Kanal Name', - 'billed-to' => 'Rechnung an', - 'shipped-to' => 'Versendet an', - 'order-id' => 'Auftragsnummer', - 'invoice-date' => 'Rechnungsdatum', - 'total-qty' => 'Gesamtmenge', - 'inventory-source' => 'Inventar Quelle', - 'shipment-date' => 'Versand Datum', - 'shipment-to' => 'Versand', - 'sku' => 'SKU', - 'price' => 'Preis', - 'qty' => 'Menge', - 'permission-type' => 'Berechtigungsart', - 'identifier' => 'Bezeichner', - 'state' => 'Bundesland', - 'country' => 'Land', - 'tax-rate' => 'Rate', - 'role' => 'Rolle', - 'sub-total' => 'Zwischensumme', - 'no-of-products' => 'Anzahl der Produkte', - 'attribute-family' => 'Attributgruppe', - 'starts-from' => 'Beginnt von', - 'ends-till' => 'Endet bis', - 'per-cust' => 'Pro Kunde', - 'usage-throttle' => 'Einsatzzeiten', - 'for-guest' => 'Für Gäste', - 'order_number' => 'Auftragsnummer', - 'refund-date' => 'Rückerstattung Datum', - 'refunded' => 'Erstattet', - 'start' => 'Starten', - 'end' => 'Ende', - 'active' => 'Aktiv', - 'inactive' => 'Inaktiv', - 'true' => 'Wahr', - 'false' => 'Falsch', - 'approved' => 'Genehmigt', - 'pending' => 'Ausstehend', - 'disapproved' => 'Abgelehnt', - 'coupon-code' => 'Gutschein-Code', - 'times-used' => 'Mal Verwendet', - 'created-date' => 'Erstellt-Datum', - 'expiration-date' => 'Ablaufdatum', - 'edit' => 'Bearbeiten', - 'delete' => 'Löschen', - 'view' => 'Anzeigen', - 'rtl' => 'RTL', - 'ltr' => 'LTR', - 'update-status' => 'Update-Status', - ), - 'account' => - array ( - 'title' => 'Mein Konto', - 'save-btn-title' => 'Speichern', - 'general' => 'Allgemein', - 'name' => 'Name', - 'email' => 'E-Mail', - 'password' => 'Passwort', + 'category' => 'Kategorie', + 'common' => + [ + 'no-result-found' => 'Wir konnten keine Aufzeichnungen finden.', + 'country' => 'Land', + 'state' => 'Staat', + 'true' => 'Wahr', + 'false' => 'Falsch', + ], + 'layouts' => + [ + 'my-account' => 'Mein Konto', + 'logout' => 'Logout', + 'visit-shop' => 'Shop besuchen', + 'dashboard' => 'Dashboard', + 'sales' => 'Vertrieb', + 'orders' => 'Bestellungen', + 'shipments' => 'Sendungen', + 'invoices' => 'Rechnungen', + 'refunds' => 'Erstattungen', + 'catalog' => 'Katalog', + 'products' => 'Produkte', + 'categories' => 'Kategorien', + 'attributes' => 'Attribute', + 'attribute-families' => 'Attributgruppen', + 'customers' => 'Kunden', + 'groups' => 'Gruppen', + 'reviews' => 'Bewertungen', + 'newsletter-subscriptions' => 'Newsletter-Abonnements', + 'configure' => 'Konfigurieren', + 'settings' => 'Einstellungen', + 'locales' => 'Sprachen', + 'currencies' => 'Währungen', + 'exchange-rates' => 'Wechselkurse', + 'inventory-sources' => 'Inventar-Quellen', + 'channels' => 'Kanäle', + 'users' => 'Benutzer', + 'roles' => 'Rollen', + 'sliders' => 'Slider', + 'taxes' => 'Steuern', + 'marketing' => 'Marketing', + 'promotions' => 'Promotions', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', + 'tax-categories' => 'Steuer-Kategorien', + 'tax-rates' => 'Steuersätze', + 'discount' => 'Rabatt', + 'cms' => 'CMS', + 'transactions' => 'Transactions' + ], + 'acl' => + [ + 'dashboard' => 'Dashboard', + 'sales' => 'Vertrieb', + 'cancel' => 'Cancel', + 'orders' => 'Bestellungen', + 'shipments' => 'Sendungen', + 'invoices' => 'Rechnungen', + 'refunds' => 'Refunds', + 'catalog' => 'Katalog', + 'products' => 'Produkte', + 'copy' => 'Copy', + 'categories' => 'Kategorien', + 'attributes' => 'Attribute', + 'attribute-families' => 'Attributgruppen', + 'customers' => 'Kunden', + 'addresses' => 'Addresses', + 'note' => 'Note', + 'groups' => 'Gruppen', + 'reviews' => 'Bewertungen', + 'newsletter-subscriptions' => 'Newsletter-Abonnements', + 'configure' => 'Konfigurieren', + 'settings' => 'Einstellungen', + 'locales' => 'Sprachen', + 'currencies' => 'Währungen', + 'exchange-rates' => 'Wechselkurse', + 'inventory-sources' => 'Inventarquellen', + 'channels' => 'Kanäle', + 'users' => 'Benutzer', + 'roles' => 'Rollen', + 'sliders' => 'Sliders', + 'taxes' => 'Steuern', + 'tax-categories' => 'Steuerkategorien', + 'tax-rates' => 'Steuersätze', + 'view' => 'View', + 'edit' => 'Bearbeiten', + 'create' => 'Hinzufügen', + 'delete' => 'Löschen', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', + 'promotions' => 'Promotions', + 'cart-rules' => 'Warenkorbregeln', + 'catalog-rules' => 'Katalogregeln', + ], + 'dashboard' => + [ + 'title' => 'Dashboard', + 'from' => 'Von', + 'to' => 'An', + 'total-customers' => 'Anzahl Kunden', + 'total-orders' => 'Anzahl Aufträge', + 'total-sale' => 'Gesamterlös', + 'average-sale' => 'Durchschnitt pro Verkauf', + 'increased' => ':progress%', + 'decreased' => ':progress%', + 'sales' => 'Vertrieb', + 'top-performing-categories' => 'Top Kategorien', + 'product-count' => ':count Produkte', + 'top-selling-products' => 'Top Produkte', + 'sale-count' => ':count Verkäufe', + 'customer-with-most-sales' => 'Kunden Mit Dem Meisten Umsatz', + 'order-count' => ':count Bestellungen', + 'revenue' => 'Einnahmen :total', + 'stock-threshold' => 'Lagerbestand', + 'qty-left' => ':qty Verbleibend', + ], + 'datagrid' => + [ + 'mass-ops' => + [ + 'method-error' => 'Fehler! Falsche Methode erkannt, überprüfen Sie die Konfiguration der Massenaktion', + 'delete-success' => 'Ausgewählte :resource wurden erfolgreich gelöscht', + 'partial-action' => 'Einige Aktionen wurden nicht durchgeführt, aufgrund von System-Einschränkungen von :resource', + 'update-success' => 'Ausgewählt :resource wurden erfolgreich aktualisiert', + 'no-resource' => 'Die bereitgestellte Ressource reicht für die Aktion nicht aus', + ], + 'id' => 'Id', + 'status' => 'Status', + 'code' => 'Code', + 'admin-name' => 'Name', + 'name' => 'Name', + 'direction' => 'Richtung', + 'fullname' => 'Vollständiger Name', + 'type' => 'Typ', + 'copy' => 'Kopieren', + 'required' => 'Erforderlich', + 'unique' => 'Einzigartig', + 'per-locale' => 'Sprach-basierend', + 'per-channel' => 'Channel-basierend', + 'position' => 'Position', + 'locale' => 'Sprache', + 'hostname' => 'Hostname', + 'email' => 'E-Mail', + 'group' => 'Gruppe', + 'phone' => 'Telefon', + 'gender' => 'Geschlecht', + 'title' => 'Titel', + 'layout' => 'Layout', + 'url-key' => 'URL-Schlüssel', + 'comment' => 'Kommentar', + 'product-name' => 'Produkt', + 'currency-name' => 'Währungsname', + 'exch-rate' => 'Tauschrate', + 'priority' => 'Priorität', + 'subscribed' => 'Abonniert', + 'base-total' => 'Basis Gesamt', + 'grand-total' => 'Gesamtsumme', + 'order-date' => 'Bestelldatum', + 'channel-name' => 'Kanal Name', + 'billed-to' => 'Rechnung an', + 'shipped-to' => 'Versendet an', + 'order-id' => 'Auftragsnummer', + 'invoice-date' => 'Rechnungsdatum', + 'total-qty' => 'Gesamtmenge', + 'inventory-source' => 'Inventar Quelle', + 'shipment-date' => 'Versand Datum', + 'shipment-to' => 'Versand', + 'sku' => 'SKU', + 'product-number' => 'Produktnummer', + 'price' => 'Preis', + 'qty' => 'Menge', + 'permission-type' => 'Berechtigungsart', + 'identifier' => 'Bezeichner', + 'state' => 'Bundesland', + 'country' => 'Land', + 'tax-rate' => 'Rate', + 'role' => 'Rolle', + 'sub-total' => 'Zwischensumme', + 'no-of-products' => 'Anzahl der Produkte', + 'attribute-family' => 'Attributgruppe', + 'starts-from' => 'Beginnt von', + 'ends-till' => 'Endet bis', + 'per-cust' => 'Pro Kunde', + 'usage-throttle' => 'Einsatzzeiten', + 'for-guest' => 'Für Gäste', + 'order_number' => 'Auftragsnummer', + 'refund-date' => 'Rückerstattung Datum', + 'refunded' => 'Erstattet', + 'start' => 'Starten', + 'end' => 'Ende', + 'active' => 'Aktiv', + 'inactive' => 'Inaktiv', + 'true' => 'Wahr', + 'false' => 'Falsch', + 'approved' => 'Genehmigt', + 'pending' => 'Ausstehend', + 'disapproved' => 'Abgelehnt', + 'coupon-code' => 'Gutschein-Code', + 'times-used' => 'Mal Verwendet', + 'created-date' => 'Erstellt-Datum', + 'expiration-date' => 'Ablaufdatum', + 'edit' => 'Bearbeiten', + 'delete' => 'Löschen', + 'view' => 'Anzeigen', + 'rtl' => 'RTL', + 'ltr' => 'LTR', + 'update-status' => 'Update-Status', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', + ], + 'account' => + [ + 'title' => 'Mein Konto', + 'save-btn-title' => 'Speichern', + 'general' => 'Allgemein', + 'name' => 'Name', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'confirm-password' => 'Passwort bestätigen', + 'change-password' => 'Änderung des Account-Passworts', + 'current-password' => 'Aktuelles Passwort', + ], + 'users' => + [ + 'forget-password' => + [ + 'title' => 'Passwort vergessen', + 'header-title' => 'Passwort wiederherstellen', + 'email' => 'Registrierte E-Mail-Adresse', + 'password' => 'Passwort', 'confirm-password' => 'Passwort bestätigen', - 'change-password' => 'Änderung des Account-Passworts', - 'current-password' => 'Aktuelles Passwort', - ), - 'users' => - array ( - 'forget-password' => - array ( - 'title' => 'Passwort vergessen', - 'header-title' => 'Passwort wiederherstellen', - 'email' => 'Registrierte E-Mail-Adresse', - 'password' => 'Passwort', - 'confirm-password' => 'Passwort bestätigen', - 'back-link-title' => 'Zurück zur Anmeldung', - 'submit-btn-title' => 'E-Mail zum Zurücksetzen des Passworts senden', - ), - 'reset-password' => - array ( - 'title' => 'Passwort zurücksetzen', - 'email' => 'Registrierte E-Mail-Adresse', - 'password' => 'Passwort', - 'confirm-password' => 'Passwort bestätigen', - 'back-link-title' => 'Zurück zur Anmeldung', - 'submit-btn-title' => 'Passwort Zurücksetzen', - ), - 'roles' => - array ( - 'title' => 'Rollen', - 'add-role-title' => 'Rolle hinzufügen', - 'edit-role-title' => 'Rolle bearbeiten', - 'save-btn-title' => 'Rolle speichern', - 'general' => 'Allgemein', - 'name' => 'Name', - 'description' => 'Beschreibung', - 'access-control' => 'Zugangskontrolle', - 'permissions' => 'Berechtigungen', - 'custom' => 'Benutzerdefiniert', - 'all' => 'Alle', - ), - 'users' => - array ( - 'title' => 'Benutzer', - 'add-user-title' => 'Benutzer hinzufügen', - 'edit-user-title' => 'Benutzer bearbeiten', - 'save-btn-title' => 'Benutzer speichern', - 'general' => 'Allgemein', - 'email' => 'E-Mail', - 'name' => 'Name', - 'password' => 'Passwort', - 'confirm-password' => 'Passwort bestätigen', - 'status-and-role' => 'Status und Rolle', - 'role' => 'Rolle', - 'status' => 'Status', - 'account-is-active' => 'Konto ist aktiv', - 'current-password' => 'Geben Sie das aktuelle Passwort ein', - 'confirm-delete' => 'Bestätigen Sie dieses Konto zu löschen', - 'confirm-delete-title' => 'Bestätigen Sie das Passwort vor dem Löschen', - 'delete-last' => 'Es ist mindestens ein Administrator erforderlich.', - 'delete-success' => 'Erfolg! Benutzer gelöscht', - 'incorrect-password' => 'Das von Ihnen eingegebene Passwort ist falsch', - 'password-match' => 'Aktuelle Passwörter stimmt nicht überein.', - 'account-save' => 'Konto-Änderungen erfolgreich gespeichert.', - 'login-error' => 'Bitte überprüfen Sie Ihre Anmeldeinformationen und versuchen Sie es erneut.', - 'activate-warning' => 'Ihr Konto ist noch nicht aktiviert, kontaktieren Sie bitte den Administrator.', - ), - 'sessions' => - array ( - 'title' => 'Anmelden', - 'email' => 'E-Mail', - 'password' => 'Passwort', - 'forget-password-link-title' => 'Passwort vergessen?', - 'remember-me' => 'Anmeldung merken', - 'submit-btn-title' => 'Anmelden', - ), - ), + 'back-link-title' => 'Zurück zur Anmeldung', + 'submit-btn-title' => 'E-Mail zum Zurücksetzen des Passworts senden', + ], + 'reset-password' => + [ + 'title' => 'Passwort zurücksetzen', + 'email' => 'Registrierte E-Mail-Adresse', + 'password' => 'Passwort', + 'confirm-password' => 'Passwort bestätigen', + 'back-link-title' => 'Zurück zur Anmeldung', + 'submit-btn-title' => 'Passwort Zurücksetzen', + ], + 'roles' => + [ + 'title' => 'Rollen', + 'add-role-title' => 'Rolle hinzufügen', + 'edit-role-title' => 'Rolle bearbeiten', + 'save-btn-title' => 'Rolle speichern', + 'general' => 'Allgemein', + 'name' => 'Name', + 'description' => 'Beschreibung', + 'access-control' => 'Zugangskontrolle', + 'permissions' => 'Berechtigungen', + 'custom' => 'Benutzerdefiniert', + 'all' => 'Alle', + ], + 'users' => + [ + 'title' => 'Benutzer', + 'add-user-title' => 'Benutzer hinzufügen', + 'edit-user-title' => 'Benutzer bearbeiten', + 'save-btn-title' => 'Benutzer speichern', + 'general' => 'Allgemein', + 'email' => 'E-Mail', + 'name' => 'Name', + 'password' => 'Passwort', + 'confirm-password' => 'Passwort bestätigen', + 'status-and-role' => 'Status und Rolle', + 'role' => 'Rolle', + 'status' => 'Status', + 'account-is-active' => 'Konto ist aktiv', + 'current-password' => 'Geben Sie das aktuelle Passwort ein', + 'confirm-delete' => 'Bestätigen Sie dieses Konto zu löschen', + 'confirm-delete-title' => 'Bestätigen Sie das Passwort vor dem Löschen', + 'delete-last' => 'Es ist mindestens ein Administrator erforderlich.', + 'delete-success' => 'Erfolg! Benutzer gelöscht', + 'incorrect-password' => 'Das von Ihnen eingegebene Passwort ist falsch', + 'password-match' => 'Aktuelle Passwörter stimmt nicht überein.', + 'account-save' => 'Konto-Änderungen erfolgreich gespeichert.', + 'login-error' => 'Bitte überprüfen Sie Ihre Anmeldeinformationen und versuchen Sie es erneut.', + 'activate-warning' => 'Ihr Konto ist noch nicht aktiviert, kontaktieren Sie bitte den Administrator.', + ], + 'sessions' => + [ + 'title' => 'Anmelden', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'forget-password-link-title' => 'Passwort vergessen?', + 'remember-me' => 'Anmeldung merken', + 'submit-btn-title' => 'Anmelden', + ], + ], 'sales' => - array ( - 'orders' => - array ( - 'title' => 'Bestellungen', - 'view-title' => 'Bestellung #:order_id', - 'cancel-btn-title' => 'Abbrechen', - 'shipment-btn-title' => 'Sendung', - 'invoice-btn-title' => 'Rechnung', - 'info' => 'Informationen', - 'invoices' => 'Rechnungen', - 'shipments' => 'Sendungen', - 'order-and-account' => 'Bestellung und Rechnung', - 'order-info' => 'Bestellinformationen', - 'order-date' => 'Bestelldatum', - 'order-status' => 'Bestellstatus', - 'order-status-canceled' => 'Abgebrochen', - 'order-status-closed' => 'Geschlossen', - 'order-status-fraud' => 'Betrug', - 'order-status-pending' => 'Ausstehend', - 'order-status-pending-payment' => 'Ausstehende Zahlung', - 'order-status-processing' => 'Verarbeitung', - 'order-status-success' => 'Abgeschlossen', - 'channel' => 'Kanal', - 'customer-name' => 'Name des Kunden', - 'email' => 'E-Mail', - 'contact-number' => 'Kontakt-Nummer', - 'account-info' => 'Account-Informationen', - 'address' => 'Adresse', - 'shipping-address' => 'Versandadresse', - 'billing-address' => 'Rechnungsadresse', - 'payment-and-shipping' => 'Zahlung und Versand', - 'payment-info' => 'Zahlungsinformationen', - 'payment-method' => 'Zahlungsmethode', - 'currency' => 'Währung', - 'shipping-info' => 'Versand-Informationen', - 'shipping-method' => 'Versandart', - 'shipping-price' => 'Versandkosten', - 'products-ordered' => 'Bestellte Produkte', - 'SKU' => 'SKU', - 'product-name' => 'Produktname', - 'qty' => 'Menge', - 'item-status' => 'Produktstatus', - 'item-ordered' => 'Bestellt (:qty_ordered)', - 'item-invoice' => 'In Rechnung gestellt (:qty_invoiced)', - 'item-shipped' => 'Versand (:qty_shipped)', - 'item-canceled' => 'Abgebrochen (:qty_canceled)', - 'item-refunded' => 'Erstattet (:qty_refunded)', - 'price' => 'Preis', - 'total' => 'Insgesamt', - 'subtotal' => 'Zwischensumme', - 'shipping-handling' => 'Versand & Verpackungskosten', - 'discount' => 'Rabatt', - 'tax' => 'Umsatzsteuer', - 'tax-percent' => 'Umsatzsteuer Prozent', - 'tax-amount' => 'Umsatzsteuer Betrag', - 'discount-amount' => 'Rabatt Betrag', - 'grand-total' => 'Gesamtsumme', - 'total-paid' => 'Insgesamt Bezahlt', - 'total-refunded' => 'Insgesamt Erstattet', - 'total-due' => 'Insgesamt fällig', - 'cancel-confirm-msg' => 'Sind Sie sicher, dass Sie diese Bestellung stornieren möchten?', - 'refund-btn-title' => 'Rückerstattung', - 'refunds' => 'Erstattungen', - ), - 'invoices' => - array ( - 'title' => 'Rechnungen', - 'id' => 'Id', - 'invoice-id' => 'Rechnungsnummer', - 'date' => 'Rechnungsdatum', - 'order-id' => 'Auftragsnummer', - 'customer-name' => 'Name des Kunden', - 'status' => 'Status', - 'amount' => 'Betrag', - 'action' => 'Aktion', - 'add-title' => 'Rechnung erstellen', - 'save-btn-title' => 'Rechnung speichern', - 'qty' => 'Menge', - 'qty-ordered' => 'Bestellte Menge', - 'qty-to-invoice' => 'Menge in Rechnung zu stellen', - 'view-title' => 'Rechnung #:invoice_id', - 'bill-to' => 'Rechnung an', - 'ship-to' => 'Versenden an', - 'print' => 'Drucken', - 'order-date' => 'Bestell-Datum', - 'creation-error' => 'Die Erstellung einer Bestellrechnung ist nicht zulässig.', - 'product-error' => 'Eine Rechnung kann nicht ohne Produkte erstellt werden.', - ), - 'shipments' => - array ( - 'title' => 'Sendungen', - 'id' => 'Id', - 'date' => 'Versanddatum', - 'order-id' => 'Auftragsnummer', - 'order-date' => 'Bestelldatum', - 'customer-name' => 'Name des Kunden', - 'total-qty' => 'Menge insgesamt', - 'action' => 'Aktion', - 'add-title' => 'Sendung anlegen', - 'save-btn-title' => 'Versandkosten sparen', - 'qty-ordered' => 'Bestellte Menge', - 'qty-to-ship' => 'Menge zu versenden', - 'available-sources' => 'Verfügbaren Quellen', - 'source' => 'Quelle', - 'select-source' => 'Bitte wählen sie die Quelle', - 'qty-available' => 'Menge verfügbar', - 'inventory-source' => 'Inventarquelle', - 'carrier-title' => 'Zulieferer', - 'tracking-number' => 'Tracking-Nummer', - 'view-title' => 'Versand #:shipment_id', - 'creation-error' => 'Für diese Bestellung kann kein Versand erstellt werden.', - 'order-error' => 'Die Erstellung von Auftragssendungen ist nicht zulässig.', - 'quantity-invalid' => 'Die angeforderte Menge ist ungültig oder nicht verfügbar.', - ), - 'refunds' => - array ( - 'title' => 'Erstattungen', - 'id' => 'Id', - 'add-title' => 'Erstattung erstellen', - 'save-btn-title' => 'Rückerstattung', - 'order-id' => 'Auftragsnummer', - 'qty-ordered' => 'Bestellte Menge', - 'qty-to-refund' => 'Menge zu erstatten', - 'refund-shipping' => 'Erstattung Versand', - 'adjustment-refund' => 'Rückerstattung anpassen', - 'adjustment-fee' => 'Gebühr anpassen', - 'update-qty' => 'Mengen anpassen', - 'invalid-qty' => 'Wir haben eine ungültige Menge gefunden, um Artikel zu erstatten.', - 'refund-limit-error' => 'Das meiste Geld, das zur Rückerstattung zur Verfügung steht, ist :Höhe.', - 'refunded' => 'Erstattet', - 'date' => 'Rückerstattungsdatum', - 'customer-name' => 'Name des Kunden', - 'status' => 'Status', - 'action' => 'Aktion', - 'view-title' => 'Rückerstattung #:refund_id', - 'invalid-refund-amount-error' => 'Der Rückerstattungsbetrag sollte nicht Null sein.', - ), - ), + [ + 'orders' => + [ + 'title' => 'Bestellungen', + 'view-title' => 'Bestellung #:order_id', + 'cancel-btn-title' => 'Abbrechen', + 'shipment-btn-title' => 'Sendung', + 'invoice-btn-title' => 'Rechnung', + 'info' => 'Informationen', + 'invoices' => 'Rechnungen', + 'shipments' => 'Sendungen', + 'order-and-account' => 'Bestellung und Rechnung', + 'order-info' => 'Bestellinformationen', + 'order-date' => 'Bestelldatum', + 'order-status' => 'Bestellstatus', + 'order-status-canceled' => 'Abgebrochen', + 'order-status-closed' => 'Geschlossen', + 'order-status-fraud' => 'Betrug', + 'order-status-pending' => 'Ausstehend', + 'order-status-pending-payment' => 'Ausstehende Zahlung', + 'order-status-processing' => 'Verarbeitung', + 'order-status-success' => 'Abgeschlossen', + 'channel' => 'Kanal', + 'customer-name' => 'Name des Kunden', + 'email' => 'E-Mail', + 'contact-number' => 'Kontakt-Nummer', + 'account-info' => 'Account-Informationen', + 'address' => 'Adresse', + 'shipping-address' => 'Versandadresse', + 'billing-address' => 'Rechnungsadresse', + 'payment-and-shipping' => 'Zahlung und Versand', + 'payment-info' => 'Zahlungsinformationen', + 'payment-method' => 'Zahlungsmethode', + 'currency' => 'Währung', + 'shipping-info' => 'Versand-Informationen', + 'shipping-method' => 'Versandart', + 'shipping-price' => 'Versandkosten', + 'products-ordered' => 'Bestellte Produkte', + 'SKU' => 'SKU', + 'product-name' => 'Produktname', + 'qty' => 'Menge', + 'item-status' => 'Produktstatus', + 'item-ordered' => 'Bestellt (:qty_ordered)', + 'item-invoice' => 'In Rechnung gestellt (:qty_invoiced)', + 'item-shipped' => 'Versand (:qty_shipped)', + 'item-canceled' => 'Abgebrochen (:qty_canceled)', + 'item-refunded' => 'Erstattet (:qty_refunded)', + 'price' => 'Preis', + 'total' => 'Insgesamt', + 'subtotal' => 'Zwischensumme', + 'shipping-handling' => 'Versand & Verpackungskosten', + 'discount' => 'Rabatt', + 'tax' => 'Umsatzsteuer', + 'tax-percent' => 'Umsatzsteuer Prozent', + 'tax-amount' => 'Umsatzsteuer Betrag', + 'discount-amount' => 'Rabatt Betrag', + 'grand-total' => 'Gesamtsumme', + 'total-paid' => 'Insgesamt Bezahlt', + 'total-refunded' => 'Insgesamt Erstattet', + 'total-due' => 'Insgesamt fällig', + 'cancel-confirm-msg' => 'Sind Sie sicher, dass Sie diese Bestellung stornieren möchten?', + 'refund-btn-title' => 'Rückerstattung', + 'refunds' => 'Erstattungen', + 'transactions' => 'Transactions' + ], + 'invoices' => + [ + 'title' => 'Rechnungen', + 'id' => 'Id', + 'invoice-id' => 'Rechnungsnummer', + 'date' => 'Rechnungsdatum', + 'order-id' => 'Auftragsnummer', + 'customer-name' => 'Name des Kunden', + 'status' => 'Status', + 'amount' => 'Betrag', + 'action' => 'Aktion', + 'add-title' => 'Rechnung erstellen', + 'save-btn-title' => 'Rechnung speichern', + 'qty' => 'Menge', + 'qty-ordered' => 'Bestellte Menge', + 'qty-to-invoice' => 'Menge in Rechnung zu stellen', + 'view-title' => 'Rechnung #:invoice_id', + 'bill-to' => 'Rechnung an', + 'ship-to' => 'Versenden an', + 'print' => 'Drucken', + 'order-date' => 'Bestell-Datum', + 'creation-error' => 'Die Erstellung einer Bestellrechnung ist nicht zulässig.', + 'product-error' => 'Eine Rechnung kann nicht ohne Produkte erstellt werden.', + ], + 'shipments' => + [ + 'title' => 'Sendungen', + 'id' => 'Id', + 'date' => 'Versanddatum', + 'order-id' => 'Auftragsnummer', + 'order-date' => 'Bestelldatum', + 'customer-name' => 'Name des Kunden', + 'total-qty' => 'Menge insgesamt', + 'action' => 'Aktion', + 'add-title' => 'Sendung anlegen', + 'save-btn-title' => 'Versandkosten sparen', + 'qty-ordered' => 'Bestellte Menge', + 'qty-to-ship' => 'Menge zu versenden', + 'available-sources' => 'Verfügbaren Quellen', + 'source' => 'Quelle', + 'select-source' => 'Bitte wählen sie die Quelle', + 'qty-available' => 'Menge verfügbar', + 'inventory-source' => 'Inventarquelle', + 'carrier-title' => 'Zulieferer', + 'tracking-number' => 'Tracking-Nummer', + 'view-title' => 'Versand #:shipment_id', + 'creation-error' => 'Für diese Bestellung kann kein Versand erstellt werden.', + 'order-error' => 'Die Erstellung von Auftragssendungen ist nicht zulässig.', + 'quantity-invalid' => 'Die angeforderte Menge ist ungültig oder nicht verfügbar.', + ], + 'refunds' => + [ + 'title' => 'Erstattungen', + 'id' => 'Id', + 'add-title' => 'Erstattung erstellen', + 'save-btn-title' => 'Rückerstattung', + 'order-id' => 'Auftragsnummer', + 'qty-ordered' => 'Bestellte Menge', + 'qty-to-refund' => 'Menge zu erstatten', + 'refund-shipping' => 'Erstattung Versand', + 'adjustment-refund' => 'Rückerstattung anpassen', + 'adjustment-fee' => 'Gebühr anpassen', + 'update-qty' => 'Mengen anpassen', + 'invalid-qty' => 'Wir haben eine ungültige Menge gefunden, um Artikel zu erstatten.', + 'refund-limit-error' => 'Das meiste Geld, das zur Rückerstattung zur Verfügung steht, ist :Höhe.', + 'refunded' => 'Erstattet', + 'date' => 'Rückerstattungsdatum', + 'customer-name' => 'Name des Kunden', + 'status' => 'Status', + 'action' => 'Aktion', + 'view-title' => 'Rückerstattung #:refund_id', + 'invalid-refund-amount-error' => 'Der Rückerstattungsbetrag sollte nicht Null sein.', + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' + ] + ], 'catalog' => - array ( - 'products' => - array ( - 'title' => 'Produkte', - 'add-product-btn-title' => 'Produkt hinzufügen', - 'add-title' => 'Produkt hinzufügen', - 'edit-title' => 'Produkt bearbeiten', - 'save-btn-title' => 'Produkt speichern', - 'general' => 'Allgemein', - 'product-type' => 'Produkttyp', - 'simple' => 'Einfach', - 'configurable' => 'Konfigurierbar', - 'familiy' => 'Attributgruppe', - 'sku' => 'SKU', - 'configurable-attributes' => 'Konfigurierbare Attribute', - 'attribute-header' => 'Attribut(s)', - 'attribute-option-header' => 'Attribut Option(s)', - 'no' => 'Nein', - 'yes' => 'Ja', - 'disabled' => 'Deaktiviert', - 'enabled' => 'Aktiviert', - 'add-variant-btn-title' => 'Variante hinzufügen', - 'name' => 'Name', - 'qty' => 'Menge', - 'price' => 'Preis', - 'weight' => 'Gewicht', - 'status' => 'Status', - 'add-variant-title' => 'Variante hinzufügen', - 'variant-already-exist-message' => 'Eine Variante mit denselben Attributoptionen ist bereits vorhanden.', - 'add-image-btn-title' => 'Bild hinzufügen', - 'mass-delete-success' => 'Alle ausgewählten Produkte wurden erfolgreich gelöscht', - 'mass-update-success' => 'Alle ausgewählten Produkte wurden erfolgreich aktualisiert', - 'configurable-error' => 'Bitte wählen Sie mindestens eine konfigurierbares Attribut.', - 'categories' => 'Kategorien', - 'images' => 'Bilder', - 'inventories' => 'Vorräte', - 'variations' => 'Variationen', - 'downloadable' => 'Herunterladbare Informationen', - 'links' => 'Links', - 'add-link-btn-title' => 'Link hinzufügen', - 'samples' => 'Beispiele', - 'add-sample-btn-title' => 'Beispiel hinzufügen', - 'downloads' => 'Download erlaubt', - 'file' => 'Datei', - 'sample' => 'Beispiel', - 'upload-file' => 'Datei hochladen', - 'url' => 'Url', - 'sort-order' => 'Sortierreihenfolge', - 'browse-file' => 'Datei durchsuchen', - 'product-link' => 'Verlinkte Produkte', - 'cross-selling' => 'Cross-Selling', - 'up-selling' => 'Up Selling', - 'related-products' => 'Verwandte Produkte', - 'product-search-hint' => 'Geben Sie den Produktnamen ein', - 'no-result-found' => 'Produkte nicht mit demselben Namen gefunden.', - 'searching' => 'Suche ...', - 'grouped-products' => 'Gruppierte Produkte', - 'search-products' => 'Produkte suchen', - 'channel' => 'Kanäle', - 'bundle-items' => 'Artikel bündeln', - 'add-option-btn-title' => 'Option hinzufügen', - 'option-title' => 'Option Titel', - 'input-type' => 'Input Type', - 'is-required' => 'Ist erforderlich', - 'select' => 'Select', - 'radio' => 'Radio', - 'checkbox' => 'Checkbox', - 'multiselect' => 'Multiselect', - 'new-option' => 'Neue Option', - 'is-default' => 'Ist Standard', - ), - 'attributes' => - array ( - 'title' => 'Attribute', - 'add-title' => 'Attribut hinzufügen', - 'edit-title' => 'Attribut bearbeiten', - 'save-btn-title' => 'Attribut speichern', - 'general' => 'Allgemein', - 'code' => 'Attribut-Code', - 'type' => 'Attribut-Typ', - 'text' => 'Text', - 'textarea' => 'Textarea', - 'price' => 'Preis', - 'boolean' => 'Boolean', - 'select' => 'Select', - 'multiselect' => 'Multiselect', - 'datetime' => 'Datetime', - 'date' => 'Datum', - 'label' => 'Label', - 'admin' => 'Admin', - 'options' => 'Optionen', - 'position' => 'Position', - 'add-option-btn-title' => 'Option hinzufügen', - 'validations' => 'Validierungen', - 'input_validation' => 'Eingabe-Validierung', - 'is_required' => 'Ist erforderlich', - 'is_unique' => 'Ist einzigartig', - 'number' => 'Anzahl', - 'decimal' => 'Dezimal', - 'email' => 'E-Mail', - 'url' => 'URL', - 'configuration' => 'Konfiguration', - 'status' => 'Status', - 'yes' => 'Ja', - 'no' => 'Nein', - 'value_per_locale' => 'Wert pro Sprache', - 'value_per_channel' => 'Wert pro Kanal', - 'is_filterable' => 'Verwendung in der geschichteten Navigation', - 'is_configurable' => 'Verwenden Sie diese Option, um ein konfigurierbares Produkt zu erstellen', - 'admin_name' => 'Admin-Name', - 'is_visible_on_front' => 'Sichtbar auf der Produktansichtseite im Frontend', - 'swatch_type' => 'Farbfeld-Typ', - 'dropdown' => 'Dropdown', - 'color-swatch' => 'Farbfeld', - 'image-swatch' => 'Bild Farbfeld', - 'text-swatch' => 'Text Farbfeld', - 'swatch' => 'Farbfeld', - 'image' => 'Bild', - 'file' => 'Datei', - 'checkbox' => 'Checkbox', - 'use_in_flat' => 'In Produkt Flat Tabelle erstellen', - 'is_comparable' => 'Attribut ist vergleichbar', - 'default_null_option' => 'Erstellen Sie eine leere Standardoption', - ), - 'families' => - array ( - 'title' => 'Familien', - 'add-family-btn-title' => 'Familie hinzufügen', - 'add-title' => 'Familie hinzufügen', - 'edit-title' => 'Familie bearbeiten', - 'save-btn-title' => 'Familie speichern', - 'general' => 'Allgemein', - 'code' => 'Familien Code', - 'name' => 'Name', - 'groups' => 'Gruppen', - 'add-group-title' => 'Gruppe hinzufügen', - 'position' => 'Position', - 'attribute-code' => 'Code', - 'type' => 'Typ', - 'add-attribute-title' => 'Attribut hinzufügen', - 'search' => 'Suche', - 'group-exist-error' => 'Eine gleichnamige Gruppe existiert bereits.', - ), - 'categories' => - array ( - 'title' => 'Kategorien', - 'add-title' => 'Kategorie hinzufügen', - 'edit-title' => 'Kategorie bearbeiten', - 'save-btn-title' => 'Kategorie speichern', - 'general' => 'Allgemein', - 'name' => 'Name', - 'visible-in-menu' => 'Sichtbar im Menü', - 'yes' => 'Ja', - 'no' => 'Nein', - 'position' => 'Position', - 'display-mode' => 'Display-Modus', - 'products-and-description' => 'Produkte und Beschreibung', - 'products-only' => 'Nur Produkte', - 'description-only' => 'Nur Beschreibungen', - 'description-and-images' => 'Beschreibung und Bilder', - 'description' => 'Beschreibung', - 'parent-category' => 'Übergeordnete Kategorie', - 'seo' => 'Suchmaschinen-Optimierung', - 'slug' => 'Slug', - 'meta_title' => 'Meta Titel', - 'meta_description' => 'Meta-Beschreibung', - 'meta_keywords' => 'Meta-Schlüsselworte', - 'image' => 'Bild', - 'filterable-attributes' => 'Filterbare Attribute', - 'attributes' => 'Attribute', - ), - ), - 'configuration' => - array ( - 'title' => 'Konfiguration', - 'save-btn-title' => 'Speichern', - 'save-message' => 'Konfiguration erfolgreich gespeichert', - 'yes' => 'Ja', + [ + 'products' => + [ + 'title' => 'Produkte', + 'add-product-btn-title' => 'Produkt hinzufügen', + 'add-title' => 'Produkt hinzufügen', + 'edit-title' => 'Produkt bearbeiten', + 'save-btn-title' => 'Produkt speichern', + 'general' => 'Allgemein', + 'product-type' => 'Produkttyp', + 'simple' => 'Einfach', + 'configurable' => 'Konfigurierbar', + 'familiy' => 'Attributgruppe', + 'sku' => 'SKU', + 'configurable-attributes' => 'Konfigurierbare Attribute', + 'attribute-header' => 'Attribut(s)', + 'attribute-option-header' => 'Attribut Option(s)', 'no' => 'Nein', - 'delete' => 'Löschen', - 'tax-categories' => - array ( - 'title' => 'Steuerkategorien', - 'add-title' => 'Steuerkategorie hinzufügen', - 'edit-title' => 'Steuerkategorie bearbeiten', - 'save-btn-title' => 'Steuerkategorie speichern', - 'general' => 'Steuerkategorie', - 'select-channel' => 'Wählen Sie einen Kanal', - 'name' => 'Name', - 'code' => 'Code', - 'description' => 'Beschreibung', - 'select-taxrates' => 'Wählen Sie die Steuersätze', - 'edit' => - array ( - 'title' => 'Steuerkategorie bearbeiten', - 'edit-button-title' => 'Steuerkategorie bearbeiten', - ), - ), - 'tax-rates' => - array ( - 'title' => 'Steuersätze', - 'add-title' => 'Steuersatz hinzufügen', - 'edit-title' => 'Steuersatz bearbeiten', - 'save-btn-title' => 'Steuersatz speichern', - 'general' => 'Steuersatz', - 'identifier' => 'Bezeichnung', - 'is_zip' => 'Postleitzahlen Reichweite aktivieren', - 'zip_from' => 'Postleitzahl von', - 'zip_to' => 'Postleitzahl bis', - 'state' => 'Staat', - 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.', - 'country' => 'Land', - 'tax_rate' => 'Rate', - 'edit' => - array ( - 'title' => 'Steuersatz bearbeiten', - 'edit-button-title' => 'Steuersatz bearbeiten', - ), - 'zip_code' => 'Postleitzahl', - ), - 'sales' => - array ( - 'shipping-method' => - array ( - 'title' => 'Versand-Methoden', - 'save-btn-title' => 'Speichern', - 'description' => 'Bearbeiten', - 'active' => 'Aktiv', - 'status' => 'Status', - ), - ), - ), - 'settings' => - array ( - 'locales' => - array ( - 'title' => 'Sprachen', - 'add-title' => 'Sprache hinzufügen', - 'edit-title' => 'Sprache bearbeiten', - 'save-btn-title' => 'Sprache speichern', - 'general' => 'Allgemein', - 'code' => 'Code', - 'name' => 'Name', - 'direction' => 'Richtung', - 'create-success' => 'Sprache erfolgreich erstellt.', - 'update-success' => 'Sprache erfolgreich aktualisiert.', - 'delete-success' => 'Sprache erfolgreich gelöscht.', - 'last-delete-error' => 'Mindestens eine Sprache ist erforderlich.', - ), - 'countries' => - array ( - 'title' => 'Länder', - 'add-title' => 'Land hinzufügen', - 'save-btn-title' => 'Land speichern', - 'general' => 'Allgemein', - 'code' => 'Code', - 'name' => 'Name', - ), - 'currencies' => - array ( - 'title' => 'Währungen', - 'add-title' => 'Währung hinzufügen', - 'edit-title' => 'Währung bearbeiten', - 'save-btn-title' => 'Währung speichern', - 'general' => 'Allgemein', - 'code' => 'Code', - 'name' => 'Name', - 'symbol' => 'Symbol', - 'create-success' => 'Währung erfolgreich erstellt.', - 'update-success' => 'Währung erfolgreich aktualisiert.', - 'delete-success' => 'Währung erfolgreich gelöscht.', - 'last-delete-error' => 'Mindestens eine Währung ist erforderlich.', - ), - 'exchange_rates' => - array ( - 'title' => 'Wechselkurse', - 'add-title' => 'Wechselkurs hinzufügen', - 'edit-title' => 'Wechselkurs bearbeiten', - 'save-btn-title' => 'Wechselkurs speichern', - 'general' => 'Allgemein', - 'source_currency' => 'Quell-Währung', - 'target_currency' => 'Ziel-Währung', - 'rate' => 'Rate', - 'exchange-class-not-found' => ':service Wechselkursklasse nicht gefunden', - 'update-rates' => 'Rate aktualisieren mit :service', - 'create-success' => 'Wechselkurs erfolgreich erstellt.', - 'update-success' => 'Wechselkurse erfolgreichaktualisiert.', - 'delete-success' => 'Wechselkurs erfolgreich gelöscht.', - 'last-delete-error' => 'Mindestens ein Wechselkurs ist erforderlich.', - ), - 'inventory_sources' => - array ( - 'title' => 'Inventar-Quellen', - 'add-title' => 'Inventar Quelle hinzufügen', - 'edit-title' => 'Inventar Quelle bearbeiten', - 'save-btn-title' => 'Inventar Quelle speichern', - 'general' => 'Allgemein', - 'code' => 'Code', - 'name' => 'Name', - 'description' => 'Beschreibung', - 'source-is-active' => 'Quelle ist aktiv', - 'contact-info' => 'Kontakt-Informationen', - 'contact_name' => 'Name', - 'contact_email' => 'E-Mail', - 'contact_number' => 'Kontakt-Nummer', - 'contact_fax' => 'Fax', - 'address' => 'Quell-Adresse', - 'country' => 'Land', - 'state' => 'Staat', - 'city' => 'Stadt', - 'street' => 'Straße', - 'postcode' => 'Postleitzahl', - 'priority' => 'Priorität', - 'latitude' => 'Breite', - 'longitude' => 'Länge', - 'status' => 'Status', - 'create-success' => 'Inventar Quelle erfolgreich erstellt.', - 'update-success' => 'Inventar Quelle erfolgreich aktualisiert.', - 'delete-success' => 'Inventar Quelle erfolgreich gelöscht.', - 'last-delete-error' => 'Mindestens eine Inventar-Quelle erforderlich ist.', - ), - 'channels' => - array ( - 'title' => 'Kanäle', - 'add-title' => 'Kanal hinzufügen', - 'edit-title' => 'Kanal bearbeiten', - 'save-btn-title' => 'Kanal speichern', - 'general' => 'Allgemein', - 'code' => 'Code', - 'name' => 'Name', - 'description' => 'Beschreibung', - 'hostname' => 'Hostname', - 'currencies-and-locales' => 'Währungen und Spachen', - 'locales' => 'Sprachen', - 'default-locale' => 'Standard-Sprache', - 'currencies' => 'Währungen', - 'base-currency' => 'Standard-Währung', - 'root-category' => 'Root-Kategorie', - 'inventory_sources' => 'Inventar-Quellen', - 'design' => 'Design', - 'theme' => 'Theme', - 'home_page_content' => 'Startseite Inhalt', - 'footer_content' => 'Fußzeile Inhalt', - 'logo' => 'Logo', - 'favicon' => 'Favicon', - 'create-success' => 'Kanal erfolgreich erstellt.', - 'update-success' => 'Kanal erfolgreich aktualisiert.', - 'delete-success' => 'Kanal erfolgreich gelöscht.', - 'last-delete-error' => 'Mindestens ein Kanal ist erforderlich.', - 'seo' => 'Home-Page-SEO', - 'seo-title' => 'Meta Titel', - 'seo-description' => 'Meta-Beschreibung', - 'seo-keywords' => 'Meta-keywords', - ), - 'sliders' => - array ( - 'title' => 'Sliders', - 'name' => 'Name', - 'add-title' => 'Slider erstellen', - 'edit-title' => 'Slider editieren', - 'save-btn-title' => 'Slider speichern', - 'general' => 'Allgemein', - 'image' => 'Bild', - 'content' => 'Inhalt', - 'channels' => 'Kanal', - 'created-success' => 'Slider erfolgreich erstellt', - 'created-fault' => 'Fehler beim Erstellen des Slider-Elements', - 'update-success' => 'Slider-Eintrag wurde erfolgreich aktualisiert', - 'update-fail' => 'Slider kann nicht aktualisiert werden', - 'delete-success' => 'Der letzte Slider kann nicht gelöscht werden', - 'delete-fail' => 'Slider erfolgreich gelöscht', - ), - 'tax-categories' => - array ( - 'title' => 'Steuerkategorien', - 'add-title' => 'Steuerkategorie erstellen', - 'edit-title' => 'Steuerkategorie bearbeiten', - 'save-btn-title' => 'Steuern-Kategorie speichern', - 'general' => 'Steuerkategorie', - 'select-channel' => 'Wählen Sie einen Kanal', - 'name' => 'Name', - 'code' => 'Code', - 'description' => 'Beschreibung', - 'select-taxrates' => 'Wählen Sie die Steuersätze', - 'edit' => - array ( - 'title' => 'Steuerkategorie bearbeiten', - 'edit-button-title' => 'Steuerkategorie bearbeiten', - ), - 'create-success' => 'Neue Steuerkategorie Angelegt', - 'create-error' => 'Fehler Bei Der Erstellung Der Steuerkategorie', - 'update-success' => 'Erfolgreich Aktualisiert, Steuerkategorie', - 'update-error' => 'Fehler Beim Update Der Steuerkategorie', - 'atleast-one' => 'Nicht Löschen Sie Die Letzte Steuerart', - 'delete' => 'Steuer Kategorie Wurde Erfolgreich Gelöscht', - ), - 'tax-rates' => - array ( - 'title' => 'Steuersätze', - 'add-title' => 'Steuersatz erstellen', - 'edit-title' => 'Steuersatz bearbeiten', - 'save-btn-title' => 'Steuersatz speichern', - 'general' => 'Steuersatz', - 'identifier' => 'Bezeichner', - 'is_zip' => 'Postleitzahlen Reichweite aktivieren', - 'zip_from' => 'Postleitzahl von', - 'zip_to' => 'Postleitzahl bis', - 'state' => 'Staat', - 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.', - 'country' => 'Land', - 'tax_rate' => 'Rate', - 'edit' => - array ( - 'title' => 'Steuersatz bearbeiten', - 'edit-button-title' => 'Steuersatz bearbeiten', - ), - 'zip_code' => 'Postleitzahl', - 'create-success' => 'Steuersatz erfolgreich erstellt', - 'create-error' => 'Steuersatz kann nicht erstellt werden', - 'update-success' => 'Steuersatz erfolgreich aktualisiert', - 'update-error' => 'Fehler! Steuersatz Kann nicht aktualisiert werden', - 'delete' => 'Steuersatz erfolgreich gelöscht', - 'atleast-one' => 'Letzter Steuersatz kann nicht gelöscht werden', - ), - 'development' => - array ( - 'title' => 'Entwicklung', - ), - ), - 'customers' => - array ( - 'groups' => - array ( - 'add-title' => 'Gruppe hinzufügen', - 'edit-title' => 'Gruppe bearbeiten', - 'save-btn-title' => 'Gruppe speichern', - 'title' => 'Gruppen', - 'code' => 'Code', - 'name' => 'Name', - 'is_user_defined' => 'Benutzer definiert', - 'yes' => 'Ja', - ), - 'addresses' => - array ( - 'title' => ':customer_name\'s Adressen-Liste', - 'vat_id' => 'Umsatzsteuer-ID', - 'create-title' => 'Kunden-Adresse erstellen', - 'edit-title' => 'Kunden-Adresse bearbeiten', - 'title-orders' => ':customer_name Auftragsliste', - 'address-list' => 'Adressliste', - 'order-list' => 'Bestellliste', - 'address-id' => 'Adresse-ID', - 'address-1' => 'Adresse 1', - 'city' => 'Stadt', - 'state-name' => 'Staat', - 'country-name' => 'Land', - 'postcode' => 'Postleitzahl', - 'default-address' => 'Standard-Adresse', - 'yes' => 'Ja', - 'not-approved' => 'Nicht zugelassen', - 'no' => 'Nein', - 'dash' => '-', - 'delete' => 'Löschen', - 'create-btn-title' => 'Adresse hinzufügen', - 'save-btn-title' => 'Adresse speichern', - 'general' => 'Allgemein', - 'success-create' => 'Erfolg: Kunden-Adresse erstellt wurde.', - 'success-update' => 'Erfolg: Kunden-Adresse erfolgreich aktualisiert.', - 'success-delete' => 'Erfolg: Kunden-Adresse erfolgreich gelöscht.', - 'success-mass-delete' => 'Erfolg: Die ausgewählten Adressen wurden erfolgreich gelöscht.', - 'error-create' => 'Fehler: Kunde-Adresse nicht erstellt.', - ), - 'note' => - array ( - 'title' => 'Notiz hinzufügen', - 'save-note' => 'Notiz speichern', - 'enter-note' => 'Hinweis eingeben', - 'help-title' => 'Notiz zu diesem Kunden hinzufügen', - ), - 'customers' => - array ( - 'add-title' => 'Kunden hinzufügen', - 'edit-title' => 'Kunde bearbeiten', - 'title' => 'Kunden', - 'first_name' => 'Vorname', - 'last_name' => 'Nachname', - 'gender' => 'Geschlecht', - 'email' => 'E-Mail', - 'date_of_birth' => 'Geburtsdatum', - 'phone' => 'Telefon', - 'customer_group' => 'Kundengruppe', - 'save-btn-title' => 'Kunde speichern', - 'channel_name' => 'Kanalname', - 'state' => 'Staat', - 'select-state' => 'Wählen Sie eine Region, ein Bundesland, oder eine Provinz aus.', - 'country' => 'Land', - 'other' => 'Andere', - 'male' => 'Männlich', - 'female' => 'Weiblich', - 'group-default' => 'Die Standardgruppe kann nicht gelöscht werden.', - 'edit-help-title' => 'Kunde bearbeiten', - 'delete-help-title' => 'Kunde löschen', - 'addresses' => 'Adressen', - 'mass-destroy-success' => 'Kunden erfolgreich gelöscht', - 'mass-update-success' => 'Kunden erfolgreich aktualisiert', - 'status' => 'Status', - 'active' => 'Aktiv', - 'inactive' => 'Inaktiv', - ), - 'reviews' => - array ( - 'title' => 'Bewertungen', - 'edit-title' => 'Bewertung bearbeiten', - 'rating' => 'Bewertung', - 'status' => 'Status', - 'comment' => 'Kommentar', - 'pending' => 'Ausstehend', - 'approved' => 'Genehmigen', - 'disapproved' => 'Missbilligen', - ), - 'subscribers' => - array ( - 'title' => 'Newsletter-Abonnenten', - 'title-edit' => 'Newsletter-Abonnenten bearbeiten', - 'email' => 'E-Mail', - 'is_subscribed' => 'Abonniert', - 'edit-btn-title' => 'Abonnenten bearbeiten', - 'update-success' => 'Der Abonnent wurde erfolgreich aktualisiert', - 'update-failed' => 'Fehler! Sie können den Abonnenten nicht kündigen', - 'delete' => 'Der Abonnent wurde erfolgreich gelöscht', - 'delete-failed' => 'Fehler! Abonnenten können nicht gelöscht werden', - ), - ), - 'promotions' => - array ( - 'cart-rules' => - array ( - 'title' => 'Warenkorbregeln', - 'add-title' => 'Warenkorbregel hinzufügen', - 'edit-title' => 'Warenkorbregel bearbeiten', - 'save-btn-title' => 'Warenkorbregel speichern', - 'rule-information' => 'Regelinformationen', - 'name' => 'Name', - 'description' => 'Beschreibung', - 'status' => 'Status', - 'is-active' => 'Warenkorbregel ist aktiv', - 'channels' => 'Kanäle', - 'customer-groups' => 'Kundengruppen', - 'coupon-type' => 'Gutscheintyp', - 'no-coupon' => 'Ohne Gutschein', - 'specific-coupon' => 'Gutscheintyp', - 'auto-generate-coupon' => 'Gutschein automatisch generieren', - 'no' => 'Nein', - 'yes' => 'Ja', - 'coupon-code' => 'Gutscheincode', - 'uses-per-coupon' => 'Verwendungen pro Gutschein', - 'uses-per-customer' => 'Verwendungen pro Kunde', - 'uses-per-customer-control-info' => 'Wird nur für angemeldete Kunden verwendet.', - 'from' => 'Von', - 'to' => 'An', - 'priority' => 'Priorität', - 'conditions' => 'Bedingungen', - 'condition-type' => 'Bedingungen Typ', - 'all-conditions-true' => 'Alle Bedingungen sind erfüllt', - 'any-condition-true' => 'Mindestens eine Bedingung ist erfüllt', - 'add-condition' => 'Bedingung hinzufügen', - 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus', - 'cart-attribute' => 'Warenkorbattribut', - 'subtotal' => 'Zwischensumme', - 'additional' => 'Zusatzinformationen', - 'total-items-qty' => 'Gesamtmenge der Artikel', - 'total-weight' => 'Gesamtgewicht', - 'payment-method' => 'Zahlungsmethode', - 'shipping-method' => 'Versandart', - 'shipping-postcode' => 'Postleitzahl', - 'shipping-state' => 'Versand Staat', - 'shipping-country' => 'Versand Land', - 'cart-item-attribute' => 'Warenkorb-Item-Attribut', - 'price-in-cart' => 'Betrag im Warenkorb', - 'qty-in-cart' => 'Menge im Warenkorb', - 'product-attribute' => 'Produkt-Attribut', - 'attribute-name-children-only' => ':attribute_name (Nur Kinder)', - 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)', - 'is-equal-to' => 'Gleich', - 'is-not-equal-to' => 'Ist nicht gleich', - 'equals-or-greater-than' => 'Gleich oder größer als', - 'equals-or-less-than' => 'Gleich oder weniger als', - 'greater-than' => 'Größer als', - 'less-than' => 'Weniger als', - 'contain' => 'Enthalten', - 'contains' => 'Enthält', - 'does-not-contain' => 'Nicht enthalten', - 'actions' => 'Aktionen', - 'action-type' => 'Aktion Typ', - 'percentage-product-price' => 'Prozentsatz des Produktpreises', - 'fixed-amount' => 'Fester Betrag', - 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkorb', - 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei', - 'discount-amount' => 'Rabattbetrag', - 'discount-quantity' => 'Maximale Anzahl reduzierter Artikel', - 'discount-step' => 'Kaufe Sie Menge X', - 'free-shipping' => 'Kostenloser Versand', - 'apply-to-shipping' => 'Auf den Versand anwenden', - 'coupon-codes' => 'Gutschein-Codes', - 'coupon-qty' => 'Gutschein Menge', - 'code-length' => 'Code-Länge', - 'code-format' => 'Code-Format', - 'alphanumeric' => 'Alphanumerisch', - 'alphabetical' => 'Alphabetisch', - 'numeric' => 'Numerisch', - 'code-prefix' => 'Code-Präfix', - 'code-suffix' => 'Code Suffix', - 'generate' => 'Generieren', - 'cart-rule-not-defind-error' => 'Warenkorb-Regel ist nicht definiert', - 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.', - 'end-other-rules' => 'Ende Andere Regeln', - 'children-categories' => 'Kategorien (Nur Kinder)', - 'parent-categories' => 'Kategorien (Nur Eltern)', - 'categories' => 'Kategorien', - 'attribute_family' => 'Attributgruppe', - ), - 'catalog-rules' => - array ( - 'title' => 'Katalogregeln', - 'add-title' => 'Katalogregel hinzufügen', - 'edit-title' => 'Katalogregel bearbeiten', - 'save-btn-title' => 'Katalogregel speichern', - 'rule-information' => 'Regeliformationen', - 'name' => 'Name', - 'description' => 'Beschreibung', - 'status' => 'Status', - 'is-active' => 'Katalogregel ist aktiv', - 'channels' => 'Kanäle', - 'customer-groups' => 'Kundengruppen', - 'no' => 'Nein', - 'yes' => 'Ja', - 'from' => 'Von', - 'to' => 'An', - 'priority' => 'Priorität', - 'conditions' => 'Bedingungen', - 'condition-type' => 'Bedingungen Typ', - 'all-conditions-true' => 'Alle Bedingungen sind erfüllt', - 'any-condition-true' => 'Jede Bedingung ist wahr', - 'add-condition' => 'Bedingung hinzufügen', - 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus', - 'product-attribute' => 'Produkt-Attribut', - 'attribute-name-children-only' => ':attribute_name (Nur Kinder)', - 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)', - 'is-equal-to' => 'Gleich', - 'is-not-equal-to' => 'Ist nicht gleich', - 'equals-or-greater-than' => 'Gleich oder größer als', - 'equals-or-less-than' => 'Gleich oder weniger als', - 'greater-than' => 'Größer als', - 'less-than' => 'Weniger als', - 'contain' => 'Enthalten', - 'contains' => 'Enthält', - 'does-not-contain' => 'Nicht enthalten', - 'actions' => 'Aktionen', - 'action-type' => 'Aktion Typ', - 'percentage-product-price' => 'Prozentsatz des Produktpreises', - 'fixed-amount' => 'Fester Betrag', - 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkob', - 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei', - 'discount-amount' => 'Rabatt-Betrag', - 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.', - 'end-other-rules' => 'Ende Andere Regeln', - 'categories' => 'Kategorien', - 'attribute_family' => 'Attributgruppe', - ), - ), - 'error' => - array ( - 'go-to-home' => 'HOME ÖFFNEN', - 'in-maitainace' => 'In Bearbeitung', - 'right-back' => 'Gleich wieder zurück', - 404 => - array ( - 'page-title' => '404-Seite nicht gefunden', - 'name' => '404', - 'title' => 'Seite nicht gefunden', - 'message' => 'Die gesuchte Seite existiert nicht oder wurde verschoben. Navigieren Sie mit dem Seitenmenü.', - ), - 403 => - array ( - 'page-title' => '403 Verboten-Fehler', - 'name' => '403', - 'title' => 'Verboten-Fehler', - 'message' => 'Sie haben keine Berechtigung um auf diese Seite zuzugreifen.', - ), - 500 => - array ( - 'page-title' => '500 Interner Serverfehler', - 'name' => '500', - 'title' => 'Interner Serverfehler', - 'message' => 'Der Server hat einen internen Fehler.', - ), - 401 => - array ( - 'page-title' => '401 Unauthorisiert', - 'name' => '401', - 'title' => 'Unauthorisiert', - 'message' => 'Die Anforderung wurde nicht angewendet, da keine gültigen Authentifizierungsdaten für die Zielressource vorhanden sind.', - ), - ), - 'export' => - array ( - 'export' => 'Export', - 'import' => 'Import', - 'format' => 'Wählen Sie ein Format', - 'download' => 'Download', - 'upload' => 'Hochladen', - 'csv' => 'CSV', - 'xls' => 'XLS', - 'file' => 'Datei', - 'upload-error' => 'Die Datei muss von folgendem Typ sein: xls, xlsx, csv.', - 'duplicate-error' => 'Bezeichner müssen eindeutig sein, doppelte Bezeichner :identifier in Zeile :position.', - 'enough-row-error' => 'die Datei hat nicht genug Zeilen', - 'allowed-type' => 'Erlaubter Typ :', - 'file-type' => 'csv, xls, xlsx.', - 'no-records' => 'Nichts zu exportieren', - 'illegal-format' => 'Fehler! Diese Art von Format wird entweder nicht unterstützt oder ist unzulässig', - ), - 'cms' => - array ( - 'pages' => - array ( - 'general' => 'Allgemein', - 'seo' => 'SEO', - 'pages' => 'Seiten', - 'title' => 'Seiten', - 'add-title' => 'Seite hinzufügen', - 'content' => 'Inhalt', - 'url-key' => 'URL-Schlüssel', - 'channel' => 'Kanäle', - 'locale' => 'Sprachen', - 'create-btn-title' => 'Seite speichern', - 'edit-title' => 'Seite bearbeiten', - 'edit-btn-title' => 'Seite speichern', - 'create-success' => 'Seite erfolgreich erstellt', - 'create-partial' => 'Einige der angeforderten Seiten sind bereits vorhanden', - 'create-failure' => 'Alle angeforderten Seiten sind bereits vorhanden', - 'update-success' => 'Seite erfolgreich aktualisiert', - 'update-failure' => 'Die Seite kann nicht aktualisiert werden', - 'page-title' => 'Titel der Seite', - 'layout' => 'Layout', - 'meta_keywords' => 'Meta-Schlüsselworte', - 'meta_description' => 'Meta-Beschreibung', - 'meta_title' => 'Meta Titel', - 'delete-success' => 'CMS-Seite erfolgreich gelöscht', - 'delete-failure' => 'CMS-Seite kann nicht gelöscht werden', - 'preview' => 'Vorschau', - 'one-col' => '
Use class: "static-container one-column" for one column layout.
', - 'two-col' => '
Use class: "static-container two-column" for two column layout.
', - 'three-col' => '
Use class: "static-container three-column" for three column layout.
', - 'helper-classes' => 'Helfer-Klassen', - ), - ), - 'response' => - array ( - 'being-used' => 'Diese Ressource :name wird verwendet in :source', - 'cannot-delete-default' => 'Der Standardkanal kann nicht gelöscht werden', - 'create-success' => ':name erfolgreich erstellt.', - 'update-success' => ':name erfolgreich aktualisiert.', - 'delete-success' => ':name erfolgreich gelöscht.', - 'delete-failed' => 'Fehler beim löschen von :name.', - 'last-delete-error' => 'Zumindest ein :name ist erforderlich.', - 'user-define-error' => 'System :name kann nicht gelöscht werden', - 'attribute-error' => ':name wird in konfigurierbaren Produkten verwendet.', - 'attribute-product-error' => ':name wird in Produkten verwendet.', - 'customer-associate' => ':name können nicht gelöscht werden, weil Kunden dieser Gruppe zugeordnet sind.', - 'currency-delete-error' => 'Diese Währung ist als Kanalbasiswährung festgelegt und kann daher nicht gelöscht werden.', - 'upload-success' => ':name erfolgreich hochgeladen.', - 'delete-category-root' => 'Die Root-Kategorie kann nicht gelöscht werden', - 'create-root-failure' => 'Kategorie mit dem Namen Root ist bereits vorhanden', - 'cancel-success' => ':name erfolgreich abgebrochen.', - 'cancel-error' => ':name können nicht storniert werden.', - 'already-taken' => 'Der :name wird bereits verwendet.', - 'order-pending' => 'Konto kann nicht gelöscht werden, da einige Bestellungen ausstehen oder verarbeitet werden.', - ), - 'footer' => - array ( - 'copy-right' => 'Powered by Bagisto, A Community Project by Webkul', - ), - 'admin' => - array ( - 'emails' => - array ( - 'email' => 'E-Mail', - 'notification_label' => 'Benachrichtigungen', - 'notifications' => - array ( - 'verification' => 'Senden von Bestätigungs-E-Mails', - 'registration' => 'Senden von Anmeldungs-E-Mails', - 'customer' => 'Senden von Kunden-E-Mails', - 'new-order' => 'Senden von Auftragsbestätigungs-E-Mails', - 'new-admin' => 'Senden von Admin Einladungs-E-Mails', - 'new-invoice' => 'Senden von Rechnungs-Bestätigungs-E-Mails', - 'new-refund' => 'Senden von Erstattungs-Benachrichtigungs-E-Mails', - 'new-shipment' => 'Senden von Versand-Benachrichtigungs-E-Mails', - 'new-inventory-source' => 'Senden von Inventar-Quellen-E-Mail-Benachrichtigungen', - 'cancel-order' => 'Senden von Abbrechen E-Mails eines Bestellvorgangs', - ), - ), - 'system' => - array ( - 'catalog' => 'Katalog', - 'products' => 'Produkte', - 'guest-checkout' => 'Gastbestellungen', - 'allow-guest-checkout' => 'Gastbestellungen erlauben', - 'allow-guest-checkout-hint' => 'Hinweis: Wenn diese Option aktiviert ist, kann sie für jedes Produkt einzeln konfiguriert werden.', - 'review' => 'Überprüfen', - 'allow-guest-review' => 'Gastbewertungen erlauben', - 'inventory' => 'Inventar', - 'stock-options' => 'Inventaroptionen', - 'allow-backorders' => 'Nachbestellungen zulassen', - 'customer' => 'Kunden', - 'settings' => 'Einstellungen', - 'address' => 'Adresse', - 'street-lines' => 'Adresszeilen (Standard: 1)', - 'sales' => 'Vertrieb', - 'shipping-methods' => 'Versand-Methoden', - 'free-shipping' => 'Kostenloser Versand', - 'flate-rate-shipping' => 'Pauschale Versandkosten', - 'shipping' => 'Versand', - 'origin' => 'Herkunft', - 'country' => 'Land', - 'state' => 'Bundesland', - 'zip' => 'Postleitzahl', - 'city' => 'Stadt', - 'street-address' => 'Anschrift', - 'title' => 'Titel', - 'description' => 'Beschreibung', - 'rate' => 'Rate', - 'status' => 'Status', - 'type' => 'Typ', - 'payment-methods' => 'Zahlungsmethoden', - 'cash-on-delivery' => 'Nachnahme', - 'money-transfer' => 'Überweisung', - 'paypal-standard' => 'Paypal-Standard', - 'business-account' => 'Paypal-Geschäftskonto', - 'newsletter' => 'Newsletter-Abonnement', - 'newsletter-subscription' => 'Newsletter-Abonnement erlauben', - 'email' => 'E-Mail-Prüfung', - 'email-verification' => 'E-Mail-Prüfung erlauben', - 'sort_order' => 'Sortierreihenfolge', - 'general' => 'Allgemein', - 'footer' => 'Fußzeile', - 'content' => 'Inhalt', - 'footer-content' => 'Fußzeile Text', - 'footer-toggle' => 'Fußzeile aktiv', - 'locale-options' => 'Einheit-Optionen', - 'weight-unit' => 'Gewichtseinheit', - 'email-settings' => 'E-Mail Einstellungen', - 'email-sender-name' => 'E-Mail-Adresse des Absenders', - 'shop-email-from' => 'E-Mail-Adresse des Shops (bei Bestellungen, etc.)', - 'admin-name' => 'Name des Admins', - 'admin-email' => 'E-Mail-Adresse des Admins', - 'admin-page-limit' => 'Elemente pro Seite (Admin)', - 'design' => 'Design', - 'admin-logo' => 'Admin-Logo', - 'logo-image' => 'Logo-Bild', - 'credit-max' => 'Kunden Kredit Max', - 'credit-max-value' => 'Kredit Max-Wert', - 'use-credit-max' => 'Verwendung von Kredit-Max', - 'order-settings' => 'Bestelleinstellungen', - 'orderNumber' => 'Auftragsnummer Einstellungen', - 'order-number-prefix' => 'Auftragsnummer Präfix', - 'order-number-length' => 'Auftragsnummer Länge', - 'order-number-suffix' => 'Auftragsnummer Suffix', - 'default' => 'Standard', - 'sandbox' => 'Sandbox', - 'all-channels' => 'Alle', - 'all-locales' => 'Alle', - 'invoice-slip-design' => 'Rechnungsdesign', - 'logo' => 'Logo', - ), - ), -); \ No newline at end of file + 'yes' => 'Ja', + 'disabled' => 'Deaktiviert', + 'enabled' => 'Aktiviert', + 'add-variant-btn-title' => 'Variante hinzufügen', + 'name' => 'Name', + 'qty' => 'Menge', + 'price' => 'Preis', + 'weight' => 'Gewicht', + 'status' => 'Status', + 'add-variant-title' => 'Variante hinzufügen', + 'variant-already-exist-message' => 'Eine Variante mit denselben Attributoptionen ist bereits vorhanden.', + 'add-image-btn-title' => 'Bild hinzufügen', + 'mass-delete-success' => 'Alle ausgewählten Produkte wurden erfolgreich gelöscht', + 'mass-update-success' => 'Alle ausgewählten Produkte wurden erfolgreich aktualisiert', + 'configurable-error' => 'Bitte wählen Sie mindestens eine konfigurierbares Attribut.', + 'categories' => 'Kategorien', + 'images' => 'Bilder', + 'inventories' => 'Vorräte', + 'variations' => 'Variationen', + 'downloadable' => 'Herunterladbare Informationen', + 'links' => 'Links', + 'add-link-btn-title' => 'Link hinzufügen', + 'samples' => 'Beispiele', + 'add-sample-btn-title' => 'Beispiel hinzufügen', + 'downloads' => 'Download erlaubt', + 'file' => 'Datei', + 'sample' => 'Beispiel', + 'upload-file' => 'Datei hochladen', + 'url' => 'Url', + 'sort-order' => 'Sortierreihenfolge', + 'browse-file' => 'Datei durchsuchen', + 'product-link' => 'Verlinkte Produkte', + 'cross-selling' => 'Cross-Selling', + 'up-selling' => 'Up Selling', + 'related-products' => 'Verwandte Produkte', + 'product-search-hint' => 'Geben Sie den Produktnamen ein', + 'no-result-found' => 'Produkte nicht mit demselben Namen gefunden.', + 'searching' => 'Suche ...', + 'grouped-products' => 'Gruppierte Produkte', + 'search-products' => 'Produkte suchen', + 'channel' => 'Kanäle', + 'bundle-items' => 'Artikel bündeln', + 'add-option-btn-title' => 'Option hinzufügen', + 'option-title' => 'Option Titel', + 'input-type' => 'Input Type', + 'is-required' => 'Ist erforderlich', + 'select' => 'Select', + 'radio' => 'Radio', + 'checkbox' => 'Checkbox', + 'multiselect' => 'Multiselect', + 'new-option' => 'Neue Option', + 'is-default' => 'Ist Standard', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', + ], + 'attributes' => + [ + 'title' => 'Attribute', + 'add-title' => 'Attribut hinzufügen', + 'edit-title' => 'Attribut bearbeiten', + 'save-btn-title' => 'Attribut speichern', + 'general' => 'Allgemein', + 'code' => 'Attribut-Code', + 'type' => 'Attribut-Typ', + 'text' => 'Text', + 'textarea' => 'Textarea', + 'price' => 'Preis', + 'boolean' => 'Boolean', + 'select' => 'Select', + 'multiselect' => 'Multiselect', + 'datetime' => 'Datetime', + 'date' => 'Datum', + 'label' => 'Label', + 'admin' => 'Admin', + 'options' => 'Optionen', + 'position' => 'Position', + 'add-option-btn-title' => 'Option hinzufügen', + 'validations' => 'Validierungen', + 'input_validation' => 'Eingabe-Validierung', + 'is_required' => 'Ist erforderlich', + 'is_unique' => 'Ist einzigartig', + 'number' => 'Anzahl', + 'decimal' => 'Dezimal', + 'email' => 'E-Mail', + 'url' => 'URL', + 'configuration' => 'Konfiguration', + 'status' => 'Status', + 'yes' => 'Ja', + 'no' => 'Nein', + 'value_per_locale' => 'Wert pro Sprache', + 'value_per_channel' => 'Wert pro Kanal', + 'is_filterable' => 'Verwendung in der geschichteten Navigation', + 'is_configurable' => 'Verwenden Sie diese Option, um ein konfigurierbares Produkt zu erstellen', + 'admin_name' => 'Admin-Name', + 'is_visible_on_front' => 'Sichtbar auf der Produktansichtseite im Frontend', + 'swatch_type' => 'Farbfeld-Typ', + 'dropdown' => 'Dropdown', + 'color-swatch' => 'Farbfeld', + 'image-swatch' => 'Bild Farbfeld', + 'text-swatch' => 'Text Farbfeld', + 'swatch' => 'Farbfeld', + 'image' => 'Bild', + 'file' => 'Datei', + 'checkbox' => 'Checkbox', + 'use_in_flat' => 'In Produkt Flat Tabelle erstellen', + 'is_comparable' => 'Attribut ist vergleichbar', + 'default_null_option' => 'Erstellen Sie eine leere Standardoption', + ], + 'families' => + [ + 'title' => 'Familien', + 'add-family-btn-title' => 'Familie hinzufügen', + 'add-title' => 'Familie hinzufügen', + 'edit-title' => 'Familie bearbeiten', + 'save-btn-title' => 'Familie speichern', + 'general' => 'Allgemein', + 'code' => 'Familien Code', + 'name' => 'Name', + 'groups' => 'Gruppen', + 'add-group-title' => 'Gruppe hinzufügen', + 'position' => 'Position', + 'attribute-code' => 'Code', + 'type' => 'Typ', + 'add-attribute-title' => 'Attribut hinzufügen', + 'search' => 'Suche', + 'group-exist-error' => 'Eine gleichnamige Gruppe existiert bereits.', + ], + 'categories' => + [ + 'title' => 'Kategorien', + 'add-title' => 'Kategorie hinzufügen', + 'edit-title' => 'Kategorie bearbeiten', + 'save-btn-title' => 'Kategorie speichern', + 'general' => 'Allgemein', + 'name' => 'Name', + 'visible-in-menu' => 'Sichtbar im Menü', + 'yes' => 'Ja', + 'no' => 'Nein', + 'position' => 'Position', + 'display-mode' => 'Display-Modus', + 'products-and-description' => 'Produkte und Beschreibung', + 'products-only' => 'Nur Produkte', + 'description-only' => 'Nur Beschreibungen', + 'description-and-images' => 'Beschreibung und Bilder', + 'description' => 'Beschreibung', + 'parent-category' => 'Übergeordnete Kategorie', + 'seo' => 'Suchmaschinen-Optimierung', + 'slug' => 'Slug', + 'meta_title' => 'Meta Titel', + 'meta_description' => 'Meta-Beschreibung', + 'meta_keywords' => 'Meta-Schlüsselworte', + 'image' => 'Bild', + 'filterable-attributes' => 'Filterbare Attribute', + 'attributes' => 'Attribute', + ], + ], + 'configuration' => + [ + 'title' => 'Konfiguration', + 'save-btn-title' => 'Speichern', + 'save-message' => 'Konfiguration erfolgreich gespeichert', + 'yes' => 'Ja', + 'no' => 'Nein', + 'delete' => 'Löschen', + 'tax-categories' => + [ + 'title' => 'Steuerkategorien', + 'add-title' => 'Steuerkategorie hinzufügen', + 'edit-title' => 'Steuerkategorie bearbeiten', + 'save-btn-title' => 'Steuerkategorie speichern', + 'general' => 'Steuerkategorie', + 'select-channel' => 'Wählen Sie einen Kanal', + 'name' => 'Name', + 'code' => 'Code', + 'description' => 'Beschreibung', + 'select-taxrates' => 'Wählen Sie die Steuersätze', + 'edit' => + [ + 'title' => 'Steuerkategorie bearbeiten', + 'edit-button-title' => 'Steuerkategorie bearbeiten', + ], + ], + 'tax-rates' => + [ + 'title' => 'Steuersätze', + 'add-title' => 'Steuersatz hinzufügen', + 'edit-title' => 'Steuersatz bearbeiten', + 'save-btn-title' => 'Steuersatz speichern', + 'general' => 'Steuersatz', + 'identifier' => 'Bezeichnung', + 'is_zip' => 'Postleitzahlen Reichweite aktivieren', + 'zip_from' => 'Postleitzahl von', + 'zip_to' => 'Postleitzahl bis', + 'state' => 'Staat', + 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.', + 'country' => 'Land', + 'tax_rate' => 'Rate', + 'edit' => + [ + 'title' => 'Steuersatz bearbeiten', + 'edit-button-title' => 'Steuersatz bearbeiten', + ], + 'zip_code' => 'Postleitzahl', + ], + 'sales' => + [ + 'shipping-method' => + [ + 'title' => 'Versand-Methoden', + 'save-btn-title' => 'Speichern', + 'description' => 'Bearbeiten', + 'active' => 'Aktiv', + 'status' => 'Status', + ], + ], + ], + 'settings' => + [ + 'locales' => + [ + 'title' => 'Sprachen', + 'add-title' => 'Sprache hinzufügen', + 'edit-title' => 'Sprache bearbeiten', + 'save-btn-title' => 'Sprache speichern', + 'general' => 'Allgemein', + 'code' => 'Code', + 'name' => 'Name', + 'direction' => 'Richtung', + 'create-success' => 'Sprache erfolgreich erstellt.', + 'update-success' => 'Sprache erfolgreich aktualisiert.', + 'delete-success' => 'Sprache erfolgreich gelöscht.', + 'last-delete-error' => 'Mindestens eine Sprache ist erforderlich.', + ], + 'countries' => + [ + 'title' => 'Länder', + 'add-title' => 'Land hinzufügen', + 'save-btn-title' => 'Land speichern', + 'general' => 'Allgemein', + 'code' => 'Code', + 'name' => 'Name', + ], + 'currencies' => + [ + 'title' => 'Währungen', + 'add-title' => 'Währung hinzufügen', + 'edit-title' => 'Währung bearbeiten', + 'save-btn-title' => 'Währung speichern', + 'general' => 'Allgemein', + 'code' => 'Code', + 'name' => 'Name', + 'symbol' => 'Symbol', + 'create-success' => 'Währung erfolgreich erstellt.', + 'update-success' => 'Währung erfolgreich aktualisiert.', + 'delete-success' => 'Währung erfolgreich gelöscht.', + 'last-delete-error' => 'Mindestens eine Währung ist erforderlich.', + ], + 'exchange_rates' => + [ + 'title' => 'Wechselkurse', + 'add-title' => 'Wechselkurs hinzufügen', + 'edit-title' => 'Wechselkurs bearbeiten', + 'save-btn-title' => 'Wechselkurs speichern', + 'general' => 'Allgemein', + 'source_currency' => 'Quell-Währung', + 'target_currency' => 'Ziel-Währung', + 'rate' => 'Rate', + 'exchange-class-not-found' => ':service Wechselkursklasse nicht gefunden', + 'update-rates' => 'Rate aktualisieren mit :service', + 'create-success' => 'Wechselkurs erfolgreich erstellt.', + 'update-success' => 'Wechselkurse erfolgreichaktualisiert.', + 'delete-success' => 'Wechselkurs erfolgreich gelöscht.', + 'last-delete-error' => 'Mindestens ein Wechselkurs ist erforderlich.', + ], + 'inventory_sources' => + [ + 'title' => 'Inventar-Quellen', + 'add-title' => 'Inventar Quelle hinzufügen', + 'edit-title' => 'Inventar Quelle bearbeiten', + 'save-btn-title' => 'Inventar Quelle speichern', + 'general' => 'Allgemein', + 'code' => 'Code', + 'name' => 'Name', + 'description' => 'Beschreibung', + 'source-is-active' => 'Quelle ist aktiv', + 'contact-info' => 'Kontakt-Informationen', + 'contact_name' => 'Name', + 'contact_email' => 'E-Mail', + 'contact_number' => 'Kontakt-Nummer', + 'contact_fax' => 'Fax', + 'address' => 'Quell-Adresse', + 'country' => 'Land', + 'state' => 'Staat', + 'city' => 'Stadt', + 'street' => 'Straße', + 'postcode' => 'Postleitzahl', + 'priority' => 'Priorität', + 'latitude' => 'Breite', + 'longitude' => 'Länge', + 'status' => 'Status', + 'create-success' => 'Inventar Quelle erfolgreich erstellt.', + 'update-success' => 'Inventar Quelle erfolgreich aktualisiert.', + 'delete-success' => 'Inventar Quelle erfolgreich gelöscht.', + 'last-delete-error' => 'Mindestens eine Inventar-Quelle erforderlich ist.', + ], + 'channels' => + [ + 'title' => 'Kanäle', + 'add-title' => 'Kanal hinzufügen', + 'edit-title' => 'Kanal bearbeiten', + 'save-btn-title' => 'Kanal speichern', + 'general' => 'Allgemein', + 'code' => 'Code', + 'name' => 'Name', + 'description' => 'Beschreibung', + 'hostname' => 'Hostname', + 'currencies-and-locales' => 'Währungen und Spachen', + 'locales' => 'Sprachen', + 'default-locale' => 'Standard-Sprache', + 'currencies' => 'Währungen', + 'base-currency' => 'Standard-Währung', + 'root-category' => 'Root-Kategorie', + 'inventory_sources' => 'Inventar-Quellen', + 'design' => 'Design', + 'theme' => 'Theme', + 'home_page_content' => 'Startseite Inhalt', + 'footer_content' => 'Fußzeile Inhalt', + 'logo' => 'Logo', + 'favicon' => 'Favicon', + 'create-success' => 'Kanal erfolgreich erstellt.', + 'update-success' => 'Kanal erfolgreich aktualisiert.', + 'delete-success' => 'Kanal erfolgreich gelöscht.', + 'last-delete-error' => 'Mindestens ein Kanal ist erforderlich.', + 'seo' => 'Home-Page-SEO', + 'seo-title' => 'Meta Titel', + 'seo-description' => 'Meta-Beschreibung', + 'seo-keywords' => 'Meta-keywords', + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' + ], + 'sliders' => + [ + 'title' => 'Sliders', + 'name' => 'Name', + 'add-title' => 'Slider erstellen', + 'edit-title' => 'Slider editieren', + 'save-btn-title' => 'Slider speichern', + 'general' => 'Allgemein', + 'image' => 'Bild', + 'content' => 'Inhalt', + 'channels' => 'Kanal', + 'created-success' => 'Slider erfolgreich erstellt', + 'created-fault' => 'Fehler beim Erstellen des Slider-Elements', + 'update-success' => 'Slider-Eintrag wurde erfolgreich aktualisiert', + 'update-fail' => 'Slider kann nicht aktualisiert werden', + 'delete-success' => 'Der letzte Slider kann nicht gelöscht werden', + 'delete-fail' => 'Slider erfolgreich gelöscht', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' + ], + 'tax-categories' => + [ + 'title' => 'Steuerkategorien', + 'add-title' => 'Steuerkategorie erstellen', + 'edit-title' => 'Steuerkategorie bearbeiten', + 'save-btn-title' => 'Steuern-Kategorie speichern', + 'general' => 'Steuerkategorie', + 'select-channel' => 'Wählen Sie einen Kanal', + 'name' => 'Name', + 'code' => 'Code', + 'description' => 'Beschreibung', + 'select-taxrates' => 'Wählen Sie die Steuersätze', + 'edit' => + [ + 'title' => 'Steuerkategorie bearbeiten', + 'edit-button-title' => 'Steuerkategorie bearbeiten', + ], + 'create-success' => 'Neue Steuerkategorie Angelegt', + 'create-error' => 'Fehler Bei Der Erstellung Der Steuerkategorie', + 'update-success' => 'Erfolgreich Aktualisiert, Steuerkategorie', + 'update-error' => 'Fehler Beim Update Der Steuerkategorie', + 'atleast-one' => 'Nicht Löschen Sie Die Letzte Steuerart', + 'delete' => 'Steuer Kategorie Wurde Erfolgreich Gelöscht', + ], + 'tax-rates' => + [ + 'title' => 'Steuersätze', + 'add-title' => 'Steuersatz erstellen', + 'edit-title' => 'Steuersatz bearbeiten', + 'save-btn-title' => 'Steuersatz speichern', + 'general' => 'Steuersatz', + 'identifier' => 'Bezeichner', + 'is_zip' => 'Postleitzahlen Reichweite aktivieren', + 'zip_from' => 'Postleitzahl von', + 'zip_to' => 'Postleitzahl bis', + 'state' => 'Staat', + 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.', + 'country' => 'Land', + 'tax_rate' => 'Rate', + 'edit' => + [ + 'title' => 'Steuersatz bearbeiten', + 'edit-button-title' => 'Steuersatz bearbeiten', + ], + 'zip_code' => 'Postleitzahl', + 'create-success' => 'Steuersatz erfolgreich erstellt', + 'create-error' => 'Steuersatz kann nicht erstellt werden', + 'update-success' => 'Steuersatz erfolgreich aktualisiert', + 'update-error' => 'Fehler! Steuersatz Kann nicht aktualisiert werden', + 'delete' => 'Steuersatz erfolgreich gelöscht', + 'atleast-one' => 'Letzter Steuersatz kann nicht gelöscht werden', + ], + 'development' => + [ + 'title' => 'Entwicklung', + ], + ], + 'customers' => + [ + 'groups' => + [ + 'add-title' => 'Gruppe hinzufügen', + 'edit-title' => 'Gruppe bearbeiten', + 'save-btn-title' => 'Gruppe speichern', + 'title' => 'Gruppen', + 'code' => 'Code', + 'name' => 'Name', + 'is_user_defined' => 'Benutzer definiert', + 'yes' => 'Ja', + ], + 'addresses' => + [ + 'title' => ':customer_name\'s Adressen-Liste', + 'vat_id' => 'Umsatzsteuer-ID', + 'create-title' => 'Kunden-Adresse erstellen', + 'edit-title' => 'Kunden-Adresse bearbeiten', + 'title-orders' => ':customer_name Auftragsliste', + 'address-list' => 'Adressliste', + 'order-list' => 'Bestellliste', + 'address-id' => 'Adresse-ID', + 'address-1' => 'Adresse 1', + 'city' => 'Stadt', + 'state-name' => 'Staat', + 'country-name' => 'Land', + 'postcode' => 'Postleitzahl', + 'default-address' => 'Standard-Adresse', + 'yes' => 'Ja', + 'not-approved' => 'Nicht zugelassen', + 'no' => 'Nein', + 'dash' => '-', + 'delete' => 'Löschen', + 'create-btn-title' => 'Adresse hinzufügen', + 'save-btn-title' => 'Adresse speichern', + 'general' => 'Allgemein', + 'success-create' => 'Erfolg: Kunden-Adresse erstellt wurde.', + 'success-update' => 'Erfolg: Kunden-Adresse erfolgreich aktualisiert.', + 'success-delete' => 'Erfolg: Kunden-Adresse erfolgreich gelöscht.', + 'success-mass-delete' => 'Erfolg: Die ausgewählten Adressen wurden erfolgreich gelöscht.', + 'error-create' => 'Fehler: Kunde-Adresse nicht erstellt.', + ], + 'note' => + [ + 'title' => 'Notiz hinzufügen', + 'save-note' => 'Notiz speichern', + 'enter-note' => 'Hinweis eingeben', + 'help-title' => 'Notiz zu diesem Kunden hinzufügen', + ], + 'customers' => + [ + 'add-title' => 'Kunden hinzufügen', + 'edit-title' => 'Kunde bearbeiten', + 'title' => 'Kunden', + 'first_name' => 'Vorname', + 'last_name' => 'Nachname', + 'gender' => 'Geschlecht', + 'email' => 'E-Mail', + 'date_of_birth' => 'Geburtsdatum', + 'phone' => 'Telefon', + 'customer_group' => 'Kundengruppe', + 'save-btn-title' => 'Kunde speichern', + 'channel_name' => 'Kanalname', + 'state' => 'Staat', + 'select-state' => 'Wählen Sie eine Region, ein Bundesland, oder eine Provinz aus.', + 'country' => 'Land', + 'other' => 'Andere', + 'male' => 'Männlich', + 'female' => 'Weiblich', + 'group-default' => 'Die Standardgruppe kann nicht gelöscht werden.', + 'edit-help-title' => 'Kunde bearbeiten', + 'delete-help-title' => 'Kunde löschen', + 'addresses' => 'Adressen', + 'mass-destroy-success' => 'Kunden erfolgreich gelöscht', + 'mass-update-success' => 'Kunden erfolgreich aktualisiert', + 'status' => 'Status', + 'active' => 'Aktiv', + 'inactive' => 'Inaktiv', + ], + 'reviews' => + [ + 'title' => 'Bewertungen', + 'edit-title' => 'Bewertung bearbeiten', + 'rating' => 'Bewertung', + 'status' => 'Status', + 'comment' => 'Kommentar', + 'pending' => 'Ausstehend', + 'approved' => 'Genehmigen', + 'disapproved' => 'Missbilligen', + ], + 'subscribers' => + [ + 'title' => 'Newsletter-Abonnenten', + 'title-edit' => 'Newsletter-Abonnenten bearbeiten', + 'email' => 'E-Mail', + 'is_subscribed' => 'Abonniert', + 'edit-btn-title' => 'Abonnenten bearbeiten', + 'update-success' => 'Der Abonnent wurde erfolgreich aktualisiert', + 'update-failed' => 'Fehler! Sie können den Abonnenten nicht kündigen', + 'delete' => 'Der Abonnent wurde erfolgreich gelöscht', + 'delete-failed' => 'Fehler! Abonnenten können nicht gelöscht werden', + ], + ], + 'promotions' => + [ + 'cart-rules' => + [ + 'title' => 'Warenkorbregeln', + 'add-title' => 'Warenkorbregel hinzufügen', + 'edit-title' => 'Warenkorbregel bearbeiten', + 'save-btn-title' => 'Warenkorbregel speichern', + 'rule-information' => 'Regelinformationen', + 'name' => 'Name', + 'description' => 'Beschreibung', + 'status' => 'Status', + 'is-active' => 'Warenkorbregel ist aktiv', + 'channels' => 'Kanäle', + 'customer-groups' => 'Kundengruppen', + 'coupon-type' => 'Gutscheintyp', + 'no-coupon' => 'Ohne Gutschein', + 'specific-coupon' => 'Gutscheintyp', + 'auto-generate-coupon' => 'Gutschein automatisch generieren', + 'no' => 'Nein', + 'yes' => 'Ja', + 'coupon-code' => 'Gutscheincode', + 'uses-per-coupon' => 'Verwendungen pro Gutschein', + 'uses-per-customer' => 'Verwendungen pro Kunde', + 'uses-per-customer-control-info' => 'Wird nur für angemeldete Kunden verwendet.', + 'from' => 'Von', + 'to' => 'An', + 'priority' => 'Priorität', + 'conditions' => 'Bedingungen', + 'condition-type' => 'Bedingungen Typ', + 'all-conditions-true' => 'Alle Bedingungen sind erfüllt', + 'any-condition-true' => 'Mindestens eine Bedingung ist erfüllt', + 'add-condition' => 'Bedingung hinzufügen', + 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus', + 'cart-attribute' => 'Warenkorbattribut', + 'subtotal' => 'Zwischensumme', + 'additional' => 'Zusatzinformationen', + 'total-items-qty' => 'Gesamtmenge der Artikel', + 'total-weight' => 'Gesamtgewicht', + 'payment-method' => 'Zahlungsmethode', + 'shipping-method' => 'Versandart', + 'shipping-postcode' => 'Postleitzahl', + 'shipping-state' => 'Versand Staat', + 'shipping-country' => 'Versand Land', + 'cart-item-attribute' => 'Warenkorb-Item-Attribut', + 'price-in-cart' => 'Betrag im Warenkorb', + 'qty-in-cart' => 'Menge im Warenkorb', + 'product-attribute' => 'Produkt-Attribut', + 'attribute-name-children-only' => ':attribute_name (Nur Kinder)', + 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)', + 'is-equal-to' => 'Gleich', + 'is-not-equal-to' => 'Ist nicht gleich', + 'equals-or-greater-than' => 'Gleich oder größer als', + 'equals-or-less-than' => 'Gleich oder weniger als', + 'greater-than' => 'Größer als', + 'less-than' => 'Weniger als', + 'contain' => 'Enthalten', + 'contains' => 'Enthält', + 'does-not-contain' => 'Nicht enthalten', + 'actions' => 'Aktionen', + 'action-type' => 'Aktion Typ', + 'percentage-product-price' => 'Prozentsatz des Produktpreises', + 'fixed-amount' => 'Fester Betrag', + 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkorb', + 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei', + 'discount-amount' => 'Rabattbetrag', + 'discount-quantity' => 'Maximale Anzahl reduzierter Artikel', + 'discount-step' => 'Kaufe Sie Menge X', + 'free-shipping' => 'Kostenloser Versand', + 'apply-to-shipping' => 'Auf den Versand anwenden', + 'coupon-codes' => 'Gutschein-Codes', + 'coupon-qty' => 'Gutschein Menge', + 'code-length' => 'Code-Länge', + 'code-format' => 'Code-Format', + 'alphanumeric' => 'Alphanumerisch', + 'alphabetical' => 'Alphabetisch', + 'numeric' => 'Numerisch', + 'code-prefix' => 'Code-Präfix', + 'code-suffix' => 'Code Suffix', + 'generate' => 'Generieren', + 'cart-rule-not-defind-error' => 'Warenkorb-Regel ist nicht definiert', + 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.', + 'end-other-rules' => 'Ende Andere Regeln', + 'children-categories' => 'Kategorien (Nur Kinder)', + 'parent-categories' => 'Kategorien (Nur Eltern)', + 'categories' => 'Kategorien', + 'attribute_family' => 'Attributgruppe', + ], + 'catalog-rules' => + [ + 'title' => 'Katalogregeln', + 'add-title' => 'Katalogregel hinzufügen', + 'edit-title' => 'Katalogregel bearbeiten', + 'save-btn-title' => 'Katalogregel speichern', + 'rule-information' => 'Regeliformationen', + 'name' => 'Name', + 'description' => 'Beschreibung', + 'status' => 'Status', + 'is-active' => 'Katalogregel ist aktiv', + 'channels' => 'Kanäle', + 'customer-groups' => 'Kundengruppen', + 'no' => 'Nein', + 'yes' => 'Ja', + 'from' => 'Von', + 'to' => 'An', + 'priority' => 'Priorität', + 'conditions' => 'Bedingungen', + 'condition-type' => 'Bedingungen Typ', + 'all-conditions-true' => 'Alle Bedingungen sind erfüllt', + 'any-condition-true' => 'Jede Bedingung ist wahr', + 'add-condition' => 'Bedingung hinzufügen', + 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus', + 'product-attribute' => 'Produkt-Attribut', + 'attribute-name-children-only' => ':attribute_name (Nur Kinder)', + 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)', + 'is-equal-to' => 'Gleich', + 'is-not-equal-to' => 'Ist nicht gleich', + 'equals-or-greater-than' => 'Gleich oder größer als', + 'equals-or-less-than' => 'Gleich oder weniger als', + 'greater-than' => 'Größer als', + 'less-than' => 'Weniger als', + 'contain' => 'Enthalten', + 'contains' => 'Enthält', + 'does-not-contain' => 'Nicht enthalten', + 'actions' => 'Aktionen', + 'action-type' => 'Aktion Typ', + 'percentage-product-price' => 'Prozentsatz des Produktpreises', + 'fixed-amount' => 'Fester Betrag', + 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkob', + 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei', + 'discount-amount' => 'Rabatt-Betrag', + 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.', + 'end-other-rules' => 'Ende Andere Regeln', + 'categories' => 'Kategorien', + 'attribute_family' => 'Attributgruppe', + ], + ], + + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + + 'error' => + [ + 'go-to-home' => 'HOME ÖFFNEN', + 'in-maitainace' => 'In Bearbeitung', + 'right-back' => 'Gleich wieder zurück', + 404 => + [ + 'page-title' => '404-Seite nicht gefunden', + 'name' => '404', + 'title' => 'Seite nicht gefunden', + 'message' => 'Die gesuchte Seite existiert nicht oder wurde verschoben. Navigieren Sie mit dem Seitenmenü.', + ], + 403 => + [ + 'page-title' => '403 Verboten-Fehler', + 'name' => '403', + 'title' => 'Verboten-Fehler', + 'message' => 'Sie haben keine Berechtigung um auf diese Seite zuzugreifen.', + ], + 500 => + [ + 'page-title' => '500 Interner Serverfehler', + 'name' => '500', + 'title' => 'Interner Serverfehler', + 'message' => 'Der Server hat einen internen Fehler.', + ], + 401 => + [ + 'page-title' => '401 Unauthorisiert', + 'name' => '401', + 'title' => 'Unauthorisiert', + 'message' => 'Die Anforderung wurde nicht angewendet, da keine gültigen Authentifizierungsdaten für die Zielressource vorhanden sind.', + ], + ], + 'export' => + [ + 'export' => 'Export', + 'import' => 'Import', + 'format' => 'Wählen Sie ein Format', + 'download' => 'Download', + 'upload' => 'Hochladen', + 'csv' => 'CSV', + 'xls' => 'XLS', + 'file' => 'Datei', + 'upload-error' => 'Die Datei muss von folgendem Typ sein: xls, xlsx, csv.', + 'duplicate-error' => 'Bezeichner müssen eindeutig sein, doppelte Bezeichner :identifier in Zeile :position.', + 'enough-row-error' => 'die Datei hat nicht genug Zeilen', + 'allowed-type' => 'Erlaubter Typ :', + 'file-type' => 'csv, xls, xlsx.', + 'no-records' => 'Nichts zu exportieren', + 'illegal-format' => 'Fehler! Diese Art von Format wird entweder nicht unterstützt oder ist unzulässig', + ], + 'cms' => + [ + 'pages' => + [ + 'general' => 'Allgemein', + 'seo' => 'SEO', + 'pages' => 'Seiten', + 'title' => 'Seiten', + 'add-title' => 'Seite hinzufügen', + 'content' => 'Inhalt', + 'url-key' => 'URL-Schlüssel', + 'channel' => 'Kanäle', + 'locale' => 'Sprachen', + 'create-btn-title' => 'Seite speichern', + 'edit-title' => 'Seite bearbeiten', + 'edit-btn-title' => 'Seite speichern', + 'create-success' => 'Seite erfolgreich erstellt', + 'create-partial' => 'Einige der angeforderten Seiten sind bereits vorhanden', + 'create-failure' => 'Alle angeforderten Seiten sind bereits vorhanden', + 'update-success' => 'Seite erfolgreich aktualisiert', + 'update-failure' => 'Die Seite kann nicht aktualisiert werden', + 'page-title' => 'Titel der Seite', + 'layout' => 'Layout', + 'meta_keywords' => 'Meta-Schlüsselworte', + 'meta_description' => 'Meta-Beschreibung', + 'meta_title' => 'Meta Titel', + 'delete-success' => 'CMS-Seite erfolgreich gelöscht', + 'delete-failure' => 'CMS-Seite kann nicht gelöscht werden', + 'preview' => 'Vorschau', + 'one-col' => '
Use class: "static-container one-column" for one column layout.
', + 'two-col' => '
Use class: "static-container two-column" for two column layout.
', + 'three-col' => '
Use class: "static-container three-column" for three column layout.
', + 'helper-classes' => 'Helfer-Klassen', + ], + ], + 'response' => + [ + 'being-used' => 'Diese Ressource :name wird verwendet in :source', + 'product-copied' => 'Das Produkt wurde kopiert', + 'error-while-copying' => 'Fehler beim Kopieren des Produkts', + 'product-can-not-be-copied' => 'Produkte vom Typ :type können nicht kopiert werden.', + 'cannot-delete-default' => 'Der Standardkanal kann nicht gelöscht werden', + 'create-success' => ':name erfolgreich erstellt.', + 'update-success' => ':name erfolgreich aktualisiert.', + 'delete-success' => ':name erfolgreich gelöscht.', + 'delete-failed' => 'Fehler beim löschen von :name.', + 'last-delete-error' => 'Zumindest ein :name ist erforderlich.', + 'user-define-error' => 'System :name kann nicht gelöscht werden', + 'attribute-error' => ':name wird in konfigurierbaren Produkten verwendet.', + 'attribute-product-error' => ':name wird in Produkten verwendet.', + 'customer-associate' => ':name können nicht gelöscht werden, weil Kunden dieser Gruppe zugeordnet sind.', + 'currency-delete-error' => 'Diese Währung ist als Kanalbasiswährung festgelegt und kann daher nicht gelöscht werden.', + 'upload-success' => ':name erfolgreich hochgeladen.', + 'delete-category-root' => 'Die Root-Kategorie kann nicht gelöscht werden', + 'create-root-failure' => 'Kategorie mit dem Namen Root ist bereits vorhanden', + 'cancel-success' => ':name erfolgreich abgebrochen.', + 'cancel-error' => ':name können nicht storniert werden.', + 'already-taken' => 'Der :name wird bereits verwendet.', + 'order-pending' => 'Konto kann nicht gelöscht werden, da einige Bestellungen ausstehen oder verarbeitet werden.', + ], + 'footer' => + [ + 'copy-right' => 'Powered by Bagisto, A Community Project by Webkul', + ], + 'admin' => + [ + 'emails' => + [ + 'email' => 'E-Mail', + 'notification_label' => 'Benachrichtigungen', + 'notifications' => + [ + 'verification' => 'Senden von Bestätigungs-E-Mails', + 'registration' => 'Senden von Anmeldungs-E-Mails', + 'customer' => 'Senden von Kunden-E-Mails', + 'new-order' => 'Senden von Auftragsbestätigungs-E-Mails', + 'new-admin' => 'Senden von Admin Einladungs-E-Mails', + 'new-invoice' => 'Senden von Rechnungs-Bestätigungs-E-Mails', + 'new-refund' => 'Senden von Erstattungs-Benachrichtigungs-E-Mails', + 'new-shipment' => 'Senden von Versand-Benachrichtigungs-E-Mails', + 'new-inventory-source' => 'Senden von Inventar-Quellen-E-Mail-Benachrichtigungen', + 'cancel-order' => 'Senden von Abbrechen E-Mails eines Bestellvorgangs', + ], + ], + 'system' => + [ + 'catalog' => 'Katalog', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', + 'products' => 'Produkte', + 'guest-checkout' => 'Gastbestellungen', + 'allow-guest-checkout' => 'Gastbestellungen erlauben', + 'allow-guest-checkout-hint' => 'Hinweis: Wenn diese Option aktiviert ist, kann sie für jedes Produkt einzeln konfiguriert werden.', + 'review' => 'Überprüfen', + 'allow-guest-review' => 'Gastbewertungen erlauben', + 'inventory' => 'Inventar', + 'stock-options' => 'Inventaroptionen', + 'allow-backorders' => 'Nachbestellungen zulassen', + 'customer' => 'Kunden', + 'settings' => 'Einstellungen', + 'address' => 'Adresse', + 'street-lines' => 'Adresszeilen (Standard: 1)', + 'sales' => 'Vertrieb', + 'shipping-methods' => 'Versand-Methoden', + 'free-shipping' => 'Kostenloser Versand', + 'flate-rate-shipping' => 'Pauschale Versandkosten', + 'shipping' => 'Versand', + 'origin' => 'Herkunft', + 'country' => 'Land', + 'state' => 'Bundesland', + 'zip' => 'Postleitzahl', + 'city' => 'Stadt', + 'street-address' => 'Anschrift', + 'title' => 'Titel', + 'description' => 'Beschreibung', + 'rate' => 'Rate', + 'status' => 'Status', + 'calculate-tax' => 'Steuern berechnen', + 'type' => 'Typ', + 'payment-methods' => 'Zahlungsmethoden', + 'cash-on-delivery' => 'Nachnahme', + 'money-transfer' => 'Überweisung', + 'paypal-standard' => 'Paypal-Standard', + 'business-account' => 'Paypal-Geschäftskonto', + 'newsletter' => 'Newsletter-Abonnement', + 'newsletter-subscription' => 'Newsletter-Abonnement erlauben', + 'email' => 'E-Mail-Prüfung', + 'email-verification' => 'E-Mail-Prüfung erlauben', + 'sort_order' => 'Sortierreihenfolge', + 'general' => 'Allgemein', + 'footer' => 'Fußzeile', + 'content' => 'Inhalt', + 'footer-content' => 'Fußzeile Text', + 'footer-toggle' => 'Fußzeile aktiv', + 'locale-options' => 'Einheit-Optionen', + 'weight-unit' => 'Gewichtseinheit', + 'email-settings' => 'E-Mail Einstellungen', + 'email-sender-name' => 'E-Mail-Adresse des Absenders', + 'shop-email-from' => 'E-Mail-Adresse des Shops (bei Bestellungen, etc.)', + 'admin-name' => 'Name des Admins', + 'admin-email' => 'E-Mail-Adresse des Admins', + 'admin-page-limit' => 'Elemente pro Seite (Admin)', + 'design' => 'Design', + 'admin-logo' => 'Admin-Logo', + 'logo-image' => 'Logo-Bild', + 'credit-max' => 'Kunden Kredit Max', + 'credit-max-value' => 'Kredit Max-Wert', + 'use-credit-max' => 'Verwendung von Kredit-Max', + 'order-settings' => 'Bestelleinstellungen', + 'orderNumber' => 'Auftragsnummer Einstellungen', + 'order-number-prefix' => 'Auftragsnummer Präfix', + 'order-number-length' => 'Auftragsnummer Länge', + 'order-number-suffix' => 'Auftragsnummer Suffix', + 'order-number-generator-class' => 'Bestell nummern generator', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', + 'default' => 'Standard', + 'sandbox' => 'Sandbox', + 'all-channels' => 'Alle', + 'all-locales' => 'Alle', + 'invoice-slip-design' => 'Rechnungsdesign', + 'logo' => 'Logo', + 'store-name' => 'Geschäftsname', + 'vat-number' => 'Umsatzsteuer-Identifikationsnummer', + 'contact-number' => 'Kontakt Nummer', + 'bank-details' => 'Bankdaten', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', + ], + ], +]; diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php index 71d405c82..305769d98 100755 --- a/packages/Webkul/Admin/src/Resources/lang/en/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php @@ -1,677 +1,726 @@ 'Save', - 'copy-of' => 'Copy of', - 'create' => 'Create', - 'update' => 'Update', - 'delete' => 'Delete', - 'failed' => 'Failed', - 'store' => 'Store', - 'image' => 'Image', - 'no result' => 'No result', - 'product' => 'Product', - 'attribute' => 'Attribute', - 'actions' => 'Actions', - 'id' => 'ID', - 'action' => 'action', - 'yes' => 'Yes', - 'no' => 'No', - 'true' => 'True', - 'false' => 'False', - 'apply' => 'Apply', - 'label' => 'Label', - 'name' => 'Name', - 'title' => 'Title', - 'code' => 'Code', - 'type' => 'Type', - 'required' => 'Required', - 'unique' => 'Unique', - 'locale-based' => 'Locale based', + 'save' => 'Save', + 'copy-of' => 'Copy of ', + 'copy-of-slug' => 'copy-of-', + 'create' => 'Create', + 'update' => 'Update', + 'delete' => 'Delete', + 'failed' => 'Failed', + 'store' => 'Store', + 'image' => 'Image', + 'no result' => 'No result', + 'product' => 'Product', + 'attribute' => 'Attribute', + 'actions' => 'Actions', + 'id' => 'ID', + 'action' => 'action', + 'yes' => 'Yes', + 'no' => 'No', + 'true' => 'True', + 'false' => 'False', + 'apply' => 'Apply', + 'label' => 'Label', + 'name' => 'Name', + 'title' => 'Title', + 'code' => 'Code', + 'type' => 'Type', + 'required' => 'Required', + 'unique' => 'Unique', + 'locale-based' => 'Locale based', 'channel-based' => 'Channel based', - 'status' => 'Status', + 'status' => 'Status', 'select-option' => 'Select option', - 'category' => 'Category', + 'category' => 'Category', 'common' => [ 'no-result-found' => 'We could not find any records.', - 'country' => 'Country', - 'state' => 'State', - 'true' => 'True', - 'false' => 'False' + 'country' => 'Country', + 'state' => 'State', + 'true' => 'True', + 'false' => 'False' ], 'layouts' => [ - 'app-version' => 'Version : :version', - 'my-account' => 'My Account', - 'logout' => 'Logout', - 'visit-shop' => 'Visit Shop', - 'dashboard' => 'Dashboard', - 'sales' => 'Sales', - 'orders' => 'Orders', - 'shipments' => 'Shipments', - 'invoices' => 'Invoices', - 'refunds' => 'Refunds', - 'catalog' => 'Catalog', - 'products' => 'Products', - 'categories' => 'Categories', - 'attributes' => 'Attributes', + 'app-version' => 'Version : :version', + 'my-account' => 'My Account', + 'logout' => 'Logout', + 'visit-shop' => 'Visit Shop', + 'dashboard' => 'Dashboard', + 'sales' => 'Sales', + 'orders' => 'Orders', + 'shipments' => 'Shipments', + 'invoices' => 'Invoices', + 'refunds' => 'Refunds', + 'catalog' => 'Catalog', + 'products' => 'Products', + 'categories' => 'Categories', + 'attributes' => 'Attributes', 'attribute-families' => 'Attribute Families', - 'customers' => 'Customers', - 'groups' => 'Groups', - 'reviews' => 'Reviews', + 'customers' => 'Customers', + 'groups' => 'Groups', + 'reviews' => 'Reviews', + 'configure' => 'Configure', + 'settings' => 'Settings', + 'locales' => 'Locales', + 'currencies' => 'Currencies', + 'exchange-rates' => 'Exchange Rates', + 'inventory-sources' => 'Inventory Sources', + 'channels' => 'Channels', + 'users' => 'Users', + 'roles' => 'Roles', + 'sliders' => 'Sliders', + 'taxes' => 'Taxes', + 'tax-categories' => 'Tax Categories', + 'tax-rates' => 'Tax Rates', + 'marketing' => 'Marketing', + 'promotions' => 'Promotions', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', + 'events' => 'Events', + 'discount' => 'Discount', + 'cms' => 'CMS', + 'transactions' => 'Transactions', 'newsletter-subscriptions' => 'Newsletter Subscriptions', - 'configure' => 'Configure', - 'settings' => 'Settings', - 'locales' => 'Locales', - 'currencies' => 'Currencies', - 'exchange-rates' => 'Exchange Rates', - 'inventory-sources' => 'Inventory Sources', - 'channels' => 'Channels', - 'users' => 'Users', - 'roles' => 'Roles', - 'sliders' => 'Sliders', - 'taxes' => 'Taxes', - 'tax-categories' => 'Tax Categories', - 'tax-rates' => 'Tax Rates', - 'promotions' => 'Promotions', - 'discount' => 'Discount', - 'cms' => 'CMS' ], 'acl' => [ - 'dashboard' => 'Dashboard', - 'sales' => 'Sales', - 'orders' => 'Orders', - 'shipments' => 'Shipments', - 'invoices' => 'Invoices', - 'catalog' => 'Catalog', - 'products' => 'Products', - 'categories' => 'Categories', - 'attributes' => 'Attributes', + 'dashboard' => 'Dashboard', + 'sales' => 'Sales', + 'cancel' => 'Cancel', + 'orders' => 'Orders', + 'shipments' => 'Shipments', + 'invoices' => 'Invoices', + 'refunds' => 'Refunds', + 'catalog' => 'Catalog', + 'products' => 'Products', + 'copy' => 'Copy', + 'categories' => 'Categories', + 'attributes' => 'Attributes', 'attribute-families' => 'Attribute Families', - 'customers' => 'Customers', - 'groups' => 'Groups', - 'reviews' => 'Reviews', + 'customers' => 'Customers', + 'addresses' => 'Addresses', + 'note' => 'Note', + 'groups' => 'Groups', + 'reviews' => 'Reviews', + 'configure' => 'Configure', + 'settings' => 'Settings', + 'locales' => 'Locales', + 'currencies' => 'Currencies', + 'exchange-rates' => 'Exchange Rates', + 'inventory-sources' => 'Inventory Sources', + 'channels' => 'Channels', + 'users' => 'Users', + 'roles' => 'Roles', + 'sliders' => 'Sliders', + 'taxes' => 'Taxes', + 'tax-categories' => 'Tax Categories', + 'tax-rates' => 'Tax Rates', + 'view' => 'View', + 'edit' => 'Edit', + 'create' => 'Add', + 'delete' => 'Delete', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', + 'promotions' => 'Promotions', + 'cart-rules' => 'Cart Rules', + 'catalog-rules' => 'Catalog Rules', + 'email-marketing' => 'Email Marketing', + 'email-templates' => 'Email Templates', + 'campaigns' => 'Campaigns', + 'subscribers' => 'Newsletter Subscribers', + 'events' => 'Events', 'newsletter-subscriptions' => 'Newsletter Subscriptions', - 'configure' => 'Configure', - 'settings' => 'Settings', - 'locales' => 'Locales', - 'currencies' => 'Currencies', - 'exchange-rates' => 'Exchange Rates', - 'inventory-sources' => 'Inventory Sources', - 'channels' => 'Channels', - 'users' => 'Users', - 'roles' => 'Roles', - 'sliders' => 'Sliders', - 'taxes' => 'Taxes', - 'tax-categories' => 'Tax Categories', - 'tax-rates' => 'Tax Rates', - 'edit' => 'Edit', - 'create' => 'Add', - 'delete' => 'Delete', - 'promotions' => 'Promotions', - 'cart-rules' => 'Cart Rules', - 'catalog-rules' => 'Catalog Rules', ], 'dashboard' => [ - 'title' => 'Dashboard', - 'from' => 'From', - 'to' => 'To', - 'total-customers' => 'Total Customers', - 'total-orders' => 'Total Orders', - 'total-sale' => 'Total Sale', - 'average-sale' => 'Average Order Sale', - 'increased' => ':progress%', - 'decreased' => ':progress%', - 'sales' => 'Sales', + 'title' => 'Dashboard', + 'from' => 'From', + 'to' => 'To', + 'total-customers' => 'Total Customers', + 'total-orders' => 'Total Orders', + 'total-sale' => 'Total Sale', + 'average-sale' => 'Average Order Sale', + 'increased' => ':progress%', + 'decreased' => ':progress%', + 'sales' => 'Sales', 'top-performing-categories' => 'Top Performing Categories', - 'product-count' => ':count Products', - 'top-selling-products' => 'Top Selling Products', - 'sale-count' => ':count Sales', - 'customer-with-most-sales' => 'Customer With Most Sales', - 'order-count' => ':count Orders', - 'revenue' => 'Revenue :total', - 'stock-threshold' => 'Stock Threshold', - 'qty-left' => ':qty Left' + 'product-count' => ':count Products', + 'top-selling-products' => 'Top Selling Products', + 'sale-count' => ':count Sales', + 'customer-with-most-sales' => 'Customer With Most Sales', + 'order-count' => ':count Orders', + 'revenue' => 'Revenue :total', + 'stock-threshold' => 'Stock Threshold', + 'qty-left' => ':qty Left' ], 'datagrid' => [ 'mass-ops' => [ - 'method-error' => 'Error! Wrong method detected, please check mass action configuration', + 'method-error' => 'Error! Wrong method detected, please check mass action configuration', 'delete-success' => 'Selected :resource were successfully deleted', 'partial-action' => 'Some actions were not performed due restricted system constraints on :resource', 'update-success' => 'Selected :resource were successfully updated', - 'no-resource' => 'The resource provided for insufficient for the action' + 'no-resource' => 'The resource provided for insufficient for the action' ], - 'id' => 'ID', - 'status' => 'Status', - 'code' => 'Code', - 'admin-name' => 'Name', - 'name' => 'Name', - 'copy' => 'Copy', - 'direction' => 'Direction', - 'fullname' => 'Full Name', - 'type' => 'Type', - 'required' => 'Required', - 'unique' => 'Unique', - 'per-locale' => 'Locale Based', - 'per-channel' => 'Channel Based', - 'position' => 'Position', - 'locale' => 'Locale', - 'hostname' => 'Hostname', - 'email' => 'Email', - 'group' => 'Group', - 'phone' => 'Phone', - 'gender' => 'Gender', - 'title' => 'Title', - 'layout' => 'Layout', - 'url-key' => 'URL Key', - 'comment' => 'Comment', - 'product-name' => 'Product', - 'currency-name' => 'Currency Name', - 'exch-rate' => 'Exchange Rate', - 'priority' => 'Priority', - 'subscribed' => 'Subscribed', - 'base-total' => 'Base Total', - 'grand-total' => 'Grand Total', - 'order-date' => 'Order Date', - 'channel-name' => 'Channel Name', - 'billed-to' => 'Billed To', - 'shipped-to' => 'Shipped To', - 'order-id' => 'Order Id', - 'invoice-date' => 'Invoice Date', - 'total-qty' => 'Total Qty', + 'id' => 'ID', + 'status' => 'Status', + 'code' => 'Code', + 'admin-name' => 'Name', + 'name' => 'Name', + 'copy' => 'Copy', + 'direction' => 'Direction', + 'fullname' => 'Full Name', + 'type' => 'Type', + 'required' => 'Required', + 'unique' => 'Unique', + 'per-locale' => 'Locale Based', + 'per-channel' => 'Channel Based', + 'position' => 'Position', + 'locale' => 'Locale', + 'hostname' => 'Hostname', + 'email' => 'Email', + 'group' => 'Group', + 'phone' => 'Phone', + 'gender' => 'Gender', + 'title' => 'Title', + 'layout' => 'Layout', + 'url-key' => 'URL Key', + 'comment' => 'Comment', + 'product-name' => 'Product', + 'currency-name' => 'Currency Name', + 'exch-rate' => 'Exchange Rate', + 'priority' => 'Priority', + 'subscribed' => 'Subscribed', + 'base-total' => 'Base Total', + 'grand-total' => 'Grand Total', + 'order-date' => 'Order Date', + 'channel-name' => 'Channel Name', + 'billed-to' => 'Billed To', + 'shipped-to' => 'Shipped To', + 'order-id' => 'Order Id', + 'invoice-date' => 'Invoice Date', + 'total-qty' => 'Total Qty', 'inventory-source' => 'Inventory Source', - 'shipment-date' => 'Shipment Date', - 'shipment-to' => 'Shipping To', - 'sku' => 'SKU', - 'price' => 'Price', - 'qty' => 'Quantity', - 'permission-type' => 'Permission Type', - 'identifier' => 'Identifier', - 'state' => 'State', - 'country' => 'Country', - 'tax-rate' => 'Rate', - 'role' => 'Role', - 'sub-total' => 'Sub Total', - 'no-of-products' => 'Number of Products', + 'shipment-date' => 'Shipment Date', + 'shipment-to' => 'Shipping To', + 'sku' => 'SKU', + 'product-number' => 'Product Number', + 'price' => 'Price', + 'qty' => 'Quantity', + 'permission-type' => 'Permission Type', + 'identifier' => 'Identifier', + 'state' => 'State', + 'country' => 'Country', + 'tax-rate' => 'Rate', + 'role' => 'Role', + 'sub-total' => 'Sub Total', + 'no-of-products' => 'Number of Products', 'attribute-family' => 'Attribute Family', - 'starts-from' => 'Starts From', - 'ends-till' => 'Ends Till', - 'per-cust' => 'Per Customer', - 'usage-throttle' => 'Usage Times', - 'for-guest' => 'For Guest', - 'order_number' => 'Order Number', - 'refund-date' => 'Refund Date', - 'refunded' => 'Refunded', - 'start' => 'Start', - 'end' => 'End', - 'active' => 'Active', - 'inactive' => 'Inactive', - 'true' => 'True', - 'false' => 'False', - 'approved' => 'Approved', - 'pending' => 'Pending', - 'disapproved' => 'Disapproved', - 'coupon-code' => 'Coupon Code', - 'times-used' => 'Times Used', - 'created-date' => 'Created Date', - 'expiration-date' => 'Expiration Date', - 'edit' => 'Edit', - 'delete' => 'Delete', - 'view' => 'View', - 'rtl' => 'RTL', - 'ltr' => 'LTR', - 'update-status' => 'Update Status' + 'starts-from' => 'Starts From', + 'ends-till' => 'Ends Till', + 'per-cust' => 'Per Customer', + 'usage-throttle' => 'Usage Times', + 'for-guest' => 'For Guest', + 'order_number' => 'Order Number', + 'refund-date' => 'Refund Date', + 'refunded' => 'Refunded', + 'start' => 'Start', + 'end' => 'End', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'true' => 'True', + 'false' => 'False', + 'approved' => 'Approved', + 'pending' => 'Pending', + 'disapproved' => 'Disapproved', + 'coupon-code' => 'Coupon Code', + 'times-used' => 'Times Used', + 'created-date' => 'Created Date', + 'expiration-date' => 'Expiration Date', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'view' => 'View', + 'rtl' => 'RTL', + 'ltr' => 'LTR', + 'update-status' => 'Update Status', + 'subject' => 'Subject', + 'date' => 'Date', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ - 'title' => 'My Account', - 'save-btn-title' => 'Save', - 'general' => 'General', - 'name' => 'Name', - 'email' => 'Email', - 'password' => 'Password', + 'title' => 'My Account', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'email' => 'Email', + 'password' => 'Password', 'confirm-password' => 'Confirm Password', - 'change-password' => 'Change Account Password', + 'change-password' => 'Change Account Password', 'current-password' => 'Current Password' ], 'users' => [ 'forget-password' => [ - 'title' => 'Forget Password', - 'header-title' => 'Recover Password', - 'email' => 'Registered Email', - 'password' => 'Password', + 'title' => 'Forget Password', + 'header-title' => 'Recover Password', + 'email' => 'Registered Email', + 'password' => 'Password', 'confirm-password' => 'Confirm Password', - 'back-link-title' => 'Back to Sign In', + 'back-link-title' => 'Back to Sign In', 'submit-btn-title' => 'Send Password Reset Email' ], 'reset-password' => [ - 'title' => 'Reset Password', - 'email' => 'Registered Email', - 'password' => 'Password', + 'title' => 'Reset Password', + 'email' => 'Registered Email', + 'password' => 'Password', 'confirm-password' => 'Confirm Password', - 'back-link-title' => 'Back to Sign In', + 'back-link-title' => 'Back to Sign In', 'submit-btn-title' => 'Reset Password' ], 'roles' => [ - 'title' => 'Roles', - 'add-role-title' => 'Add Role', + 'title' => 'Roles', + 'add-role-title' => 'Add Role', 'edit-role-title' => 'Edit Role', - 'save-btn-title' => 'Save Role', - 'general' => 'General', - 'name' => 'Name', - 'description' => 'Description', - 'access-control' => 'Access Control', - 'permissions' => 'Permissions', - 'custom' => 'Custom', - 'all' => 'All' + 'save-btn-title' => 'Save Role', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'access-control' => 'Access Control', + 'permissions' => 'Permissions', + 'custom' => 'Custom', + 'all' => 'All' ], 'users' => [ - 'title' => 'User', - 'add-user-title' => 'Add User', - 'edit-user-title' => 'Edit User', - 'save-btn-title' => 'Save User', - 'general' => 'General', - 'email' => 'Email', - 'name' => 'Name', - 'password' => 'Password', - 'confirm-password' => 'Confirm Password', - 'status-and-role' => 'Status and Role', - 'role' => 'Role', - 'status' => 'Status', - 'account-is-active' => 'Account is Active', - 'current-password' => 'Enter Current Password', - 'confirm-delete' => 'Confirm Delete This Account', + 'title' => 'User', + 'add-user-title' => 'Add User', + 'edit-user-title' => 'Edit User', + 'save-btn-title' => 'Save User', + 'general' => 'General', + 'email' => 'Email', + 'name' => 'Name', + 'password' => 'Password', + 'confirm-password' => 'Confirm Password', + 'status-and-role' => 'Status and Role', + 'role' => 'Role', + 'status' => 'Status', + 'account-is-active' => 'Account is Active', + 'current-password' => 'Enter Current Password', + 'confirm-delete' => 'Confirm Delete This Account', 'confirm-delete-title' => 'Confirm password before delete', - 'delete-last' => 'At least one admin is required.', - 'delete-success' => 'Success! User deleted', - 'incorrect-password' => 'The password you entered is incorrect', - 'password-match' => 'Current password does not match.', - 'account-save' => 'Account changes saved successfully.', - 'login-error' => 'Please check your credentials and try again.', - 'activate-warning' => 'Your account is yet to be activated, please contact administrator.' + 'delete-last' => 'At least one admin is required.', + 'delete-success' => 'Success! User deleted', + 'incorrect-password' => 'The password you entered is incorrect', + 'password-match' => 'Current password does not match.', + 'account-save' => 'Account changes saved successfully.', + 'login-error' => 'Please check your credentials and try again.', + 'activate-warning' => 'Your account is yet to be activated, please contact administrator.' ], 'sessions' => [ - 'title' => 'Sign In', - 'email' => 'Email', - 'password' => 'Password', + 'title' => 'Sign In', + 'email' => 'Email', + 'password' => 'Password', 'forget-password-link-title' => 'Forget Password ?', - 'remember-me' => 'Remember Me', - 'submit-btn-title' => 'Sign In' + 'remember-me' => 'Remember Me', + 'submit-btn-title' => 'Sign In' ] ], 'sales' => [ 'orders' => [ - 'title' => 'Orders', - 'view-title' => 'Order #:order_id', - 'cancel-btn-title' => 'Cancel', - 'shipment-btn-title' => 'Ship', - 'invoice-btn-title' => 'Invoice', - 'info' => 'Information', - 'invoices' => 'Invoices', - 'shipments' => 'Shipments', - 'order-and-account' => 'Order and Account', - 'order-info' => 'Order Information', - 'order-date' => 'Order Date', - 'order-status' => 'Order Status', - 'order-status-canceled' => 'Canceled', - 'order-status-closed' => 'Closed', - 'order-status-fraud' => 'Fraud', - 'order-status-pending' => 'Pending', + 'title' => 'Orders', + 'view-title' => 'Order #:order_id', + 'cancel-btn-title' => 'Cancel', + 'shipment-btn-title' => 'Ship', + 'invoice-btn-title' => 'Invoice', + 'info' => 'Information', + 'invoices' => 'Invoices', + 'shipments' => 'Shipments', + 'order-and-account' => 'Order and Account', + 'order-info' => 'Order Information', + 'order-date' => 'Order Date', + 'order-status' => 'Order Status', + 'order-status-canceled' => 'Canceled', + 'order-status-closed' => 'Closed', + 'order-status-fraud' => 'Fraud', + 'order-status-pending' => 'Pending', 'order-status-pending-payment' => 'Pending Payment', - 'order-status-processing' => 'Processing', - 'order-status-success' => 'Completed', - 'channel' => 'Channel', - 'customer-name' => 'Customer Name', - 'email' => 'Email', - 'contact-number' => 'Contact Number', - 'account-info' => 'Account Information', - 'address' => 'Address', - 'shipping-address' => 'Shipping Address', - 'billing-address' => 'Billing Address', - 'payment-and-shipping' => 'Payment and Shipping', - 'payment-info' => 'Payment Information', - 'payment-method' => 'Payment Method', - 'currency' => 'Currency', - 'shipping-info' => 'Shipping Information', - 'shipping-method' => 'Shipping Method', - 'shipping-price' => 'Shipping Price', - 'products-ordered' => 'Products Ordered', - 'SKU' => 'SKU', - 'product-name' => 'Product Name', - 'qty' => 'Qty', - 'item-status' => 'Item Status', - 'item-ordered' => 'Ordered (:qty_ordered)', - 'item-invoice' => 'Invoiced (:qty_invoiced)', - 'item-shipped' => 'Shipped (:qty_shipped)', - 'item-canceled' => 'Canceled (:qty_canceled)', - 'item-refunded' => 'Refunded (:qty_refunded)', - 'price' => 'Price', - 'total' => 'Total', - 'subtotal' => 'Subtotal', - 'shipping-handling' => 'Shipping & Handling', - 'discount' => 'Discount', - 'tax' => 'Tax', - 'tax-percent' => 'Tax Percent', - 'tax-amount' => 'Tax Amount', - 'discount-amount' => 'Discount Amount', - 'grand-total' => 'Grand Total', - 'total-paid' => 'Total Paid', - 'total-refunded' => 'Total Refunded', - 'total-due' => 'Total Due', - 'cancel-confirm-msg' => 'Are you sure you want to cancel this order ?', - 'refund-btn-title' => 'Refund', - 'refunds' => 'Refunds', - 'comment-added-success' => 'Comment addded successfully.', - 'comment' => 'Comment', - 'submit-comment' => 'Submit Comment', - 'notify-customer' => 'Notify Customer', - 'customer-notified' => ':date | Customer Notified', - 'customer-not-notified' => ':date | Customer Not Notified' + 'order-status-processing' => 'Processing', + 'order-status-success' => 'Completed', + 'channel' => 'Channel', + 'customer-name' => 'Customer Name', + 'email' => 'Email', + 'contact-number' => 'Contact Number', + 'account-info' => 'Account Information', + 'address' => 'Address', + 'shipping-address' => 'Shipping Address', + 'billing-address' => 'Billing Address', + 'payment-and-shipping' => 'Payment and Shipping', + 'payment-info' => 'Payment Information', + 'payment-method' => 'Payment Method', + 'currency' => 'Currency', + 'shipping-info' => 'Shipping Information', + 'shipping-method' => 'Shipping Method', + 'shipping-price' => 'Shipping Price', + 'products-ordered' => 'Products Ordered', + 'SKU' => 'SKU', + 'product-name' => 'Product Name', + 'qty' => 'Qty', + 'item-status' => 'Item Status', + 'item-ordered' => 'Ordered (:qty_ordered)', + 'item-invoice' => 'Invoiced (:qty_invoiced)', + 'item-shipped' => 'Shipped (:qty_shipped)', + 'item-canceled' => 'Canceled (:qty_canceled)', + 'item-refunded' => 'Refunded (:qty_refunded)', + 'price' => 'Price', + 'total' => 'Total', + 'subtotal' => 'Subtotal', + 'shipping-handling' => 'Shipping & Handling', + 'discount' => 'Discount', + 'tax' => 'Tax', + 'tax-percent' => 'Tax Percent', + 'tax-amount' => 'Tax Amount', + 'discount-amount' => 'Discount Amount', + 'grand-total' => 'Grand Total', + 'total-paid' => 'Total Paid', + 'total-refunded' => 'Total Refunded', + 'total-due' => 'Total Due', + 'cancel-confirm-msg' => 'Are you sure you want to cancel this order ?', + 'refund-btn-title' => 'Refund', + 'refunds' => 'Refunds', + 'comment-added-success' => 'Comment addded successfully.', + 'comment' => 'Comment', + 'submit-comment' => 'Submit Comment', + 'notify-customer' => 'Notify Customer', + 'customer-notified' => ':date | Customer Notified', + 'customer-not-notified' => ':date | Customer Not Notified', + 'transactions' => 'Transactions' ], 'invoices' => [ - 'title' => 'Invoices', - 'id' => 'Id', - 'invoice-id' => 'Invoice Id', - 'date' => 'Invoice Date', - 'order-id' => 'Order Id', - 'customer-name' => 'Customer Name', - 'status' => 'Status', - 'amount' => 'Amount', - 'action' => 'Action', - 'add-title' => 'Create Invoice', + 'title' => 'Invoices', + 'id' => 'Id', + 'invoice' => 'Invoice', + 'invoice-id' => 'Invoice Id', + 'date' => 'Invoice Date', + 'order-id' => 'Order Id', + 'customer-name' => 'Customer Name', + 'status' => 'Status', + 'amount' => 'Amount', + 'action' => 'Action', + 'add-title' => 'Create Invoice', 'save-btn-title' => 'Save Invoice', - 'qty' => 'Qty', - 'qty-ordered' => 'Qty Ordered', + 'qty' => 'Qty', + 'qty-ordered' => 'Qty Ordered', 'qty-to-invoice' => 'Qty to Invoice', - 'view-title' => 'Invoice #:invoice_id', - 'bill-to' => 'Bill to', - 'ship-to' => 'Ship to', - 'print' => 'Print', - 'order-date' => 'Order Date', + 'view-title' => 'Invoice #:invoice_id', + 'bill-to' => 'Bill to', + 'ship-to' => 'Ship to', + 'print' => 'Print', + 'order-date' => 'Order Date', 'creation-error' => 'Order invoice creation is not allowed.', - 'product-error' => 'Invoice can not be created without products.' + 'product-error' => 'Invoice can not be created without products.' ], 'shipments' => [ - 'title' => 'Shipments', - 'id' => 'Id', - 'date' => 'Shipment Date', - 'order-id' => 'Order Id', - 'order-date' => 'Order date', - 'customer-name' => 'Customer Name', - 'total-qty' => 'Total Qty', - 'action' => 'Action', - 'add-title' => 'Create Shipment', - 'save-btn-title' => 'Save Shipment', - 'qty-ordered' => 'Qty Ordered', - 'qty-invoiced' => 'Qty Invoiced', - 'qty-to-ship' => 'Qty to Ship', + 'title' => 'Shipments', + 'id' => 'Id', + 'date' => 'Shipment Date', + 'order-id' => 'Order Id', + 'order-date' => 'Order date', + 'customer-name' => 'Customer Name', + 'total-qty' => 'Total Qty', + 'action' => 'Action', + 'add-title' => 'Create Shipment', + 'save-btn-title' => 'Save Shipment', + 'qty-ordered' => 'Qty Ordered', + 'qty-invoiced' => 'Qty Invoiced', + 'qty-to-ship' => 'Qty to Ship', 'available-sources' => 'Available Sources', - 'source' => 'Source', - 'select-source' => 'Please Select Source', - 'qty-available' => 'Qty Available', - 'inventory-source' => 'Inventory Source', - 'carrier-title' => 'Carrier Title', - 'tracking-number' => 'Tracking Number', - 'view-title' => 'Shipment #:shipment_id', - 'creation-error' => 'Shipment can not be created for this order.', - 'order-error' => 'Order shipment creation is not allowed.', - 'quantity-invalid' => 'Requested quantity is invalid or not available.', + 'source' => 'Source', + 'select-source' => 'Please Select Source', + 'qty-available' => 'Qty Available', + 'inventory-source' => 'Inventory Source', + 'carrier-title' => 'Carrier Title', + 'tracking-number' => 'Tracking Number', + 'view-title' => 'Shipment #:shipment_id', + 'creation-error' => 'Shipment can not be created for this order.', + 'order-error' => 'Order shipment creation is not allowed.', + 'quantity-invalid' => 'Requested quantity is invalid or not available.', ], 'refunds' => [ - 'title' => 'Refunds', - 'id' => 'Id', - 'add-title' => 'Create Refund', - 'save-btn-title' => 'Refund', - 'order-id' => 'Order Id', - 'qty-ordered' => 'Qty Ordered', - 'qty-to-refund' => 'Qty To Refund', - 'refund-shipping' => 'Refund Shipping', - 'adjustment-refund' => 'Adjustment Refund', - 'adjustment-fee' => 'Adjustment Fee', - 'update-qty' => 'Update Quantities', - 'invalid-qty' => 'We found an invalid quantity to refund items.', + 'title' => 'Refunds', + 'id' => 'Id', + 'add-title' => 'Create Refund', + 'save-btn-title' => 'Refund', + 'order-id' => 'Order Id', + 'qty-ordered' => 'Qty Ordered', + 'qty-to-refund' => 'Qty To Refund', + 'refund-shipping' => 'Refund Shipping', + 'adjustment-refund' => 'Adjustment Refund', + 'adjustment-fee' => 'Adjustment Fee', + 'update-qty' => 'Update Quantities', + 'invalid-qty' => 'We found an invalid quantity to refund items.', 'refund-limit-error' => 'The most money available to refund is :amount.', - 'refunded' => 'Refunded', - 'date' => 'Refund Date', - 'customer-name' => 'Customer Name', - 'status' => 'Status', - 'action' => 'Action', - 'view-title' => 'Refund #:refund_id', + 'refunded' => 'Refunded', + 'date' => 'Refund Date', + 'customer-name' => 'Customer Name', + 'status' => 'Status', + 'action' => 'Action', + 'view-title' => 'Refund #:refund_id', 'invalid-refund-amount-error' => 'Refund amount should be non zero.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], 'catalog' => [ 'products' => [ 'title' => 'Products', - 'add-product-btn-title' => 'Add Product', - 'add-title' => 'Add Product', - 'edit-title' => 'Edit Product', - 'save-btn-title' => 'Save Product', - 'general' => 'General', - 'product-type' => 'Product Type', - 'simple' => 'Simple', - 'configurable' => 'Configurable', - 'familiy' => 'Attribute Family', - 'sku' => 'SKU', + 'add-product-btn-title' => 'Add Product', + 'add-title' => 'Add Product', + 'edit-title' => 'Edit Product', + 'save-btn-title' => 'Save Product', + 'general' => 'General', + 'product-type' => 'Product Type', + 'simple' => 'Simple', + 'configurable' => 'Configurable', + 'familiy' => 'Attribute Family', + 'sku' => 'SKU', 'configurable-attributes' => 'Configurable Attributes', - 'attribute-header' => 'Attribute(s)', + 'attribute-header' => 'Attribute(s)', 'attribute-option-header' => 'Attribute Option(s)', - 'no' => 'No', - 'yes' => 'Yes', - 'disabled' => 'Disabled', - 'enabled' => 'Enabled', - 'add-variant-btn-title' => 'Add Variant', - 'name' => 'Name', - 'qty' => 'Qty', - 'price' => 'Price', - 'weight' => 'Weight', - 'status' => 'Status', - 'add-variant-title' => 'Add Variant', + 'no' => 'No', + 'yes' => 'Yes', + 'disabled' => 'Disabled', + 'enabled' => 'Enabled', + 'add-variant-btn-title' => 'Add Variant', + 'name' => 'Name', + 'qty' => 'Qty', + 'price' => 'Price', + 'weight' => 'Weight', + 'status' => 'Status', + 'add-variant-title' => 'Add Variant', + 'add-image-btn-title' => 'Add Image', + 'mass-delete-success' => 'All the selected products have been deleted successfully', + 'mass-update-success' => 'All the selected products have been updated successfully', + 'configurable-error' => 'Please select atleast one configurable attribute.', + 'categories' => 'Categories', + 'images' => 'Images', + 'inventories' => 'Inventories', + 'variations' => 'Variations', + 'downloadable' => 'Downloadable Information', + 'links' => 'Links', + 'add-link-btn-title' => 'Add Link', + 'samples' => 'Samples', + 'add-sample-btn-title' => 'Add Sample', + 'downloads' => 'Download Allowed', + 'file' => 'File', + 'sample' => 'Sample', + 'upload-file' => 'Upload File', + 'url' => 'Url', + 'sort-order' => 'Sort Order', + 'browse-file' => 'Browse File', + 'product-link' => 'Linked Products', + 'cross-selling' => 'Cross Selling', + 'up-selling' => 'Up Selling', + 'related-products' => 'Related Products', + 'product-search-hint' => 'Start typing product name', + 'no-result-found' => 'Products not found with same name.', + 'searching' => 'Searching ...', + 'grouped-products' => 'Grouped Products', + 'search-products' => 'Search Products', + 'channel' => 'Channels', + 'bundle-items' => 'Bundle Items', + 'add-option-btn-title' => 'Add Option', + 'option-title' => 'Option Title', + 'input-type' => 'Input Type', + 'is-required' => 'Is Required', + 'select' => 'Select', + 'radio' => 'Radio', + 'checkbox' => 'Checkbox', + 'multiselect' => 'Multiselect', + 'new-option' => 'New Option', + 'is-default' => 'Is Default', + 'customer-group' => 'Customer Group', + 'add-group-price' => 'Add Customer Group Price', + 'all-group' => 'All Groups', + 'fixed' => 'Fixed', + 'discount' => 'Discount', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', 'variant-already-exist-message' => 'Variant with same attribute options already exists.', - 'add-image-btn-title' => 'Add Image', - 'mass-delete-success' => 'All the selected products have been deleted successfully', - 'mass-update-success' => 'All the selected products have been updated successfully', - 'configurable-error' => 'Please select atleast one configurable attribute.', - 'categories' => 'Categories', - 'images' => 'Images', - 'inventories' => 'Inventories', - 'variations' => 'Variations', - 'downloadable' => 'Downloadable Information', - 'links' => 'Links', - 'add-link-btn-title' => 'Add Link', - 'samples' => 'Samples', - 'add-sample-btn-title' => 'Add Sample', - 'downloads' => 'Download Allowed', - 'file' => 'File', - 'sample' => 'Sample', - 'upload-file' => 'Upload File', - 'url' => 'Url', - 'sort-order' => 'Sort Order', - 'browse-file' => 'Browse File', - 'product-link' => 'Linked Products', - 'cross-selling' => 'Cross Selling', - 'up-selling' => 'Up Selling', - 'related-products' => 'Related Products', - 'product-search-hint' => 'Start typing product name', - 'no-result-found' => 'Products not found with same name.', - 'searching' => 'Searching ...', - 'grouped-products' => 'Grouped Products', - 'search-products' => 'Search Products', - 'channel' => 'Channels', - 'bundle-items' => 'Bundle Items', - 'add-option-btn-title' => 'Add Option', - 'option-title' => 'Option Title', - 'input-type' => 'Input Type', - 'is-required' => 'Is Required', - 'select' => 'Select', - 'radio' => 'Radio', - 'checkbox' => 'Checkbox', - 'multiselect' => 'Multiselect', - 'new-option' => 'New Option', - 'is-default' => 'Is Default', - 'customer-group' => 'Customer Group', - 'add-group-price' => 'Add Customer Group Price', - 'all-group' => 'All Groups', - 'fixed' => 'Fixed', - 'discount' => 'Discount', ], 'attributes' => [ - 'title' => 'Attributes', - 'add-title' => 'Add Attribute', - 'edit-title' => 'Edit Attribute', - 'save-btn-title' => 'Save Attribute', - 'general' => 'General', - 'code' => 'Attribute Code', - 'type' => 'Attribute Type', - 'text' => 'Text', - 'textarea' => 'Textarea', - 'price' => 'Price', - 'boolean' => 'Boolean', - 'select' => 'Select', - 'multiselect' => 'Multiselect', - 'datetime' => 'Datetime', - 'date' => 'Date', - 'label' => 'Label', - 'admin' => 'Admin', - 'options' => 'Options', - 'position' => 'Position', + 'title' => 'Attributes', + 'add-title' => 'Add Attribute', + 'edit-title' => 'Edit Attribute', + 'save-btn-title' => 'Save Attribute', + 'general' => 'General', + 'code' => 'Attribute Code', + 'type' => 'Attribute Type', + 'text' => 'Text', + 'textarea' => 'Textarea', + 'price' => 'Price', + 'boolean' => 'Boolean', + 'select' => 'Select', + 'multiselect' => 'Multiselect', + 'datetime' => 'Datetime', + 'date' => 'Date', + 'label' => 'Label', + 'admin' => 'Admin', + 'options' => 'Options', + 'position' => 'Position', 'add-option-btn-title' => 'Add Option', - 'validations' => 'Validations', - 'input_validation' => 'Input Validation', - 'is_required' => 'Is Required', - 'is_unique' => 'Is Unique', - 'number' => 'Number', - 'decimal' => 'Decimal', - 'email' => 'Email', - 'url' => 'URL', - 'configuration' => 'Configuration', - 'status' => 'Status', - 'yes' => 'Yes', - 'no' => 'No', - 'value_per_locale' => 'Value Per Locale', - 'value_per_channel' => 'Value Per Channel', - 'is_filterable' => 'Use in Layered Navigation', - 'is_configurable' => 'Use To Create Configurable Product', - 'admin_name' => 'Admin Name', - 'is_visible_on_front' => 'Visible on Product View Page on Front-end', - 'swatch_type' => 'Swatch Type', - 'dropdown' => 'Dropdown', - 'color-swatch' => 'Color Swatch', - 'image-swatch' => 'Image Swatch', - 'text-swatch' => 'Text Swatch', - 'swatch' => 'Swatch', - 'image' => 'Image', - 'file' => 'File', - 'checkbox' => 'Checkbox', - 'use_in_flat' => "Create in Product Flat Table", - 'is_comparable' => "Attribute is comparable", - 'default_null_option' => 'Create default empty option', + 'validations' => 'Validations', + 'input_validation' => 'Input Validation', + 'is_required' => 'Is Required', + 'is_unique' => 'Is Unique', + 'number' => 'Number', + 'decimal' => 'Decimal', + 'email' => 'Email', + 'url' => 'URL', + 'configuration' => 'Configuration', + 'status' => 'Status', + 'yes' => 'Yes', + 'no' => 'No', + 'value_per_locale' => 'Value Per Locale', + 'value_per_channel' => 'Value Per Channel', + 'is_filterable' => 'Use in Layered Navigation', + 'is_configurable' => 'Use To Create Configurable Product', + 'admin_name' => 'Admin Name', + 'is_visible_on_front' => 'Visible on Product View Page on Front-end', + 'swatch_type' => 'Swatch Type', + 'dropdown' => 'Dropdown', + 'color-swatch' => 'Color Swatch', + 'image-swatch' => 'Image Swatch', + 'text-swatch' => 'Text Swatch', + 'swatch' => 'Swatch', + 'image' => 'Image', + 'file' => 'File', + 'checkbox' => 'Checkbox', + 'use_in_flat' => "Create in Product Flat Table", + 'is_comparable' => "Attribute is comparable", + 'default_null_option' => 'Create default empty option', ], 'families' => [ - 'title' => 'Families', + 'title' => 'Families', 'add-family-btn-title' => 'Add Family', - 'add-title' => 'Add Family', - 'edit-title' => 'Edit Family', - 'save-btn-title' => 'Save Family', - 'general' => 'General', - 'code' => 'Family Code', - 'name' => 'Name', - 'groups' => 'Groups', - 'add-group-title' => 'Add Group', - 'position' => 'Position', - 'attribute-code' => 'Code', - 'type' => 'Type', - 'add-attribute-title' => 'Add Attributes', - 'search' => 'Search', - 'group-exist-error' => 'Group with same name already exists.' + 'add-title' => 'Add Family', + 'edit-title' => 'Edit Family', + 'save-btn-title' => 'Save Family', + 'general' => 'General', + 'code' => 'Family Code', + 'name' => 'Name', + 'groups' => 'Groups', + 'add-group-title' => 'Add Group', + 'position' => 'Position', + 'attribute-code' => 'Code', + 'type' => 'Type', + 'add-attribute-title' => 'Add Attributes', + 'search' => 'Search', + 'group-exist-error' => 'Group with same name already exists.' ], 'categories' => [ - 'title' => 'Categories', - 'add-title' => 'Add Category', - 'edit-title' => 'Edit Category', - 'save-btn-title' => 'Save Category', - 'general' => 'General', - 'name' => 'Name', - 'visible-in-menu' => 'Visible In Menu', - 'yes' => 'Yes', - 'no' => 'No', - 'position' => 'Position', - 'display-mode' => 'Display Mode', + 'title' => 'Categories', + 'add-title' => 'Add Category', + 'edit-title' => 'Edit Category', + 'save-btn-title' => 'Save Category', + 'general' => 'General', + 'name' => 'Name', + 'visible-in-menu' => 'Visible In Menu', + 'yes' => 'Yes', + 'no' => 'No', + 'position' => 'Position', + 'display-mode' => 'Display Mode', 'products-and-description' => 'Products and Description', - 'products-only' => 'Products Only', - 'description-only' => 'Description Only', - 'description-and-images' => 'Description and Images', - 'description' => 'Description', - 'parent-category' => 'Parent Category', - 'seo' => 'Search Engine Optimization', - 'slug' => 'Slug', - 'meta_title' => 'Meta Title', - 'meta_description' => 'Meta Description', - 'meta_keywords' => 'Meta Keywords', - 'image' => 'Image', - 'filterable-attributes' => 'Filterable Attributes', - 'attributes' => 'Attributes', + 'products-only' => 'Products Only', + 'description-only' => 'Description Only', + 'description-and-images' => 'Description and Images', + 'description' => 'Description', + 'parent-category' => 'Parent Category', + 'seo' => 'Search Engine Optimization', + 'slug' => 'Slug', + 'meta_title' => 'Meta Title', + 'meta_description' => 'Meta Description', + 'meta_keywords' => 'Meta Keywords', + 'image' => 'Image', + 'filterable-attributes' => 'Filterable Attributes', + 'attributes' => 'Attributes', ] ], 'configuration' => [ - 'title' => 'Configuration', + 'title' => 'Configuration', 'save-btn-title' => 'Save', - 'save-message' => 'Configuration saved successfully', - 'yes' => 'Yes', - 'no' => 'No', - 'delete' => 'Delete', + 'save-message' => 'Configuration saved successfully', + 'yes' => 'Yes', + 'no' => 'No', + 'delete' => 'Delete', 'tax-categories' => [ - 'title' => 'Tax Categories', - 'add-title' => 'Add Tax Category', - 'edit-title' => 'Edit Tax Category', - 'save-btn-title' => 'Save Tax Category', - 'general' => 'Tax Category', - 'select-channel' => 'Select Channel', - 'name' => 'Name', - 'code' => 'Code', - 'description' => 'Description', + 'title' => 'Tax Categories', + 'add-title' => 'Add Tax Category', + 'edit-title' => 'Edit Tax Category', + 'save-btn-title' => 'Save Tax Category', + 'general' => 'Tax Category', + 'select-channel' => 'Select Channel', + 'name' => 'Name', + 'code' => 'Code', + 'description' => 'Description', 'select-taxrates' => 'Select Tax Rates', 'edit' => [ - 'title' => 'Edit Tax Category', + 'title' => 'Edit Tax Category', 'edit-button-title' => 'Edit Tax Category' ] ], 'tax-rates' => [ - 'title' => 'Tax Rates', - 'add-title' => 'Add Tax Rate', - 'edit-title' => 'Edit Tax Rate', + 'title' => 'Tax Rates', + 'add-title' => 'Add Tax Rate', + 'edit-title' => 'Edit Tax Rate', 'save-btn-title' => 'Save Tax Rate', - 'general' => 'Tax Rate', - 'identifier' => 'Identifier', - 'is_zip' => 'Enable Zip Range', - 'zip_from' => 'Zip From', - 'zip_to' => 'Zip To', - 'state' => 'State', - 'select-state' => 'Select a region, state or province.', - 'country' => 'Country', - 'tax_rate' => 'Rate', + 'general' => 'Tax Rate', + 'identifier' => 'Identifier', + 'is_zip' => 'Enable Zip Range', + 'zip_from' => 'Zip From', + 'zip_to' => 'Zip To', + 'state' => 'State', + 'select-state' => 'Select a region, state or province.', + 'country' => 'Country', + 'tax_rate' => 'Rate', 'edit' => [ - 'title' => 'Edit Tax Rate', + 'title' => 'Edit Tax Rate', 'edit-button-title' => 'Edit Rate' ], 'zip_code' => 'Zip Code', @@ -679,198 +728,202 @@ return [ 'sales' => [ 'shipping-method' => [ - 'title' => 'Shipping Methods', + 'title' => 'Shipping Methods', 'save-btn-title' => 'Save', - 'description' => 'Description', - 'active' => 'Active', - 'status' => 'Status' + 'description' => 'Description', + 'active' => 'Active', + 'status' => 'Status' ] ] ], 'settings' => [ 'locales' => [ - 'title' => 'Locales', - 'add-title' => 'Add Locale', - 'edit-title' => 'Edit Locale', - 'save-btn-title' => 'Save Locale', - 'general' => 'General', - 'code' => 'Code', - 'name' => 'Name', - 'direction' => 'Direction', - 'create-success' => 'Locale created successfully.', - 'update-success' => 'Locale updated successfully.', - 'delete-success' => 'Locale deleted successfully.', + 'title' => 'Locales', + 'add-title' => 'Add Locale', + 'edit-title' => 'Edit Locale', + 'save-btn-title' => 'Save Locale', + 'general' => 'General', + 'code' => 'Code', + 'name' => 'Name', + 'direction' => 'Direction', + 'create-success' => 'Locale created successfully.', + 'update-success' => 'Locale updated successfully.', + 'delete-success' => 'Locale deleted successfully.', 'last-delete-error' => 'At least one Locale is required.', ], 'countries' => [ - 'title' => 'Countries', - 'add-title' => 'Add Country', + 'title' => 'Countries', + 'add-title' => 'Add Country', 'save-btn-title' => 'Save Country', - 'general' => 'General', - 'code' => 'Code', - 'name' => 'Name' + 'general' => 'General', + 'code' => 'Code', + 'name' => 'Name' ], 'currencies' => [ - 'title' => 'Currencies', - 'add-title' => 'Add Currency', - 'edit-title' => 'Edit Currency', - 'save-btn-title' => 'Save Currency', - 'general' => 'General', - 'code' => 'Code', - 'name' => 'Name', - 'symbol' => 'Symbol', - 'create-success' => 'Currency created successfully.', - 'update-success' => 'Currency updated successfully.', - 'delete-success' => 'Currency deleted successfully.', + 'title' => 'Currencies', + 'add-title' => 'Add Currency', + 'edit-title' => 'Edit Currency', + 'save-btn-title' => 'Save Currency', + 'general' => 'General', + 'code' => 'Code', + 'name' => 'Name', + 'symbol' => 'Symbol', + 'create-success' => 'Currency created successfully.', + 'update-success' => 'Currency updated successfully.', + 'delete-success' => 'Currency deleted successfully.', 'last-delete-error' => 'At least one Currency is required.', ], 'exchange_rates' => [ - 'title' => 'Exchange Rates', - 'add-title' => 'Add Exchange Rate', - 'edit-title' => 'Edit Exchange Rate', - 'save-btn-title' => 'Save Exchange Rate', - 'general' => 'General', - 'source_currency' => 'Source Currency', - 'target_currency' => 'Target Currency', - 'rate' => 'Rate', + 'title' => 'Exchange Rates', + 'add-title' => 'Add Exchange Rate', + 'edit-title' => 'Edit Exchange Rate', + 'save-btn-title' => 'Save Exchange Rate', + 'general' => 'General', + 'source_currency' => 'Source Currency', + 'target_currency' => 'Target Currency', + 'rate' => 'Rate', 'exchange-class-not-found' => ':service exchange rate class not found', - 'update-rates' => 'Update Rates', - 'create-success' => 'Exchange Rate created successfully.', - 'update-success' => 'Exchange Rate updated successfully.', - 'delete-success' => 'Exchange Rate deleted successfully.', - 'last-delete-error' => 'At least one Exchange Rate is required.', + 'update-rates' => 'Update Rates', + 'create-success' => 'Exchange Rate created successfully.', + 'update-success' => 'Exchange Rate updated successfully.', + 'delete-success' => 'Exchange Rate deleted successfully.', + 'last-delete-error' => 'At least one Exchange Rate is required.', ], 'inventory_sources' => [ - 'title' => 'Inventory Sources', - 'add-title' => 'Add Inventory Source', - 'edit-title' => 'Edit Inventory Source', - 'save-btn-title' => 'Save Inventory Source', - 'general' => 'General', - 'code' => 'Code', - 'name' => 'Name', - 'description' => 'Description', - 'source-is-active' => 'Source is Active', - 'contact-info' => 'Contact Information', - 'contact_name' => 'Name', - 'contact_email' => 'Email', - 'contact_number' => 'Contact Number', - 'contact_fax' => 'Fax', - 'address' => 'Source Address', - 'country' => 'Country', - 'state' => 'State', - 'city' => 'City', - 'street' => 'Street', - 'postcode' => 'Postcode', - 'priority' => 'Priority', - 'latitude' => 'Latitude', - 'longitude' => 'Longitude', - 'status' => 'Status', - 'create-success' => 'Inventory source created successfully.', - 'update-success' => 'Inventory source updated successfully.', - 'delete-success' => 'Inventory source deleted successfully.', + 'title' => 'Inventory Sources', + 'add-title' => 'Add Inventory Source', + 'edit-title' => 'Edit Inventory Source', + 'save-btn-title' => 'Save Inventory Source', + 'general' => 'General', + 'code' => 'Code', + 'name' => 'Name', + 'description' => 'Description', + 'source-is-active' => 'Source is Active', + 'contact-info' => 'Contact Information', + 'contact_name' => 'Name', + 'contact_email' => 'Email', + 'contact_number' => 'Contact Number', + 'contact_fax' => 'Fax', + 'address' => 'Source Address', + 'country' => 'Country', + 'state' => 'State', + 'city' => 'City', + 'street' => 'Street', + 'postcode' => 'Postcode', + 'priority' => 'Priority', + 'latitude' => 'Latitude', + 'longitude' => 'Longitude', + 'status' => 'Status', + 'create-success' => 'Inventory source created successfully.', + 'update-success' => 'Inventory source updated successfully.', + 'delete-success' => 'Inventory source deleted successfully.', 'last-delete-error' => 'At least one Inventory source is required.', ], 'channels' => [ - 'title' => 'Channels', - 'add-title' => 'Add Channel', - 'edit-title' => 'Edit Channel', - 'save-btn-title' => 'Save Channel', - 'general' => 'General', - 'code' => 'Code', - 'name' => 'Name', - 'description' => 'Description', - 'hostname' => 'Hostname', + 'title' => 'Channels', + 'add-title' => 'Add Channel', + 'edit-title' => 'Edit Channel', + 'save-btn-title' => 'Save Channel', + 'general' => 'General', + 'code' => 'Code', + 'name' => 'Name', + 'description' => 'Description', + 'hostname' => 'Hostname', 'currencies-and-locales' => 'Currencies and Locales', - 'locales' => 'Locales', - 'default-locale' => 'Default Locale', - 'currencies' => 'Currencies', - 'base-currency' => 'Default Currency', - 'root-category' => 'Root Category', - 'inventory_sources' => 'Inventory Sources', - 'design' => 'Design', - 'theme' => 'Theme', - 'home_page_content' => 'Home Page Content', - 'footer_content' => 'Footer Content', - 'logo' => 'Logo', - 'favicon' => 'Favicon', - 'create-success' => 'Channel created successfully.', - 'update-success' => 'Channel updated successfully.', - 'delete-success' => 'Channel deleted successfully.', - 'last-delete-error' => 'At least one Channel is required.', - 'seo' => 'Home page SEO', - 'seo-title' => 'Meta title', - 'seo-description' => 'Meta description', - 'seo-keywords' => 'Meta keywords', - + 'locales' => 'Locales', + 'default-locale' => 'Default Locale', + 'currencies' => 'Currencies', + 'base-currency' => 'Default Currency', + 'root-category' => 'Root Category', + 'inventory_sources' => 'Inventory Sources', + 'design' => 'Design', + 'theme' => 'Theme', + 'home_page_content' => 'Home Page Content', + 'footer_content' => 'Footer Content', + 'logo' => 'Logo', + 'favicon' => 'Favicon', + 'create-success' => 'Channel created successfully.', + 'update-success' => 'Channel updated successfully.', + 'delete-success' => 'Channel deleted successfully.', + 'last-delete-error' => 'At least one Channel is required.', + 'seo' => 'Home page SEO', + 'seo-title' => 'Meta title', + 'seo-description' => 'Meta description', + 'seo-keywords' => 'Meta keywords', + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ - 'title' => 'Sliders', - 'name' => 'Name', - 'add-title' => 'Create Slider', - 'edit-title' => 'Edit Slider', - 'save-btn-title' => 'Save Slider', - 'general' => 'General', - 'image' => 'Image', - 'content' => 'Content', - 'channels' => 'Channel', + 'title' => 'Sliders', + 'name' => 'Name', + 'add-title' => 'Create Slider', + 'edit-title' => 'Edit Slider', + 'save-btn-title' => 'Save Slider', + 'general' => 'General', + 'image' => 'Image', + 'content' => 'Content', + 'channels' => 'Channel', 'created-success' => 'Slider item created successfully', - 'created-fault' => 'Error in creating slider item', - 'update-success' => 'Slider item successfully updated', - 'update-fail' => 'Slider cannot be updated', - 'delete-success' => 'Cannot delete last slider item', - 'delete-fail' => 'Slider item successfully deleted' + 'created-fault' => 'Error in creating slider item', + 'update-success' => 'Slider item successfully updated', + 'update-fail' => 'Slider cannot be updated', + 'delete-success' => 'Cannot delete last slider item', + 'delete-fail' => 'Slider item successfully deleted', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order', ], 'tax-categories' => [ - 'title' => 'Tax Categories', - 'add-title' => 'Create Tax Category', - 'edit-title' => 'Edit Tax Category', - 'save-btn-title' => 'Save Tax Category', - 'general' => 'Tax Category', - 'select-channel' => 'Select Channel', - 'name' => 'Name', - 'code' => 'Code', - 'description' => 'Description', + 'title' => 'Tax Categories', + 'add-title' => 'Create Tax Category', + 'edit-title' => 'Edit Tax Category', + 'save-btn-title' => 'Save Tax Category', + 'general' => 'Tax Category', + 'select-channel' => 'Select Channel', + 'name' => 'Name', + 'code' => 'Code', + 'description' => 'Description', 'select-taxrates' => 'Select Tax Rates', 'edit' => [ - 'title' => 'Edit Tax Category', + 'title' => 'Edit Tax Category', 'edit-button-title' => 'Edit Tax Category' ], 'create-success' => 'New Tax Category Created', - 'create-error' => 'Error, While Creating Tax Category', + 'create-error' => 'Error, While Creating Tax Category', 'update-success' => 'Successfully Updated Tax Category', - 'update-error' => 'Error While Updating Tax Category', - 'atleast-one' => 'Cannot Delete The Last Tax Category', - 'delete' => 'Tax Category Successfully Deleted' + 'update-error' => 'Error While Updating Tax Category', + 'atleast-one' => 'Cannot Delete The Last Tax Category', + 'delete' => 'Tax Category Successfully Deleted' ], 'tax-rates' => [ - 'title' => 'Tax Rates', - 'add-title' => 'Create Tax Rate', - 'edit-title' => 'Edit Tax Rate', + 'title' => 'Tax Rates', + 'add-title' => 'Create Tax Rate', + 'edit-title' => 'Edit Tax Rate', 'save-btn-title' => 'Save Tax Rate', - 'general' => 'Tax Rate', - 'identifier' => 'Identifier', - 'is_zip' => 'Enable Zip Range', - 'zip_from' => 'Zip From', - 'zip_to' => 'Zip To', - 'state' => 'State', - 'select-state' => 'Select a region, state or province.', - 'country' => 'Country', - 'tax_rate' => 'Rate', + 'general' => 'Tax Rate', + 'identifier' => 'Identifier', + 'is_zip' => 'Enable Zip Range', + 'zip_from' => 'Zip From', + 'zip_to' => 'Zip To', + 'state' => 'State', + 'select-state' => 'Select a region, state or province.', + 'country' => 'Country', + 'tax_rate' => 'Rate', 'edit' => [ - 'title' => 'Edit Tax Rate', + 'title' => 'Edit Tax Rate', 'edit-button-title' => 'Edit Rate' ], - 'zip_code' => 'Zip Code', + 'zip_code' => 'Zip Code', 'create-success' => 'Tax Rate Created Successfully', - 'create-error' => 'Cannot Create Tax Rate', + 'create-error' => 'Cannot Create Tax Rate', 'update-success' => 'Tax Rate Updated Successfully', - 'update-error' => 'Error! Tax Rate Cannot Be Updated', - 'delete' => 'Tax Rate Deleted Successfully', - 'atleast-one' => 'Cannot Delete Last Tax Rate' + 'update-error' => 'Error! Tax Rate Cannot Be Updated', + 'delete' => 'Tax Rate Deleted Successfully', + 'atleast-one' => 'Cannot Delete Last Tax Rate' ], 'development' => [ 'title' => 'Development', @@ -878,353 +931,422 @@ return [ ], 'customers' => [ - 'groups' =>[ - 'add-title' => 'Add Group', - 'edit-title' => 'Edit Group', - 'save-btn-title' => 'Save Group', - 'title' => 'Groups', - 'code' => 'Code', - 'name' => 'Name', + 'groups' => [ + 'add-title' => 'Add Group', + 'edit-title' => 'Edit Group', + 'save-btn-title' => 'Save Group', + 'title' => 'Groups', + 'code' => 'Code', + 'name' => 'Name', 'is_user_defined' => 'User Defined', - 'yes' => 'Yes' + 'yes' => 'Yes' ], 'addresses' => [ - 'title' => ':customer_name\'s Addresses List', - 'vat_id' => 'Vat id', - 'create-title' => 'Create Customer\'s Address', - 'edit-title' => 'Update Customer\'s Address', - 'title-orders' => ':customer_name\'s Orders List', - 'address-list' => 'Address\'s List', - 'order-list' => 'Order\'s List', - 'address-id' => 'Address ID', - 'company-name' => 'Company Name', - 'address-1' => 'Address 1', - 'city' => 'City', - 'state-name' => 'State', - 'country-name' => 'Country', - 'postcode' => 'Post Code', - 'default-address' => 'Default Address', - 'yes' => 'Yes', - 'not-approved' => 'Not Approved', - 'no' => 'No', - 'dash' => '-', - 'delete' => 'Delete', - 'create-btn-title' => 'Add Address', - 'save-btn-title' => 'Save Address', - 'general' => 'General', - 'success-create' => 'Success: Customer address created successfully.', - 'success-update' => 'Success: Customer address updated successfully.', - 'success-delete' => 'Success: Customer address deleted successfully.', + 'title' => ':customer_name\'s Addresses List', + 'vat_id' => 'Vat id', + 'create-title' => 'Create Customer\'s Address', + 'edit-title' => 'Update Customer\'s Address', + 'title-orders' => ':customer_name\'s Orders List', + 'address-list' => 'Address\'s List', + 'order-list' => 'Order\'s List', + 'address-id' => 'Address ID', + 'company-name' => 'Company Name', + 'address-1' => 'Address 1', + 'city' => 'City', + 'state-name' => 'State', + 'country-name' => 'Country', + 'postcode' => 'Post Code', + 'default-address' => 'Default Address', + 'yes' => 'Yes', + 'not-approved' => 'Not Approved', + 'no' => 'No', + 'dash' => '-', + 'delete' => 'Delete', + 'create-btn-title' => 'Add Address', + 'save-btn-title' => 'Save Address', + 'general' => 'General', + 'success-create' => 'Success: Customer address created successfully.', + 'success-update' => 'Success: Customer address updated successfully.', + 'success-delete' => 'Success: Customer address deleted successfully.', 'success-mass-delete' => 'Success: selected addresses deleted successfully.', - 'error-create' => 'Error: Customer address not created.', + 'error-create' => 'Error: Customer address not created.', ], 'note' => [ - 'title' => 'Add Note', - 'save-note' => 'Save Note', + 'title' => 'Add Note', + 'save-note' => 'Save Note', 'enter-note' => 'Enter Note', 'help-title' => 'Add Note On This Customer' ], 'customers' => [ - 'add-title' => 'Add Customer', - 'edit-title' => 'Edit Customer', - 'title' => 'Customers', - 'first_name' => 'First Name', - 'last_name' => 'Last Name', - 'gender' => 'Gender', - 'email' => 'Email', - 'date_of_birth' => 'Date of Birth', - 'phone' => 'Phone', - 'customer_group' => 'Customer Group', - 'save-btn-title' => 'Save Customer', - 'channel_name' => 'Channel Name', - 'state' => 'State', - 'select-state' => 'Select a region, state or province.', - 'country' => 'Country', - 'other' => 'Other', - 'male' => 'Male', - 'female' => 'Female', - 'group-default' => 'Cannot delete the default group.', - 'edit-help-title' => 'Edit Customer', - 'delete-help-title' => 'Delete Customer', - 'addresses' => 'Addresses', - 'mass-destroy-success' => 'Customers deleted successfully', - 'mass-update-success' => 'Customers updated successfully', - 'status' => 'Status', - 'active' => 'Active', - 'inactive' => 'Inactive' + 'add-title' => 'Add Customer', + 'edit-title' => 'Edit Customer', + 'title' => 'Customers', + 'first_name' => 'First Name', + 'last_name' => 'Last Name', + 'gender' => 'Gender', + 'email' => 'Email', + 'date_of_birth' => 'Date of Birth', + 'date_of_birth_placeholder' => 'yyyy-mm-dd', + 'phone' => 'Phone', + 'customer_group' => 'Customer Group', + 'save-btn-title' => 'Save Customer', + 'channel_name' => 'Channel Name', + 'state' => 'State', + 'select-state' => 'Select a region, state or province.', + 'country' => 'Country', + 'other' => 'Other', + 'male' => 'Male', + 'female' => 'Female', + 'group-default' => 'Cannot delete the default group.', + 'edit-help-title' => 'Edit Customer', + 'delete-help-title' => 'Delete Customer', + 'addresses' => 'Addresses', + 'mass-destroy-success' => 'Customers deleted successfully', + 'mass-update-success' => 'Customers updated successfully', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive' ], 'reviews' => [ - 'title' => 'Reviews', - 'edit-title' => 'Edit Review', - 'rating' => 'Rating', - 'status' => 'Status', - 'comment' => 'Comment', - 'pending' => 'Pending', - 'approved' => 'Approve', + 'title' => 'Reviews', + 'edit-title' => 'Edit Review', + 'rating' => 'Rating', + 'status' => 'Status', + 'comment' => 'Comment', + 'pending' => 'Pending', + 'approved' => 'Approve', 'disapproved' => 'Disapprove' ], 'subscribers' => [ - 'title' => 'News Letter Subscribers', - 'title-edit' => 'Edit News Letter Subscriber', - 'email' => 'Email', - 'is_subscribed' => 'Subscribed', + 'title' => 'Newsletter Subscribers', + 'title-edit' => 'Edit Newsletter Subscriber', + 'email' => 'Email', + 'is_subscribed' => 'Subscribed', 'edit-btn-title' => 'Update Subscriber', 'update-success' => 'Subscriber was successfully updated', 'update-failed' => 'Error! You cannot unsubscribe the subscriber', 'delete' => 'Subscriber was successfully deleted', - 'delete-failed' => 'Error! Subscriber cannot be deleted' + 'delete-failed' => 'Error! Subscriber cannot be deleted', + 'update-failed' => 'Error! You cannot unsubscribe the subscriber', + 'delete' => 'Subscriber was successfully deleted', + 'delete-failed' => 'Error! Subscriber cannot be deleted' ], 'orders' => [ 'list' => ':customer_name\'s orders List', 'title' => 'Orders' - ] + ] ], 'promotions' => [ 'cart-rules' => [ - 'title' => 'Cart Rules', - 'add-title' => 'Add Cart Rule', - 'edit-title' => 'Edit Cart Rule', - 'save-btn-title' => 'Save Cart Rule', - 'rule-information' => 'Rule Information', - 'name' => 'Name', - 'description' => 'Description', - 'status' => 'Status', - 'is-active' => 'Cart Rule is Active', - 'channels' => 'Channels', - 'customer-groups' => 'Customer Groups', - 'coupon-type' => 'Coupon Type', - 'no-coupon' => 'No Coupon', - 'specific-coupon' => 'Specific Coupon', - 'auto-generate-coupon' => 'Auto Generate Coupon', - 'no' => 'No', - 'yes' => 'Yes', - 'coupon-code' => 'Coupon Code', - 'uses-per-coupon' => 'Uses Per Coupon', - 'uses-per-customer' => 'Uses Per Customer', + 'title' => 'Cart Rules', + 'add-title' => 'Add Cart Rule', + 'edit-title' => 'Edit Cart Rule', + 'save-btn-title' => 'Save Cart Rule', + 'rule-information' => 'Rule Information', + 'name' => 'Name', + 'description' => 'Description', + 'status' => 'Status', + 'is-active' => 'Cart Rule is Active', + 'channels' => 'Channels', + 'customer-groups' => 'Customer Groups', + 'coupon-type' => 'Coupon Type', + 'no-coupon' => 'No Coupon', + 'specific-coupon' => 'Specific Coupon', + 'auto-generate-coupon' => 'Auto Generate Coupon', + 'no' => 'No', + 'yes' => 'Yes', + 'coupon-code' => 'Coupon Code', + 'uses-per-coupon' => 'Uses Per Coupon', + 'uses-per-customer' => 'Uses Per Customer', 'uses-per-customer-control-info' => 'Will be used for logged in customers only.', - 'from' => 'From', - 'to' => 'To', - 'priority' => 'Priority', - 'conditions' => 'Conditions', - 'condition-type' => 'Condition Type', - 'all-conditions-true' => 'All Conditions are True', - 'any-condition-true' => 'Any Condition is True', - 'add-condition' => 'Add Condition', - 'choose-condition-to-add' => 'Choose a condition to add', - 'cart-attribute' => 'Cart Attribute', - 'subtotal' => 'Subtotal', - 'additional' => 'Additional Information', - 'total-items-qty' => 'Total Items Qty', - 'total-weight' => 'Total Weight', - 'payment-method' => 'Payment Method', - 'shipping-method' => 'Shipping Method', - 'shipping-postcode' => 'Shipping Zip/Postcode', - 'shipping-state' => 'Shipping State', - 'shipping-country' => 'Shipping Country', - 'cart-item-attribute' => 'Cart Item Attribute', - 'price-in-cart' => 'Price in Cart', - 'qty-in-cart' => 'Qty in Cart', - 'product-attribute' => 'Product Attribute', - 'attribute-name-children-only' => ':attribute_name (Children Only)', - 'attribute-name-parent-only' => ':attribute_name (Parent Only)', - 'is-equal-to' => 'Is equal to', - 'is-not-equal-to' => 'Is not equal to', - 'equals-or-greater-than' => 'Equals or greater than', - 'equals-or-less-than' => 'Equals or less than', - 'greater-than' => 'Greater than', - 'less-than' => 'Less than', - 'contain' => 'Contain', - 'contains' => 'Contains', - 'does-not-contain' => 'Does not contain', - 'actions' => 'Actions', - 'action-type' => 'Action Type', - 'percentage-product-price' => 'Percentage of Product Price', - 'fixed-amount' => 'Fixed Amount', - 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Cart', - 'buy-x-get-y-free' => 'Buy X Get Y Free', - 'discount-amount' => 'Discount Amount', - 'discount-quantity' => 'Maximum Quantity Allowed to be Discounted', - 'discount-step' => 'Buy X Quantity', - 'free-shipping' => 'Free Shipping', - 'apply-to-shipping' => 'Apply to Shipping', - 'coupon-codes' => 'Coupon Codes', - 'coupon-qty' => 'Coupon Qty', - 'code-length' => 'Code Length', - 'code-format' => 'Code Format', - 'alphanumeric' => 'Alphanumeric', - 'alphabetical' => 'Alphabetical', - 'numeric' => 'Numeric', - 'code-prefix' => 'Code Prefix', - 'code-suffix' => 'Code Suffix', - 'generate' => 'Generate', - 'cart-rule-not-defind-error' => 'Cart rule is not defined', - 'mass-delete-success' => 'All the selected coupons have been deleted successfully.', - 'end-other-rules' => 'End Other Rules', - 'children-categories' => 'Categories (Children Only)', - 'parent-categories' => 'Categories (Parent Only)', - 'categories' => 'Categories', - 'attribute_family' => 'Attribute Family' + 'from' => 'From', + 'to' => 'To', + 'priority' => 'Priority', + 'conditions' => 'Conditions', + 'condition-type' => 'Condition Type', + 'all-conditions-true' => 'All Conditions are True', + 'any-condition-true' => 'Any Condition is True', + 'add-condition' => 'Add Condition', + 'choose-condition-to-add' => 'Choose a condition to add', + 'cart-attribute' => 'Cart Attribute', + 'subtotal' => 'Subtotal', + 'additional' => 'Additional Information', + 'total-items-qty' => 'Total Items Qty', + 'total-weight' => 'Total Weight', + 'payment-method' => 'Payment Method', + 'shipping-method' => 'Shipping Method', + 'shipping-postcode' => 'Shipping Zip/Postcode', + 'shipping-state' => 'Shipping State', + 'shipping-country' => 'Shipping Country', + 'cart-item-attribute' => 'Cart Item Attribute', + 'price-in-cart' => 'Price in Cart', + 'qty-in-cart' => 'Qty in Cart', + 'product-attribute' => 'Product Attribute', + 'attribute-name-children-only' => ':attribute_name (Children Only)', + 'attribute-name-parent-only' => ':attribute_name (Parent Only)', + 'is-equal-to' => 'Is equal to', + 'is-not-equal-to' => 'Is not equal to', + 'equals-or-greater-than' => 'Equals or greater than', + 'equals-or-less-than' => 'Equals or less than', + 'greater-than' => 'Greater than', + 'less-than' => 'Less than', + 'contain' => 'Contain', + 'contains' => 'Contains', + 'does-not-contain' => 'Does not contain', + 'actions' => 'Actions', + 'action-type' => 'Action Type', + 'percentage-product-price' => 'Percentage of Product Price', + 'fixed-amount' => 'Fixed Amount', + 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Cart', + 'buy-x-get-y-free' => 'Buy X Get Y Free', + 'discount-amount' => 'Discount Amount', + 'discount-quantity' => 'Maximum Quantity Allowed to be Discounted', + 'discount-step' => 'Buy X Quantity', + 'free-shipping' => 'Free Shipping', + 'apply-to-shipping' => 'Apply to Shipping', + 'coupon-codes' => 'Coupon Codes', + 'coupon-qty' => 'Coupon Qty', + 'code-length' => 'Code Length', + 'code-format' => 'Code Format', + 'alphanumeric' => 'Alphanumeric', + 'alphabetical' => 'Alphabetical', + 'numeric' => 'Numeric', + 'code-prefix' => 'Code Prefix', + 'code-suffix' => 'Code Suffix', + 'generate' => 'Generate', + 'cart-rule-not-defind-error' => 'Cart rule is not defined', + 'end-other-rules' => 'End Other Rules', + 'children-categories' => 'Categories (Children Only)', + 'parent-categories' => 'Categories (Parent Only)', + 'categories' => 'Categories', + 'attribute_family' => 'Attribute Family', + 'mass-delete-success' => 'All the selected coupons have been deleted successfully.', ], 'catalog-rules' => [ - 'title' => 'Catalog Rules', - 'add-title' => 'Add Catalog Rule', - 'edit-title' => 'Edit Catalog Rule', - 'save-btn-title' => 'Save Catalog Rule', + 'title' => 'Catalog Rules', + 'add-title' => 'Add Catalog Rule', + 'edit-title' => 'Edit Catalog Rule', + 'save-btn-title' => 'Save Catalog Rule', 'rule-information' => 'Rule Information', - 'name' => 'Name', - 'description' => 'Description', - 'status' => 'Status', - 'is-active' => 'Catalog Rule is Active', - 'channels' => 'Channels', - 'customer-groups' => 'Customer Groups', - 'no' => 'No', - 'yes' => 'Yes', - 'from' => 'From', - 'to' => 'To', - 'priority' => 'Priority', - 'conditions' => 'Conditions', - 'condition-type' => 'Condition Type', - 'all-conditions-true' => 'All Conditions are True', - 'any-condition-true' => 'Any Condition is True', - 'add-condition' => 'Add Condition', - 'choose-condition-to-add' => 'Choose a condition to add', - 'product-attribute' => 'Product Attribute', + 'name' => 'Name', + 'description' => 'Description', + 'status' => 'Status', + 'is-active' => 'Catalog Rule is Active', + 'channels' => 'Channels', + 'customer-groups' => 'Customer Groups', + 'no' => 'No', + 'yes' => 'Yes', + 'from' => 'From', + 'to' => 'To', + 'priority' => 'Priority', + 'conditions' => 'Conditions', + 'end-other-rules' => 'End Other Rules', + 'categories' => 'Categories', + 'attribute_family' => 'Attribute Family', + 'condition-type' => 'Condition Type', + 'all-conditions-true' => 'All Conditions are True', + 'any-condition-true' => 'Any Condition is True', + 'add-condition' => 'Add Condition', + 'choose-condition-to-add' => 'Choose a condition to add', + 'product-attribute' => 'Product Attribute', 'attribute-name-children-only' => ':attribute_name (Children Only)', - 'attribute-name-parent-only' => ':attribute_name (Parent Only)', - 'is-equal-to' => 'Is equal to', - 'is-not-equal-to' => 'Is not equal to', - 'equals-or-greater-than' => 'Equals or greater than', - 'equals-or-less-than' => 'Equals or less than', - 'greater-than' => 'Greater than', - 'less-than' => 'Less than', - 'contain' => 'Contain', - 'contains' => 'Contains', - 'does-not-contain' => 'Does not contain', - 'actions' => 'Actions', - 'action-type' => 'Action Type', - 'percentage-product-price' => 'Percentage of Product Price', - 'fixed-amount' => 'Fixed Amount', - 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Catalog', - 'buy-x-get-y-free' => 'Buy X Get Y Free', - 'discount-amount' => 'Discount Amount', - 'mass-delete-success' => 'All the selected index of coupons have been deleted successfully.', - 'end-other-rules' => 'End Other Rules', - 'categories' => 'Categories', - 'attribute_family' => 'Attribute Family' + 'attribute-name-parent-only' => ':attribute_name (Parent Only)', + 'is-equal-to' => 'Is equal to', + 'is-not-equal-to' => 'Is not equal to', + 'equals-or-greater-than' => 'Equals or greater than', + 'equals-or-less-than' => 'Equals or less than', + 'greater-than' => 'Greater than', + 'less-than' => 'Less than', + 'contain' => 'Contain', + 'contains' => 'Contains', + 'does-not-contain' => 'Does not contain', + 'actions' => 'Actions', + 'action-type' => 'Action Type', + 'percentage-product-price' => 'Percentage of Product Price', + 'fixed-amount' => 'Fixed Amount', + 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Catalog', + 'buy-x-get-y-free' => 'Buy X Get Y Free', + 'discount-amount' => 'Discount Amount', + 'mass-delete-success' => 'All the selected index of coupons have been deleted successfully.', + ] + ], + + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' ] ], 'error' => [ - 'go-to-home' => 'GO TO HOME', + 'go-to-home' => 'GO TO HOME', 'in-maitainace' => 'In Maintenance', - 'right-back' => 'Be Right Back', + 'right-back' => 'Be Right Back', '404' => [ 'page-title' => '404 Page not found', - 'name' => '404', - 'title' => 'Page Not found', - 'message' => 'The Page you are looking for does not exist or have been moved. Navigate using sidemenu.' + 'name' => '404', + 'title' => 'Page Not found', + 'message' => 'The Page you are looking for does not exist or have been moved. Navigate using sidemenu.' ], '403' => [ 'page-title' => '403 forbidden Error', - 'name' => '403', - 'title' => 'Forbidden error', - 'message' => 'You do not have permission to access this page' + 'name' => '403', + 'title' => 'Forbidden error', + 'message' => 'You do not have permission to access this page' ], '500' => [ 'page-title' => '500 Internal Server Error', - 'name' => '500', - 'title' => 'Internal Server Error', - 'message' => 'The Server Encountered an internal error.' + 'name' => '500', + 'title' => 'Internal Server Error', + 'message' => 'The Server Encountered an internal error.' ], '401' => [ 'page-title' => '401 Unauthorized Error', - 'name' => '401', - 'title' => 'Unauthorized Error', - 'message' => 'The request has not been applied because it lacks valid authentication credentials for the target resource.' + 'name' => '401', + 'title' => 'Unauthorized Error', + 'message' => 'The request has not been applied because it lacks valid authentication credentials for the target resource.' ], ], 'export' => [ - 'export' => 'Export', - 'import' => 'Import', - 'format' => 'Select Format', - 'download' => 'Download', - 'upload' => 'Upload', - 'csv' => 'CSV', - 'xls' => 'XLS', - 'file' => 'File', - 'upload-error' => 'The file must be a file of type: xls, xlsx, csv.', - 'duplicate-error' => 'Identifier must be unique, duplicate identifier :identifier at row :position.', + 'export' => 'Export', + 'import' => 'Import', + 'format' => 'Select Format', + 'download' => 'Download', + 'upload' => 'Upload', + 'csv' => 'CSV', + 'xls' => 'XLS', + 'file' => 'File', + 'upload-error' => 'The file must be a file of type: xls, xlsx, csv.', + 'duplicate-error' => 'Identifier must be unique, duplicate identifier :identifier at row :position.', 'enough-row-error' => 'file has not enough rows', - 'allowed-type' => 'Allowed Type :', - 'file-type' => 'csv, xls, xlsx.', - 'no-records' => 'Nothing to export', - 'illegal-format' => 'Error! This type of format is either not supported or its illegal format' + 'allowed-type' => 'Allowed Type :', + 'file-type' => 'csv, xls, xlsx.', + 'no-records' => 'Nothing to export', + 'illegal-format' => 'Error! This type of format is either not supported or its illegal format' ], 'cms' => [ 'pages' => [ - 'general' => 'General', - 'seo' => 'SEO', - 'pages' => 'Pages', - 'title' => 'Pages', - 'add-title' => 'Add Page', - 'content' => 'Content', - 'url-key' => 'URL Key', - 'channel' => 'Channels', - 'locale' => 'Locales', + 'general' => 'General', + 'seo' => 'SEO', + 'pages' => 'Pages', + 'title' => 'Pages', + 'add-title' => 'Add Page', + 'content' => 'Content', + 'url-key' => 'URL Key', + 'channel' => 'Channels', + 'locale' => 'Locales', 'create-btn-title' => 'Save Page', - 'edit-title' => 'Edit Page', - 'edit-btn-title' => 'Save Page', - 'create-success' => 'Page created successfully', - 'create-partial' => 'Some of the pages requested already exists', - 'create-failure' => 'All pages requested already exists', - 'update-success' => 'Page updated successfully', - 'update-failure' => 'Page cannot be updated', - 'page-title' => 'Page Title', - 'layout' => 'Layout', - 'meta_keywords' => 'Meta Keywords', + 'edit-title' => 'Edit Page', + 'edit-btn-title' => 'Save Page', + 'create-success' => 'Page created successfully', + 'create-partial' => 'Some of the pages requested already exists', + 'create-failure' => 'All pages requested already exists', + 'update-success' => 'Page updated successfully', + 'update-failure' => 'Page cannot be updated', + 'page-title' => 'Page Title', + 'layout' => 'Layout', + 'meta_keywords' => 'Meta Keywords', 'meta_description' => 'Meta Description', - 'meta_title' => 'Meta Title', - 'delete-success' => 'CMS page deleted successfully', - 'delete-failure' => 'CMS page cannot be deleted', - 'preview' => 'Preview', - 'one-col' => '
Use class: "static-container one-column" for one column layout.
', - 'two-col' => '
Use class: "static-container two-column" for two column layout.
', - 'three-col' => '
Use class: "static-container three-column" for three column layout.
', - 'helper-classes' => 'Helper Classes' + 'meta_title' => 'Meta Title', + 'delete-success' => 'CMS page deleted successfully', + 'delete-failure' => 'CMS page cannot be deleted', + 'preview' => 'Preview', + 'one-col' => '
Use class: "static-container one-column" for one column layout.
', + 'two-col' => '
Use class: "static-container two-column" for two column layout.
', + 'three-col' => '
Use class: "static-container three-column" for three column layout.
', + 'helper-classes' => 'Helper Classes' ] ], 'response' => [ - 'being-used' => 'This resource :name is getting used in :source', - 'cannot-delete-default' => 'Cannot delete the default channel', - 'create-success' => ':name created successfully.', - 'update-success' => ':name updated successfully.', - 'delete-success' => ':name deleted successfully.', - 'delete-failed' => 'Error encountered while deleting :name.', - 'last-delete-error' => 'At least one :name is required.', - 'user-define-error' => 'Can not delete system :name', - 'attribute-error' => ':name is used in configurable products.', - 'attribute-product-error' => ':name is used in products.', - 'customer-associate' => ':name can not be deleted because customer is associated with this group.', - 'currency-delete-error' => 'This currency is set as channel base currency so it can not be deleted.', - 'upload-success' => ':name uploaded successfully.', - 'delete-category-root' => 'Cannot delete the root category', - 'create-root-failure' => 'Category with name root already exists', - 'cancel-success' => ':name canceled successfully.', - 'cancel-error' => ':name can not be canceled.', - 'already-taken' => 'The :name has already been taken.', - 'order-pending' => 'Cannot delete account because some Order(s) are pending or processing state.' + 'being-used' => 'This resource :name is getting used in :source', + 'product-copied' => 'The Product has been copied', + 'error-while-copying' => 'Something went wrong while trying to copy the product', + 'product-can-not-be-copied' => 'Products of type :type can not be copied', + 'cannot-delete-default' => 'Cannot delete the default channel', + 'create-success' => ':name created successfully.', + 'update-success' => ':name updated successfully.', + 'delete-success' => ':name deleted successfully.', + 'delete-failed' => 'Error encountered while deleting :name.', + 'last-delete-error' => 'At least one :name is required.', + 'user-define-error' => 'Can not delete system :name', + 'attribute-error' => ':name is used in configurable products.', + 'attribute-product-error' => ':name is used in products.', + 'customer-associate' => ':name can not be deleted because customer is associated with this group.', + 'currency-delete-error' => 'This currency is set as channel base currency so it can not be deleted.', + 'upload-success' => ':name uploaded successfully.', + 'delete-category-root' => 'Cannot delete the root category', + 'create-root-failure' => 'Category with name root already exists', + 'cancel-success' => ':name canceled successfully.', + 'cancel-error' => ':name can not be canceled.', + 'already-taken' => 'The :name has already been taken.', + 'order-pending' => 'Cannot delete :name account because some Order(s) are pending or processing state.' ], 'footer' => [ @@ -1233,120 +1355,153 @@ return [ 'admin' => [ 'emails' => [ - 'email' => 'Email', + 'email' => 'Email', 'notification_label' => 'Notifications', 'notifications' => [ - 'verification' => 'Send verification E-mail', - 'registration' => 'Send registration E-mail', - 'customer' => 'Send customer E-mail', - 'new-order' => 'Send Order Confirmation E-mail', - 'new-admin' => 'Send Admin Invitation E-mail', - 'new-invoice' => 'Send Invoice Confirmation E-mail', - 'new-refund' => 'Send Refund Notification E-mail', - 'new-shipment' => 'Send Shipment Notification E-mail', + 'verification' => 'Send verification E-mail', + 'registration' => 'Send registration E-mail', + 'customer' => 'Send customer E-mail', + 'new-order' => 'Send Order Confirmation E-mail', + 'new-admin' => 'Send Admin Invitation E-mail', + 'new-invoice' => 'Send Invoice Confirmation E-mail', + 'new-refund' => 'Send Refund Notification E-mail', + 'new-shipment' => 'Send Shipment Notification E-mail', 'new-inventory-source' => 'Send Inventory Source Notification E-mail', - 'cancel-order' => 'Send cancel Order Notification E-mail', + 'cancel-order' => 'Send cancel Order Notification E-mail', ], ], 'system' => [ - 'catalog' => 'Catalog', - 'products' => 'Products', - 'guest-checkout' => 'Guest Checkout', - 'allow-guest-checkout' => 'Allow Guest Checkout', + 'catalog' => 'Catalog', + 'homepage' => 'Homepage configuration', + 'allow-out-of-stock-items' => 'Allow out of stock items', + 'products' => 'Products', + 'guest-checkout' => 'Guest Checkout', + 'allow-guest-checkout' => 'Allow Guest Checkout', 'allow-guest-checkout-hint' => 'Hint: If turned on, this option can be configured for each product specifically.', - 'review' => 'Review', - 'allow-guest-review' => 'Allow Guest Review', - 'inventory' => 'Inventory', - 'stock-options' => 'Stock Options', - 'allow-backorders' => 'Allow Backorders', - 'customer' => 'Customer', - 'settings' => 'Settings', - 'address' => 'Address', - 'street-lines' => 'Lines in a Street Address', - 'sales' => 'Sales', - 'shipping-methods' => 'Shipping Methods', - 'free-shipping' => 'Free Shipping', - 'flate-rate-shipping' => 'Flat Rate Shipping', - 'shipping' => 'Shipping', - 'origin' => 'Origin', - 'country' => 'Country', - 'state' => 'State', - 'zip' => 'Zip', - 'city' => 'City', - 'street-address' => 'Street Address', - 'title' => 'Title', - 'description' => 'Description', - 'rate' => 'Rate', - 'status' => 'Status', - 'type' => 'Type', - 'payment-methods' => 'Payment Methods', - 'cash-on-delivery' => 'Cash On Delivery', - 'money-transfer' => 'Money Transfer', - 'paypal-standard' => 'Paypal Standard', - 'business-account' => 'Business Account', - 'newsletter' => 'NewsLetter Subscription', - 'newsletter-subscription' => 'Allow NewsLetter Subscription', - 'email' => 'Email Verification', - 'email-verification' => 'Allow Email Verification', - 'sort_order' => 'Sort Order', - 'general' => 'General', - 'footer' => 'Footer', - 'content' => 'Content', - 'footer-content' => 'Footer Text', - 'footer-toggle' => 'Toggle footer', - 'locale-options' => 'Unit Options', - 'weight-unit' => 'Weight Unit', - 'email-settings' => 'Email Settings', - 'email-sender-name' => 'Email Sender Name', - 'shop-email-from' => 'Shop Email Address [For sending emails]', - 'admin-name' => 'Admin Name', - 'admin-email' => 'Admin Email', - 'admin-page-limit' => 'Default Items Per Page (Admin)', - 'design' => 'Design', - 'admin-logo' => 'Admin Logo', - 'logo-image' => 'Logo Image', - 'credit-max' => 'Customer Credit Max', - 'credit-max-value' => 'Credit Max Value', - 'use-credit-max' => 'Use Credit Max', - 'order-settings' => 'Order Settings', - 'orderNumber' => 'Order Number Settings', - 'order-number-prefix' => 'Order Number Prefix', - 'order-number-length' => 'Order Number Length', - 'order-number-suffix' => 'Order Number Suffix', - 'default' => 'Default', - 'sandbox' => 'Sandbox', - 'all-channels' => 'All Channels', - 'all-locales' => 'All Locales', - 'all-customer-groups' => 'All Customer groups', - 'invoice-slip-design' => 'Invoice Slip Design', - 'logo' => 'Logo', - 'storefront' => 'Storefront', - 'default-list-mode' => 'Default List Mode', - 'grid' => 'Grid', - 'list' => 'List', - 'products-per-page' => 'Products Per Page', - 'sort-by' => 'Sort By', - 'from-z-a' => 'From Z-A', - 'from-a-z' => 'From A-Z', - 'newest-first' => 'Newest First', - 'oldest-first' => 'Oldest First', - 'cheapest-first' => 'Cheapest First', - 'expensive-first' => 'Expensive First', - 'comma-seperated' => 'Comma Seperated', - 'favicon' => 'Favicon', - 'seo' => 'SEO', - 'rich-snippets' => 'Rich Snippets', - 'enable' => 'Enable', - 'show-weight' => 'Show Weight', - 'show-categories' => 'Show Categories', - 'show-images' => 'Show Images', - 'show-reviews' => 'Show Reviews', - 'show-ratings' => 'Show Ratings', - 'show-offers' => 'Show Offers', - 'show-sku' => 'Show SKU', - 'categories' => 'Categories', - 'show-search-input-field' => 'Show Search Input Field' - ] + 'attribute' => 'Attribute', + 'image-upload-size' => 'Allowed Image Upload Size (in Kb)', + 'file-upload-size' => 'Allowed File Upload Size (in Kb)', + 'review' => 'Review', + 'allow-guest-review' => 'Allow Guest Review', + 'inventory' => 'Inventory', + 'stock-options' => 'Stock Options', + 'allow-backorders' => 'Allow Backorders', + 'customer' => 'Customer', + 'settings' => 'Settings', + 'address' => 'Address', + 'street-lines' => 'Lines in a Street Address', + 'sales' => 'Sales', + 'shipping-methods' => 'Shipping Methods', + 'free-shipping' => 'Free Shipping', + 'flate-rate-shipping' => 'Flat Rate Shipping', + 'shipping' => 'Shipping', + 'origin' => 'Origin', + 'country' => 'Country', + 'state' => 'State', + 'zip' => 'Zip', + 'city' => 'City', + 'street-address' => 'Street Address', + 'title' => 'Title', + 'description' => 'Description', + 'rate' => 'Rate', + 'status' => 'Status', + 'calculate-tax' => 'Calculate Tax', + 'type' => 'Type', + 'payment-methods' => 'Payment Methods', + 'cash-on-delivery' => 'Cash On Delivery', + 'money-transfer' => 'Money Transfer', + 'paypal-standard' => 'PayPal Standard', + 'business-account' => 'Business Account', + 'newsletter' => 'Newsletter Subscription', + 'newsletter-subscription' => 'Allow Newsletter Subscription', + 'email' => 'Email Verification', + 'email-verification' => 'Allow Email Verification', + 'sort_order' => 'Sort Order', + 'general' => 'General', + 'footer' => 'Footer', + 'content' => 'Content', + 'footer-content' => 'Footer Text', + 'footer-toggle' => 'Toggle footer', + 'locale-options' => 'Unit Options', + 'weight-unit' => 'Weight Unit', + 'email-settings' => 'Email Settings', + 'email-sender-name' => 'Email Sender Name', + 'shop-email-from' => 'Shop Email Address [For sending emails]', + 'admin-name' => 'Admin Name', + 'admin-email' => 'Admin Email', + 'admin-page-limit' => 'Default Items Per Page (Admin)', + 'design' => 'Design', + 'admin-logo' => 'Admin Logo', + 'logo-image' => 'Logo Image', + 'credit-max' => 'Customer Credit Max', + 'credit-max-value' => 'Credit Max Value', + 'use-credit-max' => 'Use Credit Max', + 'order-settings' => 'Order Settings', + 'orderNumber' => 'Order Number Settings', + 'order-number-prefix' => 'Order Number Prefix', + 'order-number-length' => 'Order Number Length', + 'order-number-suffix' => 'Order Number Suffix', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', + 'default' => 'Default', + 'sandbox' => 'Sandbox', + 'all-channels' => 'All Channels', + 'all-locales' => 'All Locales', + 'all-customer-groups' => 'All Customer groups', + 'invoice-slip-design' => 'Invoice Slip Design', + 'logo' => 'Logo', + 'storefront' => 'Storefront', + 'default-list-mode' => 'Default List Mode', + 'grid' => 'Grid', + 'list' => 'List', + 'products-per-page' => 'Products Per Page', + 'sort-by' => 'Sort By', + 'from-z-a' => 'From Z-A', + 'from-a-z' => 'From A-Z', + 'newest-first' => 'Newest First', + 'oldest-first' => 'Oldest First', + 'cheapest-first' => 'Cheapest First', + 'expensive-first' => 'Expensive First', + 'comma-seperated' => 'Comma Seperated', + 'favicon' => 'Favicon', + 'seo' => 'SEO', + 'rich-snippets' => 'Rich Snippets', + 'enable' => 'Enable', + 'show-weight' => 'Show Weight', + 'show-categories' => 'Show Categories', + 'show-images' => 'Show Images', + 'show-reviews' => 'Show Reviews', + 'show-ratings' => 'Show Ratings', + 'show-offers' => 'Show Offers', + 'show-sku' => 'Show SKU', + 'categories' => 'Categories', + 'store-name' => 'Store Name', + 'vat-number' => 'Vat Number', + 'contact-number' => 'Contact Number', + 'bank-details' => 'Bank Details', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'order-number-generator-class' => 'Order Number Generator', + 'show-search-input-field' => 'Show Search Input Field', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', + ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/es/app.php b/packages/Webkul/Admin/src/Resources/lang/es/app.php new file mode 100644 index 000000000..83ff420ee --- /dev/null +++ b/packages/Webkul/Admin/src/Resources/lang/es/app.php @@ -0,0 +1,1500 @@ + 'Guardar', + 'copy-of' => 'Copia de ', + 'copy-of-slug' => 'copia-de-', + 'create' => 'Crear', + 'update' => 'Actualizar', + 'delete' => 'Borrar', + 'failed' => 'Falló', + 'store' => 'Almacén', + 'image' => 'Imagen', + 'no result' => 'Sin resultados', + 'product' => 'Producto', + 'attribute' => 'Atributo', + 'actions' => 'Acciones', + 'id' => 'ID', + 'action' => 'Acción', + 'yes' => 'Sí', + 'no' => 'No', + 'true' => 'Verdadero', + 'false' => 'Falso', + 'apply' => 'Aplicar', + 'label' => 'Etiqueta', + 'name' => 'Nombre', + 'title' => 'Título', + 'code' => 'Código', + 'type' => 'Tipo', + 'required' => 'Requerido', + 'unique' => 'Único', + 'locale-based' => 'Basado en idioma', + 'channel-based' => 'Basado en canal', + 'status' => 'Estado', + 'select-option' => 'Seleccione opción', + 'category' => 'Categoría', + + 'common' => [ + 'no-result-found' => 'No se encontraron registros.', + 'country' => 'País', + 'state' => 'Departamento', + 'true' => 'Verdadero', + 'false' => 'Falso' + ], + + 'layouts' => [ + 'app-version' => 'Versión : :version', + 'my-account' => 'Mi cuenta', + 'logout' => 'Desconectar', + 'visit-shop' => 'Visitar tienda', + 'dashboard' => 'Tablero', + 'sales' => 'Ventas', + 'orders' => 'Pedidos', + 'shipments' => 'Envíos', + 'invoices' => 'Facturas', + 'refunds' => 'Reembolsos', + 'catalog' => 'Catálogo', + 'products' => 'Productos', + 'categories' => 'Categorías', + 'attributes' => 'Atributos', + 'attribute-families' => 'Familias de atributos', + 'customers' => 'Clientes', + 'groups' => 'Grupos', + 'reviews' => 'Opiniones', + 'newsletter-subscriptions' => 'Suscripciones a los Boletines', + 'configure' => 'Configurar', + 'settings' => 'Ajustes', + 'locales' => 'Idiomas', + 'currencies' => 'Monedas', + 'exchange-rates' => 'Tasas de cambio', + 'inventory-sources' => 'Fuentes de inventario', + 'channels' => 'Canales', + 'users' => 'Usuarios', + 'roles' => 'Roles', + 'sliders' => 'Sliders', + 'taxes' => 'Impuestos', + 'tax-categories' => 'Categorías de impuestos', + 'tax-rates' => 'Tasas de impuestos', + 'marketing' => 'Márketing', + 'promotions' => 'Promociones', + 'email-marketing' => 'Email Márketing', + 'campaigns' => 'Campañas', + 'email-templates' => 'Plantillas de Email', + 'events' => 'Eventos', + 'discount' => 'Descuento', + 'cms' => 'CMS', + 'transactions' => 'Transacciones' + ], + + 'acl' => [ + 'dashboard' => 'Tablero', + 'sales' => 'Ventas', + 'cancel' => 'Cancelar', + 'orders' => 'Pedidos', + 'shipments' => 'Envíos', + 'invoices' => 'Facturas', + 'refunds' => 'Reembolsos', + 'catalog' => 'Catálogo', + 'products' => 'Productos', + 'copy' => 'Copiar', + 'categories' => 'Categorías', + 'attributes' => 'Atributos', + 'attribute-families' => 'Familias de atributos', + 'customers' => 'Clientes', + 'addresses' => 'Direcciones', + 'note' => 'Nota', + 'groups' => 'Grupos', + 'reviews' => 'Opiniones', + 'newsletter-subscriptions' => 'Suscripciones a los Boletines', + 'configure' => 'Configurar', + 'settings' => 'Ajustes', + 'locales' => 'Idiomas', + 'currencies' => 'Monedas', + 'exchange-rates' => 'Tasas de cambio', + 'inventory-sources' => 'Fuentes de inventario', + 'channels' => 'Canales', + 'users' => 'Usuarios', + 'roles' => 'Roles', + 'sliders' => 'Sliders', + 'taxes' => 'Impuestos', + 'tax-categories' => 'Categorías de impuestos', + 'tax-rates' => 'Tasas de impuestos', + 'view' => 'Vista', + 'edit' => 'Editar', + 'create' => 'Agregar', + 'delete' => 'Borrar', + 'mass-delete' => 'Eliminar Masivamente', + 'mass-update' => 'Actualizar Masivamente', + 'marketing' => 'Márketing', + 'promotions' => 'Promociones', + 'cart-rules' => 'Reglas del carrito', + 'catalog-rules' => 'Reglas del catálogo', + 'email-marketing' => 'Email Márketing', + 'email-templates' => 'Plantillas de Email', + 'campaigns' => 'Campañas', + 'subscribers' => 'Suscriptores del Boletín', + 'events' => 'Eventos' + ], + + 'dashboard' => [ + 'title' => 'Tablero', + 'from' => 'Desde', + 'to' => 'Hasta', + 'total-customers' => 'Total Clientes', + 'total-orders' => 'Total Pedidos', + 'total-sale' => 'Total Ventas', + 'average-sale' => 'Promedio de pedidos vendidos', + 'increased' => ':progress%', + 'decreased' => ':progress%', + 'sales' => 'Ventas', + 'top-performing-categories' => 'Categorías de mayor rendimiento', + 'product-count' => ':count Productos', + 'top-selling-products' => 'Productos más vendidos', + 'sale-count' => ':count Ventas', + 'customer-with-most-sales' => 'Clientes con más ventas', + 'order-count' => ':count Pedidos', + 'revenue' => 'Ingresos :total', + 'stock-threshold' => 'Umbral de Stock', + 'qty-left' => 'Quedan :qty' + ], + + 'datagrid' => [ + 'mass-ops' => [ + 'method-error' => '¡Error! Se detectó un método erróneo, por favor verifique la configuración de acción masiva', + 'delete-success' => ':resource seleccionados fueron borrados con éxito', + 'partial-action' => 'Algunas acciones no se realizaron debido a restricciones en :resource', + 'update-success' => ':resource seleccionados fueron actualizados con éxito', + 'no-resource' => 'El recurso provisto es insuficiente para la acción' + ], + + 'id' => 'ID', + 'status' => 'Estado', + 'code' => 'Código', + 'admin-name' => 'Nombre', + 'name' => 'Nombre', + 'copy' => 'Copiar', + 'direction' => 'Dirección', + 'fullname' => 'Nombre completo', + 'type' => 'Tipo', + 'required' => 'Requerido', + 'unique' => 'Único', + 'per-locale' => 'Idioma ubicado', + 'per-channel' => 'Canal ubicado', + 'position' => 'Posición', + 'locale' => 'Idioma', + 'hostname' => 'Hostname', + 'email' => 'Email', + 'group' => 'Grupo', + 'phone' => 'Teléfono', + 'gender' => 'Género', + 'title' => 'Título', + 'layout' => 'Diseño', + 'url-key' => 'URL clave', + 'comment' => 'Comentario', + 'product-name' => 'Producto', + 'currency-name' => 'Nombre de la moneda', + 'exch-rate' => 'Tasa de cambio', + 'priority' => 'Prioridad', + 'subscribed' => 'Suscrito', + 'base-total' => 'Total base', + 'grand-total' => 'Gran total', + 'order-date' => 'Fecha pedido', + 'channel-name' => 'Nombre del canal', + 'billed-to' => 'Facturado a', + 'shipped-to' => 'Enviado a', + 'order-id' => 'Pedido #', + 'invoice-date' => 'Fecha de factura', + 'total-qty' => 'Cantidad total', + 'inventory-source' => 'Fuente de inventario', + 'shipment-date' => 'Fecha de envío', + 'shipment-to' => 'Enviar hacia', + 'sku' => 'SKU', + 'product-number' => 'Número de producto', + 'price' => 'Precio', + 'qty' => 'Cantidad', + 'permission-type' => 'Tipo de permiso', + 'identifier' => 'Identificador', + 'state' => 'Departamento', + 'country' => 'País', + 'tax-rate' => 'Tasa', + 'role' => 'Rol', + 'sub-total' => 'Subtotal', + 'no-of-products' => 'Número de productos', + 'attribute-family' => 'Familia de atributos', + 'starts-from' => 'Inicia en', + 'ends-till' => 'Termina en', + 'per-cust' => 'Por cliente', + 'usage-throttle' => 'Tiempos de uso', + 'for-guest' => 'Para invitados', + 'order_number' => 'Pedido #', + 'refund-date' => 'Fecha reembolso', + 'refunded' => 'Reembolsado', + 'start' => 'Inicio', + 'end' => 'Fin', + 'active' => 'Activo', + 'inactive' => 'Inactivo', + 'draft' => 'Borrador', + 'true' => 'Verdadero', + 'false' => 'Falso', + 'approved' => 'Aprobado', + 'pending' => 'Pendiente', + 'disapproved' => 'Rechazado', + 'coupon-code' => 'Código de cupón', + 'times-used' => 'Veces Usados', + 'created-date' => 'Creado en', + 'expiration-date' => 'Fecha expiración', + 'edit' => 'Editar', + 'delete' => 'Borrar', + 'view' => 'Ver', + 'rtl' => 'RTL', + 'ltr' => 'LTR', + 'update-status' => 'Actualizar Estado', + 'subject' => 'Asunto', + 'date' => 'Fecha', + 'transaction-id' => 'Transacción #', + 'transaction-date' => 'Fecha de Transacción', + ], + + 'account' => [ + 'title' => 'Mi cuenta', + 'save-btn-title' => 'Guardar', + 'general' => 'General', + 'name' => 'Nombre', + 'email' => 'Email', + 'password' => 'Contraseña', + 'confirm-password' => 'Confirmar contraseña', + 'change-password' => 'Cambiar contraseña de cuenta', + 'current-password' => 'Contraseña actual' + ], + + 'users' => [ + 'forget-password' => [ + 'title' => '¿Olvidó su contraseña?', + 'header-title' => 'Recuperar contraseña', + 'email' => 'Email registrado', + 'password' => 'Contraseña', + 'confirm-password' => 'Confirmar contraseña', + 'back-link-title' => 'Regresar al login', + 'submit-btn-title' => 'Enviar correo de restablecimiento de contraseña' + ], + + 'reset-password' => [ + 'title' => 'restablecer contraseña', + 'email' => 'Email registrado', + 'password' => 'Contraseña', + 'confirm-password' => 'Confirmar contraseña', + 'back-link-title' => 'Regresar al login', + 'submit-btn-title' => 'restablecer contraseña' + ], + + 'roles' => [ + 'title' => 'Roles', + 'add-role-title' => 'Agregar Rol', + 'edit-role-title' => 'Editar Rol', + 'save-btn-title' => 'Guardar Rol', + 'general' => 'General', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'access-control' => 'Control de acceso', + 'permissions' => 'Permisos', + 'custom' => 'Personalizado', + 'all' => 'Todos' + ], + + 'users' => [ + 'title' => 'Usuario', + 'add-user-title' => 'Agregar Usuario', + 'edit-user-title' => 'Editar Usuario', + 'save-btn-title' => 'Guardar Usuario', + 'general' => 'General', + 'email' => 'Email', + 'name' => 'Nombre', + 'password' => 'Contraseña', + 'confirm-password' => 'Confirmar contraseña', + 'status-and-role' => 'Estado y rol', + 'role' => 'Rol', + 'status' => 'Estado', + 'account-is-active' => 'La cuenta está activa', + 'current-password' => 'Ingrese la contraseña actual', + 'confirm-delete' => '¿Confirma que desea borrar esta cuenta?', + 'confirm-delete-title' => 'Confirmar contraseña antes de borrar', + 'delete-last' => 'Al menos un admin es requerido.', + 'delete-success' => '¡Éxito! Usuario borrado', + 'incorrect-password' => 'La contraseña que ingresó es incorrecta', + 'password-match' => 'La contraseña actual no coincide.', + 'account-save' => 'Los cambios en la cuenta fueron guardados con éxito.', + 'login-error' => 'Por favor verifique sus credenciales e intente nuevamente.', + 'activate-warning' => 'Su cuenta aún no ha sido activada, por favor contacte al administrador.' + ], + + 'sessions' => [ + 'title' => 'Acceder', + 'email' => 'Email', + 'password' => 'Contraseña', + 'forget-password-link-title' => '¿Olvidó su contraseña?', + 'remember-me' => 'Recordar esta sesión', + 'submit-btn-title' => 'Acceder' + ] + ], + + 'sales' => [ + 'orders' => [ + 'title' => 'Pedidos', + 'view-title' => 'Pedido #:order_id', + 'cancel-btn-title' => 'Cancelar', + 'shipment-btn-title' => 'Envío', + 'invoice-btn-title' => 'Factura', + 'info' => 'Información', + 'invoices' => 'Facturas', + 'shipments' => 'Envíos', + 'order-and-account' => 'Pedido y cuenta', + 'order-info' => 'Información del pedido', + 'order-date' => 'Fecha pedido', + 'order-status' => 'Estado del pedido', + 'order-status-canceled' => 'Cancelado', + 'order-status-closed' => 'Cerrado', + 'order-status-fraud' => 'Fraude', + 'order-status-pending' => 'Pendiente', + 'order-status-pending-payment' => 'Pendiente de pago', + 'order-status-processing' => 'Procesando', + 'order-status-success' => 'Completado', + 'channel' => 'Canal', + 'customer-name' => 'Nombre del cliente', + 'email' => 'Email', + 'contact-number' => 'Número de contacto', + 'account-info' => 'Información de la cuenta', + 'address' => 'Dirección', + 'shipping-address' => 'Dirección de envío', + 'billing-address' => 'Dirección de facturación', + 'payment-and-shipping' => 'Pago y envío', + 'payment-info' => 'Payment Información', + 'payment-method' => 'Método de pago', + 'currency' => 'Moneda', + 'shipping-info' => 'Información de envío', + 'shipping-method' => 'Método de envío', + 'shipping-price' => 'Precio de envío', + 'products-ordered' => 'Productos pedidos', + 'SKU' => 'SKU', + 'product-name' => 'Nombre del producto', + 'qty' => 'Cant', + 'item-status' => 'Estado del articulo', + 'item-ordered' => 'Pedido (:qty_ordered)', + 'item-invoice' => 'Facturado (:qty_invoiced)', + 'item-shipped' => 'Enviado (:qty_shipped)', + 'item-canceled' => 'Cancelado (:qty_canceled)', + 'item-refunded' => 'Reembolsado (:qty_refunded)', + 'price' => 'Precio', + 'total' => 'Total', + 'subtotal' => 'Subtotal', + 'shipping-handling' => 'Envío y manejo', + 'discount' => 'Descuento', + 'tax' => 'Impuesto', + 'tax-percent' => 'Porcentaje impuesto', + 'tax-amount' => 'Monto impuesto', + 'discount-amount' => 'Monto de Descuento', + 'grand-total' => 'Gran total', + 'total-paid' => 'Total Pagado', + 'total-refunded' => 'Total reembolsado', + 'total-due' => 'Total adeudado', + 'cancel-confirm-msg' => '¿Está seguro que desea cancelar este pedido?', + 'refund-btn-title' => 'Reembolso', + 'refunds' => 'Reembolsos', + 'comment-added-success' => 'Comentario agregado exitosamente.', + 'comment' => 'Comentario', + 'submit-comment' => 'Enviar Comentario', + 'notify-customer' => 'Notificar al Cliente', + 'customer-notified' => ':date | Cliente Notificado', + 'customer-not-notified' => ':date | Cliente No Notificado', + 'transactions' => 'Transacciones' + ], + + 'invoices' => [ + 'title' => 'Facturas', + 'id' => 'Id', + 'invoice-id' => 'Factura #', + 'invoice' => 'Factura', + 'date' => 'Fecha de factura', + 'order-id' => 'Pedido #', + 'customer-name' => 'Nombre del cliente', + 'status' => 'Estado', + 'amount' => 'Monto', + 'action' => 'Acción', + 'add-title' => 'Crear factura', + 'save-btn-title' => 'Guardar factura', + 'qty' => 'Cant', + 'qty-ordered' => 'Cant pedido', + 'qty-to-invoice' => 'Cant a facturar', + 'view-title' => 'Factura #:invoice_id', + 'bill-to' => 'Facturar a', + 'ship-to' => 'Enviar a', + 'print' => 'Imprimir', + 'order-date' => 'Fecha del pedido', + 'creation-error' => 'La creación de facturas al pedido no está permitida.', + 'product-error' => 'La factura no puede ser creada sin productos.' + ], + + 'shipments' => [ + 'title' => 'Envíos', + 'id' => 'Id', + 'date' => 'Fecha de envío', + 'order-id' => 'Pedido #', + 'order-date' => 'Fecha del pedido', + 'customer-name' => 'Nombre del cliente', + 'total-qty' => 'Cantidad total', + 'action' => 'Acción', + 'add-title' => 'Crear envío', + 'save-btn-title' => 'Guardar envío', + 'qty-ordered' => 'Cant pedido', + 'qty-invoiced' => 'Cant facturada', + 'qty-to-ship' => 'Cant a enviar', + 'available-sources' => 'Fuentes disponibles', + 'source' => 'Fuente', + 'select-source' => 'Por favor seleccione la bodega', + 'qty-available' => 'Cant disponible', + 'inventory-source' => 'Fuente de inventario', + 'carrier-title' => 'Nombre transportista', + 'tracking-number' => 'Número de Seguimiento', + 'view-title' => 'Envío #:shipment_id', + 'creation-error' => 'El envío no puede ser creado para este pedido.', + 'order-error' => 'La creación de envíos no está permitido.', + 'quantity-invalid' => 'La cantidad pedida es inválida o no está disponible.', + ], + + 'refunds' => [ + 'title' => 'Reembolsos', + 'id' => 'Id', + 'add-title' => 'Crear reembolso', + 'save-btn-title' => 'Reembolso', + 'order-id' => 'Pedido #', + 'qty-ordered' => 'Cant pedido', + 'qty-to-refund' => 'Cant a reembolsar', + 'refund-shipping' => 'Envío a reembolsar', + 'adjustment-refund' => 'Ajuste reembolso', + 'adjustment-fee' => 'Tarifa de ajuste', + 'update-qty' => 'Actualizar cantidades', + 'invalid-qty' => 'Se encontró una cantidad de articulos a reembolsar inválida.', + 'refund-limit-error' => 'El máximo disponible para reembolsar es :amount.', + 'refunded' => 'Reembolsado', + 'date' => 'Fecha reembolso', + 'customer-name' => 'Nombre del cliente', + 'status' => 'Estado', + 'action' => 'Acción', + 'view-title' => 'Reembolso #:refund_id', + 'invalid-refund-amount-error' => 'El monto del reembolso no debe ser cero.' + + ], + + 'transactions' => [ + 'title' => 'Transacciones', + 'id' => 'ID', + 'transaction-id' => 'Transacción #', + 'payment-method' => 'Método de Pago', + 'action' => 'Accción', + 'view-title' => 'Transacciónn #:transaction_id', + 'transaction-data' => 'Fecha de Transacción', + 'order-id' => 'Pedido #', + 'status' => 'Estado', + 'created-at' => 'Creado En', + 'transaction-details' => 'Detalles de la Transacción' + ] + ], + + 'catalog' => [ + 'products' => [ + 'title' => 'Productos', + 'add-product-btn-title' => 'Agregar producto', + 'add-title' => 'Agregar producto', + 'edit-title' => 'Editar producto', + 'save-btn-title' => 'Guardar producto', + 'general' => 'General', + 'product-type' => 'Tipo de producto', + 'simple' => 'Simple', + 'configurable' => 'Configurable', + 'familiy' => 'Familia de atributos', + 'sku' => 'SKU', + 'configurable-attributes' => 'Atributos configurables', + 'attribute-header' => 'Atributo(s)', + 'attribute-option-header' => 'Opcion(es) de atributo', + 'no' => 'No', + 'yes' => 'Sí', + 'disabled' => 'Deshabilitado', + 'enabled' => 'Habilitado', + 'add-variant-btn-title' => 'Agregar variante', + 'name' => 'Nombre', + 'qty' => 'Cant', + 'price' => 'Precio', + 'weight' => 'Peso', + 'status' => 'Estado', + 'add-variant-title' => 'Agregar variante', + 'variant-already-exist-message' => 'Una variante con las mismas opciones de atributos ya existe.', + 'add-image-btn-title' => 'Agregar imagen', + 'mass-delete-success' => 'Todos los productos seleccionados han sido borrados con éxito', + 'mass-update-success' => 'Todos los productos seleccionados han sido actualizados con éxito', + 'configurable-error' => 'Por favor seleccione al menos un atributo configurable.', + 'categories' => 'Categorías', + 'images' => 'Imágenes', + 'inventories' => 'Inventarios', + 'variations' => 'Variaciones', + 'downloadable' => 'Información descargable', + 'links' => 'Links', + 'add-link-btn-title' => 'Agregar link', + 'samples' => 'Muestras', + 'add-sample-btn-title' => 'Agregar muestra', + 'downloads' => 'Descarga permitida', + 'file' => 'Archivo', + 'sample' => 'Muestra', + 'upload-file' => 'Subir archivo', + 'url' => 'Url', + 'sort-order' => 'Orden de clasificación', + 'browse-file' => 'Buscar archivo', + 'product-link' => 'Productos enlazados', + 'cross-selling' => 'Venta cruzada', + 'up-selling' => 'Vendiendo', + 'related-products' => 'Productos relacionados', + 'product-search-hint' => 'Inicie escribiendo un nombre de producto', + 'no-result-found' => 'Productos con el mismo nombre no fueron encontrados.', + 'searching' => 'Buscando ...', + 'grouped-products' => 'Productos Agrupados', + 'search-products' => 'Buscar Productos', + 'channel' => 'Canales', + 'bundle-item' => 'Paquete de artículos', + 'add-option-btn-title' => 'Agregar opción', + 'option-title' => 'Título de opción', + 'input-type' => 'Tipo de opción', + 'is-required' => 'Es requerido', + 'select' => 'Lista de selección', + 'radio' => 'Opción única', + 'checkbox' => 'Opción múltiple', + 'multiselect' => 'Lista de selección múltiple', + 'new-option' => 'Nueva opción', + 'is-default' => 'Es predeterminada', + 'customer-group' => 'Grupo de Clientes', + 'add-group-price' => 'Agregar Precio de Grupo de Clientes', + 'all-group' => 'Todos los Grupos', + 'fixed' => 'Reparado', + 'discount' => 'Descuento', + 'remove-image-btn-title' => 'Remover Imágen', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Agregar Video', + 'remove-video-btn-title' => 'Remover Video', + 'not-support-video' => 'Su navegador no soporta la etiqueta video.', + ], + + 'attributes' => [ + 'title' => 'Atributos', + 'add-title' => 'Agregar atributo', + 'edit-title' => 'Editar atributo', + 'save-btn-title' => 'Guardar atributo', + 'general' => 'General', + 'code' => 'Código atributo', + 'type' => 'Tipo de atributo', + 'text' => 'Texto', + 'textarea' => 'Área de texto', + 'price' => 'Precio', + 'boolean' => 'Booleano', + 'select' => 'Lista de selección', + 'multiselect' => 'Lista de selección múltiple', + 'datetime' => 'Fecha y hora', + 'date' => 'Fecha', + 'label' => 'Etiqueta', + 'admin' => 'Admin', + 'options' => 'Opciones', + 'position' => 'Posición', + 'add-option-btn-title' => 'Agregar opción', + 'validations' => 'Validaciones', + 'input_validation' => 'Validación entrada', + 'is_required' => 'Es requerido', + 'is_unique' => 'Es único', + 'number' => 'Número', + 'decimal' => 'Decimal', + 'email' => 'Email', + 'url' => 'URL', + 'configuration' => 'Configuración', + 'status' => 'Estado', + 'yes' => 'Sí', + 'no' => 'No', + 'value_per_locale' => 'Valor por idioma', + 'value_per_channel' => 'Valor por canal', + 'is_filterable' => 'Usar en navegación por capas', + 'is_configurable' => 'Usar para crear producto configurable', + 'admin_name' => 'Nombre del admin', + 'is_visible_on_front' => 'Visible en la página de vista de producto en Front-end', + 'swatch_type' => 'Tipo de muestra', + 'dropdown' => 'Desplegable', + 'color-swatch' => 'Color muestra', + 'image-swatch' => 'Imagen muestra', + 'text-swatch' => 'Texto muestra', + 'swatch' => 'Muestra', + 'image' => 'Imagen', + 'file' => 'Archivo', + 'checkbox' => 'Opción múltiple', + 'use_in_flat' => "Crear en tabla plana de productos", + 'is_comparable' => "El atributo es comparable", + 'default_null_option' => 'Crear opción vacía por defecto', + ], + 'families' => [ + 'title' => 'Familias', + 'add-family-btn-title' => 'Agregar familia', + 'add-title' => 'Agregar familia', + 'edit-title' => 'Editar familia', + 'save-btn-title' => 'Guardar familia', + 'general' => 'General', + 'code' => 'Código familia', + 'name' => 'Nombre', + 'groups' => 'Grupos', + 'add-group-title' => 'Agregar grupo', + 'position' => 'Posición', + 'attribute-code' => 'Código', + 'type' => 'Tipo', + 'add-attribute-title' => 'Agregar atributos', + 'search' => 'Buscar', + 'group-exist-error' => 'Ya existe un grupo con el mismo nombre.' + ], + 'categories' => [ + 'title' => 'Categorías', + 'add-title' => 'Agregar categoría', + 'edit-title' => 'Editar categoría', + 'save-btn-title' => 'Guardar categoría', + 'general' => 'General', + 'name' => 'Nombre', + 'visible-in-menu' => 'Visible en el menú', + 'yes' => 'Sí', + 'no' => 'No', + 'position' => 'Posición', + 'display-mode' => 'Modo de visualización', + 'products-and-description' => 'Productos y descripción', + 'products-only' => 'Solo productos', + 'description-only' => 'Solo descripción', + 'description-and-images' => 'Descripción e imágenes', + 'description' => 'Descripción', + 'parent-category' => 'Categoría padre', + 'seo' => 'SEO', + 'slug' => 'Slug', + 'meta_title' => 'Meta Title', + 'meta_description' => 'Meta Description', + 'meta_keywords' => 'Meta Keywords', + 'image' => 'Imagen', + 'filterable-attributes' => 'Atributos filtrables', + 'attributes' => 'Atributos', + ] + ], + + 'configuration' => [ + 'title' => 'Configuración', + 'save-btn-title' => 'Guardar', + 'save-message' => 'Configuración guardada con éxito', + 'yes' => 'Sí', + 'no' => 'No', + 'delete' => 'Borrar', + + 'tax-categories' => [ + 'title' => 'Categorías de impuestos', + 'add-title' => 'Agregar categoría de impuestos', + 'edit-title' => 'Editar categoría de impuestoss', + 'save-btn-title' => 'Guardar categoría de impuestos', + 'general' => 'Categorías de impuestos', + 'select-channel' => 'Seleccione canal', + 'name' => 'Nombre', + 'code' => 'Código', + 'description' => 'Descripción', + 'select-taxrates' => 'Seleccione tasa de impuestos', + 'edit' => [ + 'title' => 'Editar categoría de impuestos', + 'edit-button-title' => 'Editar categoría de impuestos' + ] + ], + + 'tax-rates' => [ + 'title' => 'Tasas de impuestos', + 'add-title' => 'Agregar tasa de impuesto', + 'edit-title' => 'Editar tasa de impuesto', + 'save-btn-title' => 'Guardar tasa de impuesto', + 'general' => 'Tasa de impuesto', + 'identifier' => 'Identificador', + 'is_zip' => 'Habilitar Rango de Código Postal', + 'zip_from' => 'Código Postal Desde', + 'zip_to' => 'Código Postal Hasta', + 'state' => 'Departamento', + 'select-state' => 'Seleccione un departamento.', + 'country' => 'País', + 'tax_rate' => 'Tasa', + 'edit' => [ + 'title' => 'Editar tasa de impuesto', + 'edit-button-title' => 'Editar tasa' + ], + 'zip_code' => 'Código Postal', + ], + + 'sales' => [ + 'shipping-method' => [ + 'title' => 'Método de envíos', + 'save-btn-title' => 'Guardar', + 'description' => 'Descripción', + 'active' => 'Activo', + 'status' => 'Estado' + ] + ] + ], + + 'settings' => [ + 'locales' => [ + 'title' => 'Idiomas', + 'add-title' => 'Agregar idioma', + 'edit-title' => 'Editar idioma', + 'save-btn-title' => 'Guardar idioma', + 'general' => 'General', + 'code' => 'Código', + 'name' => 'Nombre', + 'direction' => 'Dirección', + 'create-success' => 'Idioma creado con éxito.', + 'update-success' => 'Idioma actualizado con éxito.', + 'delete-success' => 'Idioma borrado con éxito.', + 'last-delete-error' => 'Se requiere al menos un idioma.', + ], + 'countries' => [ + 'title' => 'Países', + 'add-title' => 'Agregar país', + 'save-btn-title' => 'Guardar país', + 'general' => 'General', + 'code' => 'Código', + 'name' => 'Nombre' + ], + 'currencies' => [ + 'title' => 'Monedas', + 'add-title' => 'Agregar moneda', + 'edit-title' => 'Editar moneda', + 'save-btn-title' => 'Guardar moneda', + 'general' => 'General', + 'code' => 'Código', + 'name' => 'Nombre', + 'symbol' => 'Símbolo', + 'create-success' => 'Moneda creada con éxito.', + 'update-success' => 'Moneda actualizada con éxito.', + 'delete-success' => 'Moneda borrada con éxito.', + 'last-delete-error' => 'Se requiere al menos una moneda.', + ], + 'exchange_rates' => [ + 'title' => 'Tasas de cambio', + 'add-title' => 'Agregar tasa de cambio', + 'edit-title' => 'Editar tasa de cambio', + 'save-btn-title' => 'Guardar tasa de cambio', + 'general' => 'General', + 'source_currency' => 'Moneda origen', + 'target_currency' => 'Moneda destino', + 'rate' => 'Tasa', + 'exchange-class-not-found' => ':service exchange rate class not found', + 'update-rates' => 'Actualizar tasas', + 'create-success' => 'Tasa de cambio creada con éxito.', + 'update-success' => 'Tasa de cambio actualizada con éxito.', + 'delete-success' => 'Tasa de cambio borrada con éxito.', + 'last-delete-error' => 'Se requiere al menos una tasa de cambio.', + ], + 'inventory_sources' => [ + 'title' => 'Fuentes de inventario', + 'add-title' => 'Agregar fuente de inventario', + 'edit-title' => 'Editar fuente de inventario', + 'save-btn-title' => 'Guardar fuente de inventario', + 'general' => 'General', + 'code' => 'Código', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'source-is-active' => 'Está activa', + 'contact-info' => 'Información de contacto', + 'contact_name' => 'Nombre', + 'contact_email' => 'Email', + 'contact_number' => 'Número de contacto', + 'contact_fax' => 'Fax', + 'address' => 'Dirección', + 'country' => 'País', + 'state' => 'Departamento', + 'city' => 'Ciudad', + 'street' => 'Dirección', + 'postcode' => 'Código postal', + 'priority' => 'Prioridad', + 'latitude' => 'Latitud', + 'longitude' => 'Longitud', + 'status' => 'Estado', + 'create-success' => 'Fuente de inventario creado con éxito.', + 'update-success' => 'Fuente de inventario actualizado con éxito.', + 'delete-success' => 'Fuente de inventario borrado con éxito.', + 'last-delete-error' => 'Se requiere al menos una fuente de inventario.', + ], + 'channels' => [ + 'title' => 'Canales', + 'add-title' => 'Agregar canal', + 'edit-title' => 'Editar canal', + 'save-btn-title' => 'Guardar canal', + 'general' => 'General', + 'code' => 'Código', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'hostname' => 'Hostname', + 'currencies-and-locales' => 'Monedas e Idiomas', + 'locales' => 'Idiomas', + 'default-locale' => 'Idioma predeterminado', + 'currencies' => 'Monedas', + 'base-currency' => 'Moneda predeterminada', + 'root-category' => 'Categoría raíz', + 'inventory_sources' => 'Fuentes de inventario', + 'design' => 'Diseño', + 'theme' => 'Tema', + 'home_page_content' => 'Contenido página de inicio', + 'footer_content' => 'Contenido pie de página', + 'logo' => 'Logo', + 'favicon' => 'Favicon', + 'create-success' => 'Canal creado con éxito.', + 'update-success' => 'Canal actualizado con éxito.', + 'delete-success' => 'Canal borrado con éxito.', + 'last-delete-error' => 'Se requiere al menos un canal.', + 'seo' => 'SEO página de inicio', + 'seo-title' => 'Meta title', + 'seo-description' => 'Meta description', + 'seo-keywords' => 'Meta keywords', + 'maintenance-mode' => 'Modo de Mantenimiento', + 'maintenance-mode-text' => 'Mensaje', + 'allowed-ips' => 'IP Permitidas' + ], + + 'sliders' => [ + 'title' => 'Sliders', + 'name' => 'Nombre', + 'add-title' => 'Crear slider', + 'edit-title' => 'Editar slider', + 'save-btn-title' => 'Guardar slider', + 'general' => 'General', + 'image' => 'Imagen', + 'content' => 'Contenido', + 'channels' => 'Canal', + 'created-success' => 'Slider creado con éxito', + 'created-fault' => 'Error al intentar crear el slider', + 'update-success' => 'Slider actualizado con éxito', + 'update-fail' => 'El slider no pudo ser actualizado', + 'delete-success' => 'No puede borrar el último slider', + 'delete-fail' => 'Slider borrado con éxito', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' + ], + + 'tax-categories' => [ + 'title' => 'Categorías de impuestos', + 'add-title' => 'Crear categoría de impuestos', + 'edit-title' => 'Editar categoría de impuestos', + 'save-btn-title' => 'Guardar categoría de impuestos', + 'general' => 'General', + 'select-channel' => 'Seleccione canal', + 'name' => 'Nombre', + 'code' => 'Código', + 'description' => 'Descripción', + 'select-taxrates' => 'Seleccione tasa de impuestos', + 'edit' => [ + 'title' => 'Editar categoría de impuestos', + 'edit-button-title' => 'Editar categoría de impuestos' + ], + 'create-success' => 'Nueva categoría de impuestos creada con éxito', + 'create-error' => 'Error mientras se creaba la categoría de impuestos', + 'update-success' => 'La categoría de impuestos fue actualizada con éxito', + 'update-error' => 'Error mientras se actualizaba la categoría de impuestos', + 'atleast-one' => 'No puede borrar la última categoría de impuestos', + 'delete' => 'La categoría de impuestos fue borrada' + ], + + 'tax-rates' => [ + 'title' => 'Tasas de impuestos', + 'add-title' => 'Crear tasa de impuesto', + 'edit-title' => 'Editar tasa de impuesto', + 'save-btn-title' => 'Guardar tasa de impuesto', + 'general' => 'Tasa de impuesto', + 'identifier' => 'Identificador', + 'is_zip' => 'Habilitar Rango de Código Postal', + 'zip_from' => 'Código Postal Desde', + 'zip_to' => 'Código Postal Hasta', + 'state' => 'Departamento', + 'select-state' => 'Seleccione un departamento.', + 'country' => 'País', + 'tax_rate' => 'Tasa', + 'edit' => [ + 'title' => 'Editar tasa de impuesto', + 'edit-button-title' => 'Editar tasa' + ], + 'zip_code' => 'Código Postal', + 'create-success' => 'Tasa de impuesto creada con éxito', + 'create-error' => 'No se puede crear la tasa de impuesto', + 'update-success' => 'Tasa de impuesto actualizada con éxito', + 'update-error' => '¡Error! La tasa de impuesto no pudo ser actualizada', + 'delete' => 'La tasa de impuesto fue borrada con éxito', + 'atleast-one' => 'No se pudo borrar la tasa de impuesto' + ], + 'development' => [ + 'title' => 'Desarrollo', + ] + ], + + 'customers' => [ + 'groups' =>[ + 'add-title' => 'Agregar grupo', + 'edit-title' => 'Editar grupo', + 'save-btn-title' => 'Guardar grupo', + 'title' => 'Grupos', + 'save-btn-title' => 'Guardar grupo', + 'code' => 'Código', + 'name' => 'Nombre', + 'is_user_defined' => 'Usuario definido', + 'yes' => 'Sí' + ], + + 'addresses' => [ + 'title' => 'Lista de direcciones de :customer_name', + 'vat_id' => 'Vat id', + 'create-title' => 'Crear dirección del cliente', + 'edit-title' => 'Actualizar dirección del cliente', + 'title-orders' => 'Lista de pedidos de :customer_name', + 'address-list' => 'Lista de direcciones', + 'order-list' => 'Lista de pedidos', + 'address-id' => 'Dirección ID', + 'company-name' => 'Nombre de la Empresa', + 'address-1' => 'Dirección 1', + 'city' => 'Ciudad', + 'state-name' => 'Departamento', + 'country-name' => 'País', + 'postcode' => 'Código postal', + 'default-address' => 'Dirección predeterminada', + 'yes' => 'Sí', + 'not-approved' => 'No aprobado', + 'no' => 'No', + 'dash' => '-', + 'delete' => 'Borrar', + 'create-btn-title' => 'Agregar dirección', + 'save-btn-title' => 'Guardar dirección', + 'general' => 'General', + 'success-create' => 'Dirección del cliente creada con éxito.', + 'success-update' => 'Dirección del cliente actualizada con éxito.', + 'success-delete' => 'Dirección del cliente borrada con éxito.', + 'success-mass-delete' => 'Las direcciones seleccionadas han sido borradas con éxito.', + 'error-create' => 'La dirección del cliente no fue creada.', + ], + + 'note' => [ + 'title' => 'Agregar nota', + 'save-note' => 'Guardar nota', + 'enter-note' => 'Ingresar nota', + 'help-title' => 'Agregar una nota a este cliente' + ], + + 'customers' => [ + 'add-title' => 'Agregar cliente', + 'edit-title' => 'Editar cliente', + 'title' => 'Clientes', + 'first_name' => 'Primer nombre', + 'last_name' => 'Apellidos', + 'gender' => 'Género', + 'email' => 'Email', + 'date_of_birth' => 'Fecha de nacimiento', + 'date_of_birth_placeholder' => 'aaaa-mm-dd', + 'phone' => 'Teléfono', + 'customer_group' => 'Grupo', + 'save-btn-title' => 'Guardar cliente', + 'channel_name' => 'Nombre del canal', + 'state' => 'Departamento', + 'select-state' => 'Seleccione un departamento.', + 'country' => 'País', + 'other' => 'Otro', + 'male' => 'Masculino', + 'female' => 'Femenino', + 'group-default' => 'No puede borrar el grupo predeterminado.', + 'edit-help-title' => 'Editar cliente', + 'delete-help-title' => 'Borrar cliente', + 'addresses' => 'Direcciones', + 'mass-destroy-success' => 'Clientes borrados con éxito', + 'mass-update-success' => 'Clientes actualizados con éxito', + 'status' => 'Estado', + 'active' => 'Activo', + 'inactive' => 'Inactivo' + ], + + 'reviews' => [ + 'title' => 'Opiniones', + 'edit-title' => 'Editar opinión', + 'rating' => 'Calificación', + 'status' => 'Estado', + 'comment' => 'Comentario', + 'pending' => 'Pendiente', + 'approved' => 'Aprobado', + 'disapproved' => 'Desaprobado' + ], + + 'subscribers' => [ + 'title' => 'Suscriptores del Boletín', + 'title-edit' => 'Editar Suscriptor del Boletín', + 'email' => 'Email', + 'is_subscribed' => 'Suscrito', + 'edit-btn-title' => 'Actualizar suscriptor', + 'update-success' => 'El suscriptor fue actualizado con éxito', + 'update-failed' => '¡Error! No puede desuscribir al suscriptor', + 'delete' => 'El suscriptor fue borrado con éxito', + 'delete-failed' => '¡Error! El suscriptor no pudo ser borrado' + ] + ], + + 'promotions' => [ + 'cart-rules' => [ + 'title' => 'Reglas del carrito', + 'add-title' => 'Agregar regla de carrito', + 'edit-title' => 'Editar regla de carrito', + 'save-btn-title' => 'Guardar regla de carrito', + 'rule-information' => 'Información de regla', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'status' => 'Estado', + 'is-active' => 'La regla está activa', + 'channels' => 'Canales', + 'customer-groups' => 'Grupos', + 'coupon-type' => 'Tipo de cupón', + 'no-coupon' => 'No. de cupón', + 'specific-coupon' => 'Cupón específico', + 'auto-generate-coupon' => 'Auto generar cupón', + 'no' => 'No', + 'yes' => 'Sí', + 'coupon-code' => 'Código de cupón', + 'uses-per-coupon' => 'Usos por cupón', + 'uses-per-customer' => 'Usos por cliente', + 'uses-per-customer-control-info' => 'Será usado para clientes conectados solamente.', + 'from' => 'Desde', + 'to' => 'Hasta', + 'priority' => 'Prioridad', + 'conditions' => 'Condiciones', + 'condition-type' => 'Tipo de condición', + 'all-conditions-true' => 'Todas las condiciones son verdaderas', + 'any-condition-true' => 'Cualquier condición es verdadera', + 'add-condition' => 'Agregar condición', + 'choose-condition-to-add' => 'Elija una condición para agregar', + 'cart-attribute' => 'Atributo de carrito', + 'subtotal' => 'Subtotal', + 'additional' => 'Información Adicional', + 'total-item-qty' => 'Cant total artículos', + 'total-weight' => 'Peso total', + 'payment-method' => 'Método de pago', + 'shipping-method' => 'Método de envío', + 'shipping-postcode' => 'Código Postal de envío', + 'shipping-state' => 'Departamento de envío', + 'shipping-country' => 'País de envío', + 'cart-item-attribute' => 'Atributo del artículo del carrito', + 'price-in-cart' => 'Precio en el carrito', + 'qty-in-cart' => 'Cantidad en el carrito', + 'product-attribute' => 'Atributo de producto', + 'attribute-name-children-only' => ':attribute_name (Solo hijos)', + 'attribute-name-parent-only' => ':attribute_name (Solo padre)', + 'is-equal-to' => 'Es igual a', + 'is-not-equal-to' => 'No es igual a', + 'equals-or-greater-than' => 'Iguales o más grandes que', + 'equals-or-less-than' => 'Iguales o menos que', + 'greater-than' => 'Más grande que', + 'less-than' => 'Menos que', + 'contain' => 'Contiene', + 'contains' => 'Contiene', + 'does-not-contain' => 'No contiene', + 'actions' => 'Acciones', + 'action-type' => 'Tipo de acción', + 'percentage-product-price' => 'Porcentaje del precio del producto', + 'fixed-amount' => 'Monto fijo', + 'fixed-amount-whole-cart' => 'Monto fijo a todo el carrito', + 'buy-x-get-y-free' => 'Compre X y lleve Y gratis', + 'discount-amount' => 'Monto descuento', + 'discount-quantity' => 'La cantidad a descontar máxima permitida', + 'discount-step' => 'Compre X cantidad', + 'free-shipping' => 'Envío gratis', + 'apply-to-shipping' => 'Aplicar al envío', + 'coupon-codes' => 'Códigos de cupón', + 'coupon-qty' => 'Cant de cupón', + 'code-length' => 'Largo de código', + 'code-format' => 'Formato de código', + 'alphanumeric' => 'Alfanumérico', + 'alphabetical' => 'Alfabético', + 'numeric' => 'Numérico', + 'code-prefix' => 'Prefijo código', + 'code-suffix' => 'Sufijo código', + 'generate' => 'Generar', + 'cart-rule-not-defind-error' => 'La regla de carrito no está definida', + 'mass-delete-success' => 'Todos los cupones seleccionados han sido borrados con éxito.', + 'end-other-rules' => 'Terminar otras reglas', + 'children-categories' => 'Categorías (Solo hijos)', + 'parent-categories' => 'Categorías (Solo padre)', + 'categories' => 'Categorías', + 'attribute_family' => 'Familia de atributos' + ], + + 'catalog-rules' => [ + 'title' => 'Reglas del catálogo', + 'add-title' => 'Agregar regla del catálogo', + 'edit-title' => 'Editar regla del catálogo', + 'save-btn-title' => 'Guardar regla del catálogo', + 'rule-information' => 'Información de regla', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'status' => 'Estado', + 'is-active' => 'La regla del catálogo está activa', + 'channels' => 'Canales', + 'customer-groups' => 'Grupos', + 'no' => 'No', + 'yes' => 'Sí', + 'from' => 'Desde', + 'to' => 'Hasta', + 'priority' => 'Prioridad', + 'conditions' => 'Condiciones', + 'condition-type' => 'Tipo de condición', + 'all-conditions-true' => 'Todas las condiciones son verdaderas', + 'any-condition-true' => 'Cualquier condición es verdadera', + 'add-condition' => 'Agregar condición', + 'choose-condition-to-add' => 'Elija una condición para agregar', + 'product-attribute' => 'Atributo de producto', + 'attribute-name-children-only' => ':attribute_name (Solo hijos)', + 'attribute-name-parent-only' => ':attribute_name (Solo padre)', + 'is-equal-to' => 'Es igual a', + 'is-not-equal-to' => 'No es igual a', + 'equals-or-greater-than' => 'Iguales o más grandes que', + 'equals-or-less-than' => 'Iguales o menos que', + 'greater-than' => 'Más grande que', + 'less-than' => 'Menos que', + 'contain' => 'Contiene', + 'contains' => 'Contienes', + 'does-not-contain' => 'No contiene', + 'actions' => 'Acciones', + 'action-type' => 'Tipo de acción', + 'percentage-product-price' => 'Porcentaje del precio del producto', + 'fixed-amount' => 'Monto fijo', + 'fixed-amount-whole-cart' => 'Monto fijo a todo el catálogo', + 'buy-x-get-y-free' => 'Compre X y lleve Y gratis', + 'discount-amount' => 'Monto descuento', + 'mass-delete-success' => 'Todos los cupones seleccionados han sido borrados con éxito.', + 'end-other-rules' => 'Terminar otras reglas', + 'categories' => 'Categorías', + 'attribute_family' => 'Familia de atributos' + ] + ], + + 'marketing' => [ + 'templates' => [ + 'title' => 'Plantilla de Email', + 'add-title' => 'Agregar Plantilla de Email', + 'edit-title' => 'Editar Plantilla de Email', + 'save-btn-title' => 'Guardar', + 'general' => 'General', + 'name' => 'Nombre', + 'status' => 'Estado', + 'active' => 'Activo', + 'inactive' => 'Inactivo', + 'draft' => 'Borrador', + 'content' => 'Contenido', + 'create-success' => 'Plantilla de Email creada correctamente.', + 'update-success' => 'Plantilla de Email actualizada correctamente.', + 'delete-success' => 'Plantilla de Email eliminada correctamente.', + ], + + 'campaigns' => [ + 'title' => 'Campañas', + 'add-title' => 'Agregar Campaña', + 'edit-title' => 'Editar Campaña', + 'save-btn-title' => 'Guardar', + 'general' => 'General', + 'name' => 'Nombre', + 'status' => 'Estado', + 'active' => 'Activo', + 'inactive' => 'Inactivo', + 'subject' => 'Asunto', + 'email-template' => 'Plantilla de Email', + 'audience' => 'Audiencia', + 'channel' => 'Canal', + 'customer-group' => 'Grupo de Clientes', + 'schedule' => 'Programación', + 'schedule-type' => 'Tipo de Programación', + 'once' => 'Una vez', + 'events' => 'Eventos', + 'schedule-date' => 'Fecha Programada', + 'spooling' => 'Spooling', + 'event' => 'Evento', + 'birthday' => 'Cumpleaños', + 'create-success' => 'Campaña creada correctamente.', + 'update-success' => 'Campaña actualizada correctamente.', + 'delete-success' => 'Campaña eliminada correctamente.', + ], + + 'events' => [ + 'title' => 'Eventos', + 'add-title' => 'Agregar Evento', + 'edit-title' => 'Editar Evento', + 'save-btn-title' => 'Guardar', + 'general' => 'General', + 'name' => 'Nombre', + 'description' => 'Descripción', + 'date' => 'Fecha', + 'create-success' => 'Evento creado con éxito.', + 'update-success' => 'Evento actualizado con éxito.', + 'delete-success' => 'Evento borrado con éxito.', + 'edit-error' => 'No se puede editar este evento.' + ] + ], + + 'error' => [ + 'go-to-home' => 'REGRESAR AL INICIO', + 'in-maitainace' => 'En mantenimiento', + 'right-back' => 'Estaremos de vuelta', + + '404' => [ + 'page-title' => '404 página no encontrada', + 'name' => '404', + 'title' => 'Página no encontrada', + 'message' => 'La página que está buscando no existe o ha sido movida. Navegue usando el menú lateral.' + ], + '403' => [ + 'page-title' => '403 prohibido', + 'name' => '403', + 'title' => 'Prohibido', + 'message' => 'Usted no tiene permisos para acceder a esta página' + ], + '500' => [ + 'page-title' => '500 error interno de servidor', + 'name' => '500', + 'title' => 'Error interno de servidor', + 'message' => 'El servidor encontró un error interno.' + ], + '401' => [ + 'page-title' => '401 no autorizado', + 'name' => '401', + 'title' => 'No autorizado', + 'message' => 'La solicitud no se ha aplicado porque carece de credenciales de autenticación válidas para el recurso de destino.' + ], + ], + + 'export' => [ + 'export' => 'Exportar', + 'import' => 'Importar', + 'format' => 'Seleccione el formato', + 'download' => 'Descargar', + 'upload' => 'Subir', + 'csv' => 'CSV', + 'xls' => 'XLS', + 'file' => 'Archivo', + 'upload-error' => 'El archivo debe ser un archivo tipo: xls, xlsx, csv.', + 'duplicate-error' => 'El identificador debe ser único, identificador duplicado :identifier en la fila :position.', + 'enough-row-error' => 'el archivo no tiene suficientes filas', + 'allowed-type' => 'Tipo permitido :', + 'file-type' => 'csv, xls, xlsx.', + 'no-records' => 'Nada para exportar', + 'illegal-format' => '¡Error! Este tipo de formato no es compatible o es ilegal' + ], + + 'cms' => [ + 'pages' => [ + 'general' => 'General', + 'seo' => 'SEO', + 'pages' => 'Páginas', + 'title' => 'Páginas', + 'add-title' => 'Agregar página', + 'content' => 'Contenido', + 'url-key' => 'URL clave', + 'channel' => 'Canales', + 'locale' => 'Idiomas', + 'create-btn-title' => 'Guardar página', + 'edit-title' => 'Editar Page', + 'edit-btn-title' => 'Guardar página', + 'create-success' => 'Página creada con éxito', + 'create-partial' => 'Algunas de las páginas solicitadas ya existen', + 'create-failure' => 'Todas las páginas solicitadas ya existen', + 'update-success' => 'Página actualizada con éxito', + 'update-failure' => 'La página no pudo ser actualizada', + 'page-title' => 'Título de la página', + 'layout' => 'Diseño', + 'meta_keywords' => 'Meta Palabras Claves', + 'meta_description' => 'Meta Descripción', + 'meta_title' => 'Meta Título', + 'delete-success' => 'Página CMS borrada con éxito', + 'delete-failure' => 'Página CMS no pudo ser borrada', + 'preview' => 'Previsualización', + 'one-col' => '
Usar class: "static-container one-column" para diseño de una columna.
', + 'two-col' => '
Usar class: "static-container two-column" para diseño de dos columnas.
', + 'three-col' => '
Usar class: "static-container three-column" para diseño de tres columnas.
', + 'helper-classes' => 'Clases de ayuda' + ] + ], + + 'response' => [ + 'being-used' => 'Este recurso: :name está siendo usado en :source', + 'product-copied' => 'El Producto ha sido copiado', + 'error-while-copying' => 'Se produjo un error al intentar copiar el producto', + 'product-can-not-be-copied' => 'Productos del tipo :type no se pueden copiar', + 'cannot-delete-default' => 'No puede borrar el canal predeterminado', + 'create-success' => ':name :name creado con éxito.', + 'update-success' => ':name actualizado con éxito.', + 'delete-success' => ':name borrado con éxito.', + 'delete-failed' => 'Se encontró un error mientras borraba :name.', + 'last-delete-error' => 'Se requiere al menos un :name.', + 'user-define-error' => 'No puede borrar sistema :name', + 'attribute-error' => ':name está siendo usado en productos configurables.', + 'attribute-product-error' => ':name está siendo usado en productos.', + 'customer-associate' => ':name no puede ser borrado porque el cliente está asociado a este grupo.', + 'currency-delete-error' => 'Esta moneda está definida como moneda base de un canal por lo tanto no puede ser borrada.', + 'upload-success' => ':name subido con éxito.', + 'delete-category-root' => 'No puede borrar la categoría raíz', + 'create-root-failure' => 'Una categoría con nombre raíz ya existe', + 'cancel-success' => ':name cancelado con éxito.', + 'cancel-error' => ':name no puede ser cancelado.', + 'already-taken' => 'El :name ya ha sido tomado.', + 'order-pending' => 'No puede borrar la cuenta porque algun(os) pedido(s) están en estado pendiente o procesando.' + ], + + 'footer' => [ + 'copy-right' => 'Powered by Bagisto, A Community Project by Webkul', + ], + + 'admin' => [ + 'emails' => [ + 'email' => 'Email', + 'notification_label' => 'Notificaciones', + 'notifications' => [ + 'verification' => 'Enviar email de verificación', + 'registration' => 'Enviar email de registro', + 'customer' => 'Enviar email de cliente', + 'new-order' => 'Enviar email de confirmación de pedido', + 'new-admin' => 'Enviar email de invitación de admin', + 'new-invoice' => 'Enviar email de confirmación de factura', + 'new-refund' => 'Enviar email de "El monto de reembolso no debe ser cero"', + 'new-shipment' => 'Enviar email de notificación de envío de pedido', + 'new-inventory-source' => 'Enviar email de notificación de nueva fuente de inventario', + 'cancel-order' => 'Enviar email de notificación de cancelación de pedido', + ], + + ], + 'system' => [ + 'catalog' => 'Catálogo', + 'homepage' => 'Configuración de Página de Inicio', + 'allow-no-of-new-product-homepage' => 'No permitido Nuevo Producto en la Página de Inicio', + 'allow-no-of-featured-product-homepage' => 'No Permitido Producto Destacado en Página de Inicio', + 'allow-out-of-stock-items' => 'Permitir Artículos Agotados', + 'products' => 'Productos', + 'guest-checkout' => 'Compras como invitado', + 'allow-guest-checkout' => 'Permitir compras como invitado', + 'allow-guest-checkout-hint' => 'Aviso: Si eligió permitir, esta opción puede ser configurada específicamente para cada producto.', + 'attribute' => 'Atributo', + 'image-upload-size' => 'Tamaño de Carga de Imagen Permitido (en Kb)', + 'file-upload-size' => 'Tamaño de Carga de Archivo Permitido (en Kb)', + 'review' => 'Opiniones', + 'allow-guest-review' => 'Permitir opiniones como invitado', + 'inventory' => 'Inventario', + 'stock-options' => 'Opciones de stock', + 'allow-backorders' => 'Permitir backorders', + 'customer' => 'Cliente', + 'settings' => 'Ajustes', + 'address' => 'Dirección', + 'street-lines' => 'Líneas en la dirección', + 'sales' => 'Ventas', + 'shipping-methods' => 'Método de envíos', + 'free-shipping' => 'Envío gratis', + 'flate-rate-shipping' => 'Envío con tarifa plana', + 'shipping' => 'Envío', + 'origin' => 'Origen', + 'country' => 'País', + 'state' => 'Departamento', + 'zip' => 'Código Postal', + 'city' => 'Ciudad', + 'street-address' => 'Dirección', + 'title' => 'Título', + 'description' => 'Descripción', + 'rate' => 'Tasa', + 'status' => 'Estado', + 'calculate-tax' => 'Calcular impuestos', + 'type' => 'Tipo', + 'payment-methods' => 'Métodos de pago', + 'cash-on-delivery' => 'Pago contraentrega', + 'money-transfer' => 'Transferencia', + 'paypal-standard' => 'PayPal', + 'business-account' => 'Cuenta de negocio', + 'newsletter' => 'Boletín de Suscripción', + 'newsletter-subscription' => 'Permitir Suscripciones al Boletín', + 'email' => 'Verificación de email', + 'email-verification' => 'Permitir verificación de email', + 'sort_order' => 'Orden de Clasificación', + 'general' => 'General', + 'footer' => 'Pie de página', + 'content' => 'Contenido', + 'footer-content' => 'Texto de pie de página', + 'footer-toggle' => 'Mostrar/Esconder pie de página', + 'locale-options' => 'Opciones de unidades', + 'weight-unit' => 'Unidad de peso', + 'email-settings' => 'Ajustes de email', + 'email-sender-name' => 'Nombre de remitente', + 'shop-email-from' => 'Email de tienda [Para envío de emails]', + 'admin-name' => 'Nombre del admin', + 'admin-email' => 'Email del admin', + 'admin-page-limit' => 'Artículos por página predeterminado (Admin)', + 'design' => 'Diseño', + 'admin-logo' => 'Logo del admin', + 'logo-image' => 'Imagen logo', + 'credit-max' => 'Crédito máximo para el cliente', + 'credit-max-value' => 'Valor máximo de crédito para el cliente', + 'use-credit-max' => 'Usar crédito máximo', + 'order-settings' => 'Ajustes de pedido', + 'orderNumber' => 'Pedido #', + 'order-number-prefix' => 'Prefijo para Pedido #', + 'order-number-length' => 'Largo para Pedido #', + 'order-number-suffix' => 'Sufijo para Pedido #', + 'order-number-generator-class' => 'Generado de Números de Pedido', + 'minimum-order' => 'Configuración de Pedido Mínimo', + 'minimum-order-amount' => 'Cantidad Mínima de Pedido', + 'default' => 'Predeterminado', + 'sandbox' => 'Sandbox', + 'all-channels' => 'Todos los Canales', + 'all-locales' => 'Todos los Idiomas', + 'all-customer-groups' => 'Todos los grupos de Clientes', + 'invoice-slip-design' => 'Diseño de Comprobande de Factura', + 'logo' => 'Logo', + 'storefront' => 'Storefront', + 'default-list-mode' => 'Modo de Lista Predeterminado', + 'grid' => 'Cuadrícula', + 'list' => 'Lista', + 'products-per-page' => 'Productos Por Página', + 'sort-by' => 'Ordenar Por', + 'from-z-a' => 'Desde Z-A', + 'from-a-z' => 'Desde A-Z', + 'newest-first' => 'Más Nuevos Primero', + 'oldest-first' => 'Más Viejos Primero', + 'cheapest-first' => 'Más Barato Primero', + 'expensive-first' => 'Más Caro Primero', + 'comma-seperated' => 'Separado por Comas', + 'favicon' => 'Favicon', + 'seo' => 'SEO', + 'rich-snippets' => 'Fragmentos Enriquecidos', + 'enable' => 'Habilitar', + 'show-weight' => 'Mostrar Peso', + 'show-categories' => 'Mostrar Categorías', + 'show-images' => 'Mostrar Imágenes', + 'show-reviews' => 'Mostrar Reseñas', + 'show-ratings' => 'Mostrar Calificaciones', + 'show-offers' => 'Mostrar Ofertas', + 'show-sku' => 'Mostrar SKU', + 'categories' => 'Categorías', + 'show-search-input-field' => 'Mostrar Campo de Entrada de Búsqueda', + 'store-name' => 'Nombre de la tienda', + 'vat-number' => 'Número de valor agregado', + 'contact-number' => 'Número de contacto', + 'bank-details' => 'Detalles del banco', + 'mailing-address' => 'Dirección de Envío', + 'instructions' => 'Instrucciones', + 'custom-scripts' => 'Scripts Personalizados', + 'custom-css' => 'CSS Personalizados', + 'custom-javascript' => 'Javascript Personalizado', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Id del Cliente', + 'client-id-info' => 'Utilice "sb" para realizar pruebas.', + 'client-secret' => 'Secreto del Cliente', + 'client-secret-info' => 'Agrega tu clave secreta aquí', + 'accepted-currencies' => 'Monedas aceptadas', + 'accepted-currencies-info' => 'Agregue el código de moneda separado por comas, por ej. USD,INR,...', + 'buy-now-button-display' => 'Permitir que los clientes compren productos directamente', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', + ] + ] +]; diff --git a/packages/Webkul/Admin/src/Resources/lang/fa/app.php b/packages/Webkul/Admin/src/Resources/lang/fa/app.php index 80eb84b1c..fbbd9f515 100644 --- a/packages/Webkul/Admin/src/Resources/lang/fa/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/fa/app.php @@ -74,23 +74,33 @@ return [ 'taxes' => 'مالیات', 'tax-categories' => 'دسته بندی مالیات', 'tax-rates' => 'نرخ مالیات', - 'promotion' => 'تبلیغات', + 'marketing' => 'Marketing', + 'promotions' => 'تبلیغات', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'تخفیف', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'داشبورد', 'sales' => 'فروش', + 'cancel' => 'Cancel', 'orders' => 'سفارشات', 'shipments' => 'حمل و نقل', 'invoices' => 'صورت حساب', + 'refunds' => 'Refunds', 'catalog' => 'کاتالوگ', 'products' => 'محصولات', + 'copy' => 'Copy', 'categories' => 'دسته بندی ها', 'attributes' => 'ویژگی ها', 'attribute-families' => 'ویژگی خانواده', 'customers' => 'مشتریان', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'گروه ها', 'reviews' => 'بررسی ها', 'newsletter-subscriptions' => 'اشتراک های خبرنامه', @@ -107,10 +117,14 @@ return [ 'taxes' => 'مالیات', 'tax-categories' => 'دسته بندی مالیات', 'tax-rates' => 'نرخ مالیات', + 'view' => 'View', 'edit' => 'ویاریش', 'create' => 'افزودن', 'delete' => 'حذف', - 'promotion' => 'تبلیغات', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', + 'promotions' => 'تبلیغات', 'cart-rules' => 'قوانین سبد خرید', 'catalog-rules' => 'قوانین فهرست', ], @@ -187,6 +201,7 @@ return [ 'shipment-date' => 'تاریخ ارسال', 'shipment-to' => 'حمل و نقل به', 'sku' => 'واحد نگهداری موجودی', + 'product-number' => 'شماره محصول', 'price' => 'قیمت', 'qty' => 'مقدار', 'permission-type' => 'نوع مجوز', @@ -224,7 +239,9 @@ return [ 'view' => 'چشم انداز', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'وضعیت به روز رسانی' + 'update-status' => 'وضعیت به روز رسانی', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ @@ -376,12 +393,14 @@ return [ 'comment' => 'Comment', 'submit-comment' => 'Submit Comment', 'notify-customer' => 'Notify Customer', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'صورت حساب', 'id' => 'شناسه', 'invoice-id' => 'شناسه صورت حساب', + 'invoice' => 'صورتحساب', 'date' => 'تاریخ صورت حساب', 'order-id' => 'شناسه سفارش', 'customer-name' => 'نام مشتیر', @@ -451,6 +470,20 @@ return [ 'view-title' => ' #:refund_id بازپرداخت', 'invalid-refund-amount-error' => 'مبلغ بازپرداخت باید صفر نباشد.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -525,7 +558,13 @@ return [ 'checkbox' => 'Checkbox', 'multiselect' => 'Multiselect', 'new-option' => 'New Option', - 'is-default' => 'Is Default' + 'is-default' => 'Is Default', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -801,7 +840,9 @@ return [ 'seo-title' => 'عنوان Meta', 'seo-description' => 'شرح Meta', 'seo-keywords' => 'کلید واژه ها Meta', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -819,7 +860,9 @@ return [ 'update-success' => 'اسلایدر با موفقیت به روز شد', 'update-fail' => 'امکان بروزرسانی اسلایدر وجود ندارد', 'delete-success' => 'آخرین اسلایدر حذف نمی شود', - 'delete-fail' => 'اسلایدر با موفقیت حذف شد' + 'delete-fail' => 'اسلایدر با موفقیت حذف شد', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -982,7 +1025,7 @@ return [ ] ], - 'promotion' => [ + 'promotions' => [ 'cart-rules' => [ 'title' => 'قوانین سبد خرید', 'add-title' => 'قانون سبد خرید را اضافه کنید', @@ -1118,6 +1161,70 @@ return [ ] ], + + + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'رفتن به خانه', 'in-maitainace' => 'در حال تعمیر و نگهداری', @@ -1247,6 +1354,10 @@ return [ ], 'system' => [ 'catalog' => 'کاتالوگ', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'محصولات', 'guest-checkout' => 'وارسی میهمان', 'allow-guest-checkout' => 'مجاز به پرداخت مهمان', @@ -1275,6 +1386,7 @@ return [ 'description' => 'توضیحات', 'rate' => 'نرخ', 'status' => 'وضعیت', + 'calculate-tax' => 'محاسبه مالیات', 'type' => 'نوع', 'payment-methods' => 'روش های پرداخت', 'cash-on-delivery' => 'پرداخت در محل', @@ -1310,6 +1422,9 @@ return [ 'order-number-prefix' => 'پیش شماره شماره سفارش', 'order-number-length' => 'طول شماره سفارش', 'order-number-suffix' => 'تعداد کافی شماره سفارش', + 'order-number-generator-class' => 'تولید کننده شماره سفارش', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'پیش فرض', 'sandbox' => 'Sandbox', 'all-channels' => 'همه', @@ -1344,7 +1459,29 @@ return [ 'show-sku' => 'Show SKU', 'categories' => 'Categories', 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'show-search-input-field' => 'Show Search Input Field', + 'store-name' => 'نام فروشگاه', + 'vat-number' => 'شماره Vat', + 'contact-number' => 'شماره تماس', + 'bank-details' => 'اطلاعات دقیق بانکی', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/it/app.php b/packages/Webkul/Admin/src/Resources/lang/it/app.php index a52ec4432..ebdb635dc 100644 --- a/packages/Webkul/Admin/src/Resources/lang/it/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/it/app.php @@ -74,23 +74,33 @@ return [ 'taxes' => 'IVA', 'tax-categories' => 'Categorie IVA', 'tax-rates' => 'Aliquote IVA', + 'marketing' => 'Marketing', 'promotions' => 'Promozioni', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'Sconti', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'Dashboard', 'sales' => 'Vendite', + 'cancel' => 'Cancel', 'orders' => 'Ordini', 'shipments' => 'Spedizioni', 'invoices' => 'Fatture', + 'refunds' => 'Refunds', 'catalog' => 'Catalogo', 'products' => 'Prodotti', + 'copy' => 'Copy', 'categories' => 'Categorie', 'attributes' => 'Attributi', 'attribute-families' => 'Famiglie Attributi', 'customers' => 'Clienti', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'Gruppi', 'reviews' => 'Recensioni', 'newsletter-subscriptions' => 'Iscrizioni Newsletter', @@ -107,9 +117,13 @@ return [ 'taxes' => 'IVA', 'tax-categories' => 'Categorie IVA', 'tax-rates' => 'Aliquote IVA', + 'view' => 'View', 'edit' => 'Modifica', 'create' => 'Aggiungi', 'delete' => 'Elimina', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'Promozioni', 'cart-rules' => 'Regole Carrello', 'catalog-rules' => 'Regole Catalogo', @@ -146,24 +160,25 @@ return [ 'no-resource' => 'The resource provided for insufficient for the action' ], - 'id' => 'ID', - 'status' => 'Stato', - 'code' => 'Codice', - 'admin-name' => 'Nome', - 'name' => 'Nome', - 'direction' => 'Direzione', - 'fullname' => 'Nome completo', - 'type' => 'Tipo', - 'required' => 'Richiesto', - 'unique' => 'Unico', - 'per-locale' => 'Basato su localizzazione', - 'per-channel' => 'Basato sul canale', - 'position' => 'Posizione', - 'locale' => 'Locale', - 'hostname' => 'Hostname', - 'email' => 'Email', - 'group' => 'Gruppo', - 'phone' => 'Telefono', + 'id' => 'ID', + 'status' => 'Stato', + 'code' => 'Codice', + 'admin-name' => 'Nome', + 'name' => 'Nome', + 'direction' => 'Direzione', + 'fullname' => 'Nome completo', + 'type' => 'Tipo', + 'copy' => 'Copia', + 'required' => 'Richiesto', + 'unique' => 'Unico', + 'per-locale' => 'Basato su localizzazione', + 'per-channel' => 'Basato sul canale', + 'position' => 'Posizione', + 'locale' => 'Locale', + 'hostname' => 'Hostname', + 'email' => 'Email', + 'group' => 'Gruppo', + 'phone' => 'Telefono', 'gender' => 'Sesso', 'title' => 'Titolo', 'layout' => 'Layout', @@ -187,6 +202,7 @@ return [ 'shipment-date' => 'Data Spedizione', 'shipment-to' => 'Spedizione A', 'sku' => 'SKU', + 'product-number' => 'Numero del prodotto', 'price' => 'Prezzo', 'qty' => 'Quantità', 'permission-type' => 'Tipo Permessi', @@ -224,7 +240,9 @@ return [ 'view' => 'Vedi', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'Update Stato' + 'update-status' => 'Update Stato', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ @@ -377,13 +395,15 @@ return [ 'submit-comment' => 'Invia Commento', 'notify-customer' => 'Notifica Cliente', 'customer-notified' => ':date | Cliente Notificato', - 'customer-not-notified' => ':date | Cliente Non Notificato' + 'customer-not-notified' => ':date | Cliente Non Notificato', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'Fatture', 'id' => 'Id', 'invoice-id' => 'Id Fattura', + 'invoice' => 'Fattura', 'date' => 'Data Fattura', 'order-id' => 'Id Ordine', 'customer-name' => 'Nome Cliente', @@ -452,6 +472,20 @@ return [ 'view-title' => 'Rimborso #:refund_id', 'invalid-refund-amount-error' => 'La somma rimborsata dovrebbe essere diversa da zero.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -527,7 +561,13 @@ return [ 'multiselect' => 'Multiselect', 'new-option' => 'Nuova Opzione', 'is-default' => 'È Predefinita', - 'actions' => 'Azioni' + 'actions' => 'Azioni', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -804,7 +844,9 @@ return [ 'seo-title' => 'Meta title', 'seo-description' => 'Meta description', 'seo-keywords' => 'Meta keywords', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -822,7 +864,9 @@ return [ 'update-success' => 'Slider aggiornato con successo', 'update-fail' => 'Non è stato possibile aggiornare lo Slider', 'delete-success' => 'Non è stato possibile eliminare l\'ultimo slider', - 'delete-fail' => 'Slider eliminato con successo' + 'delete-fail' => 'Slider eliminato con successo', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -1122,6 +1166,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'TORNA A HOME', 'in-maitainace' => 'In Manutezione', @@ -1251,6 +1357,10 @@ return [ ], 'system' => [ 'catalog' => 'Catalogo', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'Prodotti', 'guest-checkout' => 'Checkout come Ospite', 'allow-guest-checkout' => 'Consenti Checkout come Ospite', @@ -1279,11 +1389,12 @@ return [ 'description' => 'Descrizione', 'rate' => 'Tasso', 'status' => 'Stato', + 'calculate-tax' => 'Calcola le tasse', 'type' => 'Tipo', 'payment-methods' => 'Metodi di Pagamento', 'cash-on-delivery' => 'Contrassegno', 'money-transfer' => 'Bonifico', - 'paypal-standard' => 'Paypal Standard', + 'paypal-standard' => 'PayPal Standard', 'business-account' => 'Account Business', 'newsletter' => 'Iscrizione a NewsLetter', 'newsletter-subscription' => 'Consenti Iscrizione a NewsLetter', @@ -1314,6 +1425,9 @@ return [ 'order-number-prefix' => 'Prefisso Numero Ordine', 'order-number-length' => 'Lunghezza Numero Ordine', 'order-number-suffix' => 'Suffisso Numero Ordine', + 'order-number-generator-class' => 'Generatore di numeri dordine', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'Default', 'sandbox' => 'Sandbox', 'all-channels' => 'Tutti', @@ -1348,7 +1462,29 @@ return [ 'show-sku' => 'Show SKU', 'categories' => 'Categories', 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'show-search-input-field' => 'Show Search Input Field', + 'store-name' => 'Nome del negozio', + 'vat-number' => 'Partita IVA', + 'contact-number' => 'Numero di contatto', + 'bank-details' => 'Coordinate bancarie', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/nl/app.php b/packages/Webkul/Admin/src/Resources/lang/nl/app.php index 61795fb2d..a22bf99fe 100644 --- a/packages/Webkul/Admin/src/Resources/lang/nl/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/nl/app.php @@ -74,23 +74,33 @@ return [ 'taxes' => 'BTW', 'tax-categories' => 'BTW-groepen', 'tax-rates' => 'BTW-tarieven', + 'marketing' => 'Marketing', 'promotions' => 'Promoties', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'Korting', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'Dashboard', 'sales' => 'Verkopen', + 'cancel' => 'Cancel', 'orders' => 'Bestellingen', 'shipments' => 'Verzendingen', 'invoices' => 'Facturen', + 'refunds' => 'Refunds', 'catalog' => 'Catalogus', 'products' => 'Producten', + 'copy' => 'Copy', 'categories' => 'Categorieën', 'attributes' => 'Attributes', 'attribute-families' => 'Attribute Families', 'customers' => 'Klanten', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'Groepen', 'reviews' => 'Reviews', 'newsletter-subscriptions' => 'Newsletter Subscriptions', @@ -107,9 +117,13 @@ return [ 'taxes' => 'Belastingen', 'tax-categories' => 'Belasting categorieën', 'tax-rates' => 'BTW-tarieven', + 'view' => 'View', 'edit' => 'Edit', 'create' => 'Add', 'delete' => 'Verwijder', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'Promoties', 'cart-rules' => 'Cart Rules', 'catalog-rules' => 'Catalog Rules', @@ -146,24 +160,25 @@ return [ 'no-resource' => 'The resource provided for insufficient for the action' ], - 'id' => 'ID', - 'status' => 'Status', - 'code' => 'Code', - 'admin-name' => 'Naam', - 'name' => 'Naam', - 'direction' => 'Richting', - 'fullname' => 'Volledige naam', - 'type' => 'Type', - 'required' => 'Verplicht', - 'unique' => 'Uniek', - 'per-locale' => 'Lokaal gebaseerd', - 'per-channel' => 'Kanaal gebaseerd', - 'position' => 'Position', - 'locale' => 'Locale', - 'hostname' => 'Hostnaam', - 'email' => 'Email', - 'group' => 'Groep', - 'phone' => 'Telefoon', + 'id' => 'ID', + 'status' => 'Status', + 'code' => 'Code', + 'admin-name' => 'Naam', + 'name' => 'Naam', + 'direction' => 'Richting', + 'fullname' => 'Volledige naam', + 'type' => 'Type', + 'copy' => 'kopiëren', + 'required' => 'Verplicht', + 'unique' => 'Uniek', + 'per-locale' => 'Lokaal gebaseerd', + 'per-channel' => 'Kanaal gebaseerd', + 'position' => 'Position', + 'locale' => 'Locale', + 'hostname' => 'Hostnaam', + 'email' => 'Email', + 'group' => 'Groep', + 'phone' => 'Telefoon', 'gender' => 'Geslacht', 'title' => 'Titel', 'layout' => 'Layout', @@ -187,6 +202,7 @@ return [ 'shipment-date' => 'Verzenddatum', 'shipment-to' => 'Shipping To', 'sku' => 'SKU', + 'product-number' => 'Productnummer', 'price' => 'Prijs', 'qty' => 'Aantal', 'permission-type' => 'Permission Type', @@ -376,12 +392,14 @@ return [ 'comment' => 'Comment', 'submit-comment' => 'Submit Comment', 'notify-customer' => 'Notify Customer', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'Facturen', 'id' => 'Id', 'invoice-id' => 'Factuurnummer', + 'invoice' => 'Factuur', 'date' => 'Factuur datum', 'order-id' => 'Bestelnummer', 'customer-name' => 'Klantnaam', @@ -446,11 +464,25 @@ return [ 'refunded' => 'Teruggestort', 'date' => 'Refund Date', 'customer-name' => 'klantnaam', - 'status' => 'Toestand', + 'status' => 'Status', 'action' => 'Actie', 'view-title' => 'Terugbetaling #:refund_id', 'invalid-refund-amount-error' => 'Het restitutiebedrag mag niet nul zijn.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -526,6 +558,12 @@ return [ 'multiselect' => 'Multiselect', 'new-option' => 'Nieuwe optie', 'is-default' => 'is standaard', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -681,7 +719,7 @@ return [ 'save-btn-title' => 'Opslaan', 'description' => 'Description', 'active' => 'Actief', - 'status' => 'Toestand' + 'status' => 'Status' ] ] ], @@ -801,7 +839,9 @@ return [ 'seo-title' => 'Meta titel', 'seo-description' => 'Meta omschrijving', 'seo-keywords' => 'Meta trefwoorden', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -819,7 +859,9 @@ return [ 'update-success' => 'Schuifitem is bijgewerkt', 'update-fail' => 'Schuifregelaar kan niet worden bijgewerkt', 'delete-success' => 'Kan laatste llider-item niet verwijderen', - 'delete-fail' => 'Schuifitem is verwijderd' + 'delete-fail' => 'Schuifitem is verwijderd', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -953,7 +995,7 @@ return [ 'addresses' => 'Addresses', 'mass-destroy-success' => 'Klanten zijn succesvol verwijderd', 'mass-update-success' => 'Klanten succesvol bijgewerkt', - 'status' => 'Toestand', + 'status' => 'Status', 'active' => 'Actief', 'inactive' => 'Niet geactiveerd' ], @@ -962,7 +1004,7 @@ return [ 'title' => 'Recensies', 'edit-title' => 'Review bewerken', 'rating' => 'Beoordeling', - 'status' => 'Toestand', + 'status' => 'Status', 'comment' => 'Commentaar', 'pending' => 'In afwachting', 'approved' => 'Goedkeuren', @@ -991,7 +1033,7 @@ return [ 'rule-information' => 'Regelinformatie', 'name' => 'Naam', 'description' => 'Beschrijving', - 'status' => 'Toestand', + 'status' => 'Status', 'is-active' => 'Winkelwagenregel is actief', 'channels' => 'Kanalen', 'customer-groups' => 'Klantengroepen', @@ -1077,7 +1119,7 @@ return [ 'rule-information' => 'Regelinformatie', 'name' => 'Naam', 'description' => 'Beschrijving', - 'status' => 'Toestand', + 'status' => 'Status', 'is-active' => 'Catalogusregel is actief', 'channels' => 'Kanalen', 'customer-groups' => 'Klantengroepen', @@ -1118,6 +1160,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'GA NAAR HUIS', 'in-maitainace' => 'In onderhoud', @@ -1247,6 +1351,10 @@ return [ ], 'system' => [ 'catalog' => 'Catalogus', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'Producten', 'guest-checkout' => 'Gast afrekenen', 'allow-guest-checkout' => 'Gast afrekenen toestaan', @@ -1274,12 +1382,13 @@ return [ 'title' => 'Titel', 'description' => 'Omschrijving', 'rate' => 'Tarief', - 'status' => 'Toestand', + 'status' => 'Status', + 'calculate-tax' => 'BTW berekenen', 'type' => 'Type', 'payment-methods' => 'Betaalmethodes', 'cash-on-delivery' => 'Rembours', 'money-transfer' => 'Overschrijving', - 'paypal-standard' => 'Paypal Standard', + 'paypal-standard' => 'PayPal Standard', 'business-account' => 'Zakelijk account', 'newsletter' => 'Nieuwsbrief', 'newsletter-subscription' => 'Abonnement op Nieuwsbrief toestaan', @@ -1310,6 +1419,9 @@ return [ 'order-number-prefix' => 'Bestelnummer prefix', 'order-number-length' => 'Bestelnummer Lengte', 'order-number-suffix' => 'Achtervoegsel bestelnummer', + 'order-number-generator-class' => 'Ordernummer Generator', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'Standaard', 'sandbox' => 'Sandbox', 'all-channels' => 'Alles', @@ -1343,7 +1455,29 @@ return [ 'show-sku' => 'Show SKU', 'categories' => 'Categories', 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'show-search-input-field' => 'Show Search Input Field', + 'store-name' => 'Winkel naam', + 'vat-number' => 'Btw-nummer', + 'contact-number' => 'Contact nummer', + 'bank-details' => 'Bankgegevens', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/pl/app.php b/packages/Webkul/Admin/src/Resources/lang/pl/app.php index b0f54b7fb..08b9fa8d6 100644 --- a/packages/Webkul/Admin/src/Resources/lang/pl/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/pl/app.php @@ -73,23 +73,33 @@ return [ 'taxes' => 'Podatki', 'tax-categories' => 'Kategorie podatkowe', 'tax-rates' => 'Stawki podatkowe', + 'marketing' => 'Marketing', 'promotions' => 'Promocje', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'Rabat', - 'cms' => 'System CMS' + 'cms' => 'System CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'Kokpit', 'sales' => 'Sprzedaż', + 'cancel' => 'Cancel', 'orders' => 'Zamówienia', 'shipments' => 'przesyłki', 'invoices' => 'Faktury', + 'refunds' => 'Refunds', 'catalog' => 'Katalog', 'products' => 'Produkty', + 'copy' => 'Copy', 'categories' => 'Kategorie', 'attributes' => 'Atrybuty', 'attribute-families' => 'Rodziny atrybutów', 'customers' => 'Klienci', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'Grupy', 'reviews' => 'Recenzje', 'newsletter-subscriptions' => 'Subskrypcje newslettera', @@ -106,9 +116,13 @@ return [ 'taxes' => 'Podatki', 'tax-categories' => 'Kategorie podatkowe', 'tax-rates' => 'Stawki podatkowe', + 'view' => 'View', 'edit' => 'Edytuj', 'create' => 'Dodaj', 'delete' => 'Usuń', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'Promocje', 'cart-rules' => 'Zasady koszyka', 'catalog-rules' => 'Zasady katalogu', @@ -186,6 +200,7 @@ return [ 'shipment-date' => 'Data wysyłki', 'shipment-to' => 'Wysyłka do', 'sku' => 'SKU', + 'product-number' => 'Numer produktu', 'price' => 'Cena', 'qty' => 'Ilość', 'permission-type' => 'Rodzaj zezwolenia', @@ -223,7 +238,9 @@ return [ 'view' => 'Widok', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'Aktualizcja statusu' + 'update-status' => 'Aktualizcja statusu', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ @@ -376,13 +393,15 @@ return [ 'submit-comment' => 'Prześlij komentarz', 'notify-customer' => 'Powiadom klienta', 'customer-notified' => ':date | Klient Powiadomiony', - 'customer-not-notified' => ':date | Klient Nie powiadomiony' + 'customer-not-notified' => ':date | Klient Nie powiadomiony', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'Faktury', 'id' => 'Id', 'invoice-id' => 'Identyfikator faktury', + 'invoice' => 'Faktura', 'date' => 'Data faktury', 'order-id' => 'Identyfikator zamówienia', 'customer-name' => 'Nazwa klienta', @@ -452,6 +471,20 @@ return [ 'view-title' => 'Refundacja nr #:refund_id', 'invalid-refund-amount-error' => 'Kwota zwrotu powinna być różna od zera.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -526,7 +559,13 @@ return [ 'checkbox' => 'Pole wyboru', 'multiselect' => 'Wielokrotny wybór', 'new-option' => 'Nowa opcja', - 'is-default' => 'Jest domyślny' + 'is-default' => 'Jest domyślny', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -803,7 +842,9 @@ return [ 'seo-title' => 'Meta tytuł', 'seo-description' => 'Meta opis', 'seo-keywords' => 'Meta słowa kluczowe', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -821,7 +862,9 @@ return [ 'update-success' => 'Element suwaka pomyślnie zaktualizowany', 'update-fail' => 'Nie można zaktualizować suwaka', 'delete-success' => 'Nie można usunąć ostatniego elementu lidera', - 'delete-fail' => 'Element suwaka został pomyślnie usunięty' + 'delete-fail' => 'Element suwaka został pomyślnie usunięty', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -1120,6 +1163,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'IDŹ DO GŁÓWNEJ', 'in-maitainace' => 'W konserwacji', @@ -1249,6 +1354,10 @@ return [ ], 'system' => [ 'catalog' => 'Katalog', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'Produkty', 'guest-checkout' => 'Zamówienia gości', 'allow-guest-checkout' => 'Zezwalaj na zamówienia gości', @@ -1277,11 +1386,12 @@ return [ 'description' => 'Opis', 'rate' => 'Stawka', 'status' => 'Status', + 'calculate-tax' => 'Oblicz podatek', 'type' => 'Rodzaj', 'payment-methods' => 'Metody płatności', 'cash-on-delivery' => 'Za pobraniem', 'money-transfer' => 'Przekaz pieniężny', - 'paypal-standard' => 'Paypal Standard', + 'paypal-standard' => 'PayPal Standard', 'business-account' => 'Konto biznesowe', 'newsletter' => 'Subskrypcja newslettera', 'newsletter-subscription' => 'Zezwól na subskrypcję newslettera', @@ -1312,6 +1422,9 @@ return [ 'order-number-prefix' => 'Prefiks numeru zamówienia', 'order-number-length' => 'Długość numeru zamówienia', 'order-number-suffix' => 'Sufiks numeru zamówienia”', + 'order-number-generator-class' => 'Generator numeru zamówienia', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'Domyślna', 'sandbox' => 'Piaskownica', 'all-channels' => 'Wszystkie kanały', @@ -1333,7 +1446,29 @@ return [ 'show-sku' => 'Show SKU', 'categories' => 'Categories', 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'show-search-input-field' => 'Show Search Input Field', + 'store-name' => 'Nazwa sklepu', + 'vat-number' => 'Numer VAT', + 'contact-number' => 'Numer kontaktowy', + 'bank-details' => 'Dane bankowe', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php index 6e75ce54b..b14e3a17c 100755 --- a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php @@ -74,23 +74,33 @@ return [ 'taxes' => 'Impostos', 'tax-categories' => 'Categorias de Impostos', 'tax-rates' => 'Impostos de Impostos', - 'promotion' => 'Promoções', + 'marketing' => 'Marketing', + 'promotions' => 'Promoções', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'Desconto', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'Dashboard', 'sales' => 'Vendas', + 'cancel' => 'Cancel', 'orders' => 'Pedidos', 'shipments' => 'Envios', 'invoices' => 'Faturas', + 'refunds' => 'Refunds', 'catalog' => 'Catálogos', 'products' => 'Produtos', + 'copy' => 'Copy', 'categories' => 'Categorias', 'attributes' => 'Atributos', 'attribute-families' => 'Famílias de Atributos', 'customers' => 'Clientes', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'Grupos', 'reviews' => 'Avaliações', 'newsletter-subscriptions' => 'Inscrições de Newsletter', @@ -107,9 +117,13 @@ return [ 'taxes' => 'Impostos', 'tax-categories' => 'Categorias de Impostos', 'tax-rates' => 'Impostos de Impostos', + 'view' => 'View', 'edit' => 'Edit', 'create' => 'Add', 'delete' => 'Delete', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'Promoções', 'cart-rules' => 'Regras do Carrinho', 'catalog-rules' => 'Regras do Catálogo', @@ -187,6 +201,7 @@ return [ 'shipment-date' => 'Data de Envio', 'shipment-to' => 'Enviado para', 'sku' => 'SKU', + 'product-number' => 'Número de produto', 'price' => 'Preço', 'qty' => 'Quantidade', 'permission-type' => 'Tipo de Permissão', @@ -224,7 +239,9 @@ return [ 'view' => 'Visão', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'Atualizar o status' + 'update-status' => 'Atualizar o status', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ @@ -376,12 +393,14 @@ return [ 'comment' => 'Comment', 'submit-comment' => 'Submit Comment', 'notify-customer' => 'Notify Customer', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'Faturas', 'id' => 'Id', 'invoice-id' => 'Fatura Id', + 'invoice' => 'Fatura', 'date' => 'Data da Fatura', 'order-id' => 'Pedido Id', 'customer-name' => 'Nome do Cliente', @@ -451,6 +470,20 @@ return [ 'view-title' => 'Reembolso #:refund_id', 'invalid-refund-amount-error' => 'Refund amount should be non zero.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -525,7 +558,13 @@ return [ 'checkbox' => 'Checkbox', 'multiselect' => 'Multiselect', 'new-option' => 'New Option', - 'is-default' => 'Is Default' + 'is-default' => 'Is Default', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -802,7 +841,9 @@ return [ 'seo-title' => 'Meta título', 'seo-description' => 'Meta Descrição', 'seo-keywords' => 'Meta palavras-chave', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -820,7 +861,9 @@ return [ 'update-success' => 'Slider atualizado com sucesso', 'update-fail' => 'Slider não pôde ser atualizado', 'delete-success' => 'Não foi possível excluir o slider', - 'delete-fail' => 'Slider excluído com sucesso' + 'delete-fail' => 'Slider excluído com sucesso', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -983,7 +1026,7 @@ return [ ] ], - 'promotion' => [ + 'promotions' => [ 'cart-rules' => [ 'title' => 'Regras do carrinho', 'add-title' => 'Adicionar regra de carrinho', @@ -1119,6 +1162,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'IR PARA PÁGINA INICIAL', 'in-maitainace' => 'Em manutenção', @@ -1248,6 +1353,10 @@ return [ ], 'system' => [ 'catalog' => 'Catálogo', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'Produtos', 'guest-checkout' => 'Compras sem cadastro?', 'allow-guest-checkout' => 'Permitir compra para clientes sem cadastros?', @@ -1276,11 +1385,12 @@ return [ 'description' => 'Descrição', 'rate' => 'Taxa', 'status' => 'Status', + 'calculate-tax' => 'Calcular o imposto', 'type' => 'Tipo', 'payment-methods' => 'Métodos de Pagamento', 'cash-on-delivery' => 'Dinheiro na entrega', 'money-transfer' => 'Transferência de dinheiro', - 'paypal-standard' => 'Padrão Paypal', + 'paypal-standard' => 'Padrão PayPal', 'business-account' => 'Conta de negócios', 'newsletter' => 'Assinatura de Newsletter', 'newsletter-subscription' => 'Permitir assinatura do NewsLetter', @@ -1313,6 +1423,9 @@ return [ 'order-number-prefix' => 'Prefixo do Número do Pedido', 'order-number-length' => 'Tamanho do Número do Pedido', 'order-number-suffix' => 'Sufixo do Número de Pedido', + 'order-number-generator-class' => 'Gerador de número de pedido', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'Padrão', 'sandbox' => 'Sandbox', 'all-channels' => 'Todos', @@ -1347,7 +1460,29 @@ return [ 'show-sku' => 'Show SKU', 'categories' => 'Categories', 'show-sku' => 'Show SKU', - 'show-search-input-field' => 'Show Search Input Field' + 'show-search-input-field' => 'Show Search Input Field', + 'store-name' => 'Nome da loja', + 'vat-number' => 'Número de IVA', + 'contact-number' => 'Número de contato', + 'bank-details' => 'Detalhes bancários', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/tr/app.php b/packages/Webkul/Admin/src/Resources/lang/tr/app.php index 9e9451a1a..aa11fc6fd 100644 --- a/packages/Webkul/Admin/src/Resources/lang/tr/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/tr/app.php @@ -72,23 +72,33 @@ return [ 'taxes' => 'Vergiler', 'tax-categories' => 'Vergi Kategorileri', 'tax-rates' => 'Vergi Oranları', + 'marketing' => 'Marketing', 'promotions' => 'Promosyon', + 'email-marketing' => 'Email Marketing', + 'campaigns' => 'Campaigns', + 'email-templates' => 'Email Templates', 'discount' => 'İndirim', - 'cms' => 'CMS' + 'cms' => 'CMS', + 'transactions' => 'Transactions' ], 'acl' => [ 'dashboard' => 'Panel', 'sales' => 'Satışlar', + 'cancel' => 'Cancel', 'orders' => 'Siparişler', 'shipments' => 'Teslimatlar', 'invoices' => 'Faturalar', + 'refunds' => 'Refunds', 'catalog' => 'Katalog', 'products' => 'Ürünler', + 'copy' => 'Copy', 'categories' => 'Kategoriler', 'attributes' => 'Nitelikler', 'attribute-families' => 'Nitelik Grupları', 'customers' => 'Müşteriler', + 'addresses' => 'Addresses', + 'note' => 'Note', 'groups' => 'Gruplar', 'reviews' => 'İncelemeler', 'newsletter-subscriptions' => 'Bülten Üyelikleri', @@ -105,9 +115,13 @@ return [ 'taxes' => 'Vergi', 'tax-categories' => 'Vergi Grupları', 'tax-rates' => 'Vergi Oranları', + 'view' => 'View', 'edit' => 'Düzenle', 'create' => 'Oluştur', 'delete' => 'Sil', + 'mass-delete' => 'Mass Delete', + 'mass-update' => 'Mass Update', + 'marketing' => 'Marketing', 'promotions' => 'Promosyonlar', 'cart-rules' => 'Alışveriş Sepeti Kuralları', 'catalog-rules' => 'Katalog Kuralları', @@ -185,6 +199,7 @@ return [ 'shipment-date' => 'Kargo Tarihi', 'shipment-to' => 'Kargo Bilgileri', 'sku' => 'Barkod', + 'product-number' => 'Ürün numarası', 'price' => 'Fiyat', 'qty' => 'Miktar', 'permission-type' => 'İzin Tipi', @@ -222,7 +237,9 @@ return [ 'view' => 'Görüntüle', 'rtl' => 'RTL', 'ltr' => 'LTR', - 'update-status' => 'Durum Güncelle' + 'update-status' => 'Durum Güncelle', + 'transaction-id' => 'Transaction Id', + 'transaction-date' => 'Transaction Date', ], 'account' => [ @@ -374,13 +391,15 @@ return [ 'submit-comment' => 'Yorum Gönder', 'notify-customer' => 'Müşteriyi Bilgilendir', 'customer-notified' => ':date | Müşteri Bilgilendirildi', - 'customer-not-notified' => ':date | Müşteri Bilgilendirilmedi' + 'customer-not-notified' => ':date | Müşteri Bilgilendirilmedi', + 'transactions' => 'Transactions' ], 'invoices' => [ 'title' => 'Faturalar', 'id' => 'ID', 'invoice-id' => 'Fatura No', + 'invoice' => 'Fatura', 'date' => 'Fatura Tarihi', 'order-id' => 'Sipariş No', 'customer-name' => 'Müşteri Adı', @@ -450,6 +469,20 @@ return [ 'view-title' => 'İade #:refund_id', 'invalid-refund-amount-error' => 'Lütfen iade miktarını giriniz.' + ], + + 'transactions' => [ + 'title' => 'Transactions', + 'id' => 'Id', + 'transaction-id' => 'Transaction Id', + 'payment-method' => 'Payment method', + 'action' => 'Action', + 'view-title' => 'Transaction #:transaction_id', + 'transaction-data' => 'Transaction Data', + 'order-id' => 'Order Id', + 'status' => 'Status', + 'created-at' => 'Created At', + 'transaction-details' => 'Transaction Details' ] ], @@ -521,7 +554,13 @@ return [ 'checkbox' => 'Onay Kutusu', 'multiselect' => 'Çoklu Seçim', 'new-option' => 'Yeni Seçenek', - 'is-default' => 'Varsayılan' + 'is-default' => 'Varsayılan', + 'remove-image-btn-title' => 'Remove Image', + 'videos' => 'Videos', + 'video' => 'Video', + 'add-video-btn-title' => 'Add Video', + 'remove-video-btn-title' => 'Remove Video', + 'not-support-video' => 'Your browser does not support the video tag.', ], 'attributes' => [ @@ -794,7 +833,9 @@ return [ 'seo-title' => 'Meta Başlık', 'seo-description' => 'Meta Açıklama', 'seo-keywords' => 'Meta Anahtar Kelimeler', - + 'maintenance-mode' => 'Maintenance Mode', + 'maintenance-mode-text' => 'Message', + 'allowed-ips' => 'Allowed IPs' ], 'sliders' => [ @@ -812,7 +853,9 @@ return [ 'update-success' => 'Slider başarıyla güncellendi.', 'update-fail' => 'Slider güncellenemez.', 'delete-success' => 'Slider başarıyla silindi.', - 'delete-fail' => 'Slider silinirken hata oluştu.' + 'delete-fail' => 'Slider silinirken hata oluştu.', + 'expired-at' => 'Expire Date', + 'sort-order' => 'Sort Order' ], 'tax-categories' => [ @@ -1107,6 +1150,68 @@ return [ ] ], + 'marketing' => [ + 'templates' => [ + 'title' => 'Email Templates', + 'add-title' => 'Add Email Template', + 'edit-title' => 'Edit Email Template', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'draft' => 'Draft', + 'content' => 'Content', + 'create-success' => 'Email template created successfully.', + 'update-success' => 'Email template updated successfully.', + 'delete-success' => 'Email template deleted successfully', + ], + + 'campaigns' => [ + 'title' => 'Campaigns', + 'add-title' => 'Add Campaign', + 'edit-title' => 'Edit Campaign', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'status' => 'Status', + 'active' => 'Active', + 'inactive' => 'Inactive', + 'subject' => 'Subject', + 'email-template' => 'Email Template', + 'audience' => 'Audience', + 'channel' => 'Channel', + 'customer-group' => 'Customer Group', + 'schedule' => 'Schedule', + 'schedule-type' => 'Schedule Type', + 'once' => 'Once', + 'events' => 'Events', + 'schedule-date' => 'Schedule Date', + 'spooling' => 'Spooling', + 'event' => 'Event', + 'birthday' => 'Birthday', + 'create-success' => 'Campaign created successfully.', + 'update-success' => 'Campaign updated successfully.', + 'delete-success' => 'Campaign deleted successfully', + ], + + 'events' => [ + 'title' => 'Events', + 'add-title' => 'Add Event', + 'edit-title' => 'Edit Event', + 'save-btn-title' => 'Save', + 'general' => 'General', + 'name' => 'Name', + 'description' => 'Description', + 'date' => 'Date', + 'create-success' => 'Event created successfully.', + 'update-success' => 'Event updated successfully.', + 'delete-success' => 'Event deleted successfully.', + 'edit-error' => 'Can not edit this event.' + ] + ], + 'error' => [ 'go-to-home' => 'ANA SAYFAYA GİT', 'in-maitainace' => 'Bakım Modunda', @@ -1236,6 +1341,10 @@ return [ ], 'system' => [ 'catalog' => 'Katalog', + 'homepage' => 'Homepage configuration', + 'allow-no-of-new-product-homepage' => 'Allowed No of New Product in Homepage', + 'allow-no-of-featured-product-homepage' => 'Allowed No of Featured Product in Homepage', + 'allow-out-of-stock-items' => 'Allow out of stock items', 'products' => 'Ürünler', 'guest-checkout' => 'Ziyaretçi Satışı', 'allow-guest-checkout' => 'Ziyaretçi Alımına İzin Ver', @@ -1264,11 +1373,12 @@ return [ 'description' => 'Açıklama', 'rate' => 'Oran', 'status' => 'Durum', + 'calculate-tax' => 'Vergiyi Hesapla', 'type' => 'Tipi', 'payment-methods' => 'Ödeme Türleri', 'cash-on-delivery' => 'Kapıda Ödeme', 'money-transfer' => 'Havale/EFT', - 'paypal-standard' => 'Paypal', + 'paypal-standard' => 'PayPal', 'business-account' => 'İş Hesabı', 'newsletter' => 'Bülten Aboneliği', 'newsletter-subscription' => 'Bülten Aboneliğine İzin Ver', @@ -1299,6 +1409,9 @@ return [ 'order-number-prefix' => 'Numara Ön Eki', 'order-number-length' => 'Numara Uzunluğu', 'order-number-suffix' => 'Numara Son Eki', + 'order-number-generator-class' => 'Sipariş Numarası Üreticisi', + 'minimum-order' => 'Minimum Order Settings', + 'minimum-order-amount' => 'Minimum Order Amount', 'default' => 'Varsayılan', 'sandbox' => 'Havuz', 'all-channels' => 'Tümü', @@ -1330,7 +1443,29 @@ return [ 'show-offers' => 'Teklifleri Göster', 'show-sku' => 'Barkod Göster', 'categories' => 'Kategoriler', - 'show-search-input-field' => 'Arama Giriş Kutusu Göster' + 'show-search-input-field' => 'Arama Giriş Kutusu Göster', + 'store-name' => 'Dükkan adı', + 'vat-number' => 'KDV Numarası', + 'contact-number' => 'İletişim numarası', + 'bank-details' => 'Banka detayları', + 'mailing-address' => 'Send Check to', + 'instructions' => 'Instructions', + 'custom-scripts' => 'Custom Scripts', + 'custom-css' => 'Custom CSS', + 'custom-javascript' => 'Custom Javascript', + 'paypal-smart-button' => 'PayPal', + 'client-id' => 'Client Id', + 'client-id-info' => 'Use "sb" for testing.', + 'client-secret' => 'Client Secret', + 'client-secret-info' => 'Add your secret key here', + 'accepted-currencies' => 'Accepted currencies', + 'accepted-currencies-info' => 'Add currency code comma seperated e.g. USD,INR,...', + 'buy-now-button-display' => 'Allow customers to directly buy products', + 'width' => 'Width', + 'height' => 'Height', + 'cache-small-image' => 'Small Image', + 'cache-medium-image' => 'Medium Image', + 'cache-large-image' => 'Large Image', ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php index bfb2a0975..702e691db 100755 --- a/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php @@ -63,7 +63,7 @@
- + @{{ errors.first('current_password') }}
diff --git a/packages/Webkul/Admin/src/Resources/views/catalog/attributes/create.blade.php b/packages/Webkul/Admin/src/Resources/views/catalog/attributes/create.blade.php index 7626ffdd2..1c2ae527d 100755 --- a/packages/Webkul/Admin/src/Resources/views/catalog/attributes/create.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/catalog/attributes/create.blade.php @@ -11,7 +11,7 @@