diff --git a/app/code/Magento/Tax/README.md b/app/code/Magento/Tax/README.md index f449b1c6c6cba..451f1c8533a7b 100644 --- a/app/code/Magento/Tax/README.md +++ b/app/code/Magento/Tax/README.md @@ -1,32 +1,164 @@ -# Overview -## Purpose of module +# Magento_Tax module + The Magento_Tax module provides the calculations needed to compute the consumption tax on goods and services. The Magento_Tax module includes the following: -* configuration of the tax rates and rules to apply -* configuration of tax classes that apply to: -** taxation on products -** taxation on shipping charges -** taxation on gift options (example: gift wrapping) -* specification whether the consumption tax is "sales & use" (typically product prices are loaded without any tax) or "VAT" (typically product prices are loaded including tax) -* specification of whether the tax total line can be toggled to display the tax details/subtotals -* display of prices (presented with tax, without tax, or both with and without) +- Configuration of the tax rates and rules to apply. +- Configuration of tax classes that apply to: + - Taxation on products. + - Taxation on shipping charges. + - Taxation on gift options (example: gift wrapping). +- Specification whether the consumption tax is "sales & use" (typically product prices are loaded without any tax) or "VAT" (typically product prices are loaded including tax). +- Specification of whether the tax total line can be toggled to display the tax details/subtotals. +- Display of prices (presented with tax, without tax, or both with and without). The Magento_Tax module also handles special cases when computing tax, such as: -* determining the tax on an individual item (for example, one that is being returned) when the original tax has been computed on the entire shopping cart -** example country: United States -* being able to handle 2 or more tax rates that are applied separately (examples include a "luxury tax" on exclusive items) -* being able to handle a subsequent tax rate that is applied after a previous one is applied (a "tax on tax" situation, which recently was a part of Canadian tax law) +- Determining the tax on an individual item (for example, one that is being returned) when the original tax has been computed on the entire shopping cart. + - Example country: United States. +- Being able to handle 2 or more tax rates that are applied separately (examples include a "luxury tax" on exclusive items). +- Being able to handle a subsequent tax rate that is applied after a previous one is applied (a "tax on tax" situation, which recently was a part of Canadian tax law). + +## Installation details + +Before installing this module, note that the Magento_Tax is dependent on the following modules: + +- Magento_Catalog +- Magento_Checkout +- Magento_Config +- Magento_Customer +- Magento_Directory +- Magento_PageCache +- Magento_Quote +- Magento_Reports +- Magento_Sales +- Magento_Shipping +- Magento_Store +- Magento_User + +Before disabling or uninstalling this module, note the following dependencies: + +- Magento_TaxImportExport +- Magento_Weee + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). + +## Structure + +`CustomerData/` - Checkout totals js layout data provider +`Pricing/` - directory that contain tax adjustment. + +For information about a typical file structure of a module, see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure). + +## Extensibility + +Extension developers can interact with the Magento_Tax module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html). + +[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Tax module. + +### Events + +The module dispatches the following events: + +- `adminhtml_cache_refresh_type` event in the `\Magento\Tax\Controller\Adminhtml\Tax\IgnoreTaxNotification::execute()` method. Parameters: + - `type` config is a cache refresh type. +- `tax_rate_data_fetch` event in the `\Magento\Tax\Model\Calculation::getRate()` method. Parameters: + - `request` is a Data object (`\Magento\Framework\DataObject` class). + - `sender` is a Calculation object (`\Magento\Tax\Model\Calculation` class). +- `tax_settings_change_after` event in the `\Magento\Tax\Model\Calculation\Rule::afterSave()` method. +- `tax_settings_change_after` event in the `\Magento\Tax\Model\Calculation\Rule::afterDelete()` method. +- `tax_settings_change_after` event in the `\Magento\Tax\Model\Calculation\Rate::afterSave()` method. +- `tax_settings_change_after` event in the `\Magento\Tax\Model\Calculation\Rate::afterDelete()` method. +- `tax_settings_change_after` event in the `\Magento\Tax\Model\Calculation\Rate::deleteAllRates()` method. + +For information about the event, see [Events and observers](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events). + +### Layouts + +This module introduces the following layouts and layout handles in the directories: + +- `view/adminhtml/layout`: + - `sales_creditmemo_item_price` + - `sales_invoice_item_price` + - `sales_order_create_item_price` + - `sales_order_item_price` + - `tax_rate_block` + - `tax_rate_exportcsv` + - `tax_rate_exportxml` + - `tax_rate_index` + - `tax_rule_block` + - `tax_rule_edit` + - `tax_rule_index` +- `view/base/layout`: + - `catalog_product_prices` +- `view/frantend/layout`: + - `checkout_cart_index` + - `checkout_cart_sidebar_total_renderers` + - `checkout_index_index` + - `checkout_item_price_renderers` + - `sales_email_item_price` + - `sales_order_item_price` + +For more information about a layout, see the [Layout documentation](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html). + +### UI components + +You can extend a customer form and widgets using the configuration files located in the directories + +- `view/frontend/ui_component`: + - `widget_recently_compared` + - `widget_recently_viewed` + +For information about a UI component, see [Overview of UI components](https://devdocs.magento.com/guides/v2.4/ui_comp_guide/bk-ui_comps.html). + +### Public APIs + +`\Magento\Tax\Api\OrderTaxManagementInterface`: + + - Get taxes applied to an order. + +`\Magento\Tax\Api\TaxAddressManagerInterface`: + + - Set default Tax Billing and Shipping address into customer session after address save. + - Set default Tax Shipping and Billing addresses into customer session after login. + +`\Magento\Tax\Api\TaxCalculationInterface`: + + - Calculate Tax. + - Get default rate request. + - Get rate request. + +`\Magento\Tax\Api\TaxClassManagementInterface`: + + - Get tax class id. + +`\Magento\Tax\Api\TaxClassRepositoryInterface`: + + - Get a tax class with the given tax class id. + - Retrieve tax classes which match a specific criterion. + - Create or update a Tax Class. + - Delete a tax class. + - Delete a tax class with the given tax class id. + +`\Magento\Tax\Api\TaxRateManagementInterface`: + + - Get rates by customerTaxClassId and productTaxClassId. + +`\Magento\Tax\Api\TaxRateRepositoryInterface`: + + - Create or update tax rate. + - Get a tax rate with the given tax rate id. + - Delete a tax rate with the given tax rate id. + - Retrieve tax rates which match a specific criterion. + - Delete a tax rate. -# Deployment -## System requirements -The Magento_Tax module does not have any specific system requirements. +`\Magento\Tax\Api\TaxRuleRepositoryInterface`: -Depending on how many tax rates and tax rules are being used, there might be consideration for the database size -Depending on the frequency of updating tax rates and tax rules, there might be consideration for the scheduling of these updates + - Get TaxRule. + - Save TaxRule. + - Delete TaxRule. + - Delete a tax rule with the given rule id. + - Retrieve tax rules which match a specific criterion. -## Install -The Magento_Tax module is installed automatically (using the native Magento install mechanism) without any additional actions. +[Learn detailed description of the Magento_Sales API.](https://devdocs.magento.com/guides/v2.4/mrg/ce/Sales/services.html) -## Uninstall -The Magento_Tax module should not be uninstalled; it is a required module. \ No newline at end of file +For information about a public API, see [Public interfaces & APIs](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/api-concepts.html). diff --git a/app/code/Magento/TaxGraphQl/README.md b/app/code/Magento/TaxGraphQl/README.md index 2bb28f94219e0..00b1c726552d4 100644 --- a/app/code/Magento/TaxGraphQl/README.md +++ b/app/code/Magento/TaxGraphQl/README.md @@ -1,4 +1,12 @@ -# TaxGraphQl +# Magento_TaxGraphQl module -**TaxGraphQl** provides type information for the GraphQl module -to generate tax fields for catalog and product information endpoints. +The Magento_TaxGraphQl module provides type information for the GraphQl module to generate tax fields for catalog and product information endpoints. + +## Installation details + +Before installing this module, note that the Magento_TaxGraphQl is dependent on the following modules: + +- Magento_CatalogGraphQl +- Magento_Tax + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). diff --git a/app/code/Magento/TaxImportExport/README.md b/app/code/Magento/TaxImportExport/README.md new file mode 100644 index 0000000000000..f89bfbd2b8385 --- /dev/null +++ b/app/code/Magento/TaxImportExport/README.md @@ -0,0 +1,22 @@ +# Magento_TaxImportExport module + +The Magento_TaxImportExport module enables magento to export and import tax. + +## Installation details + +Before installing this module, note that the Magento_TaxImportExport is dependent on the following modules: + +- Magento_Store +- Magento_Tax + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). + +### Layouts + +This module introduces the following layouts and layout handles in the directories: + +- `view/adminhtml/layout`: + - `tax_rate_block` + - `tax_rule_edit` + +For more information about a layout, see the [Layout documentation](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html). diff --git a/app/code/Magento/Theme/README.md b/app/code/Magento/Theme/README.md index 9035df6395263..6e8575e5fd603 100644 --- a/app/code/Magento/Theme/README.md +++ b/app/code/Magento/Theme/README.md @@ -1 +1,110 @@ -The Theme module contains common infrastructure that provides an ability to apply and use themes in Magento application. \ No newline at end of file +# Magento_Theme module + +The Magento_Theme module contains common infrastructure that provides an ability to apply and use themes in Magento application. + +## Installation details + +Before installing this module, note that the Magento_Theme is dependent on the following modules: + +- Magento_Cms +- Magento_Config +- Magento_Customer +- Magento_Directory +- Magento_Eav +- Magento_MediaStorage +- Magento_Store +- Magento_Widget + +Before disabling or uninstalling this module, note the following dependencies: + +- Magento_Backend +- Magento_Cms +- Magento_Eav +- Magento_MediaStorage +- Magento_Robots +- Magento_Swatches +- Magento_Vault + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). + +## Structure + +`CustomerData/` - directory contains messages section. + +For information about a typical file structure of a module, see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure). + +## Extensibility + +Extension developers can interact with the Magento_Theme module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html). + +[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Theme module. + +### Events + +The module dispatches the following events: + +- `page_block_html_topmenu_gethtml_before` event in the `\Magento\Theme\Block\Html\Topmenu::getHtml()` method. Parameters: + - `menu` is a menu object (`\Magento\Framework\Data\Tree\Node` class). + - `block` is a Topmenu object (`\Magento\Theme\Block\Html\Topmenu` class). + - `request` is a request object (`\Magento\Framework\App\RequestInterface` class). +- `page_block_html_topmenu_gethtml_after` event in the `\Magento\Theme\Block\Html\Topmenu::getHtml()` method. Parameters: + - `menu` is a menu object (`\Magento\Framework\Data\Tree\Node` class). + - `transportObject` is a Transport object (`\Magento\Framework\DataObject` class). +- `admin_system_config_changed_section_design` event in the `\Magento\Theme\Model\Design\Config\Plugin::afterSave()` method. Parameters: + - `website` is a website object (`\Magento\Store\Api\Data\WebsiteInterface` class). + - `store` is a store object (`\Magento\Store\Api\Data\StoreInterface` class). +- `admin_system_config_changed_section_design` event in the `\Magento\Theme\Model\Design\Config\Plugin::afterDelete()` method. Parameters: + - `website` is a website object (`\Magento\Store\Api\Data\WebsiteInterface` class). + - `store` is a store object (`\Magento\Store\Api\Data\StoreInterface` class). +- `admin_system_config_changed_section_design` event in the `\Magento\Theme\Model\Config::assignToStore()` method. Parameters: + - `store` is a store object (`\Magento\Store\Api\Data\StoreInterface` class). + - `scope` is a store scope. + - `theme` is a theme object (`\Magento\Framework\View\Design\ThemeInterface` class). +- `assigned_theme_changed` event in the `\Magento\Theme\Observer\CheckThemeIsAssignedObserver::execute()` method. Parameters: + - `theme` is a theme object (`\Magento\Framework\View\Design\ThemeInterface` class). + +For information about the event, see [Events and observers](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events). + +### Layouts + +This module introduces the following layouts and layout handles in the directories: + +- `view/adminhtml/layout`: + - `adminhtml_system_design_theme_block` + - `adminhtml_system_design_theme_edit` + - `adminhtml_system_design_theme_grid` + - `adminhtml_system_design_theme_index` + - `adminhtml_system_design_wysiwyg_files_contents` + - `adminhtml_system_design_wysiwyg_files_index` + - `theme_design_config_edit` + - `theme_design_config_index` +- `view/frantend/layout`: + - `default` + - `default_head_blocks` + - `page_calendar` + - `print` + +For more information about a layout, see the [Layout documentation](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html). + +### UI components + +You can extend a customer form and widgets using the configuration files located in the directories + +- `view/adminhtml/ui_component`: + - `design_config_form` + - `design_config_listing` + - `design_theme_listing` + +For information about a UI component, see [Overview of UI components](https://devdocs.magento.com/guides/v2.4/ui_comp_guide/bk-ui_comps.html). + +### Public APIs + +`\Magento\Theme\Api\DesignConfigRepositoryInterface`: + + - Get design settings by scope. + - Save design settings. + - Delete design settings. + +[Learn detailed description of the Magento_Sales API.](https://devdocs.magento.com/guides/v2.4/mrg/ce/Sales/services.html) + +For information about a public API, see [Public interfaces & APIs](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/api-concepts.html). diff --git a/app/code/Magento/ThemeGraphQl/README.md b/app/code/Magento/ThemeGraphQl/README.md index 2b3d54d9b5735..617615d218956 100644 --- a/app/code/Magento/ThemeGraphQl/README.md +++ b/app/code/Magento/ThemeGraphQl/README.md @@ -1,4 +1,11 @@ -# ThemeGraphQl +# Magento_ThemeGraphQl module -**ThemeGraphQl** provides type information for the GraphQl module -to generate theme fields information endpoints. +The Magento_ThemeGraphQl module provides type information for the GraphQl module to generate theme fields information endpoints. + +## Installation details + +Before installing this module, note that the Magento_ThemeGraphQl is dependent on the following modules: + +- Magento_StoreGraphQl + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). diff --git a/app/code/Magento/Translation/README.md b/app/code/Magento/Translation/README.md index 55578a991df3c..1f054a6f4ec3e 100644 --- a/app/code/Magento/Translation/README.md +++ b/app/code/Magento/Translation/README.md @@ -1,4 +1,38 @@ -# Translation +# Magento_Translation module -**Translation** enables localization of a store for multiple regions and markets. -Also provides the inline translation tool. +The Magento_Translation module enables localization of a store for multiple regions and markets. + +The Magento_Translation module provides the inline translation tool. + +## Installation details + +Before installing this module, note that the Magento_Translation is dependent on the following modules: + +- Magento_Developer +- Magento_Store +- Magento_Theme + +For information about enabling or disabling a module, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html). + +## Structure + +`App/` - the directory that contain Translation class which hold all translation sources and merge them. + +For information about a typical file structure of a module, see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure). + +### Events + +The module dispatches the following events: + + - `adminhtml_cache_flush_system` event in the `\Magento\Translation\Model\Inline\CacheManager::updateAndGetTranslations()` method. + +For information about the event, see [Events and observers](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events). + +### Layouts + +This module introduces the following layouts and layout handles in the directories: + +- `view/frantend/layout`: + - `default` + +For more information about a layout, see the [Layout documentation](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-overview.html).