All paths shown are relative to the package's project folder (not the website folder). The website has symbolic links into each package so there are no duplicated files.
The following can be used to locate a project folder within the website:
(solution)\Website\Addons\(company)\(product)\ is the location of the package (symbolic link into the project), equivalent to the package folder (solution)\(product)\Addons\. (company) represents the company that published the package. For example, the Feedback package which is published with YetaWF is located at (solution)\Website\Addons\YetaWF\Feedback\Addons\ which links to the module project files at (solution)\YetaWF\Modules\Feedback\Addons\.
typeof (areaname)==='undefined'||!(areaname).(moduleclassname)||new (areaname).(moduleclassname)('moduleHtmlId');
(areaname) and (moduleclassname) are substituted with the package's area name and the module type name. For example, using the YetaWF Text module would generate the following whenever the Text module is used:
typeof YetaWF_Text==='undefined'||!YetaWF_Text.TextModule||new YetaWF_Text.YetaWF_Text.TextModule('id43');
This is typically done using the YetaWF.Core.Addons.AddOnManager.AddAddOnNamedAsync method.
Each line contains one single file name (relative to the current folder, subfolders are allowed, but not wildcards) or a completely qualified reference to an external file (http://, https://, or //).
The following comma separated arguments are supported:
|nominify||The file is never minified. Local files only.|
|nobundle||The file is never bundled, even if it would normally be made part of a bundle (this is used by Core components only). Local files only.|
|editonly||The file is included in site edit mode only.|
|async||The file is added with the <script async> option. Can't be used with bundle or last.|
|defer||The file is added with the <script defer> option. Can't be used with bundle or last.|
|allowCustom||If specified, the named file can be overridden with a custom file in the .\AddonsCustom folder. Local files only.|
Each line may be prefixed with MVC5 or MVC6 which means the line applies only when the specified MVC version is used by YetaWF (MVC5 means ASP.NET 4 MVC 5, MVC6 means ASP.NET Core MVC).
A line can contain the Uses directive.
The Uses directive allows another package's named addons to be included.
Multiple Uses directives can be used.
All included package named addons are included ahead of explicitly listed files, even if they appear before the Uses directive.