diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 7224dab07e..cf70dafd7a 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -154,6 +154,7 @@ "Result": "Result", "SeeTheDocumentForMoreInformation": "See the {0} document for more information", "IndexPageHeroSection": "open sourceWeb Application
Framework
for asp.net core", - "UiFramework": "UI Framework" + "UiFramework": "UI Framework", + "EmailAddress": "Email address" } } \ No newline at end of file diff --git a/build-all.ps1 b/build-all.ps1 index 023cbdeb4a..649abc5f8c 100644 --- a/build-all.ps1 +++ b/build-all.ps1 @@ -21,7 +21,6 @@ $solutionPaths = ( "modules/client-simulation", "templates/module/aspnet-core", "templates/app/aspnet-core", - "samples/MicroserviceDemo", "abp_io/AbpIoLocalization" ) diff --git a/docs/cs/CLI.md b/docs/cs/CLI.md index f3f2d21a96..cbf8006ad2 100644 --- a/docs/cs/CLI.md +++ b/docs/cs/CLI.md @@ -34,26 +34,32 @@ Příklad: abp new Acme.BookStore ```` -* Acme.BookStore je tady název řešení. +* `Acme.BookStore` je tady název řešení. * Běžná konvence je nazvat řešení stylem *VaseSpolecnost.VasProjekt*. Nicméně můžete použít i jiné pojmenování jako *VasProjekt* (jednostupňový jmenný prostor) nebo *VaseSpolecnost.VasProjekt.VasModul* (třístupňový jmenný prostor). #### Možnosti -* `--template` nebo `-t`: Určuje název šablony. Výchozí šablona je `mvc`. Dostupné šablony: - * `mvc` (výchozí): ASP.NET Core [MVC aplikační šablona](Startup-Templates/Mvc.md). Dodatečné možnosti: - * `--database-provider` nebo `-d`: Určuje poskytovatele databáze. Vychozí poskytovatel je `ef`. Dostupní poskytovatelé: +* `--template` nebo `-t`: Určuje název šablony. Výchozí šablona je `app`, která generuje webovou aplikaci. Dostupné šablony: + * `app` (výchozí): [Aplikační šablona](Startup-Templates/Application.md). Dodatečné možnosti: + * `--ui` nebo `-u`: Určuje UI framework. Výchozí framework je `mvc`. Dostupné frameworky: + * `mvc`: ASP.NET Core MVC. Pro tuto šablonu jsou dostupné dodatečné možnosti: + * `--tiered`: Vytvoří stupňovité řešení, kde jsou vrstvy Web a Http API fyzicky odděleny. Pokud není uvedeno, tak vytvoří vrstvené řešení, které je méně složité a vhodné pro většinu scénářů. + * `angular`: Angular. Pro tuto šablonu jsou dostupné dodatečné možnosti: + * `--separate-identity-server`: Oddělí identity server aplikaci od API host aplikace. Pokud není uvedeno, bude na straně serveru jediný koncový bod. + * `--database-provider` nebo `-d`: Určuje poskytovatele databáze. Výchozí poskytovatel je `ef`. Dostupní poskytovatelé: * `ef`: Entity Framework Core. * `mongodb`: MongoDB. - * `--tiered`: Vytvoří stupňovité řešení, kde jsou vrstvy Web a Http API fyzicky odděleny. Pokud není uvedeno tak vytvoří vrstvené řešení, které je méně složité a vhodné pro většinu scénářů. - * `mvc-module`: ASP.NET Core [MVC modulová šablona](Startup-Templates/Mvc-Module.md). Dodatečné možnosti: - * `--no-ui`: Určuje, že nebude zahrnuto uživatelské rozhraní. To umožňuje vytvářet moduly pouze pro služby (a.k.a. mikroslužby - bez UI). + * `module`: [Šablona modulu](Startup-Templates/Module.md). Dodatečné možnosti: + * `--no-ui`: Určuje nezahrnutí uživatelského rozhraní. Umožňuje vytvořit moduly pouze pro služby (a.k.a. mikroslužby - bez uživatelského rozhraní). * `--output-folder` nebo `-o`: Určuje výstupní složku. Výchozí hodnota je aktuální adresář. +* `--version` nebo `-v`: Určuje verzi ABP & šablony. Může to být [štítek vydání](https://github.com/abpframework/abp/releases) nebo [název větve](https://github.com/abpframework/abp/branches). Pokud není uvedeno, používá nejnovější vydání. Většinou budete chtít použít nejnovější verzi. + ### add-package -Přidá nový balíček ABP do projektu pomocí, +Přidá ABP balíček do projektu, -* Přidání souvisejícícho nuget balíčku jako závislost do projektu. +* Přidáním souvisejícícho nuget balíčku jako závislost do projektu. * Přidáním `[DependsOn(...)]` atributu k modulové tříde v projektu (podívejte se na [dokument vývoje modulu](Module-Development-Basics.md)). > Všimněte si, že přidaný modul může vyžadovat další konfiguraci, která je obecně uvedena v dokumentaci příslušného balíčku. @@ -78,7 +84,7 @@ abp add-package Volo.Abp.MongoDB ### add-module -Přidá více-balíčkový modul k řešení tím, že najde všechny balíčky modulu, vyhledá související projekty v řešení a přidá každý balíček do odpovídajícího projektu v řešení. +Přidá [více-balíčkový aplikační modul](Modules/Index) k řešení tím, že najde všechny balíčky modulu, vyhledá související projekty v řešení a přidá každý balíček do odpovídajícího projektu v řešení. > Modul se obecně skládá z několika balíčků (z důvodu vrstvení, různých možností poskytovatele databáze nebo jiných důvodů). Použití příkazu `add-module` dramaticky zjednodušuje přidání modulu do řešení. Každý modul však může vyžadovat další konfiguraci, která je obecně uvedena v dokumentaci příslušného modulu. @@ -100,6 +106,7 @@ abp add-module Volo.Blogging * `--solution` nebo `-s`: Určuje cestu k řešení (.sln). Pokud není zadáno, CLI se pokusí najít soubor .sln v aktuálním adresáři. * `--skip-db-migrations`: Pro poskytovatele databáze EF Core automaticky přidá nový kód první migrace (`Add-Migration`) a v případě potřeby aktualizuje databázi (`Update-Database`). Tuto možnost určete k vynechání této operace. +* `-sp` nebo `--startup-project`: Relativní cesta ke složce spouštěcího projektu. Výchozí hodnota je aktuální adresář. ### update @@ -117,6 +124,8 @@ abp update [možnosti] #### Možnosti * `--include-previews` nebo `-p`: Zahrne náhledové, beta a rc balíčky při kontrole nových verzí. +* `--npm`: Aktualizuje pouze balíčky NPM. +* `--nuget`: Aktualizuje pouze balíčky NuGet. ### help diff --git a/docs/cs/Contribution/Index.md b/docs/cs/Contribution/Index.md index 3716d8dc76..fd7f65d14e 100644 --- a/docs/cs/Contribution/Index.md +++ b/docs/cs/Contribution/Index.md @@ -35,7 +35,7 @@ Existuje několik základních dokumentů, které je třeba přeložit než bude * Tutoriály * CLI -Nový jazyk je publikován jakmile budou minimálně tyto překlady dokončeny. +Nový jazyk je publikován jakmile jsou minimálně tyto překlady dokončeny. ### Lokalizace zdrojů diff --git a/docs/cs/Getting-Started-AspNetCore-MVC-Template.md b/docs/cs/Getting-Started-AspNetCore-MVC-Template.md index 953e99b9f2..b1cb3bb57e 100644 --- a/docs/cs/Getting-Started-AspNetCore-MVC-Template.md +++ b/docs/cs/Getting-Started-AspNetCore-MVC-Template.md @@ -37,7 +37,7 @@ Otevřete řešení ve **Visual Studio**: Řešení má vrstvenou strukturu (založenou na [Domain Driven Design](Domain-Driven-Design.md)) a obsahuje projekty jednotkovových a integračních testů předkonfigurované pro práci s **EF Core** & **SQLite in-memory** databází. -> Podívejte se na [dokument šablony MVC aplikace](Startup-Templates/Mvc.md) k detailnímu pochopení struktury řešení. +> Podívejte se na [dokument šablony aplikace](Startup-Templates/Application.md) k detailnímu pochopení struktury řešení. ### Connection string databáze diff --git a/docs/cs/Index.md b/docs/cs/Index.md index 3a86344660..ac13bcbdb6 100644 --- a/docs/cs/Index.md +++ b/docs/cs/Index.md @@ -6,7 +6,7 @@ K procházení dokumentace využijte navigační nabídky vlevo. ## Stav projektu -ABP je **novou generací** open source frameworku [ASP.NET Boilerplate](https://aspnetboilerplate.com/). V současné době je v ranné fázi a není připraven k ostrému nasazení. Na dokumentaci se stále pracuje a ještě zdaleka není dokončena. +ABP je **novou generací** open source frameworku [ASP.NET Boilerplate](https://aspnetboilerplate.com/). V současné době je v náhledové fázi a není připraven k ostrému nasazení. Na dokumentaci se stále pracuje a ještě zdaleka není dokončena. Pro aplikace na krátkodobé a ostré nasazení je doporučeno použít [ASP.NET Boilerplate](https://aspnetboilerplate.com/) framework, který je bohatý na funkce, vyspělý, aktivně udržovaný a aktuální. @@ -14,7 +14,8 @@ Pro aplikace na krátkodobé a ostré nasazení je doporučeno použít [ASP.NET Nejsnazší cestou jak začít nový projekt s ABP je užití startovací šablony: -* [ASP.NET Core MVC Šablona](Getting-Started-AspNetCore-MVC-Template.md) +* [ASP.NET Core MVC (Razor Pages) UI Šablona](Getting-Started-AspNetCore-MVC-Template.md) +* [Angular UI Šablona](Getting-Started-Angular-Template.md) Pokud chcete začít od nuly (s prázdným projektem) tak manuálně nainstalujte ABP Framework s pomocí následujících tutoriálů: diff --git a/docs/cs/docs-nav.json b/docs/cs/docs-nav.json index 2d6b8f7ef8..8560190492 100644 --- a/docs/cs/docs-nav.json +++ b/docs/cs/docs-nav.json @@ -7,8 +7,12 @@ "text": "Ze startovacích šablon", "items": [ { - "text": "ASP.NET Core MVC", + "text": "Aplikace s MVC (Razor Pages) UI", "path": "Getting-Started-AspNetCore-MVC-Template.md" + }, + { + "text": "Aplikace s Angular UI", + "path": "Getting-Started-Angular-Template.md" } ] }, @@ -34,8 +38,12 @@ "text": "Vývoj aplikace", "items": [ { - "text": "S ASP.NET Core MVC", + "text": "S ASP.NET Core MVC UI", "path": "Tutorials/AspNetCore-Mvc/Part-I.md" + }, + { + "text": "S Angular UI", + "path": "Tutorials/Angular/Part-I.md" } ] } @@ -264,6 +272,20 @@ } ] }, + { + "text": "Startovací šablony", + "path": "Startup-Templates/Index.md", + "items": [ + { + "text": "Aplikace", + "path": "Startup-Templates/Application.md" + }, + { + "text": "Modul", + "path": "Startup-Templates/Module.md" + } + ] + }, { "text": "Vzorky", "items": [ diff --git a/docs/cs/images/MonthlyProfitWidgetFiles.png b/docs/cs/images/MonthlyProfitWidgetFiles.png new file mode 100644 index 0000000000..e1e9d316f5 Binary files /dev/null and b/docs/cs/images/MonthlyProfitWidgetFiles.png differ diff --git a/docs/cs/images/bookstore-swagger-ui-host.png b/docs/cs/images/bookstore-swagger-ui-host.png new file mode 100644 index 0000000000..74ff73f7e3 Binary files /dev/null and b/docs/cs/images/bookstore-swagger-ui-host.png differ diff --git a/docs/cs/images/bookstore-visual-studio-solution-for-spa.png b/docs/cs/images/bookstore-visual-studio-solution-for-spa.png new file mode 100644 index 0000000000..5a5a283c7d Binary files /dev/null and b/docs/cs/images/bookstore-visual-studio-solution-for-spa.png differ diff --git a/docs/cs/images/dashboard1.png b/docs/cs/images/dashboard1.png new file mode 100644 index 0000000000..4102bbd4c1 Binary files /dev/null and b/docs/cs/images/dashboard1.png differ diff --git a/docs/en/Application-Services.md b/docs/en/Application-Services.md index de9fc1f0df..bed14370f5 100644 --- a/docs/en/Application-Services.md +++ b/docs/en/Application-Services.md @@ -146,7 +146,7 @@ public interface IBookAppService : IApplicationService `BookDto` is a simple [DTO](Data-Transfer-Objects.md) class defined as below: ````csharp -[AutoMapFrom(typeof(Book))] //Defines the mapping +[AbpAutoMapFrom(typeof(Book))] //Defines the mapping public class BookDto { public Guid Id { get; set; } @@ -159,7 +159,7 @@ public class BookDto } ```` -* `BookDto` defines `[AutoMapFrom(typeof(Book))]` attribute to create the object mapping from `Book` to `BookDto`. +* `BookDto` defines `[AbpAutoMapFrom(typeof(Book))]` attribute to create the object mapping from `Book` to `BookDto`. Then you can implement the `GetAsync` method as shown below: @@ -248,7 +248,7 @@ public interface IAsyncCrudAppService< DTO classes used in this example are `BookDto` and `CreateUpdateBookDto`: ````csharp -[AutoMapFrom(typeof(Book))] +[AbpAutoMapFrom(typeof(Book))] public class BookDto : AuditedEntityDto { public string Name { get; set; } @@ -258,7 +258,7 @@ public class BookDto : AuditedEntityDto public float Price { get; set; } } -[AutoMapTo(typeof(Book))] +[AbpAutoMapTo(typeof(Book))] public class CreateUpdateBookDto { [Required] diff --git a/docs/en/Best-Practices/Index.md b/docs/en/Best-Practices/Index.md index 93d6409909..1a48c6b46b 100644 --- a/docs/en/Best-Practices/Index.md +++ b/docs/en/Best-Practices/Index.md @@ -23,5 +23,5 @@ Also, this guide is mostly usable for general **application development**. * [Data Transfer Objects](Data-Transfer-Objects.md) * Data Access * [Entity Framework Core Integration](Entity-Framework-Core-Integration.md) - * [MongoDB Integration](MongoDB-Integration.md) + * [MongoDB Integration](MongoDB-Integration.md) diff --git a/docs/en/Best-Practices/PostgreSQL-Integration.md b/docs/en/Best-Practices/PostgreSQL-Integration.md new file mode 100644 index 0000000000..93c178d07c --- /dev/null +++ b/docs/en/Best-Practices/PostgreSQL-Integration.md @@ -0,0 +1,35 @@ +## Entity Framework Core PostgreSQL Integration + +> See [Entity Framework Core Integration document](../Entity-Framework-Core.md) for the basics of the EF Core integration. + +### EntityFrameworkCore Project Update + +- In `Acme.BookStore.EntityFrameworkCore` project replace package `Volo.Abp.EntityFrameworkCore.SqlServer` with `Volo.Abp.EntityFrameworkCore.PostgreSql` +- Update to use PostgreSQL in `BookStoreEntityFrameworkCoreModule`. +- Replace the `AbpEntityFrameworkCoreSqlServerModule` with the `AbpEntityFrameworkCorePostgreSqlModule` +- Replace the `options.UseSqlServer()` with the `options.UsePostgreSql()` +- In other projects update the PostgreSQL connection string in necessary `appsettings.json` files. + +#### Delete Existing Migrations + +Delete all existing migration files (including `DbContextModelSnapshot`) + +![postgresql-delete-initial-migrations](images/postgresql-delete-initial-migrations.png) + +#### Regenerate Initial Migration & Update the Database + +Set the correct startup project (usually a web project), +Open the **Package Manager Console** (Tools -> Nuget Package Manager -> Package Manager Console), select the `Acme.BookStore.EntityFrameworkCore.DbMigrations` as the **Default project** and execute the following command: + +Run `Add-Migration` command. +```` +PM> Add-Migration Initial +```` + +Then execute the `Update-Database` command to update the database schema: + +```` +PM> Update-Database +```` + +![postgresql-update-database](images/postgresql-update-database.png) diff --git a/docs/en/Best-Practices/images/postgresql-delete-initial-migrations.png b/docs/en/Best-Practices/images/postgresql-delete-initial-migrations.png new file mode 100644 index 0000000000..39d9e6dedf Binary files /dev/null and b/docs/en/Best-Practices/images/postgresql-delete-initial-migrations.png differ diff --git a/docs/en/Best-Practices/images/postgresql-update-database.png b/docs/en/Best-Practices/images/postgresql-update-database.png new file mode 100644 index 0000000000..02b61ef6a3 Binary files /dev/null and b/docs/en/Best-Practices/images/postgresql-update-database.png differ diff --git a/docs/en/Blog-Posts/2019-08-16 v0_19_Release/Post.md b/docs/en/Blog-Posts/2019-08-16 v0_19_Release/Post.md new file mode 100644 index 0000000000..eec70c5566 --- /dev/null +++ b/docs/en/Blog-Posts/2019-08-16 v0_19_Release/Post.md @@ -0,0 +1,46 @@ +# ABP v0.19 Release With New Angular UI + +ABP v0.19 has been released with [90 issues](https://github.com/abpframework/abp/milestone/17?closed=1) resolved and [650+ commits](https://github.com/abpframework/abp/compare/0.18.1...0.19.0) pushed. + +## New Features + +### Angular UI + +Finally, ABP has a **SPA UI** option with the latest [Angular](https://angular.io/) framework. Angular integration was not simply creating a startup template. + +* Created a base infrastructure to handle ABP's modularity, theming and some other features. This infrastructure has been deployed as [NPM packages](https://github.com/abpframework/abp/tree/dev/npm/ng-packs/packages). +* Created Angular UI packages for the modules like account, identity and tenant-management. +* Created a minimal startup template that authenticates using IdentityServer and uses the ASP.NET Core backend. This template uses the packages mentioned above. +* Worked on the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI) and the [download page](https://abp.io/get-started) to be able to generate projects with the new UI option. +* Created a [tutorial](https://docs.abp.io/en/abp/latest/Tutorials/Angular/Part-I) to jump start with the new UI option. + +We've created the template, document and infrastructure based on the latest Angular tools and trends: + +* Uses [NgBootstrap](https://ng-bootstrap.github.io/) and [PrimeNG](https://www.primefaces.org/primeng/) as the UI component libraries. You can use your favorite library, no problem, but pre-built modules work with these libraries. +* Uses [NGXS](https://ngxs.gitbook.io/ngxs/) as the state management library. + +Angular was the first SPA UI option, but it is not the last. After v1.0 release, we will start to work on a second UI option. Not decided yet, but candidates are Blazor, React and Vue.js. Waiting your feedback. You can thumb up using the following issues: + +* [Blazor](https://github.com/abpframework/abp/issues/394) +* [Vue.js](https://github.com/abpframework/abp/issues/1168) +* [React](https://github.com/abpframework/abp/issues/1638) + +### Widget System + +[Widget system](https://docs.abp.io/en/abp/latest/AspNetCore/Widgets) allows to **define and reuse** widgets for ASP.NET Core MVC applications. Widgets may have their own script and style resources and dependencies to 3rd-party libraries which are managed by the ABP framework. + +### Others + +We've solved many bugs and worked on existing features based on the community feedback. See the [v0.19 milestone](https://github.com/abpframework/abp/milestone/17?closed=1) for all the closed issues. + +## Road Map + +We had decided to wait for **ASP.NET Core 3.0** final release. Microsoft has announced to released it at [.NET Conf](https://www.dotnetconf.net/), between 23-25 September. + +We have planned to finalize our work and move to ASP.NET Core 3.0 (with preview or RC) before its release. Once Microsoft releases it, we will immediately start to upgrade and test with the final release. + +So, you can expect ABP **v1.0** to be released in the **first half of the October**. We are very excited and working hard on it. + +You can follow the progress from [the GitHub milestones](https://github.com/abpframework/abp/milestones). + +We will not add major features until v1.0. \ No newline at end of file diff --git a/docs/en/CLI.md b/docs/en/CLI.md index f931d3688f..ced5b5817f 100644 --- a/docs/en/CLI.md +++ b/docs/en/CLI.md @@ -123,6 +123,8 @@ abp update [options] #### Options * `--include-previews` or `-p`: Includes preview, beta and rc packages while checking the latest versions. +* `--npm`: Only updates NPM packages. +* `--nuget`: Only updates NuGet packages. ### help diff --git a/docs/en/Dapper.md b/docs/en/Dapper.md new file mode 100644 index 0000000000..d8b17838eb --- /dev/null +++ b/docs/en/Dapper.md @@ -0,0 +1,61 @@ +# Dapper Integration + +Because Dapper's idea is that the sql statement takes precedence, and mainly provides some extension methods for the `IDbConnection` interface. + +Abp does not encapsulate too many functions for Dapper. Abp Dapper provides a `DapperRepository` base class based on Abp EntityFrameworkCore, which provides the `IDbConnection` and `IDbTransaction` properties required by Dapper. + +These two properties can work well with [Unit-Of-Work](Unit-Of-Work.md). + +## Installation + +Please install and configure EF Core according to [EF Core's integrated documentation](Entity-Framework-Core.md). + +`Volo.Abp.Dapper` is the main nuget package for the Dapper integration. Install it to your project (for a layered application, to your data/infrastructure layer): + +```shell +Install-Package Volo.Abp.Dapper +``` + +Then add `AbpDapperModule` module dependency (`DependsOn` attribute) to your [module](Module-Development-Basics.md): + +````C# +using Volo.Abp.Dapper; +using Volo.Abp.Modularity; + +namespace MyCompany.MyProject +{ + [DependsOn(typeof(AbpDapperModule))] + public class MyModule : AbpModule + { + //... + } +} +```` + +## Implement Dapper Repository + +The following code implements the `Person` repository, which requires EF Core's `DbContext` (MyAppDbContext). You can inject `PersonDapperRepository` to call its methods. + +`DbConnection` and `DbTransaction` are from the `DapperRepository` base class. + +```C# +public class PersonDapperRepository : DapperRepository, ITransientDependency +{ + public PersonDapperRepository(IDbContextProvider dbContextProvider) + : base(dbContextProvider) + { + } + + public virtual async Task> GetAllPersonNames() + { + return (await DbConnection.QueryAsync("select Name from People", transaction: DbTransaction)) + .ToList(); + } + + public virtual async Task UpdatePersonNames(string name) + { + return await DbConnection.ExecuteAsync("update People set Name = @NewName", new { NewName = name }, + DbTransaction); + } +} +``` diff --git a/docs/en/Index.md b/docs/en/Index.md index d911bf66e2..b40efffb9d 100644 --- a/docs/en/Index.md +++ b/docs/en/Index.md @@ -6,7 +6,7 @@ Explore the left navigation menu to deep dive in the documentation. ## Project Status -ABP is the **next generation** of the open source [ASP.NET Boilerplate](https://aspnetboilerplate.com/) framework. It's currently in early preview stage and not ready to use in production. The documentation is still in progress and it is far from complete. +ABP is the **next generation** of the open source [ASP.NET Boilerplate](https://aspnetboilerplate.com/) framework. It's currently in preview stage and not ready to use in production. The documentation is still in progress and it is far from complete. For short-term and production level applications, it's suggested to use [ASP.NET Boilerplate](https://aspnetboilerplate.com/) framework which has rich feature set, mature, actively maintained and up-to-date. @@ -14,7 +14,8 @@ For short-term and production level applications, it's suggested to use [ASP.NET Easiest way to start a new project with ABP is to use the startup templates: -* [ASP.NET Core MVC Template](Getting-Started-AspNetCore-MVC-Template.md) +* [ASP.NET Core MVC (Razor Pages) UI Template](Getting-Started-AspNetCore-MVC-Template.md) +* [Angular UI Template](Getting-Started-Angular-Template.md) If you want to start from scratch (with an empty project) then manually install the ABP Framework and use the following tutorials: diff --git a/docs/en/Startup-Templates/Application.md b/docs/en/Startup-Templates/Application.md index 83950ddd0e..1fbf1be8e2 100644 --- a/docs/en/Startup-Templates/Application.md +++ b/docs/en/Startup-Templates/Application.md @@ -5,7 +5,8 @@ This template provides a layered application structure based on the [Domain Driven Design](../Domain-Driven-Design.md) (DDD) practices. This document explains the solution structure and projects in details. If you want to start quickly, follow the guides below: * See [Getting Started With the ASP.NET Core MVC Template](../Getting-Started-AspNetCore-MVC-Template.md) to create a new solution and run it for this template (uses MVC as the UI framework and Entity Framework Core as the database provider). -* See the [ASP.NET Core MVC Tutorial](../Tutorials/AspNetCore-Mvc/Part-I.md) to learn how to develop applications using this template (uses MVC as the UI framework and Entity Framework Core as the database provider). +* See the [ASP.NET Core MVC Application Development Tutorial](../Tutorials/AspNetCore-Mvc/Part-I.md) to learn how to develop applications using this template (uses MVC as the UI framework and Entity Framework Core as the database provider). +* See the [Angular Application Development Tutorial](../Tutorials/Angular/Part-I.md) to learn how to develop applications using this template (uses Angular as the UI framework and MongoDB as the database provider). ## How to Start With? diff --git a/docs/en/Tutorials/Angular/Part-I.md b/docs/en/Tutorials/Angular/Part-I.md index 3a7baf1de4..88b5c8539e 100644 --- a/docs/en/Tutorials/Angular/Part-I.md +++ b/docs/en/Tutorials/Angular/Part-I.md @@ -8,6 +8,7 @@ This is the first part of the Angular tutorial series. See all parts: - **Part I: Create the project and a book list page (this tutorial)** - [Part II: Create, Update and Delete books](Part-II.md) +- [Part III: Integration Tests](Part-III.md) You can access to the **source code** of the application from the [GitHub repository](https://github.com/abpframework/abp/tree/dev/samples/BookStore-Angular-MongoDb). @@ -19,7 +20,7 @@ Create a new project named `Acme.BookStore` by selecting the Angular as the UI f This is how the layered solution structure looks after it's created: -![bookstore-backend-solution](images\bookstore-backend-solution-v2.png) +![bookstore-backend-solution](images/bookstore-backend-solution-v2.png) > You can see the [Application template document](../../Startup-Templates/Application.md) to understand the solution structure in details. However, you will understand the basics with this tutorial. @@ -341,13 +342,13 @@ Run `yarn start`, wait Angular to run the application and open `http://localhost Open the `app-routing.module.ts` and replace `books` as shown below: -```typescript -import { LayoutApplicationComponent } from '@abp/ng.theme.basic';- +```js +import { ApplicationLayoutComponent } from '@abp/ng.theme.basic';- //... { path: 'books', - component: LayoutApplicationComponent, + component: ApplicationLayoutComponent, loadChildren: () => import('./books/books.module').then(m => m.BooksModule), data: { routes: { @@ -357,7 +358,7 @@ import { LayoutApplicationComponent } from '@abp/ng.theme.basic';- }, ``` -`LayoutApplicationComponent` configuration sets the application layout to the new page. If you would like to see your route on the navigation bar (main menu) you must also add the `data` object with `name` property in your route. +`ApplicationLayoutComponent` configuration sets the application layout to the new page. If you would like to see your route on the navigation bar (main menu) you must also add the `data` object with `name` property in your route. ![initial-books-page](images/bookstore-initial-books-page-with-layout.png) @@ -379,7 +380,7 @@ yarn ng generate component books/book-list Import the `SharedModule` to the `BooksModule` to reuse some components and services defined in: -```typescript +```js import { SharedModule } from '../shared/shared.module'; @NgModule({ @@ -394,7 +395,7 @@ export class BooksModule {} Then, update the `routes` in the `books-routing.module.ts` to add the new book-list component: -```typescript +```js import { BookListComponent } from './book-list/book-list.component'; const routes: Routes = [ @@ -424,7 +425,7 @@ yarn ng generate ngxs-schematic:state books This command creates several new files and edits `app.modules.ts` to import the `NgxsModule` with the new state: -```typescript +```js // app.module.ts import { BooksState } from './store/states/books.state'; @@ -445,19 +446,20 @@ First, create data types to map data returning from the backend (you can check s Modify the `books.ts` as shown below: -```typescript -import { ABP } from '@abp/ng.core'; - +```js export namespace Books { export interface State { books: Response; } - export type Response = ABP.PagedResponse; + export interface Response { + items: Book[]; + totalCount: number; + } export interface Book { name: string; - type: Type; + type: BookType; publishDate: string; price: number; lastModificationTime: string; @@ -493,11 +495,11 @@ yarn ng generate service books/shared/books ![service-terminal-output](images/bookstore-service-terminal-output.png) -Modify `book.service.ts` as shown below: +Modify `books.service.ts` as shown below: -```typescript +```js import { Injectable } from '@angular/core'; -import { RestService, Rest } from '@abp/ng.core'; +import { RestService } from '@abp/ng.core'; import { Books } from '../../store/models'; import { Observable } from 'rxjs'; @@ -505,15 +507,13 @@ import { Observable } from 'rxjs'; providedIn: 'root', }) export class BooksService { - constructor(private rest: RestService) {} + constructor(private restService: RestService) {} get(): Observable { - const request: Rest.Request = { + return this.restService.request({ method: 'GET', - url: '/api/app/book', - }; - - return this.rest.request(request); + url: '/api/app/book' + }); } } ``` @@ -522,7 +522,7 @@ Added the `get` method to get the list of books by performing an HTTP request to Replace `books.actions.ts` content as shown below: -```typescript +```js export class GetBooks { static readonly type = '[Books] Get'; } @@ -532,7 +532,7 @@ export class GetBooks { Open the `books.state.ts` and change the file as shown below: -```typescript +```js import { State, Action, StateContext, Selector } from '@ngxs/store'; import { GetBooks } from '../actions/books.actions'; import { Books } from '../models/books'; @@ -545,18 +545,18 @@ import { tap } from 'rxjs/operators'; }) export class BooksState { @Selector() - static getBooks({ books }: Books.State) { - return books.items || []; + static getBooks(state: Books.State) { + return state.books.items || []; } constructor(private booksService: BooksService) {} @Action(GetBooks) - get({ patchState }: StateContext) { + get(ctx: StateContext) { return this.booksService.get().pipe( - tap(books => { - patchState({ - books, + tap(booksResponse => { + ctx.patchState({ + books: booksResponse, }); }), ); @@ -572,7 +572,7 @@ Added the `GetBooks` action that uses the `BookService` defined above to get the Modify the `book-list.component.ts` as shown below: -```typescript +```js import { Component, OnInit } from '@angular/core'; import { Store, Select } from '@ngxs/store'; import { BooksState } from '../../store/states'; @@ -597,10 +597,9 @@ export class BookListComponent implements OnInit { ngOnInit() { this.loading = true; - this.store.dispatch(new GetBooks()) - .subscribe(() => { - this.loading = false - }; + this.store.dispatch(new GetBooks()).subscribe(() => { + this.loading = false; + }); } } ``` diff --git a/docs/en/Tutorials/Angular/Part-II.md b/docs/en/Tutorials/Angular/Part-II.md index 48a36ae2c9..ed6afcb947 100644 --- a/docs/en/Tutorials/Angular/Part-II.md +++ b/docs/en/Tutorials/Angular/Part-II.md @@ -6,6 +6,7 @@ This is the second part of the Angular tutorial series. See all parts: - [Part I: Create the project and a book list page](Part-I.md) - **Part II: Create, Update and Delete books (this tutorial)** +- [Part III: Integration Tests](Part-III.md) You can access to the **source code** of the application from the [GitHub repository](https://github.com/abpframework/abp/tree/dev/samples/BookStore-Angular-MongoDb). @@ -17,7 +18,7 @@ In this section, you will learn how to create a new modal dialog form to create Create an interface, named `CreateUpdateBookInput` in the `books.ts` as shown below: -```typescript +```js export namespace Books { //... export interface CreateUpdateBookInput { @@ -35,23 +36,23 @@ export namespace Books { Open the `books.service.ts` and add a new method, named `create` to perform an HTTP POST request to the server: -```typescript -create(body: Books.CreateUpdateBookInput): Observable { - const request: Rest.Request = { +```js +create(createBookInput: Books.CreateUpdateBookInput): Observable { + return this.restService.request({ method: 'POST', url: '/api/app/book', - body, - }; - - return this.rest.request(request); + body: createBookInput + }); } ``` +- `restService.request` function gets generic parameters for the types sent to and received from the server. This example sends a `CreateUpdateBookInput` object and receives a `Book` object (you can set `void` for request or return type if not used). + #### State Definitions -Add the `CreateUpdateBook` action to `books.actions.ts` as shown below: +Add the `CreateUpdateBook` action to the `books.actions.ts` as shown below: -```typescript +```js import { Books } from '../models'; export class CreateUpdateBook { @@ -60,24 +61,25 @@ export class CreateUpdateBook { } ``` - - Open `books.state.ts` and define the `save` method that will listen to a `CreateUpdateBook` action to create a book: -```typescript - @Action(CreateUpdateBook) - save({ dispatch }: StateContext, { payload }: CreateUpdateBook) { - return this.booksService - .create(payload) - .pipe(switchMap(() => dispatch(new GetBooks()))); - } +```js +import { ... , CreateUpdateBook } from '../actions/books.actions'; +import { ... , switchMap } from 'rxjs/operators'; +//... +@Action(CreateUpdateBook) +save(ctx: StateContext, action: CreateUpdateBook) { + return this.booksService + .create(action.payload) + .pipe(switchMap(() => ctx.dispatch(new GetBooks()))); +} ``` When the `SaveBook` action dispatched, the save method is executed. It call `create` method of the `BooksService` defined before. After the service call, `BooksState` dispatches the `GetBooks` action to get books again from the server to refresh the page. #### Add a Modal to BookListComponent -Open the `book-list.component.html` and add the `abp-modal` to show/hide the book form. +Open the `book-list.component.html` and add the `abp-modal` to show/hide the modal to create a new book. ```html @@ -97,7 +99,7 @@ Open the `book-list.component.html` and add the `abp-modal` to show/hide the boo `abp-modal` is a pre-built component to show modals. While you could use another approach to show a modal, `abp-modal` provides additional benefits. -Add a button, labeled `New book` to show the modal. +Add a button, labeled `New book` to show the modal: ```html
@@ -107,21 +109,21 @@ Add a button, labeled `New book` to show the modal.
-
``` -Open the `book-list.component.ts` and add `isModalOpen` variable and `onAdd` method to show/hide the modal. +Open the `book-list.component.ts` and add `isModalOpen` variable and `createBook` method to show/hide the modal. -```typescript +```js isModalOpen = false; //... -onAdd() { +createBook() { this.isModalOpen = true; } ``` @@ -134,7 +136,7 @@ onAdd() { Add a `form` variable and inject a `FormBuilder` service to the `book-list.component.ts` as shown below (remember add the import statement). -```typescript +```js import { FormGroup, FormBuilder } from '@angular/forms'; form: FormGroup; @@ -149,7 +151,7 @@ constructor( Add the `buildForm` method to create book form. -```typescript +```js buildForm() { this.form = this.fb.group({ name: ['', Validators.required], @@ -160,19 +162,19 @@ buildForm() { } ``` -- The `group` method of `FormBuilder` creates a `FormGroup`. -- Added `Validators.required` static method that validation of form element. +- The `group` method of `FormBuilder` (`fb`) creates a `FormGroup`. +- Added `Validators.required` static method that validates the related form element. -Modify the `onAdd` method as shown below: +Modify the `createBook` method as shown below: -```typescript -onAdd() { +```js +createBook() { this.buildForm(); this.isModalOpen = true; } ``` -### Create the DOM Elements of the Form +#### Create the DOM Elements of the Form Open `book-list.component.html` and add the form in the body template of the modal. @@ -212,30 +214,34 @@ Open `book-list.component.html` and add the form in the body template of the mod ``` -TODO: Add a short description. +- This template creates a form with Name, Price, Type and Publish date fields. > We've used [NgBootstrap datepicker](https://ng-bootstrap.github.io/#/components/datepicker/overview) in this component. -Open the `book-list.component.ts` and then add the `bookTypes`. +Open the `book-list.component.ts` and then create an array, named `bookTypeArr`: -```typescript +```js //... form: FormGroup; -bookTypeArr = Object.keys(Books.BookType).filter(bookType => typeof this.booksType[bookType] === 'number'); +bookTypeArr = Object.keys(Books.BookType).filter( + bookType => typeof this.booksType[bookType] === 'number' +); ``` -The `bookTypes` variable added to generate array from `BookType` enum. The `bookTypes` equals like this: +The `bookTypeArr` contains the fields of the `BookType` enum. Resulting array is shown below: ```js ['Adventure', 'Biography', 'Dystopia', 'Fantastic' ...] ``` -### Add the Datepicker Requirements +This array was used in the previous form template (in the `ngFor` loop). + +#### Datepicker Requirements -Import `NgbDatepickerModule` to the `books.module.ts`. +You need to import `NgbDatepickerModule` to the `books.module.ts`: -```typescript +```js import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap'; @NgModule({ @@ -247,27 +253,46 @@ import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap'; export class BooksModule {} ``` -Open the `book-list.component.html` and then add `providers` as shown below: +Then open the `book-list.component.ts` and add `providers` as shown below: + +```js +import { NgbDateNativeAdapter, NgbDateAdapter } from '@ng-bootstrap/ng-bootstrap'; -```typescript @Component({ // ... - styleUrls: ['./book-list.component.scss'], providers: [{ provide: NgbDateAdapter, useClass: NgbDateNativeAdapter }], }) export class BookListComponent implements OnInit { // ... ``` -> The `NgbDateAdapter` convert Datepicker value type to `Date` type. See the [datepicker adapters](https://ng-bootstrap.github.io/#/components/datepicker/overview) for more details. +> The `NgbDateAdapter` converts Datepicker value to `Date` type. See the [datepicker adapters](https://ng-bootstrap.github.io/#/components/datepicker/overview) for more details. ![new-book-form](images/bookstore-new-book-form.png) -### Create a New Book +#### Saving the Book + +Open the `book-list.component.html` and add an `abp-button` to save the form. + +```html + + + + +``` + +This adds a save button to the bottom area of the modal: + +![bookstore-new-book-form-v2](images/bookstore-new-book-form-v2.png) -Add the `save` method to `BookListComponent` +Then define a `save` method in the `BookListComponent`: -```typescript +```js save() { if (this.form.invalid) { return; @@ -280,72 +305,75 @@ save() { } ``` -TODO: description ?? - -Then, open the `book-list.component.html` and add the `abp-button` for the run `save` method. - -```html - - - Save - -``` - -Now, You can add a new book. - -![bookstore-new-book-form-v2](images/bookstore-new-book-form-v2.png) +### Updating An Existing Book -### Add HTTP GET and PUT Methods +#### BooksService -TODO: Description +Open the `books.service.ts` and then add the `getById` and `update` methods. -Open the `book.service.ts` and then add the `getById` and `update` methods. - -```typescript +```js getById(id: string): Observable { - const request: Rest.Request = { + return this.restService.request({ method: 'GET', - url: `/api/app/book/${id}`, - }; - - return this.rest.request(request); + url: `/api/app/book/${id}` + }); } -update(body: Books.CreateUpdateBookInput, id: string): Observable { - const request: Rest.Request = { +update(updateBookInput: Books.CreateUpdateBookInput, id: string): Observable { + return this.restService.request({ method: 'PUT', url: `/api/app/book/${id}`, - body, - }; + body: updateBookInput + }); +} +``` - return this.rest.request(request); +#### CreateUpdateBook Action + +Open the `books.actins.ts` and add `id` parameter to the `CreateUpdateBook` action: + +```js +export class CreateUpdateBook { + static readonly type = '[Books] Create Update Book'; + constructor(public payload: Books.CreateUpdateBookInput, public id?: string) {} } ``` -- Added the `getById` method to get the editing book by performing an HTTP request to the related endpoint. -- Added the `update` method to update a book with the `id` by performing an HTTP request to the related endpoint. +Open `books.state.ts` and modify the `save` method as show below: -### Update a Book +```js +@Action(CreateUpdateBook) +save(ctx: StateContext, action: CreateUpdateBook) { + let request; + + if (action.id) { + request = this.booksService.update(action.payload, action.id); + } else { + request = this.booksService.create(action.payload); + } + + return request.pipe(switchMap(() => ctx.dispatch(new GetBooks()))); +} +``` -Inject `BooksService` dependency by adding it to the `book-list.component.ts` constructor and add variable named `selectedBook`. +#### BookListComponent -```typescript +Inject `BooksService` dependency by adding it to the `book-list.component.ts` constructor and add a variable named `selectedBook`. + +```js +import { BooksService } from '../shared/books.service'; +//... selectedBook = {} as Books.Book; constructor( - //... + //... private booksService: BooksService ) ``` -- Added `booksService` to get the detail of selected book by `id` before creating the form -- Added `selectedBook` variable to reuse detail of selected book. - -Modify the `buildForm` method to reuse the same form while editing a book. +`booksService` is used to get the editing book to prepare the form. Modify the `buildForm` method to reuse the same form while editing a book. -```typescript +```js buildForm() { this.form = this.fb.group({ name: [this.selectedBook.name || '', Validators.required], @@ -356,10 +384,10 @@ buildForm() { } ``` -Add the `onEdit` method as shown below: +Add the `editBook` method as shown below: -```typescript - onEdit(id: string) { +```js + editBook(id: string) { this.booksService.getById(id).subscribe(book => { this.selectedBook = book; this.buildForm(); @@ -368,28 +396,32 @@ Add the `onEdit` method as shown below: } ``` -- Added `onEdit` method to get selected book detail, build form and then show the modal. +Added `editBook` method to get the editing book, build the form and show the modal. -Add the `selectedBook` definition to `onAdd` method for reuse same form while adding a new book. +Now, add the `selectedBook` definition to `createBook` method to reuse the same form while creating a new book: -```typescript - onAdd() { - this.selectedBook = {} as Books.Item; +```js + createBook() { + this.selectedBook = {} as Books.Book; //... } ``` -Add the `this.selectedBook.id` to `CreateUpdateBook` action in `save` method. +Modify the `save` method to pass the id of the selected book as shown below: -```typescript - save() { - //... - this.store.dispatch(new CreateUpdateBook(this.form.value, this.selectedBook.id)) - //... +```js +save() { + if (this.form.invalid) { + return; } -``` -Added the `this.selectedBook.id` property to reuse the `CreateUpdateBook` action. + this.store.dispatch(new CreateUpdateBook(this.form.value, this.selectedBook.id)) + .subscribe(() => { + this.isModalOpen = false; + this.form.reset(); + }); +} +``` #### Add "Actions" Dropdown to the Table @@ -419,7 +451,7 @@ Open the `book-list.component.html` and add modify the `p-table` as shown belo Actions
- +
@@ -430,99 +462,70 @@ Open the `book-list.component.html` and add modify the `p-table` as shown belo -> ``` -Actions button added to each row of the table. +- Added a `th` for the "Actions" column. +- Added `button` with `ngbDropdownToggle` to open actions when clicked the button. > We've used to [NgbDropdown](https://ng-bootstrap.github.io/#/components/dropdown/examples) for the dropdown menu of actions. -The Actions buttons looks like this: +The final UI looks like: ![actions-buttons](images/bookstore-actions-buttons.png) -Update the modal header for reuse the same modal. +Update the modal header to change the title based on the current operation: ```html -

{{ (selectedBook.id ? 'Edit' : 'New Book') }}

+

{{ selectedBook.id ? 'Edit' : 'New Book' }}

``` ![actions-buttons](images/bookstore-edit-modal.png) -TODO: header ?? +### Deleting an Existing Book -Open the `books.actins.ts` and add `id` parameter. +#### BooksService -```typescript -export class CreateUpdateBook { - static readonly type = '[Books] Create Update Book'; - constructor(public payload: Books.CreateUpdateBookInput, public id?: string) {} -} -``` - -Added `id` parameter to reuse the `BooksSave` while updating and creating a book. - -Open `books.state.ts` and then modify the `save` method as show below: - -```typescript -@Action(CreateUpdateBook) -save({ dispatch }: StateContext, { payload, id }: CreateUpdateBook) { - let request; - - if (id) { - request = this.booksService.update(payload, id); - } else { - request = this.booksService.create(payload); - } - - return request.pipe(switchMap(() => dispatch(new GetBooks()))); -} -``` - -TODO: description & screenshot ?? - -### Delete a Book - -Open `books.service.ts` and the the `delete` method for delete a book with the `id` by performing an HTTP request to the related endpoint. +Open `books.service.ts` and add a `delete` method to delete a book with the `id` by performing an HTTP request to the related endpoint: -```typescript -delete(id: string): Observable { - const request: Rest.Request = { +```js +delete(id: string): Observable { + return this.restService.request({ method: 'DELETE', - url: `/api/app/book/${id}`, - }; - - return this.rest.request(request); + url: `/api/app/book/${id}` + }); } ``` -### State Definitions +#### DeleteBook Action -Add an action named `BooksDelete` to `books.actions.ts` +Add an action named `DeleteBook` to `books.actions.ts`: -```typescript +```js export class DeleteBook { static readonly type = '[Books] Delete'; constructor(public id: string) {} } ``` -Then, open the `books.state.ts` and add the `delete` method that will listen to a `CreateUpdateBook` action to create a book +Open the `books.state.ts` and add the `delete` method that will listen to the `DeleteBook` action to delete a book: -```typescript +```js +import { ... , DeleteBook } from '../actions/books.actions'; +//... @Action(DeleteBook) -delete({ dispatch }: StateContext, { id }: DeleteBook) { - return this.booksService.delete(id).pipe(switchMap(() => dispatch(new GetBooks()))); +delete(ctx: StateContext, action: DeleteBook) { + return this.booksService.delete(action.id).pipe(switchMap(() => ctx.dispatch(new GetBooks()))); } ``` -TODO: description?? +- Added `DeleteBook` to the import list. +- Uses `bookService` to delete the book. -### Add a Delete Button +#### Add a Delete Button -Open `book-list.component.html` and modify the `ngbDropdownMenu` for add the delete button as shown below: +Open `book-list.component.html` and modify the `ngbDropdownMenu` to add the delete button as shown below: ```html
@@ -533,11 +536,15 @@ Open `book-list.component.html` and modify the `ngbDropdownMenu` for add the del
``` -### Open Confirmation Popup +The final actions dropdown UI looks like below: + +![bookstore-final-actions-dropdown](images/bookstore-final-actions-dropdown.png) -Open `book-list.component.ts` and inject the `ConfirmationService` for show confirmation popup. +#### Delete Confirmation Dialog -```typescript +Open `book-list.component.ts` and inject the `ConfirmationService`. + +```js import { ConfirmationService } from '@abp/ng.theme.shared'; //... constructor( @@ -546,10 +553,13 @@ constructor( ) ``` -Add the following method to `BookListComponent`. +> `ConfirmationService` is a simple service provided by ABP framework that internally uses the PrimeNG. -```typescript -import { ConfirmationService, Toaster } from '@abp/ng.theme.shared'; +Add a delete method to the `BookListComponent`: + +```js +import { ... , DeleteBook } from '../../store/actions'; +import { ... , Toaster } from '@abp/ng.theme.shared'; //... delete(id: string, name: string) { this.confirmationService @@ -562,4 +572,10 @@ delete(id: string, name: string) { } ``` -The `delete` method shows confirmation popup and listens to them. When close the popup, the subscribe block runs. If confirmed this popup, it will dispatch the `DeleteBook` action. +The `delete` method shows a confirmation popup and subscribes for the user response. `DeleteBook` action dispatched only if user clicks to the `Yes` button. The confirmation popup looks like below: + +![bookstore-confirmation-popup](images/bookstore-confirmation-popup.png) + +### Next Part + +See the [next part](Part-III.md) of this tutorial. diff --git a/docs/en/Tutorials/Angular/Part-III.md b/docs/en/Tutorials/Angular/Part-III.md new file mode 100644 index 0000000000..0da85f0751 --- /dev/null +++ b/docs/en/Tutorials/Angular/Part-III.md @@ -0,0 +1,178 @@ +## ASP.NET Core MVC Tutorial - Part III + +### About this Tutorial + +This is the third part of the Angular tutorial series. See all parts: + +- [Part I: Create the project and a book list page](Part-I.md) +- [Part II: Create, Update and Delete books](Part-II.md) +- **Part III: Integration Tests (this tutorial)** + +This part covers the **server side** tests. You can access to the **source code** of the application from the [GitHub repository](https://github.com/abpframework/abp/tree/dev/samples/BookStore-Angular-MongoDb). + +### Test Projects in the Solution + +There are multiple test projects in the solution: + +![bookstore-test-projects](images/bookstore-test-projects-v3.png) + +Each project is used to test the related application project. Test projects use the following libraries for testing: + +* [xunit](https://xunit.github.io/) as the main test framework. +* [Shoudly](http://shouldly.readthedocs.io/en/latest/) as an assertion library. +* [NSubstitute](http://nsubstitute.github.io/) as a mocking library. + +### Adding Test Data + +Startup template contains the `BookStoreTestDataSeedContributor` class in the `Acme.BookStore.TestBase` project that creates some data to run tests on. + +Change the `BookStoreTestDataSeedContributor` class as show below: + +````C# +using System; +using System.Threading.Tasks; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.Guids; + +namespace Acme.BookStore +{ + public class BookStoreTestDataSeedContributor + : IDataSeedContributor, ITransientDependency + { + private readonly IRepository _bookRepository; + private readonly IGuidGenerator _guidGenerator; + + public BookStoreTestDataSeedContributor( + IRepository bookRepository, + IGuidGenerator guidGenerator) + { + _bookRepository = bookRepository; + _guidGenerator = guidGenerator; + } + + public async Task SeedAsync(DataSeedContext context) + { + await _bookRepository.InsertAsync( + new Book + { + Id = _guidGenerator.Create(), + Name = "Test book 1", + Type = BookType.Fantastic, + PublishDate = new DateTime(2015, 05, 24), + Price = 21 + } + ); + + await _bookRepository.InsertAsync( + new Book + { + Id = _guidGenerator.Create(), + Name = "Test book 2", + Type = BookType.Science, + PublishDate = new DateTime(2014, 02, 11), + Price = 15 + } + ); + } + } +} +```` + +* Injected `IRepository` and used it in the `SeedAsync` to create two book entities as the test data. +* Used `IGuidGenerator` service to create GUIDs. While `Guid.NewGuid()` would perfectly work for testing, `IGuidGenerator` has additional features especially important while using real databases (see the [Guid generation document](../../Guid-Generation.md) for more). + +### Testing the BookAppService + +Create a test class named `BookAppService_Tests` in the `Acme.BookStore.Application.Tests` project: + +````C# +using System.Threading.Tasks; +using Shouldly; +using Volo.Abp.Application.Dtos; +using Xunit; + +namespace Acme.BookStore +{ + public class BookAppService_Tests : BookStoreApplicationTestBase + { + private readonly IBookAppService _bookAppService; + + public BookAppService_Tests() + { + _bookAppService = GetRequiredService(); + } + + [Fact] + public async Task Should_Get_List_Of_Books() + { + //Act + var result = await _bookAppService.GetListAsync( + new PagedAndSortedResultRequestDto() + ); + + //Assert + result.TotalCount.ShouldBeGreaterThan(0); + result.Items.ShouldContain(b => b.Name == "Test book 1"); + } + } +} +```` + +* `Should_Get_List_Of_Books` test simply uses `BookAppService.GetListAsync` method to get and check the list of users. + +Add a new test that creates a valid new book: + +````C# +[Fact] +public async Task Should_Create_A_Valid_Book() +{ + //Act + var result = await _bookAppService.CreateAsync( + new CreateUpdateBookDto + { + Name = "New test book 42", + Price = 10, + PublishDate = DateTime.Now, + Type = BookType.ScienceFiction + } + ); + + //Assert + result.Id.ShouldNotBe(Guid.Empty); + result.Name.ShouldBe("New test book 42"); +} +```` + +Add a new test that tries to create an invalid book and fails: + +````C# +[Fact] +public async Task Should_Not_Create_A_Book_Without_Name() +{ + var exception = await Assert.ThrowsAsync(async () => + { + await _bookAppService.CreateAsync( + new CreateUpdateBookDto + { + Name = "", + Price = 10, + PublishDate = DateTime.Now, + Type = BookType.ScienceFiction + } + ); + }); + + exception.ValidationErrors + .ShouldContain(err => err.MemberNames.Any(mem => mem == "Name")); +} +```` + +* Since the `Name` is empty, ABP throws an `AbpValidationException`. + +Open the **Test Explorer Window** (use Test -> Windows -> Test Explorer menu if it is not visible) and **Run All** tests: + +![bookstore-appservice-tests](images/bookstore-test-explorer.png) + +Congratulations, green icons show that tests have been successfully passed! \ No newline at end of file diff --git a/docs/en/Tutorials/Angular/images/bookstore-confirmation-popup.png b/docs/en/Tutorials/Angular/images/bookstore-confirmation-popup.png new file mode 100644 index 0000000000..c3f46af821 Binary files /dev/null and b/docs/en/Tutorials/Angular/images/bookstore-confirmation-popup.png differ diff --git a/docs/en/Tutorials/Angular/images/bookstore-final-actions-dropdown.png b/docs/en/Tutorials/Angular/images/bookstore-final-actions-dropdown.png new file mode 100644 index 0000000000..6b0be415c4 Binary files /dev/null and b/docs/en/Tutorials/Angular/images/bookstore-final-actions-dropdown.png differ diff --git a/docs/en/Tutorials/Angular/images/bookstore-test-explorer.png b/docs/en/Tutorials/Angular/images/bookstore-test-explorer.png new file mode 100644 index 0000000000..06e9e7d331 Binary files /dev/null and b/docs/en/Tutorials/Angular/images/bookstore-test-explorer.png differ diff --git a/docs/en/Tutorials/Angular/images/bookstore-test-projects-v3.png b/docs/en/Tutorials/Angular/images/bookstore-test-projects-v3.png new file mode 100644 index 0000000000..32ea91b325 Binary files /dev/null and b/docs/en/Tutorials/Angular/images/bookstore-test-projects-v3.png differ diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 103556823e..deaa6bcc67 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -7,8 +7,12 @@ "text": "From Startup Templates", "items": [ { - "text": "ASP.NET Core MVC", + "text": "Application with MVC (Razor Pages) UI", "path": "Getting-Started-AspNetCore-MVC-Template.md" + }, + { + "text": "Application with Angular UI", + "path": "Getting-Started-Angular-Template.md" } ] }, @@ -34,8 +38,12 @@ "text": "Application Development", "items": [ { - "text": "With ASP.NET Core MVC", + "text": "With ASP.NET Core MVC UI", "path": "Tutorials/AspNetCore-Mvc/Part-I.md" + }, + { + "text": "With Angular UI", + "path": "Tutorials/Angular/Part-I.md" } ] } @@ -237,11 +245,21 @@ "items": [ { "text": "Entity Framework Core Integration", - "path": "Entity-Framework-Core.md" + "path": "Entity-Framework-Core.md", + "items": [ + { + "text": "PostgreSQL Integration", + "path": "Best-Practices/PostgreSQL-Integration.md" + } + ] }, { "text": "MongoDB Integration", "path": "MongoDB.md" + }, + { + "text": "Dapper Integration", + "path": "Dapper.md" } ] }, @@ -264,6 +282,20 @@ } ] }, + { + "text": "Startup Templates", + "path": "Startup-Templates/Index.md", + "items": [ + { + "text": "Application", + "path": "Startup-Templates/Application.md" + }, + { + "text": "Module", + "path": "Startup-Templates/Module.md" + } + ] + }, { "text": "Samples", "items": [ diff --git a/docs/zh-Hans/Application-Services.md b/docs/zh-Hans/Application-Services.md index e98e945405..74718eb571 100644 --- a/docs/zh-Hans/Application-Services.md +++ b/docs/zh-Hans/Application-Services.md @@ -146,7 +146,7 @@ public interface IBookAppService : IApplicationService `BookDto`是一个简单的[DTO](Data-Transfer-Objects.md)类, 定义如下: ````csharp -[AutoMapFrom(typeof(Book))] //Defines the mapping +[AbpAutoMapFrom(typeof(Book))] //Defines the mapping public class BookDto { public Guid Id { get; set; } @@ -159,7 +159,7 @@ public class BookDto } ```` -* `BookDto`定义了`[AutoMapFrom(typeof(Book))]`属性来从创建对象映射Book到BookDto. +* `BookDto`定义了`[AbpAutoMapFrom(typeof(Book))]`属性来从创建对象映射Book到BookDto. 然后你可以实现`GetAsync`方法. 如下所示: @@ -247,7 +247,7 @@ public interface IAsyncCrudAppService< 示例中使用的DTO类是`BookDto`和`CreateUpdateBookDto`: ````csharp -[AutoMapFrom(typeof(Book))] +[AbpAutoMapFrom(typeof(Book))] public class BookDto : AuditedEntityDto { public string Name { get; set; } @@ -257,7 +257,7 @@ public class BookDto : AuditedEntityDto public float Price { get; set; } } -[AutoMapTo(typeof(Book))] +[AbpAutoMapTo(typeof(Book))] public class CreateUpdateBookDto { [Required] diff --git a/docs/zh-Hans/CLI.md b/docs/zh-Hans/CLI.md index ad79e30449..767d971b28 100644 --- a/docs/zh-Hans/CLI.md +++ b/docs/zh-Hans/CLI.md @@ -39,15 +39,20 @@ abp new Acme.BookStore #### Options -* `--template` 或 `-t`: 指定模板. 默认的模板是 `mvc`.可用的模板有: - * `mvc` (默认): ASP.NET Core [MVC应用程序模板](Startup-Templates/Mvc.md). 其他选项: - * `--database-provider` 或 `-d`: 指定数据库提供程序. 默认提供程序是 `ef`. 可用的提供程序有: +* `--template` 或者 `-t`: 指定模板. 默认的模板是 `app`,会生成web项目.可用的模板有: + * `app` (default): [应用程序模板](Startup-Templates/Application.md)。 其他选项: + * `--ui` 或者 `-u`: 指定ui框架。默认`mvc`框架。其他选项: + * `mvc`: ASP.NET Core MVC。此模板的其他选项: + * `--tiered`: 创建分层解决方案,Web和Http Api层在物理上是分开的。如果未指定会创建一个分层的解决方案,此解决方案没有那么复杂,适合大多数场景。 + * `angular`: Angular. 这个模板还有一些额外的选项: + * `--separate-identity-server`: Separates the identity server application from the API host application. If not specified, you will have a single endpoint in the server side. + * `--database-provider` 或者 `-d`: 指定数据库提供程序。默认是 `ef`。其他选项: * `ef`: Entity Framework Core. * `mongodb`: MongoDB. - * `--tiered`: 创建分层解决方案,Web和Http Api层在物理上是分开的. 如果未指定会创建一个分层的解决方案, 此解决方案没有那么复杂,适合大多数场景. - * `module`: [模块模板](Startup-Templates/Module.md). 其他选项: - * `--no-ui`: 不包含UI. 仅创建服务模块 (也称为微服务 - 没有UI). -* `--output-folder` 或 `-o`: 指定输出文件夹,默认是当前目录. + * `module`: [Module template](Startup-Templates/Module.md). 其他选项: + * `--no-ui`: 不包含UI。仅创建服务模块(也称为微服务 - 没有UI)。 +* `--output-folder` 或者 `-o`: 指定输出文件夹,默认是当前目录。 +* `--version` 或者 `-v`: 指定ABP和模板的版本。它可以是 [release tag](https://github.com/abpframework/abp/releases) 或者 [branch name](https://github.com/abpframework/abp/branches). 如果没有指定,则使用最新版本。大多数情况下,您会希望使用最新的版本。 ### add-package diff --git a/docs/zh-Hans/Dapper.md b/docs/zh-Hans/Dapper.md new file mode 100644 index 0000000000..60289abd00 --- /dev/null +++ b/docs/zh-Hans/Dapper.md @@ -0,0 +1,61 @@ +# Dapper 集成 + +由于Dapper的思想是sql语句优先, 且主要为`IDbConnection`接口提供了一些扩展方法. + +Abp并没有为Dapper封装太多功能. Abp Dapper在Abp EntityFrameworkCore的基础上提供了`DapperRepository`基类, 在其中提供了Dapper需要的`IDbConnection`和`IDbTransaction`属性. + +这两个属性可以和[工作单元](Unit-Of-Work.md)很好的配合. + +## 安装 + +请先根据[EF Core的集成文档](Entity-Framework-Core.md)安装并配置好EF Core. + +`Volo.Abp.Dapper`是Dapper集成的主要nuget包. 将其安装到你的项目中(在分层应用程序中适用于 数据访问/基础设施层): + +```shell +Install-Package Volo.Abp.Dapper +``` + +然后添加 `AbpDapperModule` 模块依赖项(`DependsOn` Attribute) 到 [module](Module-Development-Basics.cn.md)(项目中的Mudole类): + +````C# +using Volo.Abp.Dapper; +using Volo.Abp.Modularity; + +namespace MyCompany.MyProject +{ + [DependsOn(typeof(AbpDapperModule))] + public class MyModule : AbpModule + { + //... + } +} +```` + +## 实现Dapper仓储 + +下面的代码实现了`Person`仓储, 它需要EF Core的`DbContext`(MyAppDbContext). 你可以注入`PersonDapperRepository`来调用它的方法. + +`DbConnection`和`DbTransaction`来自于`DapperRepository`基类. + +```C# +public class PersonDapperRepository : DapperRepository, ITransientDependency +{ + public PersonDapperRepository(IDbContextProvider dbContextProvider) + : base(dbContextProvider) + { + } + + public virtual async Task> GetAllPersonNames() + { + return (await DbConnection.QueryAsync("select Name from People", transaction: DbTransaction)) + .ToList(); + } + + public virtual async Task UpdatePersonNames(string name) + { + return await DbConnection.ExecuteAsync("update People set Name = @NewName", new { NewName = name }, + DbTransaction); + } +} +``` diff --git a/docs/zh-Hans/Entity-Framework-Core.md b/docs/zh-Hans/Entity-Framework-Core.md index e709767652..6a7f69c2aa 100644 --- a/docs/zh-Hans/Entity-Framework-Core.md +++ b/docs/zh-Hans/Entity-Framework-Core.md @@ -10,7 +10,7 @@ Install-Package Volo.Abp.EntityFrameworkCore ``` -然后添加 `AbpEntityFrameworkCoreModule` 模块依赖项(`DependsOn` Attribute) 到 [module](Module-Development-Basics.cn.md)(项目中的Mudole类): +然后添加 `AbpEntityFrameworkCoreModule` 模块依赖项(`DependsOn` Attribute) 到 [module](Module-Development-Basics.md)(项目中的Mudole类): ````C# using Volo.Abp.EntityFrameworkCore; diff --git a/docs/zh-Hans/Startup-Templates/Module.md b/docs/zh-Hans/Startup-Templates/Module.md index adc368ed89..a6706ad783 100644 --- a/docs/zh-Hans/Startup-Templates/Module.md +++ b/docs/zh-Hans/Startup-Templates/Module.md @@ -25,7 +25,7 @@ abp new Acme.IssueManagement -t module 默认情况模板附带一个MVC UI,你可以使用`--no-ui`选项指定不包含UI层. ````bash -abp new Acme.IssueManagement -t mvc-module --no-ui +abp new Acme.IssueManagement -t module --no-ui ```` ## 解决方案结构 diff --git a/docs/zh-Hans/docs-nav.json b/docs/zh-Hans/docs-nav.json index fb147ac0fe..60c4afb3d7 100644 --- a/docs/zh-Hans/docs-nav.json +++ b/docs/zh-Hans/docs-nav.json @@ -242,6 +242,10 @@ { "text": "MongoDB 集成", "path": "MongoDB.md" + }, + { + "text": "Dapper 集成", + "path": "Dapper.md" } ] }, diff --git a/framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/HttpContextTenantResolveResultAccessor.cs b/framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/HttpContextTenantResolveResultAccessor.cs index 6c44195b1a..593d9a7024 100644 --- a/framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/HttpContextTenantResolveResultAccessor.cs +++ b/framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/HttpContextTenantResolveResultAccessor.cs @@ -7,17 +7,11 @@ namespace Volo.Abp.AspNetCore.MultiTenancy [Dependency(ReplaceServices = true)] public class HttpContextTenantResolveResultAccessor : ITenantResolveResultAccessor, ITransientDependency { + public const string HttpContextItemName = "__AbpTenantResolveResult"; + public TenantResolveResult Result { - get - { - if (_httpContextAccessor.HttpContext == null) - { - return null; - } - - return _httpContextAccessor.HttpContext.Items[""] as TenantResolveResult; - } + get => _httpContextAccessor.HttpContext?.Items[HttpContextItemName] as TenantResolveResult; set { if (_httpContextAccessor.HttpContext == null) @@ -25,7 +19,7 @@ namespace Volo.Abp.AspNetCore.MultiTenancy return; } - _httpContextAccessor.HttpContext.Items[""] = value; + _httpContextAccessor.HttpContext.Items[HttpContextItemName] = value; } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Themes/Basic/Components/Menu/Default.cshtml b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Themes/Basic/Components/Menu/Default.cshtml index cace550248..61b9ef49ee 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Themes/Basic/Components/Menu/Default.cshtml +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic/Themes/Basic/Components/Menu/Default.cshtml @@ -27,7 +27,16 @@ {
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n\n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n"}]}],"members":{"routes$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":40,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":40,"character":10},"member":"getOne"},"arguments":["routes"]}]}]}],"currentUser$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":43,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":43,"character":10},"member":"getOne"},"arguments":["currentUser"]}]}]}],"languages$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":46,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":46,"character":10},"member":"getDeep"},"arguments":["localization.languages"]}]}]}],"navElements$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":49,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getNavigationElements"}]}]}],"currentUserRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":52,"character":3},"arguments":["currentUser",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":52,"character":51}}]}]}],"languageRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":55,"character":3},"arguments":["language",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":55,"character":48}}]}]}],"navbarRootDropdowns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":58,"character":3},"arguments":["navbarRootDropdown",{"read":{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdown","line":58,"character":46}}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":96,"character":29},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":96,"character":58}]}],"checkWindowWidth":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onChangeLang":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}]},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":38,"character":16},"member":"application"}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-account","template":"\n \n\n \n \n \n \n \n\n"}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":9,"character":16},"member":"account"}}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-empty","template":"\n Layout-empty\n \n "}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":12,"character":16},"member":"empty"}}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":" abp-layout","template":"\n\n
    \n \n
    \n\n\n\n"}]}],"members":{}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"abp-change-password","template":"\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":38,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":43,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":43,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-profile","template":"\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"profile$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":29,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ProfileState","line":29,"character":10},"member":"getProfile"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":34,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":34,"character":54}]}],"buildForm":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"LayoutState","defaults":{"navigationElements":[]}}]}],"members":{"layoutAddAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":16,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵi"}]}]}],"layoutRemoveAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":45,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵj"}]}]}]},"statics":{"getNavigationElements":{"__symbolic":"function","parameters":["navigationElements"],"value":{"__symbolic":"reference","name":"navigationElements"}}}},"ɵi":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵk"},"member":"NavigationElement"}]}]},"statics":{"type":"[Layout] Add Navigation Element"}},"ɵj":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Layout] Remove Navigation ElementByName"}}},"origins":{"LAYOUTS":"./lib/theme-basic.module","ThemeBasicModule":"./lib/theme-basic.module","ɵa":"./lib/components/layout-application/layout-application.component","ɵb":"./lib/states","ɵc":"./lib/components/layout-account/layout-account.component","ɵd":"./lib/components/layout-empty/layout-empty.component","ɵe":"./lib/components/layout/layout.component","ɵf":"./lib/components/change-password/change-password.component","ɵg":"./lib/components/profile/profile.component","ɵh":"./lib/states/layout.state","ɵi":"./lib/actions/layout.actions","ɵj":"./lib/actions/layout.actions","ɵk":"./lib/models/layout"},"importAs":"@abp/ng.theme.basic"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/layout.state"},{"from":"./lib/application-layout/application-layout.component"},{"from":"./lib/empty-layout/empty-layout.component"}],"metadata":{"LAYOUTS":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"}],"ThemeBasicModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"declarations":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}},{"__symbolic":"reference","name":"ɵe"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":18,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":19,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbCollapseModule","line":20,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":21,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":22,"character":4},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":23,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":24,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵf"}]]}],"exports":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}}],"entryComponents":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":32,"character":1},"arguments":[{"selector":"abp-layout-application","template":"\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n"}]}],"members":{"routes$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":40,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":40,"character":10},"member":"getOne"},"arguments":["routes"]}]}]}],"currentUser$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":43,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":43,"character":10},"member":"getOne"},"arguments":["currentUser"]}]}]}],"languages$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":46,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":46,"character":10},"member":"getDeep"},"arguments":["localization.languages"]}]}]}],"navElements$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":49,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getNavigationElements"}]}]}],"currentUserRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":52,"character":3},"arguments":["currentUser",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":52,"character":51}}]}]}],"languageRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":55,"character":3},"arguments":["language",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":55,"character":48}}]}]}],"navbarRootDropdowns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":58,"character":3},"arguments":["navbarRootDropdown",{"read":{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdown","line":58,"character":46}}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":96,"character":29},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":96,"character":58}]}],"checkWindowWidth":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onChangeLang":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}]},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":38,"character":16},"member":"application"}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-account","template":"\n"}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":9,"character":16},"member":"account"}}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-empty","template":"\n Layout-empty\n \n "}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":11,"character":16},"member":"empty"}}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":" abp-layout","animations":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"slideFromBottom","line":8,"character":15}],"template":"\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":17,"character":29}]}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"LayoutState","defaults":{"navigationElements":[]}}]}],"members":{"layoutAddAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":16,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵg"}]}]}],"layoutRemoveAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":45,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵh"}]}]}]},"statics":{"getNavigationElements":{"__symbolic":"function","parameters":["navigationElements"],"value":{"__symbolic":"reference","name":"navigationElements"}}}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"NavigationElement"}]}]},"statics":{"type":"[Layout] Add Navigation Element"}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Layout] Remove Navigation ElementByName"}}},"origins":{"LAYOUTS":"./lib/theme-basic.module","ThemeBasicModule":"./lib/theme-basic.module","ɵa":"./lib/components/application-layout/application-layout.component","ɵb":"./lib/states","ɵc":"./lib/components/account-layout/account-layout.component","ɵd":"./lib/components/empty-layout/empty-layout.component","ɵe":"./lib/components/layout/layout.component","ɵf":"./lib/states/layout.state","ɵg":"./lib/actions/layout.actions","ɵh":"./lib/actions/layout.actions","ɵi":"./lib/models/layout"},"importAs":"@abp/ng.theme.basic"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js index ccdb5842c5..ebfb6926d8 100644 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js +++ b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@angular/forms'), require('@ngx-validate/core'), require('@ngxs/store'), require('@ngxs/router-plugin'), require('angular-oauth2-oidc'), require('just-compare'), require('rxjs'), require('rxjs/operators'), require('snq'), require('@abp/ng.theme.shared'), require('primeng/toast')) : - typeof define === 'function' && define.amd ? define('@abp/ng.theme.basic', ['exports', '@abp/ng.core', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@angular/forms', '@ngx-validate/core', '@ngxs/store', '@ngxs/router-plugin', 'angular-oauth2-oidc', 'just-compare', 'rxjs', 'rxjs/operators', 'snq', '@abp/ng.theme.shared', 'primeng/toast'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.basic = {}), global.ng_core, global.ng.core, global.ngBootstrap, global.ng.forms, global.core$1, global.store, global.routerPlugin, global.angularOauth2Oidc, global.compare, global.rxjs, global.rxjs.operators, global.snq, global.ng_theme_shared, global.toast)); -}(this, function (exports, ng_core, core, ngBootstrap, forms, core$1, store, routerPlugin, angularOauth2Oidc, compare, rxjs, operators, snq, ng_theme_shared, toast) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@ngx-validate/core'), require('@ngxs/store'), require('primeng/toast'), require('@ngxs/router-plugin'), require('angular-oauth2-oidc'), require('just-compare'), require('rxjs'), require('rxjs/operators'), require('snq')) : + typeof define === 'function' && define.amd ? define('@abp/ng.theme.basic', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@ngx-validate/core', '@ngxs/store', 'primeng/toast', '@ngxs/router-plugin', 'angular-oauth2-oidc', 'just-compare', 'rxjs', 'rxjs/operators', 'snq'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.basic = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.ngBootstrap, global.core$1, global.store, global.toast, global.routerPlugin, global.angularOauth2Oidc, global.compare, global.rxjs, global.rxjs.operators, global.snq)); +}(this, function (exports, ng_core, ng_theme_shared, core, ngBootstrap, core$1, store, toast, routerPlugin, angularOauth2Oidc, compare, rxjs, operators, snq) { 'use strict'; compare = compare && compare.hasOwnProperty('default') ? compare['default'] : compare; snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; @@ -21,6 +21,20 @@ See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } var __assign = function() { __assign = Object.assign || function __assign(t) { @@ -33,6 +47,18 @@ return __assign.apply(this, arguments); }; + function __rest(s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; + } + function __decorate(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); @@ -40,10 +66,66 @@ return c > 3 && r && Object.defineProperty(target, key, r), r; } + function __param(paramIndex, decorator) { + return function (target, key) { decorator(target, key, paramIndex); } + } + function __metadata(metadataKey, metadataValue) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); } + function __awaiter(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + } + + function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } + } + + function __exportStar(m, exports) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; + } + + function __values(o) { + var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; + if (m) return m.call(o); + return { + next: function () { + if (o && i >= o.length) o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + } + function __read(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; @@ -65,158 +147,120 @@ for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; + } + + function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; + }; + + function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); + } + + function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; + function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } + function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } + function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } + function fulfill(value) { resume("next", value); } + function reject(value) { resume("throw", value); } + function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } + } + + function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; + function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } + } + + function __asyncValues(o) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); + function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } + function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } + } + + function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; + }; + + function __importStar(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result.default = mod; + return result; + } + + function __importDefault(mod) { + return (mod && mod.__esModule) ? mod : { default: mod }; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var minLength = forms.Validators.minLength, required = forms.Validators.required; - var ChangePasswordComponent = /** @class */ (function () { - function ChangePasswordComponent(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new core.EventEmitter(); - } - Object.defineProperty(ChangePasswordComponent.prototype, "visible", { - get: /** - * @return {?} - */ - function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.form = this.fb.group({ - password: ['', [required, minLength(6), core$1.validatePassword(['small', 'capital', 'number', 'special'])]], - newPassword: ['', [required, minLength(6), core$1.validatePassword(['small', 'capital', 'number', 'special'])]], - repeatNewPassword: ['', [required, minLength(6), core$1.validatePassword(['small', 'capital', 'number', 'special'])]], - }, { - validators: [core$1.comparePasswords(['newPassword', 'repeatNewPassword'])], - }); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store - .dispatch(new ng_core.ProfileChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ChangePasswordComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } - ]; - /** @nocollapse */ - ChangePasswordComponent.ctorParameters = function () { return [ - { type: forms.FormBuilder }, - { type: store.Store } - ]; }; - ChangePasswordComponent.propDecorators = { - visible: [{ type: core.Input }], - visibleChange: [{ type: core.Output }], - modalContent: [{ type: core.ViewChild, args: ['modalContent', { static: false },] }] - }; - return ChangePasswordComponent; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LayoutAccountComponent = /** @class */ (function () { - function LayoutAccountComponent() { - this.isCollapsed = false; + var AccountLayoutComponent = /** @class */ (function () { + function AccountLayoutComponent() { } // required for dynamic component - LayoutAccountComponent.type = "account" /* account */; - LayoutAccountComponent.decorators = [ + AccountLayoutComponent.type = "account" /* account */; + AccountLayoutComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-layout-account', - template: "\n \n\n \n \n \n \n \n\n" + template: "\n" }] } ]; - return LayoutAccountComponent; + return AccountLayoutComponent; }()); + if (false) { + /** @type {?} */ + AccountLayoutComponent.type; + } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var LayoutAddNavigationElement = /** @class */ (function () { - function LayoutAddNavigationElement(payload) { + var AddNavigationElement = /** @class */ (function () { + function AddNavigationElement(payload) { this.payload = payload; } - LayoutAddNavigationElement.type = '[Layout] Add Navigation Element'; - return LayoutAddNavigationElement; + AddNavigationElement.type = '[Layout] Add Navigation Element'; + return AddNavigationElement; }()); - var LayoutRemoveNavigationElementByName = /** @class */ (function () { - function LayoutRemoveNavigationElementByName(name) { + if (false) { + /** @type {?} */ + AddNavigationElement.type; + /** @type {?} */ + AddNavigationElement.prototype.payload; + } + var RemoveNavigationElementByName = /** @class */ (function () { + function RemoveNavigationElementByName(name) { this.name = name; } - LayoutRemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return LayoutRemoveNavigationElementByName; + RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; + return RemoveNavigationElementByName; }()); + if (false) { + /** @type {?} */ + RemoveNavigationElementByName.type; + /** @type {?} */ + RemoveNavigationElementByName.prototype.name; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ /** * @fileoverview added by tsickle @@ -318,15 +362,15 @@ }); }; __decorate([ - store.Action(LayoutAddNavigationElement), + store.Action(AddNavigationElement), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutAddNavigationElement]), + __metadata("design:paramtypes", [Object, AddNavigationElement]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutAddAction", null); __decorate([ - store.Action(LayoutRemoveNavigationElementByName), + store.Action(RemoveNavigationElementByName), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutRemoveNavigationElementByName]), + __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutRemoveAction", null); __decorate([ @@ -348,8 +392,13 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var LayoutApplicationComponent = /** @class */ (function () { - function LayoutApplicationComponent(store, oauthService) { + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ApplicationLayoutComponent = /** @class */ (function () { + function ApplicationLayoutComponent(store, oauthService) { this.store = store; this.oauthService = oauthService; this.isOpenChangePassword = false; @@ -368,7 +417,7 @@ */ function (_, element) { return element; }); } - Object.defineProperty(LayoutApplicationComponent.prototype, "visibleRoutes$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { get: /** * @return {?} */ @@ -382,7 +431,7 @@ enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "defaultLanguage$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { get: /** * @return {?} */ @@ -404,7 +453,7 @@ enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "dropdownLanguages$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { get: /** * @return {?} */ @@ -426,7 +475,7 @@ enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "selectedLangCulture", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { get: /** * @return {?} */ @@ -440,7 +489,7 @@ * @private * @return {?} */ - LayoutApplicationComponent.prototype.checkWindowWidth = /** + ApplicationLayoutComponent.prototype.checkWindowWidth = /** * @private * @return {?} */ @@ -468,7 +517,7 @@ /** * @return {?} */ - LayoutApplicationComponent.prototype.ngAfterViewInit = /** + ApplicationLayoutComponent.prototype.ngAfterViewInit = /** * @return {?} */ function () { @@ -483,7 +532,7 @@ return name; })); if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new LayoutAddNavigationElement([ + this.store.dispatch(new AddNavigationElement([ { element: this.languageRef, order: 4, name: 'LanguageRef' }, { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, ])); @@ -528,7 +577,7 @@ /** * @return {?} */ - LayoutApplicationComponent.prototype.ngOnDestroy = /** + ApplicationLayoutComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { }; @@ -536,41 +585,40 @@ * @param {?} cultureName * @return {?} */ - LayoutApplicationComponent.prototype.onChangeLang = /** + ApplicationLayoutComponent.prototype.onChangeLang = /** * @param {?} cultureName * @return {?} */ function (cultureName) { - this.store.dispatch(new ng_core.SessionSetLanguage(cultureName)); - this.store.dispatch(new ng_core.ConfigGetAppConfiguration()); + this.store.dispatch(new ng_core.SetLanguage(cultureName)); }; /** * @return {?} */ - LayoutApplicationComponent.prototype.logout = /** + ApplicationLayoutComponent.prototype.logout = /** * @return {?} */ function () { this.oauthService.logOut(); - this.store.dispatch(new routerPlugin.Navigate(['/account/login'], null, { + this.store.dispatch(new routerPlugin.Navigate(['/'], null, { state: { redirectUrl: this.store.selectSnapshot(routerPlugin.RouterState).state.url }, })); - this.store.dispatch(new ng_core.ConfigGetAppConfiguration()); + this.store.dispatch(new ng_core.GetAppConfiguration()); }; // required for dynamic component - LayoutApplicationComponent.type = "application" /* application */; - LayoutApplicationComponent.decorators = [ + ApplicationLayoutComponent.type = "application" /* application */; + ApplicationLayoutComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" + template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" }] } ]; /** @nocollapse */ - LayoutApplicationComponent.ctorParameters = function () { return [ + ApplicationLayoutComponent.ctorParameters = function () { return [ { type: store.Store }, { type: angularOauth2Oidc.OAuthService } ]; }; - LayoutApplicationComponent.propDecorators = { + ApplicationLayoutComponent.propDecorators = { currentUserRef: [{ type: core.ViewChild, args: ['currentUser', { static: false, read: core.TemplateRef },] }], languageRef: [{ type: core.ViewChild, args: ['language', { static: false, read: core.TemplateRef },] }], navbarRootDropdowns: [{ type: core.ViewChildren, args: ['navbarRootDropdown', { read: ngBootstrap.NgbDropdown },] }] @@ -578,21 +626,61 @@ __decorate([ store.Select(ng_core.ConfigState.getOne('routes')), __metadata("design:type", rxjs.Observable) - ], LayoutApplicationComponent.prototype, "routes$", void 0); + ], ApplicationLayoutComponent.prototype, "routes$", void 0); __decorate([ store.Select(ng_core.ConfigState.getOne('currentUser')), __metadata("design:type", rxjs.Observable) - ], LayoutApplicationComponent.prototype, "currentUser$", void 0); + ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); __decorate([ store.Select(ng_core.ConfigState.getDeep('localization.languages')), __metadata("design:type", rxjs.Observable) - ], LayoutApplicationComponent.prototype, "languages$", void 0); + ], ApplicationLayoutComponent.prototype, "languages$", void 0); __decorate([ store.Select(LayoutState.getNavigationElements), __metadata("design:type", rxjs.Observable) - ], LayoutApplicationComponent.prototype, "navElements$", void 0); - return LayoutApplicationComponent; + ], ApplicationLayoutComponent.prototype, "navElements$", void 0); + return ApplicationLayoutComponent; }()); + if (false) { + /** @type {?} */ + ApplicationLayoutComponent.type; + /** @type {?} */ + ApplicationLayoutComponent.prototype.routes$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUser$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languages$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navElements$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUserRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languageRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navbarRootDropdowns; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenChangePassword; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenProfile; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isDropdownChildDynamic; + /** @type {?} */ + ApplicationLayoutComponent.prototype.rightPartElements; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackByFn; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackElementByFn; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.store; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.oauthService; + } /** * @param {?} routes * @return {?} @@ -617,172 +705,77 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var LayoutEmptyComponent = /** @class */ (function () { - function LayoutEmptyComponent() { + var EmptyLayoutComponent = /** @class */ (function () { + function EmptyLayoutComponent() { } - // required for dynamic component - LayoutEmptyComponent.type = "empty" /* empty */; - LayoutEmptyComponent.decorators = [ + EmptyLayoutComponent.type = "empty" /* empty */; + EmptyLayoutComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-layout-empty', template: "\n Layout-empty\n \n " }] } ]; - return LayoutEmptyComponent; + return EmptyLayoutComponent; }()); + if (false) { + /** @type {?} */ + EmptyLayoutComponent.type; + } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var LayoutComponent = /** @class */ (function () { - function LayoutComponent() { - this.isCollapsed = false; - } - LayoutComponent.decorators = [ - { type: core.Component, args: [{ - selector: ' abp-layout', - template: "\n\n
    \n \n
    \n\n\n\n" - }] } - ]; - return LayoutComponent; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var maxLength = forms.Validators.maxLength, required$1 = forms.Validators.required, email = forms.Validators.email; - var ProfileComponent = /** @class */ (function () { - function ProfileComponent(fb, store) { - this.fb = fb; + function LayoutComponent(store) { this.store = store; - this.visibleChange = new core.EventEmitter(); + this.isCollapsed = true; } - Object.defineProperty(ProfileComponent.prototype, "visible", { + Object.defineProperty(LayoutComponent.prototype, "appInfo", { get: /** * @return {?} */ function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); + return this.store.selectSnapshot(ng_core.ConfigState.getApplicationInfo); }, enumerable: true, configurable: true }); - /** - * @return {?} - */ - ProfileComponent.prototype.buildForm = /** - * @return {?} - */ - function () { - var _this = this; - this.store - .dispatch(new ng_core.ProfileGet()) - .pipe(operators.withLatestFrom(this.profile$), operators.take(1)) - .subscribe((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var _b = __read(_a, 2), profile = _b[1]; - _this.form = _this.fb.group({ - userName: [profile.userName, [required$1, maxLength(256)]], - email: [profile.email, [required$1, email, maxLength(256)]], - name: [profile.name || '', [maxLength(64)]], - surname: [profile.surname || '', [maxLength(64)]], - phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], - }); - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store.dispatch(new ng_core.ProfileUpdate(this.form.value)).subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.buildForm(); - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ProfileComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ProfileComponent.decorators = [ + LayoutComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-profile', - template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" + selector: ' abp-layout', + template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", + animations: [ng_theme_shared.slideFromBottom] }] } ]; /** @nocollapse */ - ProfileComponent.ctorParameters = function () { return [ - { type: forms.FormBuilder }, + LayoutComponent.ctorParameters = function () { return [ { type: store.Store } ]; }; - ProfileComponent.propDecorators = { - visible: [{ type: core.Input }], - visibleChange: [{ type: core.Output }] - }; - __decorate([ - store.Select(ng_core.ProfileState.getProfile), - __metadata("design:type", rxjs.Observable) - ], ProfileComponent.prototype, "profile$", void 0); - return ProfileComponent; + return LayoutComponent; }()); + if (false) { + /** @type {?} */ + LayoutComponent.prototype.isCollapsed; + /** + * @type {?} + * @private + */ + LayoutComponent.prototype.store; + } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ - var LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent]; + var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; var ThemeBasicModule = /** @class */ (function () { function ThemeBasicModule() { } ThemeBasicModule.decorators = [ { type: core.NgModule, args: [{ - declarations: __spread(LAYOUTS, [LayoutComponent, ChangePasswordComponent, ProfileComponent]), + declarations: __spread(LAYOUTS, [LayoutComponent]), imports: [ ng_core.CoreModule, ng_theme_shared.ThemeSharedModule, @@ -799,6 +792,11 @@ return ThemeBasicModule; }()); + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -810,31 +808,41 @@ */ function State() { } Layout.State = State; + if (false) { + /** @type {?} */ + State.prototype.navigationElements; + } /** * @record */ function NavigationElement() { } Layout.NavigationElement = NavigationElement; + if (false) { + /** @type {?} */ + NavigationElement.prototype.name; + /** @type {?} */ + NavigationElement.prototype.element; + /** @type {?|undefined} */ + NavigationElement.prototype.order; + } })(Layout || (Layout = {})); + exports.AccountLayoutComponent = AccountLayoutComponent; + exports.AddNavigationElement = AddNavigationElement; + exports.ApplicationLayoutComponent = ApplicationLayoutComponent; + exports.EmptyLayoutComponent = EmptyLayoutComponent; exports.LAYOUTS = LAYOUTS; - exports.LayoutAccountComponent = LayoutAccountComponent; - exports.LayoutAddNavigationElement = LayoutAddNavigationElement; - exports.LayoutApplicationComponent = LayoutApplicationComponent; - exports.LayoutEmptyComponent = LayoutEmptyComponent; - exports.LayoutRemoveNavigationElementByName = LayoutRemoveNavigationElementByName; exports.LayoutState = LayoutState; + exports.RemoveNavigationElementByName = RemoveNavigationElementByName; exports.ThemeBasicModule = ThemeBasicModule; - exports.ɵa = LayoutApplicationComponent; + exports.ɵa = ApplicationLayoutComponent; exports.ɵb = LayoutState; - exports.ɵc = LayoutAccountComponent; - exports.ɵd = LayoutEmptyComponent; + exports.ɵc = AccountLayoutComponent; + exports.ɵd = EmptyLayoutComponent; exports.ɵe = LayoutComponent; - exports.ɵf = ChangePasswordComponent; - exports.ɵg = ProfileComponent; - exports.ɵh = LayoutState; - exports.ɵi = LayoutAddNavigationElement; - exports.ɵj = LayoutRemoveNavigationElementByName; + exports.ɵf = LayoutState; + exports.ɵg = AddNavigationElement; + exports.ɵh = RemoveNavigationElementByName; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map index c273e53c1e..95866c6981 100644 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map +++ b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.theme.basic.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-account/layout-account.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/layout-application/layout-application.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-empty/layout-empty.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ProfileChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords, validatePassword } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store\n .dispatch(\n new ProfileChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './layout-account.component.html',\n})\nexport class LayoutAccountComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n\n isCollapsed: boolean = false;\n}\n","import { Layout } from '../models/layout';\n\nexport class LayoutAddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class LayoutRemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(LayoutAddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: LayoutAddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(LayoutRemoveNavigationElementByName)\n layoutRemoveAction(\n { getState, patchState }: StateContext,\n { name }: LayoutRemoveNavigationElementByName,\n ) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n ConfigGetAppConfiguration,\n ConfigState,\n eLayoutType,\n SessionSetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { LayoutAddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './layout-application.component.html',\n})\nexport class LayoutApplicationComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new LayoutAddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SessionSetLanguage(cultureName));\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class LayoutEmptyComponent {\n // required for dynamic component\n static type = eLayoutType.empty;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n})\nexport class LayoutComponent {\n isCollapsed: boolean = false;\n}\n","import { Profile, ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new ProfileGet())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { LayoutAccountComponent } from './components/layout-account/layout-account.component';\nimport { LayoutApplicationComponent } from './components/layout-application/layout-application.component';\nimport { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { ToastModule } from 'primeng/toast';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["EventEmitter","validatePassword","comparePasswords","ProfileChangePassword","Component","FormBuilder","Store","Input","Output","ViewChild","tslib_1.__spread","tslib_1.__decorate","Action","Selector","State","map","SessionState","filter","takeUntilDestroy","fromEvent","debounceTime","SessionSetLanguage","ConfigGetAppConfiguration","Navigate","RouterState","OAuthService","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","Observable","required","ProfileGet","withLatestFrom","take","ProfileUpdate","ProfileState","NgModule","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.theme.basic.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["Component","tslib_1.__spread","tslib_1.__decorate","Action","Selector","State","map","SessionState","filter","takeUntilDestroy","fromEvent","debounceTime","SetLanguage","Navigate","RouterState","GetAppConfiguration","Store","OAuthService","ViewChild","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","Observable","slideFromBottom","NgModule","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js index 71b0c14764..2f2950d264 100644 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js +++ b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js @@ -1,2 +1,2 @@ -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@abp/ng.core"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@angular/forms"),require("@ngx-validate/core"),require("@ngxs/store"),require("@ngxs/router-plugin"),require("angular-oauth2-oidc"),require("just-compare"),require("rxjs"),require("rxjs/operators"),require("snq"),require("@abp/ng.theme.shared"),require("primeng/toast")):"function"==typeof define&&define.amd?define("@abp/ng.theme.basic",["exports","@abp/ng.core","@angular/core","@ng-bootstrap/ng-bootstrap","@angular/forms","@ngx-validate/core","@ngxs/store","@ngxs/router-plugin","angular-oauth2-oidc","just-compare","rxjs","rxjs/operators","snq","@abp/ng.theme.shared","primeng/toast"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.theme=e.abp.ng.theme||{},e.abp.ng.theme.basic={}),e.ng_core,e.ng.core,e.ngBootstrap,e.ng.forms,e.core$1,e.store,e.routerPlugin,e.angularOauth2Oidc,e.compare,e.rxjs,e.rxjs.operators,e.snq,e.ng_theme_shared,e.toast)}(this,function(e,n,t,o,a,r,i,s,l,p,u,d,c,m,g){"use strict";p=p&&p.hasOwnProperty("default")?p.default:p,c=c&&c.hasOwnProperty("default")?c.default:c;var b=function(){return(b=Object.assign||function(e){for(var n,t=1,o=arguments.length;t=0;s--)(a=e[s])&&(i=(r<3?a(i):r>3?a(n,t,i):a(n,t))||i);return r>3&&i&&Object.defineProperty(n,t,i),i}function y(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function h(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var o,a,r=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(o=r.next()).done;)i.push(o.value)}catch(e){a={error:e}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(a)throw a.error}}return i}function v(){for(var e=[],n=0;n\n \n

    {{ \'AbpIdentity::ChangePassword\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n'}]}],e.ctorParameters=function(){return[{type:a.FormBuilder},{type:i.Store}]},e.propDecorators={visible:[{type:t.Input}],visibleChange:[{type:t.Output}],modalContent:[{type:t.ViewChild,args:["modalContent",{static:!1}]}]},e}(),N=function(){function e(){this.isCollapsed=!1}return e.type="account",e.decorators=[{type:t.Component,args:[{selector:"abp-layout-account",template:'\n \n\n \n \n \n \n \n\n'}]}],e}(),L=function(){function e(e){this.payload=e}return e.type="[Layout] Add Navigation Element",e}(),O=function(){function e(e){this.name=e}return e.type="[Layout] Remove Navigation ElementByName",e}(),D=function(){function e(){}return e.getNavigationElements=function(e){return e.navigationElements},e.prototype.layoutAddAction=function(e,n){var t=e.getState,o=e.patchState,a=n.payload,r=void 0===a?[]:a,i=t().navigationElements;if(Array.isArray(r)||(r=[r]),i.length&&(r=c(function(){return r.filter(function(e){var n=e.name;return i.findIndex(function(e){return e.name===n})<0})},[])),r.length)return o({navigationElements:i=v(i,r).map(function(e){return b({},e,{order:e.order||99})}).sort(function(e,n){return e.order-n.order})})},e.prototype.layoutRemoveAction=function(e,n){var t=e.getState,o=e.patchState,a=n.name,r=t().navigationElements,i=r.findIndex(function(e){return e.name===a});return i>-1&&(r=r.splice(i,1)),o({navigationElements:r})},f([i.Action(L),y("design:type",Function),y("design:paramtypes",[Object,L]),y("design:returntype",void 0)],e.prototype,"layoutAddAction",null),f([i.Action(O),y("design:type",Function),y("design:paramtypes",[Object,O]),y("design:returntype",void 0)],e.prototype,"layoutRemoveAction",null),f([i.Selector(),y("design:type",Function),y("design:paramtypes",[Object]),y("design:returntype",Array)],e,"getNavigationElements",null),e=f([i.State({name:"LayoutState",defaults:{navigationElements:[]}})],e)}(),k=function(){function e(e,n){this.store=e,this.oauthService=n,this.isOpenChangePassword=!1,this.isOpenProfile=!1,this.rightPartElements=[],this.trackByFn=function(e,n){return n.name},this.trackElementByFn=function(e,n){return n}}return Object.defineProperty(e.prototype,"visibleRoutes$",{get:function(){return this.routes$.pipe(d.map(function(e){return function e(n){return n.reduce(function(n,t){return t.invisible?n:(t.children&&t.children.length&&(t.children=e(t.children)),v(n,[t]))},[])}(e)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"defaultLanguage$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return c(function(){return n.find(function(n){return n.cultureName===e.selectedLangCulture}).displayName})},""))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dropdownLanguages$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return c(function(){return n.filter(function(n){return n.cultureName!==e.selectedLangCulture})})},[]))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedLangCulture",{get:function(){return this.store.selectSnapshot(n.SessionState.getLanguage)},enumerable:!0,configurable:!0}),e.prototype.checkWindowWidth=function(){var e=this;setTimeout(function(){e.navbarRootDropdowns.forEach(function(e){e.close()}),window.innerWidth<768?e.isDropdownChildDynamic=!1:e.isDropdownChildDynamic=!0},0)},e.prototype.ngAfterViewInit=function(){var e=this;this.store.selectSnapshot(D.getNavigationElements).map(function(e){return e.name}).indexOf("LanguageRef")<0&&this.store.dispatch(new L([{element:this.languageRef,order:4,name:"LanguageRef"},{element:this.currentUserRef,order:5,name:"CurrentUserRef"}])),this.navElements$.pipe(d.map(function(e){return e.map(function(e){return e.element})}),d.filter(function(n){return!p(n,e.rightPartElements)}),n.takeUntilDestroy(this)).subscribe(function(n){setTimeout(function(){return e.rightPartElements=n},0)}),this.checkWindowWidth(),u.fromEvent(window,"resize").pipe(n.takeUntilDestroy(this),d.debounceTime(250)).subscribe(function(){e.checkWindowWidth()})},e.prototype.ngOnDestroy=function(){},e.prototype.onChangeLang=function(e){this.store.dispatch(new n.SessionSetLanguage(e)),this.store.dispatch(new n.ConfigGetAppConfiguration)},e.prototype.logout=function(){this.oauthService.logOut(),this.store.dispatch(new s.Navigate(["/account/login"],null,{state:{redirectUrl:this.store.selectSnapshot(s.RouterState).state.url}})),this.store.dispatch(new n.ConfigGetAppConfiguration)},e.type="application",e.decorators=[{type:t.Component,args:[{selector:"abp-layout-application",template:'\n \n\n \n\n\n\n \n\n\n\n \n\n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:i.Store},{type:l.OAuthService}]},e.propDecorators={currentUserRef:[{type:t.ViewChild,args:["currentUser",{static:!1,read:t.TemplateRef}]}],languageRef:[{type:t.ViewChild,args:["language",{static:!1,read:t.TemplateRef}]}],navbarRootDropdowns:[{type:t.ViewChildren,args:["navbarRootDropdown",{read:o.NgbDropdown}]}]},f([i.Select(n.ConfigState.getOne("routes")),y("design:type",u.Observable)],e.prototype,"routes$",void 0),f([i.Select(n.ConfigState.getOne("currentUser")),y("design:type",u.Observable)],e.prototype,"currentUser$",void 0),f([i.Select(n.ConfigState.getDeep("localization.languages")),y("design:type",u.Observable)],e.prototype,"languages$",void 0),f([i.Select(D.getNavigationElements),y("design:type",u.Observable)],e.prototype,"navElements$",void 0),e}();var S,x=function(){function e(){}return e.type="empty",e.decorators=[{type:t.Component,args:[{selector:"abp-layout-empty",template:"\n Layout-empty\n \n "}]}],e}(),A=function(){function e(){this.isCollapsed=!1}return e.decorators=[{type:t.Component,args:[{selector:" abp-layout",template:'\n\n
    \n \n
    \n\n\n\n'}]}],e}(),E=a.Validators.maxLength,F=a.Validators.required,I=a.Validators.email,j=function(){function e(e,n){this.fb=e,this.store=n,this.visibleChange=new t.EventEmitter}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e)},enumerable:!0,configurable:!0}),e.prototype.buildForm=function(){var e=this;this.store.dispatch(new n.ProfileGet).pipe(d.withLatestFrom(this.profile$),d.take(1)).subscribe(function(n){var t=h(n,2)[1];e.form=e.fb.group({userName:[t.userName,[F,E(256)]],email:[t.email,[F,I,E(256)]],name:[t.name||"",[E(64)]],surname:[t.surname||"",[E(64)]],phoneNumber:[t.phoneNumber||"",[E(16)]]})})},e.prototype.onSubmit=function(){var e=this;this.form.invalid||this.store.dispatch(new n.ProfileUpdate(this.form.value)).subscribe(function(){e.visible=!1})},e.prototype.openModal=function(){this.buildForm(),this.visible=!0},e.prototype.ngOnChanges=function(e){var n=e.visible;n&&(n.currentValue?this.openModal():!1===n.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:t.Component,args:[{selector:"abp-profile",template:'\n \n

    {{ \'AbpIdentity::PersonalInfo\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n'}]}],e.ctorParameters=function(){return[{type:a.FormBuilder},{type:i.Store}]},e.propDecorators={visible:[{type:t.Input}],visibleChange:[{type:t.Output}]},f([i.Select(n.ProfileState.getProfile),y("design:type",u.Observable)],e.prototype,"profile$",void 0),e}(),R=[k,N,x],T=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:v(R,[A,P,j]),imports:[n.CoreModule,m.ThemeSharedModule,o.NgbCollapseModule,o.NgbDropdownModule,g.ToastModule,r.NgxValidateCoreModule,i.NgxsModule.forFeature([D])],exports:v(R),entryComponents:v(R)}]}],e}();!function(e){e.State=function(){},e.NavigationElement=function(){}}(S||(S={})),e.LAYOUTS=R,e.LayoutAccountComponent=N,e.LayoutAddNavigationElement=L,e.LayoutApplicationComponent=k,e.LayoutEmptyComponent=x,e.LayoutRemoveNavigationElementByName=O,e.LayoutState=D,e.ThemeBasicModule=T,e.ɵa=k,e.ɵb=D,e.ɵc=N,e.ɵd=x,e.ɵe=A,e.ɵf=P,e.ɵg=j,e.ɵh=D,e.ɵi=L,e.ɵj=O,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@ngx-validate/core"),require("@ngxs/store"),require("primeng/toast"),require("@ngxs/router-plugin"),require("angular-oauth2-oidc"),require("just-compare"),require("rxjs"),require("rxjs/operators"),require("snq")):"function"==typeof define&&define.amd?define("@abp/ng.theme.basic",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ng-bootstrap/ng-bootstrap","@ngx-validate/core","@ngxs/store","primeng/toast","@ngxs/router-plugin","angular-oauth2-oidc","just-compare","rxjs","rxjs/operators","snq"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.theme=e.abp.ng.theme||{},e.abp.ng.theme.basic={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.ngBootstrap,e.core$1,e.store,e.toast,e.routerPlugin,e.angularOauth2Oidc,e.compare,e.rxjs,e.rxjs.operators,e.snq)}(this,function(e,n,t,o,r,a,i,l,p,s,u,c,d,g){"use strict";u=u&&u.hasOwnProperty("default")?u.default:u,g=g&&g.hasOwnProperty("default")?g.default:g;var m=function(){return(m=Object.assign||function(e){for(var n,t=1,o=arguments.length;t=0;l--)(r=e[l])&&(i=(a<3?r(i):a>3?r(n,t,i):r(n,t))||i);return a>3&&i&&Object.defineProperty(n,t,i),i}function h(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function b(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var o,r,a=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(t=a.return)&&t.call(a)}finally{if(r)throw r.error}}return i}function y(){for(var e=[],n=0;n\n"}]}],e}();var w=function(){function e(e){this.payload=e}return e.type="[Layout] Add Navigation Element",e}();var C=function(){function e(e){this.name=e}return e.type="[Layout] Remove Navigation ElementByName",e}();var O=function(){function e(){}return e.getNavigationElements=function(e){return e.navigationElements},e.prototype.layoutAddAction=function(e,n){var t=e.getState,o=e.patchState,r=n.payload,a=void 0===r?[]:r,i=t().navigationElements;if(Array.isArray(a)||(a=[a]),i.length&&(a=g(function(){return a.filter(function(e){var n=e.name;return i.findIndex(function(e){return e.name===n})<0})},[])),a.length)return o({navigationElements:i=y(i,a).map(function(e){return m({},e,{order:e.order||99})}).sort(function(e,n){return e.order-n.order})})},e.prototype.layoutRemoveAction=function(e,n){var t=e.getState,o=e.patchState,r=n.name,a=t().navigationElements,i=a.findIndex(function(e){return e.name===r});return i>-1&&(a=a.splice(i,1)),o({navigationElements:a})},f([i.Action(w),h("design:type",Function),h("design:paramtypes",[Object,w]),h("design:returntype",void 0)],e.prototype,"layoutAddAction",null),f([i.Action(C),h("design:type",Function),h("design:paramtypes",[Object,C]),h("design:returntype",void 0)],e.prototype,"layoutRemoveAction",null),f([i.Selector(),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",Array)],e,"getNavigationElements",null),e=f([i.State({name:"LayoutState",defaults:{navigationElements:[]}})],e)}(),L=function(){function e(e,n){this.store=e,this.oauthService=n,this.isOpenChangePassword=!1,this.isOpenProfile=!1,this.rightPartElements=[],this.trackByFn=function(e,n){return n.name},this.trackElementByFn=function(e,n){return n}}return Object.defineProperty(e.prototype,"visibleRoutes$",{get:function(){return this.routes$.pipe(d.map(function(e){return function e(n){return n.reduce(function(n,t){return t.invisible?n:(t.children&&t.children.length&&(t.children=e(t.children)),y(n,[t]))},[])}(e)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"defaultLanguage$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return g(function(){return n.find(function(n){return n.cultureName===e.selectedLangCulture}).displayName})},""))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dropdownLanguages$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return g(function(){return n.filter(function(n){return n.cultureName!==e.selectedLangCulture})})},[]))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedLangCulture",{get:function(){return this.store.selectSnapshot(n.SessionState.getLanguage)},enumerable:!0,configurable:!0}),e.prototype.checkWindowWidth=function(){var e=this;setTimeout(function(){e.navbarRootDropdowns.forEach(function(e){e.close()}),window.innerWidth<768?e.isDropdownChildDynamic=!1:e.isDropdownChildDynamic=!0},0)},e.prototype.ngAfterViewInit=function(){var e=this;this.store.selectSnapshot(O.getNavigationElements).map(function(e){return e.name}).indexOf("LanguageRef")<0&&this.store.dispatch(new w([{element:this.languageRef,order:4,name:"LanguageRef"},{element:this.currentUserRef,order:5,name:"CurrentUserRef"}])),this.navElements$.pipe(d.map(function(e){return e.map(function(e){return e.element})}),d.filter(function(n){return!u(n,e.rightPartElements)}),n.takeUntilDestroy(this)).subscribe(function(n){setTimeout(function(){return e.rightPartElements=n},0)}),this.checkWindowWidth(),c.fromEvent(window,"resize").pipe(n.takeUntilDestroy(this),d.debounceTime(250)).subscribe(function(){e.checkWindowWidth()})},e.prototype.ngOnDestroy=function(){},e.prototype.onChangeLang=function(e){this.store.dispatch(new n.SetLanguage(e))},e.prototype.logout=function(){this.oauthService.logOut(),this.store.dispatch(new p.Navigate(["/"],null,{state:{redirectUrl:this.store.selectSnapshot(p.RouterState).state.url}})),this.store.dispatch(new n.GetAppConfiguration)},e.type="application",e.decorators=[{type:o.Component,args:[{selector:"abp-layout-application",template:'\n \n\n \n\n\n\n \n\n\n\n \n\n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:i.Store},{type:s.OAuthService}]},e.propDecorators={currentUserRef:[{type:o.ViewChild,args:["currentUser",{static:!1,read:o.TemplateRef}]}],languageRef:[{type:o.ViewChild,args:["language",{static:!1,read:o.TemplateRef}]}],navbarRootDropdowns:[{type:o.ViewChildren,args:["navbarRootDropdown",{read:r.NgbDropdown}]}]},f([i.Select(n.ConfigState.getOne("routes")),h("design:type",c.Observable)],e.prototype,"routes$",void 0),f([i.Select(n.ConfigState.getOne("currentUser")),h("design:type",c.Observable)],e.prototype,"currentUser$",void 0),f([i.Select(n.ConfigState.getDeep("localization.languages")),h("design:type",c.Observable)],e.prototype,"languages$",void 0),f([i.Select(O.getNavigationElements),h("design:type",c.Observable)],e.prototype,"navElements$",void 0),e}();var k=function(){function e(){}return e.type="empty",e.decorators=[{type:o.Component,args:[{selector:"abp-layout-empty",template:"\n Layout-empty\n \n "}]}],e}();var P=function(){function e(e){this.store=e,this.isCollapsed=!0}return Object.defineProperty(e.prototype,"appInfo",{get:function(){return this.store.selectSnapshot(n.ConfigState.getApplicationInfo)},enumerable:!0,configurable:!0}),e.decorators=[{type:o.Component,args:[{selector:" abp-layout",template:'\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n',animations:[t.slideFromBottom]}]}],e.ctorParameters=function(){return[{type:i.Store}]},e}();var S,x=[L,v,k],D=function(){function e(){}return e.decorators=[{type:o.NgModule,args:[{declarations:y(x,[P]),imports:[n.CoreModule,t.ThemeSharedModule,r.NgbCollapseModule,r.NgbDropdownModule,l.ToastModule,a.NgxValidateCoreModule,i.NgxsModule.forFeature([O])],exports:y(x),entryComponents:y(x)}]}],e}();!function(e){function n(){}function t(){}e.State=n,e.NavigationElement=t}(S||(S={})),e.AccountLayoutComponent=v,e.AddNavigationElement=w,e.ApplicationLayoutComponent=L,e.EmptyLayoutComponent=k,e.LAYOUTS=x,e.LayoutState=O,e.RemoveNavigationElementByName=C,e.ThemeBasicModule=D,e.ɵa=L,e.ɵb=O,e.ɵc=v,e.ɵd=k,e.ɵe=P,e.ɵf=O,e.ɵg=w,e.ɵh=C,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.theme.basic.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map index f53d0c0314..e55c34dc28 100644 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map +++ b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-account/layout-account.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/layout-application/layout-application.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-empty/layout-empty.component.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","minLength","forms","Validators","required","ChangePasswordComponent","fb","store","visibleChange","EventEmitter","_visible","emit","ngOnInit","form","group","password","validatePassword","newPassword","repeatNewPassword","validators","comparePasswords","onSubmit","_this","invalid","dispatch","ProfileChangePassword","currentPassword","get","subscribe","visible","openModal","ngOnChanges","_a","currentValue","Component","args","selector","template","FormBuilder","Store","Input","Output","ViewChild","static","LayoutAccountComponent","isCollapsed","type","LayoutAddNavigationElement","payload","LayoutRemoveNavigationElementByName","name","LayoutState","getNavigationElements","navigationElements","layoutAddAction","_b","getState","patchState","_c","Array","isArray","snq","filter","findIndex","nav","tslib_1.__spread","map","element","order","sort","a","b","layoutRemoveAction","index","splice","tslib_1.__decorate","Action","Selector","State","defaults","LayoutApplicationComponent","oauthService","isOpenChangePassword","isOpenProfile","rightPartElements","trackByFn","_","item","trackElementByFn","routes$","pipe","routes","getVisibleRoutes","reduce","acc","val","invisible","children","languages$","languages","find","lang","cultureName","selectedLangCulture","displayName","selectSnapshot","SessionState","getLanguage","checkWindowWidth","setTimeout","navbarRootDropdowns","forEach","close","window","innerWidth","isDropdownChildDynamic","ngAfterViewInit","indexOf","languageRef","currentUserRef","navElements$","elements","compare","takeUntilDestroy","fromEvent","debounceTime","ngOnDestroy","onChangeLang","SessionSetLanguage","ConfigGetAppConfiguration","logout","logOut","Navigate","state","redirectUrl","RouterState","url","OAuthService","read","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","getOne","Observable","getDeep","Layout","LayoutEmptyComponent","LayoutComponent","maxLength","email","ProfileComponent","buildForm","ProfileGet","withLatestFrom","profile$","take","profile","userName","surname","phoneNumber","ProfileUpdate","ProfileState","getProfile","LAYOUTS","ThemeBasicModule","NgModule","declarations","imports","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule","forFeature","exports","entryComponents"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ProfileChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords, validatePassword } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store\n .dispatch(\n new ProfileChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './layout-account.component.html',\n})\nexport class LayoutAccountComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n\n isCollapsed: boolean = false;\n}\n","import { Layout } from '../models/layout';\n\nexport class LayoutAddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class LayoutRemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(LayoutAddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: LayoutAddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(LayoutRemoveNavigationElementByName)\n layoutRemoveAction(\n { getState, patchState }: StateContext,\n { name }: LayoutRemoveNavigationElementByName,\n ) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n ConfigGetAppConfiguration,\n ConfigState,\n eLayoutType,\n SessionSetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { LayoutAddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './layout-application.component.html',\n})\nexport class LayoutApplicationComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new LayoutAddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SessionSetLanguage(cultureName));\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class LayoutEmptyComponent {\n // required for dynamic component\n static type = eLayoutType.empty;\n}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n})\nexport class LayoutComponent {\n isCollapsed: boolean = false;\n}\n","import { Profile, ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new ProfileGet())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { LayoutAccountComponent } from './components/layout-account/layout-account.component';\nimport { LayoutApplicationComponent } from './components/layout-application/layout-application.component';\nimport { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { ToastModule } from 'primeng/toast';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","AccountLayoutComponent","type","Component","args","selector","template","AddNavigationElement","payload","RemoveNavigationElementByName","name","LayoutState","getNavigationElements","_a","navigationElements","layoutAddAction","_b","getState","patchState","_c","Array","isArray","snq","filter","findIndex","nav","tslib_1.__spread","map","element","order","sort","a","b","layoutRemoveAction","index","splice","tslib_1.__decorate","Action","Selector","State","defaults","ApplicationLayoutComponent","store","oauthService","isOpenChangePassword","isOpenProfile","rightPartElements","trackByFn","_","item","trackElementByFn","routes$","pipe","routes","getVisibleRoutes","reduce","acc","val","invisible","children","_this","languages$","languages","find","lang","cultureName","selectedLangCulture","displayName","selectSnapshot","SessionState","getLanguage","checkWindowWidth","setTimeout","navbarRootDropdowns","forEach","close","window","innerWidth","isDropdownChildDynamic","ngAfterViewInit","indexOf","dispatch","languageRef","currentUserRef","navElements$","elements","compare","takeUntilDestroy","subscribe","fromEvent","debounceTime","ngOnDestroy","onChangeLang","SetLanguage","logout","logOut","Navigate","state","redirectUrl","RouterState","url","GetAppConfiguration","Store","OAuthService","ViewChild","static","read","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","getOne","Observable","getDeep","EmptyLayoutComponent","LayoutComponent","isCollapsed","getApplicationInfo","animations","slideFromBottom","Layout","LAYOUTS","ThemeBasicModule","NgModule","declarations","imports","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule","forFeature","exports","entryComponents","NavigationElement"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js index dc107326c4..cf2d483fbb 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js @@ -5,14 +5,12 @@ /** * Generated bundle index. Do not edit. */ -export { LAYOUTS, ThemeBasicModule, LayoutAddNavigationElement, LayoutRemoveNavigationElementByName, LayoutAccountComponent, LayoutApplicationComponent, LayoutEmptyComponent, LayoutState } from './public-api'; -export { LayoutAddNavigationElement as ɵi, LayoutRemoveNavigationElementByName as ɵj } from './lib/actions/layout.actions'; -export { ChangePasswordComponent as ɵf } from './lib/components/change-password/change-password.component'; -export { LayoutAccountComponent as ɵc } from './lib/components/layout-account/layout-account.component'; -export { LayoutApplicationComponent as ɵa } from './lib/components/layout-application/layout-application.component'; -export { LayoutEmptyComponent as ɵd } from './lib/components/layout-empty/layout-empty.component'; +export { LAYOUTS, ThemeBasicModule, AddNavigationElement, RemoveNavigationElementByName, AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent, LayoutState } from './public-api'; +export { AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh } from './lib/actions/layout.actions'; +export { AccountLayoutComponent as ɵc } from './lib/components/account-layout/account-layout.component'; +export { ApplicationLayoutComponent as ɵa } from './lib/components/application-layout/application-layout.component'; +export { EmptyLayoutComponent as ɵd } from './lib/components/empty-layout/empty-layout.component'; export { LayoutComponent as ɵe } from './lib/components/layout/layout.component'; -export { ProfileComponent as ɵg } from './lib/components/profile/profile.component'; export { LayoutState as ɵb } from './lib/states'; -export { LayoutState as ɵh } from './lib/states/layout.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa01BQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsbUNBQW1DLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDeEgsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDbEgsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBRWxGLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7TGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQgYXMgybVpLExheW91dFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIGFzIMm1an0gZnJvbSAnLi9saWIvYWN0aW9ucy9sYXlvdXQuYWN0aW9ucyc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEFjY291bnRDb21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC1hY2NvdW50L2xheW91dC1hY2NvdW50LmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEFwcGxpY2F0aW9uQ29tcG9uZW50IGFzIMm1YX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEVtcHR5Q29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sYXlvdXQtZW1wdHkvbGF5b3V0LWVtcHR5LmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1a30gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVofSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file +export { LayoutState as ɵf } from './lib/states/layout.state'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc0xBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUcsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FkZE5hdmlnYXRpb25FbGVtZW50IGFzIMm1ZyxSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSBhcyDJtWh9IGZyb20gJy4vbGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50TGF5b3V0Q29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbXB0eUxheW91dENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtMYXlvdXRDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1aX0gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVmfSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js index 0ee70b2082..acfe624a35 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js @@ -2,5 +2,5 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from './layout.actions'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGdGQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file +export { AddNavigationElement, RemoveNavigationElementByName } from './layout.actions'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9FQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js index dea3851f05..6f32de27d4 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js @@ -2,7 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export class LayoutAddNavigationElement { +export class AddNavigationElement { /** * @param {?} payload */ @@ -10,14 +10,14 @@ export class LayoutAddNavigationElement { this.payload = payload; } } -LayoutAddNavigationElement.type = '[Layout] Add Navigation Element'; +AddNavigationElement.type = '[Layout] Add Navigation Element'; if (false) { /** @type {?} */ - LayoutAddNavigationElement.type; + AddNavigationElement.type; /** @type {?} */ - LayoutAddNavigationElement.prototype.payload; + AddNavigationElement.prototype.payload; } -export class LayoutRemoveNavigationElementByName { +export class RemoveNavigationElementByName { /** * @param {?} name */ @@ -25,11 +25,11 @@ export class LayoutRemoveNavigationElementByName { this.name = name; } } -LayoutRemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; +RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; if (false) { /** @type {?} */ - LayoutRemoveNavigationElementByName.type; + RemoveNavigationElementByName.type; /** @type {?} */ - LayoutRemoveNavigationElementByName.prototype.name; + RemoveNavigationElementByName.prototype.name; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLE1BQU0sT0FBTywwQkFBMEI7Ozs7SUFFckMsWUFBbUIsT0FBOEQ7UUFBOUQsWUFBTyxHQUFQLE9BQU8sQ0FBdUQ7SUFBRyxDQUFDOztBQURyRSwrQkFBSSxHQUFHLGlDQUFpQyxDQUFDOzs7SUFBekQsZ0NBQXlEOztJQUM3Qyw2Q0FBcUU7O0FBR25GLE1BQU0sT0FBTyxtQ0FBbUM7Ozs7SUFFOUMsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFBRyxDQUFDOztBQURuQix3Q0FBSSxHQUFHLDBDQUEwQyxDQUFDOzs7SUFBbEUseUNBQWtFOztJQUN0RCxtREFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIExheW91dEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIExheW91dFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLE1BQU0sT0FBTyxvQkFBb0I7Ozs7SUFFL0IsWUFBbUIsT0FBOEQ7UUFBOUQsWUFBTyxHQUFQLE9BQU8sQ0FBdUQ7SUFBRyxDQUFDOztBQURyRSx5QkFBSSxHQUFHLGlDQUFpQyxDQUFDOzs7SUFBekQsMEJBQXlEOztJQUM3Qyx1Q0FBcUU7O0FBR25GLE1BQU0sT0FBTyw2QkFBNkI7Ozs7SUFFeEMsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFBRyxDQUFDOztBQURuQixrQ0FBSSxHQUFHLDBDQUEwQyxDQUFDOzs7SUFBbEUsbUNBQWtFOztJQUN0RCw2Q0FBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js new file mode 100644 index 0000000000..65eef0327d --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js @@ -0,0 +1,20 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +export class AccountLayoutComponent { +} +// required for dynamic component +AccountLayoutComponent.type = "account" /* account */; +AccountLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-account', + template: "\n" + }] } +]; +if (false) { + /** @type {?} */ + AccountLayoutComponent.type; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8xQyxNQUFNLE9BQU8sc0JBQXNCOzs7QUFFMUIsMkJBQUksMkJBQXVCOztZQU5uQyxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsNkNBQThDO2FBQy9DOzs7O0lBR0MsNEJBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtYWNjb3VudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvdW50LWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFjY291bnRMYXlvdXRDb21wb25lbnQge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5hY2NvdW50O1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js new file mode 100644 index 0000000000..6982b9fbb2 --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js @@ -0,0 +1,281 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { GetAppConfiguration, ConfigState, SetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; +import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; +import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; +import { Navigate, RouterState } from '@ngxs/router-plugin'; +import { Select, Store } from '@ngxs/store'; +import { OAuthService } from 'angular-oauth2-oidc'; +import compare from 'just-compare'; +import { fromEvent, Observable } from 'rxjs'; +import { debounceTime, filter, map } from 'rxjs/operators'; +import snq from 'snq'; +import { AddNavigationElement } from '../../actions'; +import { LayoutState } from '../../states'; +export class ApplicationLayoutComponent { + /** + * @param {?} store + * @param {?} oauthService + */ + constructor(store, oauthService) { + this.store = store; + this.oauthService = oauthService; + this.isOpenChangePassword = false; + this.isOpenProfile = false; + this.rightPartElements = []; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + (_, item) => item.name); + this.trackElementByFn = (/** + * @param {?} _ + * @param {?} element + * @return {?} + */ + (_, element) => element); + } + /** + * @return {?} + */ + get visibleRoutes$() { + return this.routes$.pipe(map((/** + * @param {?} routes + * @return {?} + */ + routes => getVisibleRoutes(routes)))); + } + /** + * @return {?} + */ + get defaultLanguage$() { + return this.languages$.pipe(map((/** + * @param {?} languages + * @return {?} + */ + languages => snq((/** + * @return {?} + */ + () => languages.find((/** + * @param {?} lang + * @return {?} + */ + lang => lang.cultureName === this.selectedLangCulture)).displayName))), '')); + } + /** + * @return {?} + */ + get dropdownLanguages$() { + return this.languages$.pipe(map((/** + * @param {?} languages + * @return {?} + */ + languages => snq((/** + * @return {?} + */ + () => languages.filter((/** + * @param {?} lang + * @return {?} + */ + lang => lang.cultureName !== this.selectedLangCulture))))), [])); + } + /** + * @return {?} + */ + get selectedLangCulture() { + return this.store.selectSnapshot(SessionState.getLanguage); + } + /** + * @private + * @return {?} + */ + checkWindowWidth() { + setTimeout((/** + * @return {?} + */ + () => { + this.navbarRootDropdowns.forEach((/** + * @param {?} item + * @return {?} + */ + item => { + item.close(); + })); + if (window.innerWidth < 768) { + this.isDropdownChildDynamic = false; + } + else { + this.isDropdownChildDynamic = true; + } + }), 0); + } + /** + * @return {?} + */ + ngAfterViewInit() { + /** @type {?} */ + const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** + * @param {?} __0 + * @return {?} + */ + ({ name }) => name)); + if (navigations.indexOf('LanguageRef') < 0) { + this.store.dispatch(new AddNavigationElement([ + { element: this.languageRef, order: 4, name: 'LanguageRef' }, + { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, + ])); + } + this.navElements$ + .pipe(map((/** + * @param {?} elements + * @return {?} + */ + elements => elements.map((/** + * @param {?} __0 + * @return {?} + */ + ({ element }) => element)))), filter((/** + * @param {?} elements + * @return {?} + */ + elements => !compare(elements, this.rightPartElements))), takeUntilDestroy(this)) + .subscribe((/** + * @param {?} elements + * @return {?} + */ + elements => { + setTimeout((/** + * @return {?} + */ + () => (this.rightPartElements = elements)), 0); + })); + this.checkWindowWidth(); + fromEvent(window, 'resize') + .pipe(takeUntilDestroy(this), debounceTime(250)) + .subscribe((/** + * @return {?} + */ + () => { + this.checkWindowWidth(); + })); + } + /** + * @return {?} + */ + ngOnDestroy() { } + /** + * @param {?} cultureName + * @return {?} + */ + onChangeLang(cultureName) { + this.store.dispatch(new SetLanguage(cultureName)); + } + /** + * @return {?} + */ + logout() { + this.oauthService.logOut(); + this.store.dispatch(new Navigate(['/'], null, { + state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, + })); + this.store.dispatch(new GetAppConfiguration()); + } +} +// required for dynamic component +ApplicationLayoutComponent.type = "application" /* application */; +ApplicationLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-application', + template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" + }] } +]; +/** @nocollapse */ +ApplicationLayoutComponent.ctorParameters = () => [ + { type: Store }, + { type: OAuthService } +]; +ApplicationLayoutComponent.propDecorators = { + currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], + languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], + navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] +}; +tslib_1.__decorate([ + Select(ConfigState.getOne('routes')), + tslib_1.__metadata("design:type", Observable) +], ApplicationLayoutComponent.prototype, "routes$", void 0); +tslib_1.__decorate([ + Select(ConfigState.getOne('currentUser')), + tslib_1.__metadata("design:type", Observable) +], ApplicationLayoutComponent.prototype, "currentUser$", void 0); +tslib_1.__decorate([ + Select(ConfigState.getDeep('localization.languages')), + tslib_1.__metadata("design:type", Observable) +], ApplicationLayoutComponent.prototype, "languages$", void 0); +tslib_1.__decorate([ + Select(LayoutState.getNavigationElements), + tslib_1.__metadata("design:type", Observable) +], ApplicationLayoutComponent.prototype, "navElements$", void 0); +if (false) { + /** @type {?} */ + ApplicationLayoutComponent.type; + /** @type {?} */ + ApplicationLayoutComponent.prototype.routes$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUser$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languages$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navElements$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUserRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languageRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navbarRootDropdowns; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenChangePassword; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenProfile; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isDropdownChildDynamic; + /** @type {?} */ + ApplicationLayoutComponent.prototype.rightPartElements; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackByFn; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackElementByFn; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.store; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.oauthService; +} +/** + * @param {?} routes + * @return {?} + */ +function getVisibleRoutes(routes) { + return routes.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + (acc, val) => { + if (val.invisible) + return acc; + if (val.children && val.children.length) { + val.children = getVisibleRoutes(val.children); + } + return [...acc, val]; + }), []); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCxtQkFBbUIsRUFDbkIsV0FBVyxFQUVYLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBTTNDLE1BQU0sT0FBTywwQkFBMEI7Ozs7O0lBNERyQyxZQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUssQ0FB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QXNDOztJQUV0QyxtREFBK0I7O0lBRS9CLDREQUFnQzs7SUF5QmhDLHVEQUEyQzs7SUFFM0MsK0NBQW1FOztJQUVuRSxzREFBMkU7Ozs7O0lBRS9ELDJDQUFvQjs7Ozs7SUFBRSxrREFBa0M7Ozs7OztBQWtFdEUsU0FBUyxnQkFBZ0IsQ0FBQyxNQUF1QjtJQUMvQyxPQUFPLE1BQU0sQ0FBQyxNQUFNOzs7OztJQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ2hDLElBQUksR0FBRyxDQUFDLFNBQVM7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUU5QixJQUFJLEdBQUcsQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDdkMsR0FBRyxDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDL0M7UUFFRCxPQUFPLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFCUCxcbiAgQXBwbGljYXRpb25Db25maWd1cmF0aW9uLFxuICBHZXRBcHBDb25maWd1cmF0aW9uLFxuICBDb25maWdTdGF0ZSxcbiAgZUxheW91dFR5cGUsXG4gIFNldExhbmd1YWdlLFxuICBTZXNzaW9uU3RhdGUsXG4gIHRha2VVbnRpbERlc3Ryb3ksXG59IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVHJhY2tCeUZ1bmN0aW9uLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93biB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5hdmlnYXRlLCBSb3V0ZXJTdGF0ZSB9IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4nO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9BdXRoU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcbmltcG9ydCB7IGZyb21FdmVudCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcbmltcG9ydCB7IEFkZE5hdmlnYXRpb25FbGVtZW50IH0gZnJvbSAnLi4vLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGF5b3V0JztcbmltcG9ydCB7IExheW91dFN0YXRlIH0gZnJvbSAnLi4vLi4vc3RhdGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1hcHBsaWNhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHBsaWNhdGlvbi1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIC8vIHJlcXVpcmVkIGZvciBkeW5hbWljIGNvbXBvbmVudFxuICBzdGF0aWMgdHlwZSA9IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uO1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0T25lKCdyb3V0ZXMnKSlcbiAgcm91dGVzJDogT2JzZXJ2YWJsZTxBQlAuRnVsbFJvdXRlW10+O1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0T25lKCdjdXJyZW50VXNlcicpKVxuICBjdXJyZW50VXNlciQ6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkN1cnJlbnRVc2VyPjtcblxuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldERlZXAoJ2xvY2FsaXphdGlvbi5sYW5ndWFnZXMnKSlcbiAgbGFuZ3VhZ2VzJDogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uTGFuZ3VhZ2VbXT47XG5cbiAgQFNlbGVjdChMYXlvdXRTdGF0ZS5nZXROYXZpZ2F0aW9uRWxlbWVudHMpXG4gIG5hdkVsZW1lbnRzJDogT2JzZXJ2YWJsZTxMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXT47XG5cbiAgQFZpZXdDaGlsZCgnY3VycmVudFVzZXInLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGN1cnJlbnRVc2VyUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoJ2xhbmd1YWdlJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBsYW5ndWFnZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkcmVuKCduYXZiYXJSb290RHJvcGRvd24nLCB7IHJlYWQ6IE5nYkRyb3Bkb3duIH0pXG4gIG5hdmJhclJvb3REcm9wZG93bnM6IFF1ZXJ5TGlzdDxOZ2JEcm9wZG93bj47XG5cbiAgaXNPcGVuQ2hhbmdlUGFzc3dvcmQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc09wZW5Qcm9maWxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNEcm9wZG93bkNoaWxkRHluYW1pYzogYm9vbGVhbjtcblxuICBnZXQgdmlzaWJsZVJvdXRlcyQoKTogT2JzZXJ2YWJsZTxBQlAuRnVsbFJvdXRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXMkLnBpcGUobWFwKHJvdXRlcyA9PiBnZXRWaXNpYmxlUm91dGVzKHJvdXRlcykpKTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0TGFuZ3VhZ2UkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzJC5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICBsYW5ndWFnZXMgPT4gc25xKCgpID0+IGxhbmd1YWdlcy5maW5kKGxhbmcgPT4gbGFuZy5jdWx0dXJlTmFtZSA9PT0gdGhpcy5zZWxlY3RlZExhbmdDdWx0dXJlKS5kaXNwbGF5TmFtZSksXG4gICAgICAgICcnLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IGRyb3Bkb3duTGFuZ3VhZ2VzJCgpOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5MYW5ndWFnZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzJC5waXBlKFxuICAgICAgbWFwKGxhbmd1YWdlcyA9PiBzbnEoKCkgPT4gbGFuZ3VhZ2VzLmZpbHRlcihsYW5nID0+IGxhbmcuY3VsdHVyZU5hbWUgIT09IHRoaXMuc2VsZWN0ZWRMYW5nQ3VsdHVyZSkpLCBbXSksXG4gICAgKTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZExhbmdDdWx0dXJlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoU2Vzc2lvblN0YXRlLmdldExhbmd1YWdlKTtcbiAgfVxuXG4gIHJpZ2h0UGFydEVsZW1lbnRzOiBUZW1wbGF0ZVJlZjxhbnk+W10gPSBbXTtcblxuICB0cmFja0J5Rm46IFRyYWNrQnlGdW5jdGlvbjxBQlAuRnVsbFJvdXRlPiA9IChfLCBpdGVtKSA9PiBpdGVtLm5hbWU7XG5cbiAgdHJhY2tFbGVtZW50QnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFCUC5GdWxsUm91dGU+ID0gKF8sIGVsZW1lbnQpID0+IGVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgb2F1dGhTZXJ2aWNlOiBPQXV0aFNlcnZpY2UpIHt9XG5cbiAgcHJpdmF0ZSBjaGVja1dpbmRvd1dpZHRoKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5uYXZiYXJSb290RHJvcGRvd25zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgIGl0ZW0uY2xvc2UoKTtcbiAgICAgIH0pO1xuICAgICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDwgNzY4KSB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93bkNoaWxkRHluYW1pYyA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pc0Ryb3Bkb3duQ2hpbGREeW5hbWljID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9LCAwKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9ucyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoTGF5b3V0U3RhdGUuZ2V0TmF2aWdhdGlvbkVsZW1lbnRzKS5tYXAoKHsgbmFtZSB9KSA9PiBuYW1lKTtcblxuICAgIGlmIChuYXZpZ2F0aW9ucy5pbmRleE9mKCdMYW5ndWFnZVJlZicpIDwgMCkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgbmV3IEFkZE5hdmlnYXRpb25FbGVtZW50KFtcbiAgICAgICAgICB7IGVsZW1lbnQ6IHRoaXMubGFuZ3VhZ2VSZWYsIG9yZGVyOiA0LCBuYW1lOiAnTGFuZ3VhZ2VSZWYnIH0sXG4gICAgICAgICAgeyBlbGVtZW50OiB0aGlzLmN1cnJlbnRVc2VyUmVmLCBvcmRlcjogNSwgbmFtZTogJ0N1cnJlbnRVc2VyUmVmJyB9LFxuICAgICAgICBdKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5uYXZFbGVtZW50cyRcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoZWxlbWVudHMgPT4gZWxlbWVudHMubWFwKCh7IGVsZW1lbnQgfSkgPT4gZWxlbWVudCkpLFxuICAgICAgICBmaWx0ZXIoZWxlbWVudHMgPT4gIWNvbXBhcmUoZWxlbWVudHMsIHRoaXMucmlnaHRQYXJ0RWxlbWVudHMpKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveSh0aGlzKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZWxlbWVudHMgPT4ge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLnJpZ2h0UGFydEVsZW1lbnRzID0gZWxlbWVudHMpLCAwKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGVja1dpbmRvd1dpZHRoKCk7XG5cbiAgICBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMjUwKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoZWNrV2luZG93V2lkdGgoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxuXG4gIG9uQ2hhbmdlTGFuZyhjdWx0dXJlTmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgU2V0TGFuZ3VhZ2UoY3VsdHVyZU5hbWUpKTtcbiAgfVxuXG4gIGxvZ291dCgpIHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5sb2dPdXQoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgbmV3IE5hdmlnYXRlKFsnLyddLCBudWxsLCB7XG4gICAgICAgIHN0YXRlOiB7IHJlZGlyZWN0VXJsOiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKS5zdGF0ZS51cmwgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0QXBwQ29uZmlndXJhdGlvbigpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRWaXNpYmxlUm91dGVzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKSB7XG4gIHJldHVybiByb3V0ZXMucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgIGlmICh2YWwuaW52aXNpYmxlKSByZXR1cm4gYWNjO1xuXG4gICAgaWYgKHZhbC5jaGlsZHJlbiAmJiB2YWwuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICB2YWwuY2hpbGRyZW4gPSBnZXRWaXNpYmxlUm91dGVzKHZhbC5jaGlsZHJlbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIFsuLi5hY2MsIHZhbF07XG4gIH0sIFtdKTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/change-password/change-password.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/change-password/change-password.component.js deleted file mode 100644 index 317d262e28..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/change-password/change-password.component.js +++ /dev/null @@ -1,125 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { ProfileChangePassword } from '@abp/ng.core'; -import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild, } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { comparePasswords, validatePassword } from '@ngx-validate/core'; -import { Store } from '@ngxs/store'; -const { minLength, required } = Validators; -export class ChangePasswordComponent { - /** - * @param {?} fb - * @param {?} store - */ - constructor(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - /** - * @return {?} - */ - get visible() { - return this._visible; - } - /** - * @param {?} value - * @return {?} - */ - set visible(value) { - this._visible = value; - this.visibleChange.emit(value); - } - /** - * @return {?} - */ - ngOnInit() { - this.form = this.fb.group({ - password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - }, { - validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], - }); - } - /** - * @return {?} - */ - onSubmit() { - if (this.form.invalid) - return; - this.store - .dispatch(new ProfileChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .subscribe((/** - * @return {?} - */ - () => { - this.visible = false; - })); - } - /** - * @return {?} - */ - openModal() { - this.visible = true; - } - /** - * @param {?} __0 - * @return {?} - */ - ngOnChanges({ visible }) { - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - } -} -ChangePasswordComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } -]; -/** @nocollapse */ -ChangePasswordComponent.ctorParameters = () => [ - { type: FormBuilder }, - { type: Store } -]; -ChangePasswordComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }], - modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] -}; -if (false) { - /** - * @type {?} - * @protected - */ - ChangePasswordComponent.prototype._visible; - /** @type {?} */ - ChangePasswordComponent.prototype.visibleChange; - /** @type {?} */ - ChangePasswordComponent.prototype.modalContent; - /** @type {?} */ - ChangePasswordComponent.prototype.form; - /** - * @type {?} - * @private - */ - ChangePasswordComponent.prototype.fb; - /** - * @type {?} - * @private - */ - ChangePasswordComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7TUFFOUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEdBQUcsVUFBVTtBQU0xQyxNQUFNLE9BQU8sdUJBQXVCOzs7OztJQXFCbEMsWUFBb0IsRUFBZSxFQUFVLEtBQVk7UUFBckMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFQekQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBT2dCLENBQUM7Ozs7SUFsQjdELElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVELElBQUksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7OztJQVlELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUN2QjtZQUNFLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckcsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0csRUFDRDtZQUNFLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUMsYUFBYSxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztTQUNyRSxDQUNGLENBQUM7SUFDSixDQUFDOzs7O0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsS0FBSzthQUNQLFFBQVEsQ0FDUCxJQUFJLHFCQUFxQixDQUFDO1lBQ3hCLGVBQWUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLO1lBQ2hELFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxLQUFLO1NBQ2hELENBQUMsQ0FDSDthQUNBLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7OztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBaUI7UUFDcEMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXJCLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRTtZQUN4QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7YUFBTSxJQUFJLE9BQU8sQ0FBQyxZQUFZLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7U0FDdEI7SUFDSCxDQUFDOzs7WUFuRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxxQkFBcUI7Z0JBQy9CLGd4REFBK0M7YUFDaEQ7Ozs7WUFUUSxXQUFXO1lBRVgsS0FBSzs7O3NCQVdYLEtBQUs7NEJBVUwsTUFBTTsyQkFHTixTQUFTLFNBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7Ozs7OztJQWY1QywyQ0FBbUI7O0lBWW5CLGdEQUM0Qzs7SUFFNUMsK0NBQytCOztJQUUvQix1Q0FBZ0I7Ozs7O0lBRUoscUNBQXVCOzs7OztJQUFFLHdDQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2ZpbGVDaGFuZ2VQYXNzd29yZCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvbXBhcmVQYXNzd29yZHMsIHZhbGlkYXRlUGFzc3dvcmQgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmNvbnN0IHsgbWluTGVuZ3RoLCByZXF1aXJlZCB9ID0gVmFsaWRhdG9ycztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWNoYW5nZS1wYXNzd29yZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJvdGVjdGVkIF92aXNpYmxlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlO1xuICB9XG5cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlID0gdmFsdWU7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1vZGFsQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoXG4gICAgICB7XG4gICAgICAgIHBhc3N3b3JkOiBbJycsIFtyZXF1aXJlZCwgbWluTGVuZ3RoKDYpLCB2YWxpZGF0ZVBhc3N3b3JkKFsnc21hbGwnLCAnY2FwaXRhbCcsICdudW1iZXInLCAnc3BlY2lhbCddKV1dLFxuICAgICAgICBuZXdQYXNzd29yZDogWycnLCBbcmVxdWlyZWQsIG1pbkxlbmd0aCg2KSwgdmFsaWRhdGVQYXNzd29yZChbJ3NtYWxsJywgJ2NhcGl0YWwnLCAnbnVtYmVyJywgJ3NwZWNpYWwnXSldXSxcbiAgICAgICAgcmVwZWF0TmV3UGFzc3dvcmQ6IFsnJywgW3JlcXVpcmVkLCBtaW5MZW5ndGgoNiksIHZhbGlkYXRlUGFzc3dvcmQoWydzbWFsbCcsICdjYXBpdGFsJywgJ251bWJlcicsICdzcGVjaWFsJ10pXV0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB2YWxpZGF0b3JzOiBbY29tcGFyZVBhc3N3b3JkcyhbJ25ld1Bhc3N3b3JkJywgJ3JlcGVhdE5ld1Bhc3N3b3JkJ10pXSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xuXG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKFxuICAgICAgICBuZXcgUHJvZmlsZUNoYW5nZVBhc3N3b3JkKHtcbiAgICAgICAgICBjdXJyZW50UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ3Bhc3N3b3JkJykudmFsdWUsXG4gICAgICAgICAgbmV3UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ25ld1Bhc3N3b3JkJykudmFsdWUsXG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy52aXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgdmlzaWJsZSB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCF2aXNpYmxlKSByZXR1cm47XG5cbiAgICBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UgJiYgdGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js new file mode 100644 index 0000000000..2faa8d8e3c --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js @@ -0,0 +1,22 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +export class EmptyLayoutComponent { +} +EmptyLayoutComponent.type = "empty" /* empty */; +EmptyLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-empty', + template: ` + Layout-empty + + ` + }] } +]; +if (false) { + /** @type {?} */ + EmptyLayoutComponent.type; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUxQyxNQUFNLE9BQU8sb0JBQW9COztBQUN4Qix5QkFBSSx1QkFBcUI7O1lBUmpDLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7OztHQUdUO2FBQ0Y7Ozs7SUFFQywwQkFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1lbXB0eScsXG4gIHRlbXBsYXRlOiBgXG4gICAgTGF5b3V0LWVtcHR5XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eUxheW91dENvbXBvbmVudCB7XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuZW1wdHk7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js index 25ffed3ffc..e64ecf3cbd 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js @@ -2,7 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { LayoutAccountComponent } from './layout-account/layout-account.component'; -export { LayoutApplicationComponent } from './layout-application/layout-application.component'; -export { LayoutEmptyComponent } from './layout-empty/layout-empty.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQtYWNjb3VudC9sYXlvdXQtYWNjb3VudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dC1lbXB0eS9sYXlvdXQtZW1wdHkuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file +export { AccountLayoutComponent } from './account-layout/account-layout.component'; +export { ApplicationLayoutComponent } from './application-layout/application-layout.component'; +export { EmptyLayoutComponent } from './empty-layout/empty-layout.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LWxheW91dC9lbXB0eS1sYXlvdXQuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-account/layout-account.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-account/layout-account.component.js deleted file mode 100644 index c1a36c2da7..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-account/layout-account.component.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -export class LayoutAccountComponent { - constructor() { - this.isCollapsed = false; - } -} -// required for dynamic component -LayoutAccountComponent.type = "account" /* account */; -LayoutAccountComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n \n\n \n \n \n \n \n\n" - }] } -]; -if (false) { - /** @type {?} */ - LayoutAccountComponent.type; - /** @type {?} */ - LayoutAccountComponent.prototype.isCollapsed; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFjY291bnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xheW91dC1hY2NvdW50L2xheW91dC1hY2NvdW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8xQyxNQUFNLE9BQU8sc0JBQXNCO0lBSm5DO1FBUUUsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUFDL0IsQ0FBQzs7O0FBSFEsMkJBQUksMkJBQXVCOztZQU5uQyxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsMHhCQUE4QzthQUMvQzs7OztJQUdDLDRCQUFrQzs7SUFFbEMsNkNBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtYWNjb3VudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQtYWNjb3VudC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIExheW91dEFjY291bnRDb21wb25lbnQge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5hY2NvdW50O1xuXG4gIGlzQ29sbGFwc2VkOiBib29sZWFuID0gZmFsc2U7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-application/layout-application.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-application/layout-application.component.js deleted file mode 100644 index 24052a005b..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-application/layout-application.component.js +++ /dev/null @@ -1,282 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { ConfigGetAppConfiguration, ConfigState, SessionSetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; -import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; -import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { Select, Store } from '@ngxs/store'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { debounceTime, filter, map } from 'rxjs/operators'; -import snq from 'snq'; -import { LayoutAddNavigationElement } from '../../actions'; -import { LayoutState } from '../../states'; -export class LayoutApplicationComponent { - /** - * @param {?} store - * @param {?} oauthService - */ - constructor(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - (_, item) => item.name); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - (_, element) => element); - } - /** - * @return {?} - */ - get visibleRoutes$() { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - routes => getVisibleRoutes(routes)))); - } - /** - * @return {?} - */ - get defaultLanguage$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.find((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName === this.selectedLangCulture)).displayName))), '')); - } - /** - * @return {?} - */ - get dropdownLanguages$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.filter((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName !== this.selectedLangCulture))))), [])); - } - /** - * @return {?} - */ - get selectedLangCulture() { - return this.store.selectSnapshot(SessionState.getLanguage); - } - /** - * @private - * @return {?} - */ - checkWindowWidth() { - setTimeout((/** - * @return {?} - */ - () => { - this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - item => { - item.close(); - })); - if (window.innerWidth < 768) { - this.isDropdownChildDynamic = false; - } - else { - this.isDropdownChildDynamic = true; - } - }), 0); - } - /** - * @return {?} - */ - ngAfterViewInit() { - /** @type {?} */ - const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - ({ name }) => name)); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new LayoutAddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - elements => elements.map((/** - * @param {?} __0 - * @return {?} - */ - ({ element }) => element)))), filter((/** - * @param {?} elements - * @return {?} - */ - elements => !compare(elements, this.rightPartElements))), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - elements => { - setTimeout((/** - * @return {?} - */ - () => (this.rightPartElements = elements)), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - () => { - this.checkWindowWidth(); - })); - } - /** - * @return {?} - */ - ngOnDestroy() { } - /** - * @param {?} cultureName - * @return {?} - */ - onChangeLang(cultureName) { - this.store.dispatch(new SessionSetLanguage(cultureName)); - this.store.dispatch(new ConfigGetAppConfiguration()); - } - /** - * @return {?} - */ - logout() { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/account/login'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new ConfigGetAppConfiguration()); - } -} -// required for dynamic component -LayoutApplicationComponent.type = "application" /* application */; -LayoutApplicationComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } -]; -/** @nocollapse */ -LayoutApplicationComponent.ctorParameters = () => [ - { type: Store }, - { type: OAuthService } -]; -LayoutApplicationComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] -}; -tslib_1.__decorate([ - Select(ConfigState.getOne('routes')), - tslib_1.__metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "routes$", void 0); -tslib_1.__decorate([ - Select(ConfigState.getOne('currentUser')), - tslib_1.__metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "currentUser$", void 0); -tslib_1.__decorate([ - Select(ConfigState.getDeep('localization.languages')), - tslib_1.__metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "languages$", void 0); -tslib_1.__decorate([ - Select(LayoutState.getNavigationElements), - tslib_1.__metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "navElements$", void 0); -if (false) { - /** @type {?} */ - LayoutApplicationComponent.type; - /** @type {?} */ - LayoutApplicationComponent.prototype.routes$; - /** @type {?} */ - LayoutApplicationComponent.prototype.currentUser$; - /** @type {?} */ - LayoutApplicationComponent.prototype.languages$; - /** @type {?} */ - LayoutApplicationComponent.prototype.navElements$; - /** @type {?} */ - LayoutApplicationComponent.prototype.currentUserRef; - /** @type {?} */ - LayoutApplicationComponent.prototype.languageRef; - /** @type {?} */ - LayoutApplicationComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - LayoutApplicationComponent.prototype.isOpenChangePassword; - /** @type {?} */ - LayoutApplicationComponent.prototype.isOpenProfile; - /** @type {?} */ - LayoutApplicationComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - LayoutApplicationComponent.prototype.rightPartElements; - /** @type {?} */ - LayoutApplicationComponent.prototype.trackByFn; - /** @type {?} */ - LayoutApplicationComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - LayoutApplicationComponent.prototype.store; - /** - * @type {?} - * @private - */ - LayoutApplicationComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - (acc, val) => { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return [...acc, val]; - }), []); -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCx5QkFBeUIsRUFDekIsV0FBVyxFQUVYLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBTTNDLE1BQU0sT0FBTywwQkFBMEI7Ozs7O0lBNERyQyxZQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUss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QzREOztJQUU1RCxrREFDcUQ7O0lBRXJELG9EQUNpQzs7SUFFakMsaURBQzhCOztJQUU5Qix5REFDNEM7O0lBRTVDLDBEQUFzQzs7SUFFdEMsbURBQStCOztJQUUvQiw0REFBZ0M7O0lBeUJoQyx1REFBMkM7O0lBRTNDLCtDQUFtRTs7SUFFbkUsc0RBQTJFOzs7OztJQUUvRCwyQ0FBb0I7Ozs7O0lBQUUsa0RBQWtDOzs7Ozs7QUFtRXRFLFNBQVMsZ0JBQWdCLENBQUMsTUFBdUI7SUFDL0MsT0FBTyxNQUFNLENBQUMsTUFBTTs7Ozs7SUFBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUNoQyxJQUFJLEdBQUcsQ0FBQyxTQUFTO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFFOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ3ZDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQy9DO1FBRUQsT0FBTyxDQUFDLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsR0FBRSxFQUFFLENBQUMsQ0FBQztBQUNULENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBQlAsXG4gIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbixcbiAgQ29uZmlnR2V0QXBwQ29uZmlndXJhdGlvbixcbiAgQ29uZmlnU3RhdGUsXG4gIGVMYXlvdXRUeXBlLFxuICBTZXNzaW9uU2V0TGFuZ3VhZ2UsXG4gIFNlc3Npb25TdGF0ZSxcbiAgdGFrZVVudGlsRGVzdHJveSxcbn0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmF2aWdhdGUsIFJvdXRlclN0YXRlIH0gZnJvbSAnQG5neHMvcm91dGVyLXBsdWdpbic7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT0F1dGhTZXJ2aWNlIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgTGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uLy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgTGF5b3V0U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFwcGxpY2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC1hcHBsaWNhdGlvbi5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIExheW91dEFwcGxpY2F0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYXBwbGljYXRpb247XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ3JvdXRlcycpKVxuICByb3V0ZXMkOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT47XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ2N1cnJlbnRVc2VyJykpXG4gIGN1cnJlbnRVc2VyJDogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uQ3VycmVudFVzZXI+O1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0RGVlcCgnbG9jYWxpemF0aW9uLmxhbmd1YWdlcycpKVxuICBsYW5ndWFnZXMkOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5MYW5ndWFnZVtdPjtcblxuICBAU2VsZWN0KExheW91dFN0YXRlLmdldE5hdmlnYXRpb25FbGVtZW50cylcbiAgbmF2RWxlbWVudHMkOiBPYnNlcnZhYmxlPExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdPjtcblxuICBAVmlld0NoaWxkKCdjdXJyZW50VXNlcicsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgY3VycmVudFVzZXJSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQFZpZXdDaGlsZCgnbGFuZ3VhZ2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGxhbmd1YWdlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ25hdmJhclJvb3REcm9wZG93bicsIHsgcmVhZDogTmdiRHJvcGRvd24gfSlcbiAgbmF2YmFyUm9vdERyb3Bkb3duczogUXVlcnlMaXN0PE5nYkRyb3Bkb3duPjtcblxuICBpc09wZW5DaGFuZ2VQYXNzd29yZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlblByb2ZpbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc0Ryb3Bkb3duQ2hpbGREeW5hbWljOiBib29sZWFuO1xuXG4gIGdldCB2aXNpYmxlUm91dGVzJCgpOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlcyQucGlwZShtYXAocm91dGVzID0+IGdldFZpc2libGVSb3V0ZXMocm91dGVzKSkpO1xuICB9XG5cbiAgZ2V0IGRlZmF1bHRMYW5ndWFnZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIGxhbmd1YWdlcyA9PiBzbnEoKCkgPT4gbGFuZ3VhZ2VzLmZpbmQobGFuZyA9PiBsYW5nLmN1bHR1cmVOYW1lID09PSB0aGlzLnNlbGVjdGVkTGFuZ0N1bHR1cmUpLmRpc3BsYXlOYW1lKSxcbiAgICAgICAgJycsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBnZXQgZHJvcGRvd25MYW5ndWFnZXMkKCk6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkxhbmd1YWdlW10+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAobGFuZ3VhZ2VzID0+IHNucSgoKSA9PiBsYW5ndWFnZXMuZmlsdGVyKGxhbmcgPT4gbGFuZy5jdWx0dXJlTmFtZSAhPT0gdGhpcy5zZWxlY3RlZExhbmdDdWx0dXJlKSksIFtdKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkTGFuZ0N1bHR1cmUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChTZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UpO1xuICB9XG5cbiAgcmlnaHRQYXJ0RWxlbWVudHM6IFRlbXBsYXRlUmVmPGFueT5bXSA9IFtdO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFCUC5GdWxsUm91dGU+ID0gKF8sIGl0ZW0pID0+IGl0ZW0ubmFtZTtcblxuICB0cmFja0VsZW1lbnRCeUZuOiBUcmFja0J5RnVuY3Rpb248QUJQLkZ1bGxSb3V0ZT4gPSAoXywgZWxlbWVudCkgPT4gZWxlbWVudDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSwgcHJpdmF0ZSBvYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSkge31cblxuICBwcml2YXRlIGNoZWNrV2luZG93V2lkdGgoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLm5hdmJhclJvb3REcm9wZG93bnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaXRlbS5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgICBpZiAod2luZG93LmlubmVyV2lkdGggPCA3NjgpIHtcbiAgICAgICAgdGhpcy5pc0Ryb3Bkb3duQ2hpbGREeW5hbWljID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25DaGlsZER5bmFtaWMgPSB0cnVlO1xuICAgICAgfVxuICAgIH0sIDApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IG5hdmlnYXRpb25zID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChMYXlvdXRTdGF0ZS5nZXROYXZpZ2F0aW9uRWxlbWVudHMpLm1hcCgoeyBuYW1lIH0pID0+IG5hbWUpO1xuXG4gICAgaWYgKG5hdmlnYXRpb25zLmluZGV4T2YoJ0xhbmd1YWdlUmVmJykgPCAwKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBuZXcgTGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQoW1xuICAgICAgICAgIHsgZWxlbWVudDogdGhpcy5sYW5ndWFnZVJlZiwgb3JkZXI6IDQsIG5hbWU6ICdMYW5ndWFnZVJlZicgfSxcbiAgICAgICAgICB7IGVsZW1lbnQ6IHRoaXMuY3VycmVudFVzZXJSZWYsIG9yZGVyOiA1LCBuYW1lOiAnQ3VycmVudFVzZXJSZWYnIH0sXG4gICAgICAgIF0pLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLm5hdkVsZW1lbnRzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChlbGVtZW50cyA9PiBlbGVtZW50cy5tYXAoKHsgZWxlbWVudCB9KSA9PiBlbGVtZW50KSksXG4gICAgICAgIGZpbHRlcihlbGVtZW50cyA9PiAhY29tcGFyZShlbGVtZW50cywgdGhpcy5yaWdodFBhcnRFbGVtZW50cykpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShlbGVtZW50cyA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMucmlnaHRQYXJ0RWxlbWVudHMgPSBlbGVtZW50cyksIDApO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoZWNrV2luZG93V2lkdGgoKTtcblxuICAgIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICAgIGRlYm91bmNlVGltZSgyNTApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tXaW5kb3dXaWR0aCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG5cbiAgb25DaGFuZ2VMYW5nKGN1bHR1cmVOYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBTZXNzaW9uU2V0TGFuZ3VhZ2UoY3VsdHVyZU5hbWUpKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBDb25maWdHZXRBcHBDb25maWd1cmF0aW9uKCkpO1xuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHRoaXMub2F1dGhTZXJ2aWNlLmxvZ091dCgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBuZXcgTmF2aWdhdGUoWycvYWNjb3VudC9sb2dpbiddLCBudWxsLCB7XG4gICAgICAgIHN0YXRlOiB7IHJlZGlyZWN0VXJsOiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKS5zdGF0ZS51cmwgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgQ29uZmlnR2V0QXBwQ29uZmlndXJhdGlvbigpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRWaXNpYmxlUm91dGVzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKSB7XG4gIHJldHVybiByb3V0ZXMucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgIGlmICh2YWwuaW52aXNpYmxlKSByZXR1cm4gYWNjO1xuXG4gICAgaWYgKHZhbC5jaGlsZHJlbiAmJiB2YWwuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICB2YWwuY2hpbGRyZW4gPSBnZXRWaXNpYmxlUm91dGVzKHZhbC5jaGlsZHJlbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIFsuLi5hY2MsIHZhbF07XG4gIH0sIFtdKTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-empty/layout-empty.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-empty/layout-empty.component.js deleted file mode 100644 index ba30ed3da5..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout-empty/layout-empty.component.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -export class LayoutEmptyComponent { -} -// required for dynamic component -LayoutEmptyComponent.type = "empty" /* empty */; -LayoutEmptyComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: ` - Layout-empty - - ` - }] } -]; -if (false) { - /** @type {?} */ - LayoutEmptyComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWVtcHR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQtZW1wdHkvbGF5b3V0LWVtcHR5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUxQyxNQUFNLE9BQU8sb0JBQW9COzs7QUFFeEIseUJBQUksdUJBQXFCOztZQVRqQyxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsUUFBUSxFQUFFOzs7R0FHVDthQUNGOzs7O0lBR0MsMEJBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtZW1wdHknLFxuICB0ZW1wbGF0ZTogYFxuICAgIExheW91dC1lbXB0eVxuICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0RW1wdHlDb21wb25lbnQge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5lbXB0eTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js index 75e92c331f..3f4c43a1e9 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js @@ -2,20 +2,43 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +import { ConfigState } from '@abp/ng.core'; +import { slideFromBottom } from '@abp/ng.theme.shared'; import { Component } from '@angular/core'; +import { Store } from '@ngxs/store'; export class LayoutComponent { - constructor() { - this.isCollapsed = false; + /** + * @param {?} store + */ + constructor(store) { + this.store = store; + this.isCollapsed = true; + } + /** + * @return {?} + */ + get appInfo() { + return this.store.selectSnapshot(ConfigState.getApplicationInfo); } } LayoutComponent.decorators = [ { type: Component, args: [{ selector: ' abp-layout', - template: "\n\n
    \n \n
    \n\n\n\n" + template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", + animations: [slideFromBottom] }] } ]; +/** @nocollapse */ +LayoutComponent.ctorParameters = () => [ + { type: Store } +]; if (false) { /** @type {?} */ LayoutComponent.prototype.isCollapsed; + /** + * @type {?} + * @private + */ + LayoutComponent.prototype.store; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU0xQyxNQUFNLE9BQU8sZUFBZTtJQUo1QjtRQUtFLGdCQUFXLEdBQVksS0FBSyxDQUFDO0lBQy9CLENBQUM7OztZQU5BLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsb3FCQUFzQzthQUN2Qzs7OztJQUVDLHNDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICcgYWJwLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuICBpc0NvbGxhcHNlZDogYm9vbGVhbiA9IGZhbHNlO1xufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFVLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBT3BDLE1BQU0sT0FBTyxlQUFlOzs7O0lBTzFCLFlBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBTmhDLGdCQUFXLEdBQVksSUFBSSxDQUFDO0lBTU8sQ0FBQzs7OztJQUpwQyxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ25FLENBQUM7OztZQVZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsZzhCQUFzQztnQkFDdEMsVUFBVSxFQUFFLENBQUMsZUFBZSxDQUFDO2FBQzlCOzs7O1lBTlEsS0FBSzs7OztJQVFaLHNDQUE0Qjs7Ozs7SUFNaEIsZ0NBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlnLCBDb25maWdTdGF0ZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBzbGlkZUZyb21Cb3R0b20gfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICcgYWJwLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBhbmltYXRpb25zOiBbc2xpZGVGcm9tQm90dG9tXSxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0Q29tcG9uZW50IHtcbiAgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGdldCBhcHBJbmZvKCk6IENvbmZpZy5BcHBsaWNhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoQ29uZmlnU3RhdGUuZ2V0QXBwbGljYXRpb25JbmZvKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/profile/profile.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/profile/profile.component.js deleted file mode 100644 index f4aea3953e..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/profile/profile.component.js +++ /dev/null @@ -1,135 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core'; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { Select, Store } from '@ngxs/store'; -import { Observable } from 'rxjs'; -import { take, withLatestFrom } from 'rxjs/operators'; -const { maxLength, required, email } = Validators; -export class ProfileComponent { - /** - * @param {?} fb - * @param {?} store - */ - constructor(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - /** - * @return {?} - */ - get visible() { - return this._visible; - } - /** - * @param {?} value - * @return {?} - */ - set visible(value) { - this._visible = value; - this.visibleChange.emit(value); - } - /** - * @return {?} - */ - buildForm() { - this.store - .dispatch(new ProfileGet()) - .pipe(withLatestFrom(this.profile$), take(1)) - .subscribe((/** - * @param {?} __0 - * @return {?} - */ - ([, profile]) => { - this.form = this.fb.group({ - userName: [profile.userName, [required, maxLength(256)]], - email: [profile.email, [required, email, maxLength(256)]], - name: [profile.name || '', [maxLength(64)]], - surname: [profile.surname || '', [maxLength(64)]], - phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], - }); - })); - } - /** - * @return {?} - */ - onSubmit() { - if (this.form.invalid) - return; - this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe((/** - * @return {?} - */ - () => { - this.visible = false; - })); - } - /** - * @return {?} - */ - openModal() { - this.buildForm(); - this.visible = true; - } - /** - * @param {?} __0 - * @return {?} - */ - ngOnChanges({ visible }) { - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - } -} -ProfileComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-profile', - template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } -]; -/** @nocollapse */ -ProfileComponent.ctorParameters = () => [ - { type: FormBuilder }, - { type: Store } -]; -ProfileComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }] -}; -tslib_1.__decorate([ - Select(ProfileState.getProfile), - tslib_1.__metadata("design:type", Observable) -], ProfileComponent.prototype, "profile$", void 0); -if (false) { - /** - * @type {?} - * @protected - */ - ProfileComponent.prototype._visible; - /** @type {?} */ - ProfileComponent.prototype.visibleChange; - /** @type {?} */ - ProfileComponent.prototype.profile$; - /** @type {?} */ - ProfileComponent.prototype.form; - /** - * @type {?} - * @private - */ - ProfileComponent.prototype.fb; - /** - * @type {?} - * @private - */ - ProfileComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBVyxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztNQUVoRCxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsVUFBVTtBQU1qRCxNQUFNLE9BQU8sZ0JBQWdCOzs7OztJQXFCM0IsWUFBb0IsRUFBZSxFQUFVLEtBQVk7UUFBckMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFQekQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBT2dCLENBQUM7Ozs7SUFsQjdELElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVELElBQUksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7OztJQVlELFNBQVM7UUFDUCxJQUFJLENBQUMsS0FBSzthQUNQLFFBQVEsQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUFDO2FBQzFCLElBQUksQ0FDSCxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUM3QixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO2dCQUN4QixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDekQsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDakQsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUMxRCxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUU7WUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBaUI7UUFDcEMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXJCLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRTtZQUN4QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7YUFBTSxJQUFJLE9BQU8sQ0FBQyxZQUFZLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDekQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7U0FDdEI7SUFDSCxDQUFDOzs7WUFsRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2QixpbUVBQXVDO2FBQ3hDOzs7O1lBVlEsV0FBVztZQUNILEtBQUs7OztzQkFhbkIsS0FBSzs0QkFVTCxNQUFNOztBQUlQO0lBREMsTUFBTSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7c0NBQ3RCLFVBQVU7a0RBQW1COzs7Ozs7SUFoQnZDLG9DQUFtQjs7SUFZbkIseUNBQzRDOztJQUU1QyxvQ0FDdUM7O0lBRXZDLGdDQUFnQjs7Ozs7SUFFSiw4QkFBdUI7Ozs7O0lBQUUsaUNBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZSwgUHJvZmlsZUdldCwgUHJvZmlsZVN0YXRlLCBQcm9maWxlVXBkYXRlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZSwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1wcm9maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJvdGVjdGVkIF92aXNpYmxlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlO1xuICB9XG5cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlID0gdmFsdWU7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFNlbGVjdChQcm9maWxlU3RhdGUuZ2V0UHJvZmlsZSlcbiAgcHJvZmlsZSQ6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT47XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBQcm9maWxlR2V0KCkpXG4gICAgICAucGlwZShcbiAgICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5wcm9maWxlJCksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbLCBwcm9maWxlXSkgPT4ge1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICB1c2VyTmFtZTogW3Byb2ZpbGUudXNlck5hbWUsIFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDI1NildXSxcbiAgICAgICAgICBlbWFpbDogW3Byb2ZpbGUuZW1haWwsIFtyZXF1aXJlZCwgZW1haWwsIG1heExlbmd0aCgyNTYpXV0sXG4gICAgICAgICAgbmFtZTogW3Byb2ZpbGUubmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcbiAgICAgICAgICBzdXJuYW1lOiBbcHJvZmlsZS5zdXJuYW1lIHx8ICcnLCBbbWF4TGVuZ3RoKDY0KV1dLFxuICAgICAgICAgIHBob25lTnVtYmVyOiBbcHJvZmlsZS5waG9uZU51bWJlciB8fCAnJywgW21heExlbmd0aCgxNildXSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xuXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgUHJvZmlsZVVwZGF0ZSh0aGlzLmZvcm0udmFsdWUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js index f9f107f3b0..60a2136fa8 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js @@ -4,7 +4,7 @@ */ import * as tslib_1 from "tslib"; import { State, Action, Selector } from '@ngxs/store'; -import { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions'; +import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; import snq from 'snq'; let LayoutState = class LayoutState { /** @@ -78,15 +78,15 @@ let LayoutState = class LayoutState { } }; tslib_1.__decorate([ - Action(LayoutAddNavigationElement), + Action(AddNavigationElement), tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, LayoutAddNavigationElement]), + tslib_1.__metadata("design:paramtypes", [Object, AddNavigationElement]), tslib_1.__metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutAddAction", null); tslib_1.__decorate([ - Action(LayoutRemoveNavigationElementByName), + Action(RemoveNavigationElementByName), tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, LayoutRemoveNavigationElementByName]), + tslib_1.__metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), tslib_1.__metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutRemoveAction", null); tslib_1.__decorate([ @@ -102,4 +102,4 @@ LayoutState = tslib_1.__decorate([ }) ], LayoutState); export { LayoutState }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUc1RyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7SUFNVCxXQUFXLFNBQVgsV0FBVzs7Ozs7SUFFdEIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsa0JBQWtCLEVBQWdCO1FBQy9ELE9BQU8sa0JBQWtCLENBQUM7SUFDNUIsQ0FBQzs7Ozs7O0lBR0QsZUFBZSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBOEIsRUFBRSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQThCO1lBQzVHLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxRQUFRLEVBQUU7UUFFdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1gsR0FBRyxFQUFFLENBQ0gsQ0FBQyxtQkFBQSxPQUFPLEVBQThCLENBQUMsQ0FBQyxNQUFNOzs7O1lBQzVDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsU0FBUzs7OztZQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUMsR0FBRyxDQUFDLEVBQ3pFLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsQ0FBQyxHQUFHLGtCQUFrQixFQUFFLEdBQUcsT0FBTyxDQUFDO2FBQ3JELEdBQUc7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLG1CQUFNLE9BQU8sSUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLElBQUcsRUFBQzthQUM1RCxJQUFJOzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFDLENBQUM7UUFFckMsT0FBTyxVQUFVLENBQUM7WUFDaEIsa0JBQWtCO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUdELGtCQUFrQixDQUNoQixFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQThCLEVBQ3BELEVBQUUsSUFBSSxFQUF1QztZQUV6QyxFQUFFLGtCQUFrQixFQUFFLEdBQUcsUUFBUSxFQUFFOztjQUVqQyxLQUFLLEdBQUcsa0JBQWtCLENBQUMsU0FBUzs7OztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUM7UUFFNUUsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDZCxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzFEO1FBRUQsT0FBTyxVQUFVLENBQUM7WUFDaEIsa0JBQWtCO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRixDQUFBO0FBN0NDO0lBREMsTUFBTSxDQUFDLDBCQUEwQixDQUFDOztxREFDcUQsMEJBQTBCOztrREEwQmpIO0FBR0Q7SUFEQyxNQUFNLENBQUMsbUNBQW1DLENBQUM7O3FEQUdoQyxtQ0FBbUM7O3FEQWE5QztBQWpERDtJQURDLFFBQVEsRUFBRTs7Ozs4Q0FHVjtBQUpVLFdBQVc7SUFKdkIsS0FBSyxDQUFlO1FBQ25CLElBQUksRUFBRSxhQUFhO1FBQ25CLFFBQVEsRUFBRSxtQkFBQSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsRUFBRSxFQUFnQjtLQUNyRCxDQUFDO0dBQ1csV0FBVyxDQW9EdkI7U0FwRFksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXRlLCBBY3Rpb24sIFN0YXRlQ29udGV4dCwgU2VsZWN0b3IgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBMYXlvdXRBZGROYXZpZ2F0aW9uRWxlbWVudCwgTGF5b3V0UmVtb3ZlTmF2aWdhdGlvbkVsZW1lbnRCeU5hbWUgfSBmcm9tICcuLi9hY3Rpb25zL2xheW91dC5hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcblxuQFN0YXRlPExheW91dC5TdGF0ZT4oe1xuICBuYW1lOiAnTGF5b3V0U3RhdGUnLFxuICBkZWZhdWx0czogeyBuYXZpZ2F0aW9uRWxlbWVudHM6IFtdIH0gYXMgTGF5b3V0LlN0YXRlLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRTdGF0ZSB7XG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyBnZXROYXZpZ2F0aW9uRWxlbWVudHMoeyBuYXZpZ2F0aW9uRWxlbWVudHMgfTogTGF5b3V0LlN0YXRlKTogTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10ge1xuICAgIHJldHVybiBuYXZpZ2F0aW9uRWxlbWVudHM7XG4gIH1cblxuICBAQWN0aW9uKExheW91dEFkZE5hdmlnYXRpb25FbGVtZW50KVxuICBsYXlvdXRBZGRBY3Rpb24oeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPiwgeyBwYXlsb2FkID0gW10gfTogTGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQpIHtcbiAgICBsZXQgeyBuYXZpZ2F0aW9uRWxlbWVudHMgfSA9IGdldFN0YXRlKCk7XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF5bG9hZCkpIHtcbiAgICAgIHBheWxvYWQgPSBbcGF5bG9hZF07XG4gICAgfVxuXG4gICAgaWYgKG5hdmlnYXRpb25FbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgIHBheWxvYWQgPSBzbnEoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgKHBheWxvYWQgYXMgTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10pLmZpbHRlcihcbiAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChuYXYgPT4gbmF2Lm5hbWUgPT09IG5hbWUpIDwgMCxcbiAgICAgICAgICApLFxuICAgICAgICBbXSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFwYXlsb2FkLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gWy4uLm5hdmlnYXRpb25FbGVtZW50cywgLi4ucGF5bG9hZF1cbiAgICAgIC5tYXAoZWxlbWVudCA9PiAoeyAuLi5lbGVtZW50LCBvcmRlcjogZWxlbWVudC5vcmRlciB8fCA5OSB9KSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cblxuICBAQWN0aW9uKExheW91dFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lKVxuICBsYXlvdXRSZW1vdmVBY3Rpb24oXG4gICAgeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPixcbiAgICB7IG5hbWUgfTogTGF5b3V0UmVtb3ZlTmF2aWdhdGlvbkVsZW1lbnRCeU5hbWUsXG4gICkge1xuICAgIGxldCB7IG5hdmlnYXRpb25FbGVtZW50cyB9ID0gZ2V0U3RhdGUoKTtcblxuICAgIGNvbnN0IGluZGV4ID0gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChlbGVtZW50ID0+IGVsZW1lbnQubmFtZSA9PT0gbmFtZSk7XG5cbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gbmF2aWdhdGlvbkVsZW1lbnRzLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzLFxuICAgIH0pO1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUdoRyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7SUFNVCxXQUFXLFNBQVgsV0FBVzs7Ozs7SUFFdEIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsa0JBQWtCLEVBQWdCO1FBQy9ELE9BQU8sa0JBQWtCLENBQUM7SUFDNUIsQ0FBQzs7Ozs7O0lBR0QsZUFBZSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBOEIsRUFBRSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQXdCO1lBQ3RHLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxRQUFRLEVBQUU7UUFFdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1gsR0FBRyxFQUFFLENBQ0gsQ0FBQyxtQkFBQSxPQUFPLEVBQThCLENBQUMsQ0FBQyxNQUFNOzs7O1lBQzVDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsU0FBUzs7OztZQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUMsR0FBRyxDQUFDLEVBQ3pFLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsQ0FBQyxHQUFHLGtCQUFrQixFQUFFLEdBQUcsT0FBTyxDQUFDO2FBQ3JELEdBQUc7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLG1CQUFNLE9BQU8sSUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLElBQUcsRUFBQzthQUM1RCxJQUFJOzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFDLENBQUM7UUFFckMsT0FBTyxVQUFVLENBQUM7WUFDaEIsa0JBQWtCO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUdELGtCQUFrQixDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBOEIsRUFBRSxFQUFFLElBQUksRUFBaUM7WUFDMUcsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLFFBQVEsRUFBRTs7Y0FFakMsS0FBSyxHQUFHLGtCQUFrQixDQUFDLFNBQVM7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFDO1FBRTVFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2Qsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRDtRQUVELE9BQU8sVUFBVSxDQUFDO1lBQ2hCLGtCQUFrQjtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTtBQTFDQztJQURDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQzs7cURBQzJELG9CQUFvQjs7a0RBMEIzRztBQUdEO0lBREMsTUFBTSxDQUFDLDZCQUE2QixDQUFDOztxREFDNkMsNkJBQTZCOztxREFZL0c7QUE5Q0Q7SUFEQyxRQUFRLEVBQUU7Ozs7OENBR1Y7QUFKVSxXQUFXO0lBSnZCLEtBQUssQ0FBZTtRQUNuQixJQUFJLEVBQUUsYUFBYTtRQUNuQixRQUFRLEVBQUUsbUJBQUEsRUFBRSxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsRUFBZ0I7S0FDckQsQ0FBQztHQUNXLFdBQVcsQ0FpRHZCO1NBakRZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSwgQWN0aW9uLCBTdGF0ZUNvbnRleHQsIFNlbGVjdG9yIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgQWRkTmF2aWdhdGlvbkVsZW1lbnQsIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIH0gZnJvbSAnLi4vYWN0aW9ucy9sYXlvdXQuYWN0aW9ucyc7XG5pbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5cbkBTdGF0ZTxMYXlvdXQuU3RhdGU+KHtcbiAgbmFtZTogJ0xheW91dFN0YXRlJyxcbiAgZGVmYXVsdHM6IHsgbmF2aWdhdGlvbkVsZW1lbnRzOiBbXSB9IGFzIExheW91dC5TdGF0ZSxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0U3RhdGUge1xuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgZ2V0TmF2aWdhdGlvbkVsZW1lbnRzKHsgbmF2aWdhdGlvbkVsZW1lbnRzIH06IExheW91dC5TdGF0ZSk6IExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdIHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVsZW1lbnRzO1xuICB9XG5cbiAgQEFjdGlvbihBZGROYXZpZ2F0aW9uRWxlbWVudClcbiAgbGF5b3V0QWRkQWN0aW9uKHsgZ2V0U3RhdGUsIHBhdGNoU3RhdGUgfTogU3RhdGVDb250ZXh0PExheW91dC5TdGF0ZT4sIHsgcGF5bG9hZCA9IFtdIH06IEFkZE5hdmlnYXRpb25FbGVtZW50KSB7XG4gICAgbGV0IHsgbmF2aWdhdGlvbkVsZW1lbnRzIH0gPSBnZXRTdGF0ZSgpO1xuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICBwYXlsb2FkID0gW3BheWxvYWRdO1xuICAgIH1cblxuICAgIGlmIChuYXZpZ2F0aW9uRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICBwYXlsb2FkID0gc25xKFxuICAgICAgICAoKSA9PlxuICAgICAgICAgIChwYXlsb2FkIGFzIExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdKS5maWx0ZXIoXG4gICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hdmlnYXRpb25FbGVtZW50cy5maW5kSW5kZXgobmF2ID0+IG5hdi5uYW1lID09PSBuYW1lKSA8IDAsXG4gICAgICAgICAgKSxcbiAgICAgICAgW10sXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHJldHVybjtcblxuICAgIG5hdmlnYXRpb25FbGVtZW50cyA9IFsuLi5uYXZpZ2F0aW9uRWxlbWVudHMsIC4uLnBheWxvYWRdXG4gICAgICAubWFwKGVsZW1lbnQgPT4gKHsgLi4uZWxlbWVudCwgb3JkZXI6IGVsZW1lbnQub3JkZXIgfHwgOTkgfSkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpO1xuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzLFxuICAgIH0pO1xuICB9XG5cbiAgQEFjdGlvbihSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSlcbiAgbGF5b3V0UmVtb3ZlQWN0aW9uKHsgZ2V0U3RhdGUsIHBhdGNoU3RhdGUgfTogU3RhdGVDb250ZXh0PExheW91dC5TdGF0ZT4sIHsgbmFtZSB9OiBSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSkge1xuICAgIGxldCB7IG5hdmlnYXRpb25FbGVtZW50cyB9ID0gZ2V0U3RhdGUoKTtcblxuICAgIGNvbnN0IGluZGV4ID0gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChlbGVtZW50ID0+IGVsZW1lbnQubmFtZSA9PT0gbmFtZSk7XG5cbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gbmF2aWdhdGlvbkVsZW1lbnRzLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzLFxuICAgIH0pO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js index 23e1a964d0..ad646507dc 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js @@ -3,26 +3,24 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { CoreModule } from '@abp/ng.core'; +import { ThemeSharedModule } from '@abp/ng.theme.shared'; import { NgModule } from '@angular/core'; import { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { ChangePasswordComponent } from './components/change-password/change-password.component'; -import { LayoutAccountComponent } from './components/layout-account/layout-account.component'; -import { LayoutApplicationComponent } from './components/layout-application/layout-application.component'; -import { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component'; -import { LayoutComponent } from './components/layout/layout.component'; -import { ProfileComponent } from './components/profile/profile.component'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { ToastModule } from 'primeng/toast'; import { NgxValidateCoreModule } from '@ngx-validate/core'; import { NgxsModule } from '@ngxs/store'; +import { ToastModule } from 'primeng/toast'; +import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; +import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; +import { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component'; +import { LayoutComponent } from './components/layout/layout.component'; import { LayoutState } from './states/layout.state'; /** @type {?} */ -export const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent]; +export const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; export class ThemeBasicModule { } ThemeBasicModule.decorators = [ { type: NgModule, args: [{ - declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent], + declarations: [...LAYOUTS, LayoutComponent], imports: [ CoreModule, ThemeSharedModule, @@ -36,4 +34,4 @@ ThemeBasicModule.decorators = [ entryComponents: [...LAYOUTS], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUMxRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFcEQsTUFBTSxPQUFPLE9BQU8sR0FBRyxDQUFDLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO0FBZ0JqRyxNQUFNLE9BQU8sZ0JBQWdCOzs7WUFkNUIsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsQ0FBQztnQkFDdEYsT0FBTyxFQUFFO29CQUNQLFVBQVU7b0JBQ1YsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGlCQUFpQjtvQkFDakIsV0FBVztvQkFDWCxxQkFBcUI7b0JBQ3JCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDckM7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7Z0JBQ3JCLGVBQWUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO2FBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQ29sbGFwc2VNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0QWNjb3VudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sYXlvdXQtYWNjb3VudC9sYXlvdXQtYWNjb3VudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0QXBwbGljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGF5b3V0LWFwcGxpY2F0aW9uL2xheW91dC1hcHBsaWNhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0RW1wdHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGF5b3V0LWVtcHR5L2xheW91dC1lbXB0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IFRvYXN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b2FzdCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IExheW91dFN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvbGF5b3V0LnN0YXRlJztcblxuZXhwb3J0IGNvbnN0IExBWU9VVFMgPSBbTGF5b3V0QXBwbGljYXRpb25Db21wb25lbnQsIExheW91dEFjY291bnRDb21wb25lbnQsIExheW91dEVtcHR5Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbLi4uTEFZT1VUUywgTGF5b3V0Q29tcG9uZW50LCBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCwgUHJvZmlsZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb3JlTW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIE5nYkNvbGxhcHNlTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIFRvYXN0TW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW0xheW91dFN0YXRlXSksXG4gIF0sXG4gIGV4cG9ydHM6IFsuLi5MQVlPVVRTXSxcbiAgZW50cnlDb21wb25lbnRzOiBbLi4uTEFZT1VUU10sXG59KVxuZXhwb3J0IGNsYXNzIFRoZW1lQmFzaWNNb2R1bGUge31cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDOUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFcEQsTUFBTSxPQUFPLE9BQU8sR0FBRyxDQUFDLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO0FBZ0JqRyxNQUFNLE9BQU8sZ0JBQWdCOzs7WUFkNUIsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLGVBQWUsQ0FBQztnQkFDM0MsT0FBTyxFQUFFO29CQUNQLFVBQVU7b0JBQ1YsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGlCQUFpQjtvQkFDakIsV0FBVztvQkFDWCxxQkFBcUI7b0JBQ3JCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDckM7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7Z0JBQ3JCLGVBQWUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO2FBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JDb2xsYXBzZU1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFRvYXN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b2FzdCc7XG5pbXBvcnQgeyBBY2NvdW50TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eUxheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9sYXlvdXQuc3RhdGUnO1xuXG5leHBvcnQgY29uc3QgTEFZT1VUUyA9IFtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCwgQWNjb3VudExheW91dENvbXBvbmVudCwgRW1wdHlMYXlvdXRDb21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5MQVlPVVRTLCBMYXlvdXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBOZ2JDb2xsYXBzZU1vZHVsZSxcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBUb2FzdE1vZHVsZSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtMYXlvdXRTdGF0ZV0pLFxuICBdLFxuICBleHBvcnRzOiBbLi4uTEFZT1VUU10sXG4gIGVudHJ5Q29tcG9uZW50czogWy4uLkxBWU9VVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZUJhc2ljTW9kdWxlIHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/public-api.js b/npm/ng-packs/dist/theme-basic/esm2015/public-api.js index 0ce06fadd6..42fd1f4364 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/public-api.js +++ b/npm/ng-packs/dist/theme-basic/esm2015/public-api.js @@ -6,8 +6,8 @@ * Public API Surface of theme-basic */ export { LAYOUTS, ThemeBasicModule } from './lib/theme-basic.module'; -export { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from './lib/actions'; -export { LayoutAccountComponent, LayoutApplicationComponent, LayoutEmptyComponent } from './lib/components'; +export { AddNavigationElement, RemoveNavigationElementByName } from './lib/actions'; +export { AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent } from './lib/components'; export {} from './lib/models'; export { LayoutState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxnRkFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxvRUFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js index dc107326c4..cf2d483fbb 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js +++ b/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js @@ -5,14 +5,12 @@ /** * Generated bundle index. Do not edit. */ -export { LAYOUTS, ThemeBasicModule, LayoutAddNavigationElement, LayoutRemoveNavigationElementByName, LayoutAccountComponent, LayoutApplicationComponent, LayoutEmptyComponent, LayoutState } from './public-api'; -export { LayoutAddNavigationElement as ɵi, LayoutRemoveNavigationElementByName as ɵj } from './lib/actions/layout.actions'; -export { ChangePasswordComponent as ɵf } from './lib/components/change-password/change-password.component'; -export { LayoutAccountComponent as ɵc } from './lib/components/layout-account/layout-account.component'; -export { LayoutApplicationComponent as ɵa } from './lib/components/layout-application/layout-application.component'; -export { LayoutEmptyComponent as ɵd } from './lib/components/layout-empty/layout-empty.component'; +export { LAYOUTS, ThemeBasicModule, AddNavigationElement, RemoveNavigationElementByName, AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent, LayoutState } from './public-api'; +export { AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh } from './lib/actions/layout.actions'; +export { AccountLayoutComponent as ɵc } from './lib/components/account-layout/account-layout.component'; +export { ApplicationLayoutComponent as ɵa } from './lib/components/application-layout/application-layout.component'; +export { EmptyLayoutComponent as ɵd } from './lib/components/empty-layout/empty-layout.component'; export { LayoutComponent as ɵe } from './lib/components/layout/layout.component'; -export { ProfileComponent as ɵg } from './lib/components/profile/profile.component'; export { LayoutState as ɵb } from './lib/states'; -export { LayoutState as ɵh } from './lib/states/layout.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa01BQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsbUNBQW1DLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDeEgsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDbEgsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBRWxGLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7TGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQgYXMgybVpLExheW91dFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIGFzIMm1an0gZnJvbSAnLi9saWIvYWN0aW9ucy9sYXlvdXQuYWN0aW9ucyc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEFjY291bnRDb21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC1hY2NvdW50L2xheW91dC1hY2NvdW50LmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEFwcGxpY2F0aW9uQ29tcG9uZW50IGFzIMm1YX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dEVtcHR5Q29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9sYXlvdXQtZW1wdHkvbGF5b3V0LWVtcHR5LmNvbXBvbmVudCc7XG5leHBvcnQge0xheW91dENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1a30gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVofSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file +export { LayoutState as ɵf } from './lib/states/layout.state'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc0xBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUcsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FkZE5hdmlnYXRpb25FbGVtZW50IGFzIMm1ZyxSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSBhcyDJtWh9IGZyb20gJy4vbGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50TGF5b3V0Q29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbXB0eUxheW91dENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtMYXlvdXRDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1aX0gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVmfSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js index 0ee70b2082..acfe624a35 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js @@ -2,5 +2,5 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from './layout.actions'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGdGQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file +export { AddNavigationElement, RemoveNavigationElementByName } from './layout.actions'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9FQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js index 87c31dea63..d6ce1e6d93 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js @@ -2,32 +2,32 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var LayoutAddNavigationElement = /** @class */ (function () { - function LayoutAddNavigationElement(payload) { +var AddNavigationElement = /** @class */ (function () { + function AddNavigationElement(payload) { this.payload = payload; } - LayoutAddNavigationElement.type = '[Layout] Add Navigation Element'; - return LayoutAddNavigationElement; + AddNavigationElement.type = '[Layout] Add Navigation Element'; + return AddNavigationElement; }()); -export { LayoutAddNavigationElement }; +export { AddNavigationElement }; if (false) { /** @type {?} */ - LayoutAddNavigationElement.type; + AddNavigationElement.type; /** @type {?} */ - LayoutAddNavigationElement.prototype.payload; + AddNavigationElement.prototype.payload; } -var LayoutRemoveNavigationElementByName = /** @class */ (function () { - function LayoutRemoveNavigationElementByName(name) { +var RemoveNavigationElementByName = /** @class */ (function () { + function RemoveNavigationElementByName(name) { this.name = name; } - LayoutRemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return LayoutRemoveNavigationElementByName; + RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; + return RemoveNavigationElementByName; }()); -export { LayoutRemoveNavigationElementByName }; +export { RemoveNavigationElementByName }; if (false) { /** @type {?} */ - LayoutRemoveNavigationElementByName.type; + RemoveNavigationElementByName.type; /** @type {?} */ - LayoutRemoveNavigationElementByName.prototype.name; + RemoveNavigationElementByName.prototype.name; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBO0lBRUUsb0NBQW1CLE9BQThEO1FBQTlELFlBQU8sR0FBUCxPQUFPLENBQXVEO0lBQUcsQ0FBQztJQURyRSwrQkFBSSxHQUFHLGlDQUFpQyxDQUFDO0lBRTNELGlDQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksMEJBQTBCOzs7SUFDckMsZ0NBQXlEOztJQUM3Qyw2Q0FBcUU7O0FBR25GO0lBRUUsNkNBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQUcsQ0FBQztJQURuQix3Q0FBSSxHQUFHLDBDQUEwQyxDQUFDO0lBRXBFLDBDQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksbUNBQW1DOzs7SUFDOUMseUNBQWtFOztJQUN0RCxtREFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIExheW91dEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIExheW91dFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBO0lBRUUsOEJBQW1CLE9BQThEO1FBQTlELFlBQU8sR0FBUCxPQUFPLENBQXVEO0lBQUcsQ0FBQztJQURyRSx5QkFBSSxHQUFHLGlDQUFpQyxDQUFDO0lBRTNELDJCQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksb0JBQW9COzs7SUFDL0IsMEJBQXlEOztJQUM3Qyx1Q0FBcUU7O0FBR25GO0lBRUUsdUNBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQUcsQ0FBQztJQURuQixrQ0FBSSxHQUFHLDBDQUEwQyxDQUFDO0lBRXBFLG9DQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksNkJBQTZCOzs7SUFDeEMsbUNBQWtFOztJQUN0RCw2Q0FBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js new file mode 100644 index 0000000000..a4c8881a38 --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js @@ -0,0 +1,24 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +var AccountLayoutComponent = /** @class */ (function () { + function AccountLayoutComponent() { + } + // required for dynamic component + AccountLayoutComponent.type = "account" /* account */; + AccountLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-account', + template: "\n" + }] } + ]; + return AccountLayoutComponent; +}()); +export { AccountLayoutComponent }; +if (false) { + /** @type {?} */ + AccountLayoutComponent.type; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO0lBT0EsQ0FBQzs7SUFEUSwyQkFBSSwyQkFBdUI7O2dCQU5uQyxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsNkNBQThDO2lCQUMvQzs7SUFJRCw2QkFBQztDQUFBLEFBUEQsSUFPQztTQUhZLHNCQUFzQjs7O0lBRWpDLDRCQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFjY291bnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3VudC1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50TGF5b3V0Q29tcG9uZW50IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYWNjb3VudDtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js new file mode 100644 index 0000000000..157997c5a4 --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js @@ -0,0 +1,322 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { GetAppConfiguration, ConfigState, SetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; +import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; +import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; +import { Navigate, RouterState } from '@ngxs/router-plugin'; +import { Select, Store } from '@ngxs/store'; +import { OAuthService } from 'angular-oauth2-oidc'; +import compare from 'just-compare'; +import { fromEvent, Observable } from 'rxjs'; +import { debounceTime, filter, map } from 'rxjs/operators'; +import snq from 'snq'; +import { AddNavigationElement } from '../../actions'; +import { LayoutState } from '../../states'; +var ApplicationLayoutComponent = /** @class */ (function () { + function ApplicationLayoutComponent(store, oauthService) { + this.store = store; + this.oauthService = oauthService; + this.isOpenChangePassword = false; + this.isOpenProfile = false; + this.rightPartElements = []; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + function (_, item) { return item.name; }); + this.trackElementByFn = (/** + * @param {?} _ + * @param {?} element + * @return {?} + */ + function (_, element) { return element; }); + } + Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { + get: /** + * @return {?} + */ + function () { + return this.routes$.pipe(map((/** + * @param {?} routes + * @return {?} + */ + function (routes) { return getVisibleRoutes(routes); }))); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { + get: /** + * @return {?} + */ + function () { + var _this = this; + return this.languages$.pipe(map((/** + * @param {?} languages + * @return {?} + */ + function (languages) { return snq((/** + * @return {?} + */ + function () { return languages.find((/** + * @param {?} lang + * @return {?} + */ + function (lang) { return lang.cultureName === _this.selectedLangCulture; })).displayName; })); }), '')); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { + get: /** + * @return {?} + */ + function () { + var _this = this; + return this.languages$.pipe(map((/** + * @param {?} languages + * @return {?} + */ + function (languages) { return snq((/** + * @return {?} + */ + function () { return languages.filter((/** + * @param {?} lang + * @return {?} + */ + function (lang) { return lang.cultureName !== _this.selectedLangCulture; })); })); }), [])); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { + get: /** + * @return {?} + */ + function () { + return this.store.selectSnapshot(SessionState.getLanguage); + }, + enumerable: true, + configurable: true + }); + /** + * @private + * @return {?} + */ + ApplicationLayoutComponent.prototype.checkWindowWidth = /** + * @private + * @return {?} + */ + function () { + var _this = this; + setTimeout((/** + * @return {?} + */ + function () { + _this.navbarRootDropdowns.forEach((/** + * @param {?} item + * @return {?} + */ + function (item) { + item.close(); + })); + if (window.innerWidth < 768) { + _this.isDropdownChildDynamic = false; + } + else { + _this.isDropdownChildDynamic = true; + } + }), 0); + }; + /** + * @return {?} + */ + ApplicationLayoutComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var name = _a.name; + return name; + })); + if (navigations.indexOf('LanguageRef') < 0) { + this.store.dispatch(new AddNavigationElement([ + { element: this.languageRef, order: 4, name: 'LanguageRef' }, + { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, + ])); + } + this.navElements$ + .pipe(map((/** + * @param {?} elements + * @return {?} + */ + function (elements) { return elements.map((/** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var element = _a.element; + return element; + })); })), filter((/** + * @param {?} elements + * @return {?} + */ + function (elements) { return !compare(elements, _this.rightPartElements); })), takeUntilDestroy(this)) + .subscribe((/** + * @param {?} elements + * @return {?} + */ + function (elements) { + setTimeout((/** + * @return {?} + */ + function () { return (_this.rightPartElements = elements); }), 0); + })); + this.checkWindowWidth(); + fromEvent(window, 'resize') + .pipe(takeUntilDestroy(this), debounceTime(250)) + .subscribe((/** + * @return {?} + */ + function () { + _this.checkWindowWidth(); + })); + }; + /** + * @return {?} + */ + ApplicationLayoutComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { }; + /** + * @param {?} cultureName + * @return {?} + */ + ApplicationLayoutComponent.prototype.onChangeLang = /** + * @param {?} cultureName + * @return {?} + */ + function (cultureName) { + this.store.dispatch(new SetLanguage(cultureName)); + }; + /** + * @return {?} + */ + ApplicationLayoutComponent.prototype.logout = /** + * @return {?} + */ + function () { + this.oauthService.logOut(); + this.store.dispatch(new Navigate(['/'], null, { + state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, + })); + this.store.dispatch(new GetAppConfiguration()); + }; + // required for dynamic component + ApplicationLayoutComponent.type = "application" /* application */; + ApplicationLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-application', + template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ApplicationLayoutComponent.ctorParameters = function () { return [ + { type: Store }, + { type: OAuthService } + ]; }; + ApplicationLayoutComponent.propDecorators = { + currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], + languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], + navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] + }; + tslib_1.__decorate([ + Select(ConfigState.getOne('routes')), + tslib_1.__metadata("design:type", Observable) + ], ApplicationLayoutComponent.prototype, "routes$", void 0); + tslib_1.__decorate([ + Select(ConfigState.getOne('currentUser')), + tslib_1.__metadata("design:type", Observable) + ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); + tslib_1.__decorate([ + Select(ConfigState.getDeep('localization.languages')), + tslib_1.__metadata("design:type", Observable) + ], ApplicationLayoutComponent.prototype, "languages$", void 0); + tslib_1.__decorate([ + Select(LayoutState.getNavigationElements), + tslib_1.__metadata("design:type", Observable) + ], ApplicationLayoutComponent.prototype, "navElements$", void 0); + return ApplicationLayoutComponent; +}()); +export { ApplicationLayoutComponent }; +if (false) { + /** @type {?} */ + ApplicationLayoutComponent.type; + /** @type {?} */ + ApplicationLayoutComponent.prototype.routes$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUser$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languages$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navElements$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUserRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languageRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navbarRootDropdowns; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenChangePassword; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenProfile; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isDropdownChildDynamic; + /** @type {?} */ + ApplicationLayoutComponent.prototype.rightPartElements; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackByFn; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackElementByFn; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.store; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.oauthService; +} +/** + * @param {?} routes + * @return {?} + */ +function getVisibleRoutes(routes) { + return routes.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + function (acc, val) { + if (val.invisible) + return acc; + if (val.children && val.children.length) { + val.children = getVisibleRoutes(val.children); + } + return tslib_1.__spread(acc, [val]); + }), []); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCxtQkFBbUIsRUFDbkIsV0FBVyxFQUVYLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDO0lBZ0VFLG9DQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBbkNwRSx5QkFBb0IsR0FBWSxLQUFLLENBQUM7UUFFdEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUEyQi9CLHNCQUFpQixHQUF1QixFQUFFLENBQUM7UUFFM0MsY0FBUzs7Ozs7UUFBbUMsVUFBQyxDQUFDLEVBQUUsSUFBSSxJQUFLLE9BQUEsSUFBSSxDQUFDLElBQUksRUFBVCxDQUFTLEVBQUM7UUFFbkUscUJBQWdCOzs7OztRQUFtQyxVQUFDLENBQUMsRUFBRSxPQUFPLElBQUssT0FBQSxPQUFPLEVBQVAsQ0FBTyxFQUFDO0lBRUosQ0FBQztJQTdCeEUsc0JBQUksc0RBQWM7Ozs7UUFBbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUc7Ozs7WUFBQyxVQUFBLE1BQU0sSUFBSSxPQUFBLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUF4QixDQUF3QixFQUFDLENBQUMsQ0FBQztRQUNwRSxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHdEQUFnQjs7OztRQUFwQjtZQUFBLGlCQU9DO1lBTkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDekIsR0FBRzs7OztZQUNELFVBQUEsU0FBUyxJQUFJLE9BQUEsR0FBRzs7O1lBQUMsY0FBTSxPQUFBLFNBQVMsQ0FBQyxJQUFJOzs7O1lBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxJQUFJLENBQUMsV0FBVyxLQUFLLEtBQUksQ0FBQyxtQkFBbUIsRUFBN0MsQ0FBNkMsRUFBQyxDQUFDLFdBQVcsRUFBakYsQ0FBaUYsRUFBQyxFQUE1RixDQUE0RixHQUN6RyxFQUFFLENBQ0gsQ0FDRixDQUFDO1FBQ0osQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSwwREFBa0I7Ozs7UUFBdEI7WUFBQSxpQkFJQztZQUhDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pCLEdBQUc7Ozs7WUFBQyxVQUFBLFNBQVMsSUFBSSxPQUFBLEdBQUc7OztZQUFDLGNBQU0sT0FBQSxTQUFTLENBQUMsTUFBTTs7OztZQUFDLFVBQUEsSUFBSSxJQUFJLE9BQUEsSUFBSSxDQUFDLFdBQVcsS0FBSyxLQUFJLENBQUMsbUJBQW1CLEVBQTdDLENBQTZDLEVBQUMsRUFBdkUsQ0FBdUUsRUFBQyxFQUFsRixDQUFrRixHQUFFLEVBQUUsQ0FBQyxDQUN6RyxDQUFDO1FBQ0osQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSwyREFBbUI7Ozs7UUFBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3RCxDQUFDOzs7T0FBQTs7Ozs7SUFVTyxxREFBZ0I7Ozs7SUFBeEI7UUFBQSxpQkFXQztRQVZDLFVBQVU7OztRQUFDO1lBQ1QsS0FBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU87Ozs7WUFBQyxVQUFBLElBQUk7Z0JBQ25DLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLENBQUMsRUFBQyxDQUFDO1lBQ0gsSUFBSSxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRTtnQkFDM0IsS0FBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQzthQUNyQztpQkFBTTtnQkFDTCxLQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO2FBQ3BDO1FBQ0gsQ0FBQyxHQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQzs7OztJQUVELG9EQUFlOzs7SUFBZjtRQUFBLGlCQWdDQzs7WUEvQk8sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEdBQUc7Ozs7UUFBQyxVQUFDLEVBQVE7Z0JBQU4sY0FBSTtZQUFPLE9BQUEsSUFBSTtRQUFKLENBQUksRUFBQztRQUV4RyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixJQUFJLG9CQUFvQixDQUFDO2dCQUN2QixFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRTtnQkFDNUQsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTthQUNuRSxDQUFDLENBQ0gsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLFlBQVk7YUFDZCxJQUFJLENBQ0gsR0FBRzs7OztRQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUEsUUFBUSxDQUFDLEdBQUc7Ozs7UUFBQyxVQUFDLEVBQVc7Z0JBQVQsb0JBQU87WUFBTyxPQUFBLE9BQU87UUFBUCxDQUFPLEVBQUMsRUFBdEMsQ0FBc0MsRUFBQyxFQUN2RCxNQUFNOzs7O1FBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsS0FBSSxDQUFDLGlCQUFpQixDQUFDLEVBQTFDLENBQTBDLEVBQUMsRUFDOUQsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQ3ZCO2FBQ0EsU0FBUzs7OztRQUFDLFVBQUEsUUFBUTtZQUNqQixVQUFVOzs7WUFBQyxjQUFNLE9BQUEsQ0FBQyxLQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxDQUFDLEVBQW5DLENBQW1DLEdBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUV4QixTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQzthQUN4QixJQUFJLENBQ0gsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQ3RCLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FDbEI7YUFDQSxTQUFTOzs7UUFBQztZQUNULEtBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7OztJQUVELGdEQUFXOzs7SUFBWCxjQUFlLENBQUM7Ozs7O0lBRWhCLGlEQUFZOzs7O0lBQVosVUFBYSxXQUFtQjtRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs7SUFFRCwyQ0FBTTs7O0lBQU47UUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixJQUFJLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksRUFBRTtZQUN4QixLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtTQUN6RSxDQUFDLENBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7O0lBekhNLCtCQUFJLG1DQUEyQjs7Z0JBTnZDLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyx5dkpBQWtEO2lCQUNuRDs7OztnQkFiZ0IsS0FBSztnQkFDYixZQUFZOzs7aUNBNkJsQixTQUFTLFNBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFOzhCQUc3RCxTQUFTLFNBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO3NDQUcxRCxZQUFZLFNBQUMsb0JBQW9CLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFOztJQWpCekQ7UUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQzswQ0FDNUIsVUFBVTsrREFBa0I7SUFHckM7UUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQzswQ0FDNUIsVUFBVTtvRUFBdUM7SUFHL0Q7UUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDOzBDQUMxQyxVQUFVO2tFQUFzQztJQUc1RDtRQURDLE1BQU0sQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUM7MENBQzVCLFVBQVU7b0VBQTZCO0lBOEd2RCxpQ0FBQztDQUFBLEFBaElELElBZ0lDO1NBNUhZLDBCQUEwQjs7O0lBRXJDLGdDQUFzQzs7SUFFdEMsNkNBQ3FDOztJQUVyQyxrREFDK0Q7O0lBRS9ELGdEQUM0RDs7SUFFNUQsa0RBQ3FEOztJQUVyRCxvREFDaUM7O0lBRWpDLGlEQUM4Qjs7SUFFOUIseURBQzRDOztJQUU1QywwREFBc0M7O0lBRXRDLG1EQUErQjs7SUFFL0IsNERBQWdDOztJQXlCaEMsdURBQTJDOztJQUUzQywrQ0FBbUU7O0lBRW5FLHNEQUEyRTs7Ozs7SUFFL0QsMkNBQW9COzs7OztJQUFFLGtEQUFrQzs7Ozs7O0FBa0V0RSxTQUFTLGdCQUFnQixDQUFDLE1BQXVCO0lBQy9DLE9BQU8sTUFBTSxDQUFDLE1BQU07Ozs7O0lBQUMsVUFBQyxHQUFHLEVBQUUsR0FBRztRQUM1QixJQUFJLEdBQUcsQ0FBQyxTQUFTO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFFOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ3ZDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQy9DO1FBRUQsd0JBQVcsR0FBRyxHQUFFLEdBQUcsR0FBRTtJQUN2QixDQUFDLEdBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQUJQLFxuICBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24sXG4gIEdldEFwcENvbmZpZ3VyYXRpb24sXG4gIENvbmZpZ1N0YXRlLFxuICBlTGF5b3V0VHlwZSxcbiAgU2V0TGFuZ3VhZ2UsXG4gIFNlc3Npb25TdGF0ZSxcbiAgdGFrZVVudGlsRGVzdHJveSxcbn0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmF2aWdhdGUsIFJvdXRlclN0YXRlIH0gZnJvbSAnQG5neHMvcm91dGVyLXBsdWdpbic7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT0F1dGhTZXJ2aWNlIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgQWRkTmF2aWdhdGlvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uLy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgTGF5b3V0U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFwcGxpY2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYXBwbGljYXRpb247XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ3JvdXRlcycpKVxuICByb3V0ZXMkOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT47XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ2N1cnJlbnRVc2VyJykpXG4gIGN1cnJlbnRVc2VyJDogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uQ3VycmVudFVzZXI+O1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0RGVlcCgnbG9jYWxpemF0aW9uLmxhbmd1YWdlcycpKVxuICBsYW5ndWFnZXMkOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5MYW5ndWFnZVtdPjtcblxuICBAU2VsZWN0KExheW91dFN0YXRlLmdldE5hdmlnYXRpb25FbGVtZW50cylcbiAgbmF2RWxlbWVudHMkOiBPYnNlcnZhYmxlPExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdPjtcblxuICBAVmlld0NoaWxkKCdjdXJyZW50VXNlcicsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgY3VycmVudFVzZXJSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQFZpZXdDaGlsZCgnbGFuZ3VhZ2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGxhbmd1YWdlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ25hdmJhclJvb3REcm9wZG93bicsIHsgcmVhZDogTmdiRHJvcGRvd24gfSlcbiAgbmF2YmFyUm9vdERyb3Bkb3duczogUXVlcnlMaXN0PE5nYkRyb3Bkb3duPjtcblxuICBpc09wZW5DaGFuZ2VQYXNzd29yZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlblByb2ZpbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc0Ryb3Bkb3duQ2hpbGREeW5hbWljOiBib29sZWFuO1xuXG4gIGdldCB2aXNpYmxlUm91dGVzJCgpOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlcyQucGlwZShtYXAocm91dGVzID0+IGdldFZpc2libGVSb3V0ZXMocm91dGVzKSkpO1xuICB9XG5cbiAgZ2V0IGRlZmF1bHRMYW5ndWFnZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIGxhbmd1YWdlcyA9PiBzbnEoKCkgPT4gbGFuZ3VhZ2VzLmZpbmQobGFuZyA9PiBsYW5nLmN1bHR1cmVOYW1lID09PSB0aGlzLnNlbGVjdGVkTGFuZ0N1bHR1cmUpLmRpc3BsYXlOYW1lKSxcbiAgICAgICAgJycsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBnZXQgZHJvcGRvd25MYW5ndWFnZXMkKCk6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkxhbmd1YWdlW10+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAobGFuZ3VhZ2VzID0+IHNucSgoKSA9PiBsYW5ndWFnZXMuZmlsdGVyKGxhbmcgPT4gbGFuZy5jdWx0dXJlTmFtZSAhPT0gdGhpcy5zZWxlY3RlZExhbmdDdWx0dXJlKSksIFtdKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkTGFuZ0N1bHR1cmUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChTZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UpO1xuICB9XG5cbiAgcmlnaHRQYXJ0RWxlbWVudHM6IFRlbXBsYXRlUmVmPGFueT5bXSA9IFtdO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFCUC5GdWxsUm91dGU+ID0gKF8sIGl0ZW0pID0+IGl0ZW0ubmFtZTtcblxuICB0cmFja0VsZW1lbnRCeUZuOiBUcmFja0J5RnVuY3Rpb248QUJQLkZ1bGxSb3V0ZT4gPSAoXywgZWxlbWVudCkgPT4gZWxlbWVudDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSwgcHJpdmF0ZSBvYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSkge31cblxuICBwcml2YXRlIGNoZWNrV2luZG93V2lkdGgoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLm5hdmJhclJvb3REcm9wZG93bnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaXRlbS5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgICBpZiAod2luZG93LmlubmVyV2lkdGggPCA3NjgpIHtcbiAgICAgICAgdGhpcy5pc0Ryb3Bkb3duQ2hpbGREeW5hbWljID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25DaGlsZER5bmFtaWMgPSB0cnVlO1xuICAgICAgfVxuICAgIH0sIDApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IG5hdmlnYXRpb25zID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChMYXlvdXRTdGF0ZS5nZXROYXZpZ2F0aW9uRWxlbWVudHMpLm1hcCgoeyBuYW1lIH0pID0+IG5hbWUpO1xuXG4gICAgaWYgKG5hdmlnYXRpb25zLmluZGV4T2YoJ0xhbmd1YWdlUmVmJykgPCAwKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBuZXcgQWRkTmF2aWdhdGlvbkVsZW1lbnQoW1xuICAgICAgICAgIHsgZWxlbWVudDogdGhpcy5sYW5ndWFnZVJlZiwgb3JkZXI6IDQsIG5hbWU6ICdMYW5ndWFnZVJlZicgfSxcbiAgICAgICAgICB7IGVsZW1lbnQ6IHRoaXMuY3VycmVudFVzZXJSZWYsIG9yZGVyOiA1LCBuYW1lOiAnQ3VycmVudFVzZXJSZWYnIH0sXG4gICAgICAgIF0pLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLm5hdkVsZW1lbnRzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChlbGVtZW50cyA9PiBlbGVtZW50cy5tYXAoKHsgZWxlbWVudCB9KSA9PiBlbGVtZW50KSksXG4gICAgICAgIGZpbHRlcihlbGVtZW50cyA9PiAhY29tcGFyZShlbGVtZW50cywgdGhpcy5yaWdodFBhcnRFbGVtZW50cykpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShlbGVtZW50cyA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMucmlnaHRQYXJ0RWxlbWVudHMgPSBlbGVtZW50cyksIDApO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoZWNrV2luZG93V2lkdGgoKTtcblxuICAgIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICAgIGRlYm91bmNlVGltZSgyNTApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tXaW5kb3dXaWR0aCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG5cbiAgb25DaGFuZ2VMYW5nKGN1bHR1cmVOYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBTZXRMYW5ndWFnZShjdWx0dXJlTmFtZSkpO1xuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHRoaXMub2F1dGhTZXJ2aWNlLmxvZ091dCgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBuZXcgTmF2aWdhdGUoWycvJ10sIG51bGwsIHtcbiAgICAgICAgc3RhdGU6IHsgcmVkaXJlY3RVcmw6IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoUm91dGVyU3RhdGUpLnN0YXRlLnVybCB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBHZXRBcHBDb25maWd1cmF0aW9uKCkpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldFZpc2libGVSb3V0ZXMocm91dGVzOiBBQlAuRnVsbFJvdXRlW10pIHtcbiAgcmV0dXJuIHJvdXRlcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgaWYgKHZhbC5pbnZpc2libGUpIHJldHVybiBhY2M7XG5cbiAgICBpZiAodmFsLmNoaWxkcmVuICYmIHZhbC5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgIHZhbC5jaGlsZHJlbiA9IGdldFZpc2libGVSb3V0ZXModmFsLmNoaWxkcmVuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmFjYywgdmFsXTtcbiAgfSwgW10pO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/change-password/change-password.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/change-password/change-password.component.js deleted file mode 100644 index 1375197890..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/change-password/change-password.component.js +++ /dev/null @@ -1,142 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { ProfileChangePassword } from '@abp/ng.core'; -import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild, } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { comparePasswords, validatePassword } from '@ngx-validate/core'; -import { Store } from '@ngxs/store'; -var minLength = Validators.minLength, required = Validators.required; -var ChangePasswordComponent = /** @class */ (function () { - function ChangePasswordComponent(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - Object.defineProperty(ChangePasswordComponent.prototype, "visible", { - get: /** - * @return {?} - */ - function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.form = this.fb.group({ - password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - }, { - validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], - }); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store - .dispatch(new ProfileChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ChangePasswordComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } - ]; - /** @nocollapse */ - ChangePasswordComponent.ctorParameters = function () { return [ - { type: FormBuilder }, - { type: Store } - ]; }; - ChangePasswordComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }], - modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] - }; - return ChangePasswordComponent; -}()); -export { ChangePasswordComponent }; -if (false) { - /** - * @type {?} - * @protected - */ - ChangePasswordComponent.prototype._visible; - /** @type {?} */ - ChangePasswordComponent.prototype.visibleChange; - /** @type {?} */ - ChangePasswordComponent.prototype.modalContent; - /** @type {?} */ - ChangePasswordComponent.prototype.form; - /** - * @type {?} - * @private - */ - ChangePasswordComponent.prototype.fb; - /** - * @type {?} - * @private - */ - ChangePasswordComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUIsSUFBQSxnQ0FBUyxFQUFFLDhCQUFRO0FBRTNCO0lBeUJFLGlDQUFvQixFQUFlLEVBQVUsS0FBWTtRQUFyQyxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQVB6RCxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFPZ0IsQ0FBQztJQWxCN0Qsc0JBQ0ksNENBQU87Ozs7UUFEWDtZQUVFLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN2QixDQUFDOzs7OztRQUVELFVBQVksS0FBYztZQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDOzs7T0FMQTs7OztJQWlCRCwwQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUN2QjtZQUNFLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckcsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0csRUFDRDtZQUNFLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUMsYUFBYSxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztTQUNyRSxDQUNGLENBQUM7SUFDSixDQUFDOzs7O0lBRUQsMENBQVE7OztJQUFSO1FBQUEsaUJBYUM7UUFaQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFOUIsSUFBSSxDQUFDLEtBQUs7YUFDUCxRQUFRLENBQ1AsSUFBSSxxQkFBcUIsQ0FBQztZQUN4QixlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSztZQUNoRCxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSztTQUNoRCxDQUFDLENBQ0g7YUFDQSxTQUFTOzs7UUFBQztZQUNULEtBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7OztJQUVELDJDQUFTOzs7SUFBVDtRQUNFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7Ozs7O0lBRUQsNkNBQVc7Ozs7SUFBWCxVQUFZLEVBQTBCO1lBQXhCLG9CQUFPO1FBQ25CLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQ2xCO2FBQU0sSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3pELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQzs7Z0JBbkVGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixneERBQStDO2lCQUNoRDs7OztnQkFUUSxXQUFXO2dCQUVYLEtBQUs7OzswQkFXWCxLQUFLO2dDQVVMLE1BQU07K0JBR04sU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7O0lBZ0Q5Qyw4QkFBQztDQUFBLEFBcEVELElBb0VDO1NBaEVZLHVCQUF1Qjs7Ozs7O0lBQ2xDLDJDQUFtQjs7SUFZbkIsZ0RBQzRDOztJQUU1QywrQ0FDK0I7O0lBRS9CLHVDQUFnQjs7Ozs7SUFFSixxQ0FBdUI7Ozs7O0lBQUUsd0NBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZUNoYW5nZVBhc3N3b3JkIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY29tcGFyZVBhc3N3b3JkcywgdmFsaWRhdGVQYXNzd29yZCB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcblxuY29uc3QgeyBtaW5MZW5ndGgsIHJlcXVpcmVkIH0gPSBWYWxpZGF0b3JzO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY2hhbmdlLXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcm90ZWN0ZWQgX3Zpc2libGU7XG5cbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cblxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAVmlld0NoaWxkKCdtb2RhbENvbnRlbnQnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgbW9kYWxDb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGZvcm06IEZvcm1Hcm91cDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChcbiAgICAgIHtcbiAgICAgICAgcGFzc3dvcmQ6IFsnJywgW3JlcXVpcmVkLCBtaW5MZW5ndGgoNiksIHZhbGlkYXRlUGFzc3dvcmQoWydzbWFsbCcsICdjYXBpdGFsJywgJ251bWJlcicsICdzcGVjaWFsJ10pXV0sXG4gICAgICAgIG5ld1Bhc3N3b3JkOiBbJycsIFtyZXF1aXJlZCwgbWluTGVuZ3RoKDYpLCB2YWxpZGF0ZVBhc3N3b3JkKFsnc21hbGwnLCAnY2FwaXRhbCcsICdudW1iZXInLCAnc3BlY2lhbCddKV1dLFxuICAgICAgICByZXBlYXROZXdQYXNzd29yZDogWycnLCBbcmVxdWlyZWQsIG1pbkxlbmd0aCg2KSwgdmFsaWRhdGVQYXNzd29yZChbJ3NtYWxsJywgJ2NhcGl0YWwnLCAnbnVtYmVyJywgJ3NwZWNpYWwnXSldXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHZhbGlkYXRvcnM6IFtjb21wYXJlUGFzc3dvcmRzKFsnbmV3UGFzc3dvcmQnLCAncmVwZWF0TmV3UGFzc3dvcmQnXSldLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2goXG4gICAgICAgIG5ldyBQcm9maWxlQ2hhbmdlUGFzc3dvcmQoe1xuICAgICAgICAgIGN1cnJlbnRQYXNzd29yZDogdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKS52YWx1ZSxcbiAgICAgICAgICBuZXdQYXNzd29yZDogdGhpcy5mb3JtLmdldCgnbmV3UGFzc3dvcmQnKS52YWx1ZSxcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgICB9KTtcbiAgfVxuXG4gIG9wZW5Nb2RhbCgpIHtcbiAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js new file mode 100644 index 0000000000..b3473ddc90 --- /dev/null +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js @@ -0,0 +1,23 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +var EmptyLayoutComponent = /** @class */ (function () { + function EmptyLayoutComponent() { + } + EmptyLayoutComponent.type = "empty" /* empty */; + EmptyLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-layout-empty', + template: "\n Layout-empty\n \n " + }] } + ]; + return EmptyLayoutComponent; +}()); +export { EmptyLayoutComponent }; +if (false) { + /** @type {?} */ + EmptyLayoutComponent.type; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO0lBU0EsQ0FBQztJQURRLHlCQUFJLHVCQUFxQjs7Z0JBUmpDLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsNkRBR1Q7aUJBQ0Y7O0lBR0QsMkJBQUM7Q0FBQSxBQVRELElBU0M7U0FGWSxvQkFBb0I7OztJQUMvQiwwQkFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1lbXB0eScsXG4gIHRlbXBsYXRlOiBgXG4gICAgTGF5b3V0LWVtcHR5XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eUxheW91dENvbXBvbmVudCB7XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuZW1wdHk7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js index 25ffed3ffc..e64ecf3cbd 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js @@ -2,7 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { LayoutAccountComponent } from './layout-account/layout-account.component'; -export { LayoutApplicationComponent } from './layout-application/layout-application.component'; -export { LayoutEmptyComponent } from './layout-empty/layout-empty.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQtYWNjb3VudC9sYXlvdXQtYWNjb3VudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dC1lbXB0eS9sYXlvdXQtZW1wdHkuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file +export { AccountLayoutComponent } from './account-layout/account-layout.component'; +export { ApplicationLayoutComponent } from './application-layout/application-layout.component'; +export { EmptyLayoutComponent } from './empty-layout/empty-layout.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LWxheW91dC9lbXB0eS1sYXlvdXQuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-account/layout-account.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-account/layout-account.component.js deleted file mode 100644 index 57241df996..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-account/layout-account.component.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -var LayoutAccountComponent = /** @class */ (function () { - function LayoutAccountComponent() { - this.isCollapsed = false; - } - // required for dynamic component - LayoutAccountComponent.type = "account" /* account */; - LayoutAccountComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n \n\n \n \n \n \n \n\n" - }] } - ]; - return LayoutAccountComponent; -}()); -export { LayoutAccountComponent }; -if (false) { - /** @type {?} */ - LayoutAccountComponent.type; - /** @type {?} */ - LayoutAccountComponent.prototype.isCollapsed; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFjY291bnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xheW91dC1hY2NvdW50L2xheW91dC1hY2NvdW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO1FBUUUsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUFDL0IsQ0FBQzs7SUFIUSwyQkFBSSwyQkFBdUI7O2dCQU5uQyxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsMHhCQUE4QztpQkFDL0M7O0lBTUQsNkJBQUM7Q0FBQSxBQVRELElBU0M7U0FMWSxzQkFBc0I7OztJQUVqQyw0QkFBa0M7O0lBRWxDLDZDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFjY291bnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5b3V0LWFjY291bnQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRBY2NvdW50Q29tcG9uZW50IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYWNjb3VudDtcblxuICBpc0NvbGxhcHNlZDogYm9vbGVhbiA9IGZhbHNlO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-application/layout-application.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-application/layout-application.component.js deleted file mode 100644 index e60e6e1a19..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-application/layout-application.component.js +++ /dev/null @@ -1,323 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { ConfigGetAppConfiguration, ConfigState, SessionSetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; -import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; -import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { Select, Store } from '@ngxs/store'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { debounceTime, filter, map } from 'rxjs/operators'; -import snq from 'snq'; -import { LayoutAddNavigationElement } from '../../actions'; -import { LayoutState } from '../../states'; -var LayoutApplicationComponent = /** @class */ (function () { - function LayoutApplicationComponent(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - function (_, item) { return item.name; }); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - function (_, element) { return element; }); - } - Object.defineProperty(LayoutApplicationComponent.prototype, "visibleRoutes$", { - get: /** - * @return {?} - */ - function () { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - function (routes) { return getVisibleRoutes(routes); }))); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(LayoutApplicationComponent.prototype, "defaultLanguage$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.find((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName === _this.selectedLangCulture; })).displayName; })); }), '')); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(LayoutApplicationComponent.prototype, "dropdownLanguages$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.filter((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName !== _this.selectedLangCulture; })); })); }), [])); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(LayoutApplicationComponent.prototype, "selectedLangCulture", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(SessionState.getLanguage); - }, - enumerable: true, - configurable: true - }); - /** - * @private - * @return {?} - */ - LayoutApplicationComponent.prototype.checkWindowWidth = /** - * @private - * @return {?} - */ - function () { - var _this = this; - setTimeout((/** - * @return {?} - */ - function () { - _this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - function (item) { - item.close(); - })); - if (window.innerWidth < 768) { - _this.isDropdownChildDynamic = false; - } - else { - _this.isDropdownChildDynamic = true; - } - }), 0); - }; - /** - * @return {?} - */ - LayoutApplicationComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return name; - })); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new LayoutAddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return elements.map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var element = _a.element; - return element; - })); })), filter((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return !compare(elements, _this.rightPartElements); })), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - function (elements) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.rightPartElements = elements); }), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - function () { - _this.checkWindowWidth(); - })); - }; - /** - * @return {?} - */ - LayoutApplicationComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { }; - /** - * @param {?} cultureName - * @return {?} - */ - LayoutApplicationComponent.prototype.onChangeLang = /** - * @param {?} cultureName - * @return {?} - */ - function (cultureName) { - this.store.dispatch(new SessionSetLanguage(cultureName)); - this.store.dispatch(new ConfigGetAppConfiguration()); - }; - /** - * @return {?} - */ - LayoutApplicationComponent.prototype.logout = /** - * @return {?} - */ - function () { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/account/login'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new ConfigGetAppConfiguration()); - }; - // required for dynamic component - LayoutApplicationComponent.type = "application" /* application */; - LayoutApplicationComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } - ]; - /** @nocollapse */ - LayoutApplicationComponent.ctorParameters = function () { return [ - { type: Store }, - { type: OAuthService } - ]; }; - LayoutApplicationComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] - }; - tslib_1.__decorate([ - Select(ConfigState.getOne('routes')), - tslib_1.__metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "routes$", void 0); - tslib_1.__decorate([ - Select(ConfigState.getOne('currentUser')), - tslib_1.__metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "currentUser$", void 0); - tslib_1.__decorate([ - Select(ConfigState.getDeep('localization.languages')), - tslib_1.__metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "languages$", void 0); - tslib_1.__decorate([ - Select(LayoutState.getNavigationElements), - tslib_1.__metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "navElements$", void 0); - return LayoutApplicationComponent; -}()); -export { LayoutApplicationComponent }; -if (false) { - /** @type {?} */ - LayoutApplicationComponent.type; - /** @type {?} */ - LayoutApplicationComponent.prototype.routes$; - /** @type {?} */ - LayoutApplicationComponent.prototype.currentUser$; - /** @type {?} */ - LayoutApplicationComponent.prototype.languages$; - /** @type {?} */ - LayoutApplicationComponent.prototype.navElements$; - /** @type {?} */ - LayoutApplicationComponent.prototype.currentUserRef; - /** @type {?} */ - LayoutApplicationComponent.prototype.languageRef; - /** @type {?} */ - LayoutApplicationComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - LayoutApplicationComponent.prototype.isOpenChangePassword; - /** @type {?} */ - LayoutApplicationComponent.prototype.isOpenProfile; - /** @type {?} */ - LayoutApplicationComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - LayoutApplicationComponent.prototype.rightPartElements; - /** @type {?} */ - LayoutApplicationComponent.prototype.trackByFn; - /** @type {?} */ - LayoutApplicationComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - LayoutApplicationComponent.prototype.store; - /** - * @type {?} - * @private - */ - LayoutApplicationComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return tslib_1.__spread(acc, [val]); - }), []); -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQtYXBwbGljYXRpb24vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCx5QkFBeUIsRUFDekIsV0FBVyxFQUVYLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDO0lBZ0VFLG9DQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGlCQUFZLEdBQVos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QUFDLENBQUM7MENBQzVCLFVBQVU7b0VBQXVDO0lBRy9EO1FBREMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQzswQ0FDMUMsVUFBVTtrRUFBc0M7SUFHNUQ7UUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDOzBDQUM1QixVQUFVO29FQUE2QjtJQStHdkQsaUNBQUM7Q0FBQSxBQWpJRCxJQWlJQztTQTdIWSwwQkFBMEI7OztJQUVyQyxnQ0FBc0M7O0lBRXRDLDZDQUNxQzs7SUFFckMsa0RBQytEOztJQUUvRCxnREFDNEQ7O0lBRTVELGtEQUNxRDs7SUFFckQsb0RBQ2lDOztJQUVqQyxpREFDOEI7O0lBRTlCLHlEQUM0Qzs7SUFFNUMsMERBQXNDOztJQUV0QyxtREFBK0I7O0lBRS9CLDREQUFnQzs7SUF5QmhDLHVEQUEyQzs7SUFFM0MsK0NBQW1FOztJQUVuRSxzREFBMkU7Ozs7O0lBRS9ELDJDQUFvQjs7Ozs7SUFBRSxrREFBa0M7Ozs7OztBQW1FdEUsU0FBUyxnQkFBZ0IsQ0FBQyxNQUF1QjtJQUMvQyxPQUFPLE1BQU0sQ0FBQyxNQUFNOzs7OztJQUFDLFVBQUMsR0FBRyxFQUFFLEdBQUc7UUFDNUIsSUFBSSxHQUFHLENBQUMsU0FBUztZQUFFLE9BQU8sR0FBRyxDQUFDO1FBRTlCLElBQUksR0FBRyxDQUFDLFFBQVEsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtZQUN2QyxHQUFHLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMvQztRQUVELHdCQUFXLEdBQUcsR0FBRSxHQUFHLEdBQUU7SUFDdkIsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFCUCxcbiAgQXBwbGljYXRpb25Db25maWd1cmF0aW9uLFxuICBDb25maWdHZXRBcHBDb25maWd1cmF0aW9uLFxuICBDb25maWdTdGF0ZSxcbiAgZUxheW91dFR5cGUsXG4gIFNlc3Npb25TZXRMYW5ndWFnZSxcbiAgU2Vzc2lvblN0YXRlLFxuICB0YWtlVW50aWxEZXN0cm95LFxufSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFRyYWNrQnlGdW5jdGlvbixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiRHJvcGRvd24gfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOYXZpZ2F0ZSwgUm91dGVyU3RhdGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IFNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBPQXV0aFNlcnZpY2UgfSBmcm9tICdhbmd1bGFyLW9hdXRoMi1vaWRjJztcbmltcG9ydCBjb21wYXJlIGZyb20gJ2p1c3QtY29tcGFyZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBMYXlvdXRBZGROYXZpZ2F0aW9uRWxlbWVudCB9IGZyb20gJy4uLy4uL2FjdGlvbnMnO1xuaW1wb3J0IHsgTGF5b3V0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2xheW91dCc7XG5pbXBvcnQgeyBMYXlvdXRTdGF0ZSB9IGZyb20gJy4uLy4uL3N0YXRlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtYXBwbGljYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5b3V0LWFwcGxpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0QXBwbGljYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5hcHBsaWNhdGlvbjtcblxuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldE9uZSgncm91dGVzJykpXG4gIHJvdXRlcyQ6IE9ic2VydmFibGU8QUJQLkZ1bGxSb3V0ZVtdPjtcblxuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldE9uZSgnY3VycmVudFVzZXInKSlcbiAgY3VycmVudFVzZXIkOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5DdXJyZW50VXNlcj47XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXREZWVwKCdsb2NhbGl6YXRpb24ubGFuZ3VhZ2VzJykpXG4gIGxhbmd1YWdlcyQ6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkxhbmd1YWdlW10+O1xuXG4gIEBTZWxlY3QoTGF5b3V0U3RhdGUuZ2V0TmF2aWdhdGlvbkVsZW1lbnRzKVxuICBuYXZFbGVtZW50cyQ6IE9ic2VydmFibGU8TGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10+O1xuXG4gIEBWaWV3Q2hpbGQoJ2N1cnJlbnRVc2VyJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBjdXJyZW50VXNlclJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdsYW5ndWFnZScsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgbGFuZ3VhZ2VSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQFZpZXdDaGlsZHJlbignbmF2YmFyUm9vdERyb3Bkb3duJywgeyByZWFkOiBOZ2JEcm9wZG93biB9KVxuICBuYXZiYXJSb290RHJvcGRvd25zOiBRdWVyeUxpc3Q8TmdiRHJvcGRvd24+O1xuXG4gIGlzT3BlbkNoYW5nZVBhc3N3b3JkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNPcGVuUHJvZmlsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzRHJvcGRvd25DaGlsZER5bmFtaWM6IGJvb2xlYW47XG5cbiAgZ2V0IHZpc2libGVSb3V0ZXMkKCk6IE9ic2VydmFibGU8QUJQLkZ1bGxSb3V0ZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVzJC5waXBlKG1hcChyb3V0ZXMgPT4gZ2V0VmlzaWJsZVJvdXRlcyhyb3V0ZXMpKSk7XG4gIH1cblxuICBnZXQgZGVmYXVsdExhbmd1YWdlJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlcyQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgbGFuZ3VhZ2VzID0+IHNucSgoKSA9PiBsYW5ndWFnZXMuZmluZChsYW5nID0+IGxhbmcuY3VsdHVyZU5hbWUgPT09IHRoaXMuc2VsZWN0ZWRMYW5nQ3VsdHVyZSkuZGlzcGxheU5hbWUpLFxuICAgICAgICAnJyxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIGdldCBkcm9wZG93bkxhbmd1YWdlcyQoKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uTGFuZ3VhZ2VbXT4ge1xuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlcyQucGlwZShcbiAgICAgIG1hcChsYW5ndWFnZXMgPT4gc25xKCgpID0+IGxhbmd1YWdlcy5maWx0ZXIobGFuZyA9PiBsYW5nLmN1bHR1cmVOYW1lICE9PSB0aGlzLnNlbGVjdGVkTGFuZ0N1bHR1cmUpKSwgW10pLFxuICAgICk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWRMYW5nQ3VsdHVyZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSk7XG4gIH1cblxuICByaWdodFBhcnRFbGVtZW50czogVGVtcGxhdGVSZWY8YW55PltdID0gW107XG5cbiAgdHJhY2tCeUZuOiBUcmFja0J5RnVuY3Rpb248QUJQLkZ1bGxSb3V0ZT4gPSAoXywgaXRlbSkgPT4gaXRlbS5uYW1lO1xuXG4gIHRyYWNrRWxlbWVudEJ5Rm46IFRyYWNrQnlGdW5jdGlvbjxBQlAuRnVsbFJvdXRlPiA9IChfLCBlbGVtZW50KSA9PiBlbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlLCBwcml2YXRlIG9hdXRoU2VydmljZTogT0F1dGhTZXJ2aWNlKSB7fVxuXG4gIHByaXZhdGUgY2hlY2tXaW5kb3dXaWR0aCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMubmF2YmFyUm9vdERyb3Bkb3ducy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBpdGVtLmNsb3NlKCk7XG4gICAgICB9KTtcbiAgICAgIGlmICh3aW5kb3cuaW5uZXJXaWR0aCA8IDc2OCkge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25DaGlsZER5bmFtaWMgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93bkNoaWxkRHluYW1pYyA9IHRydWU7XG4gICAgICB9XG4gICAgfSwgMCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgbmF2aWdhdGlvbnMgPSB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KExheW91dFN0YXRlLmdldE5hdmlnYXRpb25FbGVtZW50cykubWFwKCh7IG5hbWUgfSkgPT4gbmFtZSk7XG5cbiAgICBpZiAobmF2aWdhdGlvbnMuaW5kZXhPZignTGFuZ3VhZ2VSZWYnKSA8IDApIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIG5ldyBMYXlvdXRBZGROYXZpZ2F0aW9uRWxlbWVudChbXG4gICAgICAgICAgeyBlbGVtZW50OiB0aGlzLmxhbmd1YWdlUmVmLCBvcmRlcjogNCwgbmFtZTogJ0xhbmd1YWdlUmVmJyB9LFxuICAgICAgICAgIHsgZWxlbWVudDogdGhpcy5jdXJyZW50VXNlclJlZiwgb3JkZXI6IDUsIG5hbWU6ICdDdXJyZW50VXNlclJlZicgfSxcbiAgICAgICAgXSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMubmF2RWxlbWVudHMkXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKGVsZW1lbnRzID0+IGVsZW1lbnRzLm1hcCgoeyBlbGVtZW50IH0pID0+IGVsZW1lbnQpKSxcbiAgICAgICAgZmlsdGVyKGVsZW1lbnRzID0+ICFjb21wYXJlKGVsZW1lbnRzLCB0aGlzLnJpZ2h0UGFydEVsZW1lbnRzKSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGVsZW1lbnRzID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiAodGhpcy5yaWdodFBhcnRFbGVtZW50cyA9IGVsZW1lbnRzKSwgMCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuY2hlY2tXaW5kb3dXaWR0aCgpO1xuXG4gICAgZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveSh0aGlzKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDI1MCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jaGVja1dpbmRvd1dpZHRoKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge31cblxuICBvbkNoYW5nZUxhbmcoY3VsdHVyZU5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IFNlc3Npb25TZXRMYW5ndWFnZShjdWx0dXJlTmFtZSkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IENvbmZpZ0dldEFwcENvbmZpZ3VyYXRpb24oKSk7XG4gIH1cblxuICBsb2dvdXQoKSB7XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UubG9nT3V0KCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIG5ldyBOYXZpZ2F0ZShbJy9hY2NvdW50L2xvZ2luJ10sIG51bGwsIHtcbiAgICAgICAgc3RhdGU6IHsgcmVkaXJlY3RVcmw6IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoUm91dGVyU3RhdGUpLnN0YXRlLnVybCB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBDb25maWdHZXRBcHBDb25maWd1cmF0aW9uKCkpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldFZpc2libGVSb3V0ZXMocm91dGVzOiBBQlAuRnVsbFJvdXRlW10pIHtcbiAgcmV0dXJuIHJvdXRlcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgaWYgKHZhbC5pbnZpc2libGUpIHJldHVybiBhY2M7XG5cbiAgICBpZiAodmFsLmNoaWxkcmVuICYmIHZhbC5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgIHZhbC5jaGlsZHJlbiA9IGdldFZpc2libGVSb3V0ZXModmFsLmNoaWxkcmVuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmFjYywgdmFsXTtcbiAgfSwgW10pO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-empty/layout-empty.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-empty/layout-empty.component.js deleted file mode 100644 index c4e08d76c8..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout-empty/layout-empty.component.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -var LayoutEmptyComponent = /** @class */ (function () { - function LayoutEmptyComponent() { - } - // required for dynamic component - LayoutEmptyComponent.type = "empty" /* empty */; - LayoutEmptyComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: "\n Layout-empty\n \n " - }] } - ]; - return LayoutEmptyComponent; -}()); -export { LayoutEmptyComponent }; -if (false) { - /** @type {?} */ - LayoutEmptyComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWVtcHR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQtZW1wdHkvbGF5b3V0LWVtcHR5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO0lBVUEsQ0FBQzs7SUFEUSx5QkFBSSx1QkFBcUI7O2dCQVRqQyxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLDZEQUdUO2lCQUNGOztJQUlELDJCQUFDO0NBQUEsQUFWRCxJQVVDO1NBSFksb0JBQW9COzs7SUFFL0IsMEJBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtZW1wdHknLFxuICB0ZW1wbGF0ZTogYFxuICAgIExheW91dC1lbXB0eVxuICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0RW1wdHlDb21wb25lbnQge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5lbXB0eTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js index a08c8cadbe..72beb73c1e 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js @@ -2,22 +2,46 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +import { ConfigState } from '@abp/ng.core'; +import { slideFromBottom } from '@abp/ng.theme.shared'; import { Component } from '@angular/core'; +import { Store } from '@ngxs/store'; var LayoutComponent = /** @class */ (function () { - function LayoutComponent() { - this.isCollapsed = false; + function LayoutComponent(store) { + this.store = store; + this.isCollapsed = true; } + Object.defineProperty(LayoutComponent.prototype, "appInfo", { + get: /** + * @return {?} + */ + function () { + return this.store.selectSnapshot(ConfigState.getApplicationInfo); + }, + enumerable: true, + configurable: true + }); LayoutComponent.decorators = [ { type: Component, args: [{ selector: ' abp-layout', - template: "\n\n
    \n \n
    \n\n\n\n" + template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", + animations: [slideFromBottom] }] } ]; + /** @nocollapse */ + LayoutComponent.ctorParameters = function () { return [ + { type: Store } + ]; }; return LayoutComponent; }()); export { LayoutComponent }; if (false) { /** @type {?} */ LayoutComponent.prototype.isCollapsed; + /** + * @type {?} + * @private + */ + LayoutComponent.prototype.store; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQztJQUFBO1FBS0UsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUFDL0IsQ0FBQzs7Z0JBTkEsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixvcUJBQXNDO2lCQUN2Qzs7SUFHRCxzQkFBQztDQUFBLEFBTkQsSUFNQztTQUZZLGVBQWU7OztJQUMxQixzQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnIGFicC1sYXlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0Q29tcG9uZW50IHtcbiAgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFVLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBDO0lBWUUseUJBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBTmhDLGdCQUFXLEdBQVksSUFBSSxDQUFDO0lBTU8sQ0FBQztJQUpwQyxzQkFBSSxvQ0FBTzs7OztRQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNuRSxDQUFDOzs7T0FBQTs7Z0JBVkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixnOEJBQXNDO29CQUN0QyxVQUFVLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQzlCOzs7O2dCQU5RLEtBQUs7O0lBZWQsc0JBQUM7Q0FBQSxBQWJELElBYUM7U0FSWSxlQUFlOzs7SUFDMUIsc0NBQTRCOzs7OztJQU1oQixnQ0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcsIENvbmZpZ1N0YXRlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IHNsaWRlRnJvbUJvdHRvbSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJyBhYnAtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIGFuaW1hdGlvbnM6IFtzbGlkZUZyb21Cb3R0b21dLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuICBpc0NvbGxhcHNlZDogYm9vbGVhbiA9IHRydWU7XG5cbiAgZ2V0IGFwcEluZm8oKTogQ29uZmlnLkFwcGxpY2F0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChDb25maWdTdGF0ZS5nZXRBcHBsaWNhdGlvbkluZm8pO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/profile/profile.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/profile/profile.component.js deleted file mode 100644 index ebfe787a3d..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/profile/profile.component.js +++ /dev/null @@ -1,154 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core'; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { Select, Store } from '@ngxs/store'; -import { Observable } from 'rxjs'; -import { take, withLatestFrom } from 'rxjs/operators'; -var maxLength = Validators.maxLength, required = Validators.required, email = Validators.email; -var ProfileComponent = /** @class */ (function () { - function ProfileComponent(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - Object.defineProperty(ProfileComponent.prototype, "visible", { - get: /** - * @return {?} - */ - function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - ProfileComponent.prototype.buildForm = /** - * @return {?} - */ - function () { - var _this = this; - this.store - .dispatch(new ProfileGet()) - .pipe(withLatestFrom(this.profile$), take(1)) - .subscribe((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var _b = tslib_1.__read(_a, 2), profile = _b[1]; - _this.form = _this.fb.group({ - userName: [profile.userName, [required, maxLength(256)]], - email: [profile.email, [required, email, maxLength(256)]], - name: [profile.name || '', [maxLength(64)]], - surname: [profile.surname || '', [maxLength(64)]], - phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], - }); - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.buildForm(); - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ProfileComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ProfileComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-profile', - template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } - ]; - /** @nocollapse */ - ProfileComponent.ctorParameters = function () { return [ - { type: FormBuilder }, - { type: Store } - ]; }; - ProfileComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }] - }; - tslib_1.__decorate([ - Select(ProfileState.getProfile), - tslib_1.__metadata("design:type", Observable) - ], ProfileComponent.prototype, "profile$", void 0); - return ProfileComponent; -}()); -export { ProfileComponent }; -if (false) { - /** - * @type {?} - * @protected - */ - ProfileComponent.prototype._visible; - /** @type {?} */ - ProfileComponent.prototype.visibleChange; - /** @type {?} */ - ProfileComponent.prototype.profile$; - /** @type {?} */ - ProfileComponent.prototype.form; - /** - * @type {?} - * @private - */ - ProfileComponent.prototype.fb; - /** - * @type {?} - * @private - */ - ProfileComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBVyxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxJQUFBLGdDQUFTLEVBQUUsOEJBQVEsRUFBRSx3QkFBSztBQUVsQztJQXlCRSwwQkFBb0IsRUFBZSxFQUFVLEtBQVk7UUFBckMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFQekQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBT2dCLENBQUM7SUFsQjdELHNCQUNJLHFDQUFPOzs7O1FBRFg7WUFFRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkIsQ0FBQzs7Ozs7UUFFRCxVQUFZLEtBQWM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQzs7O09BTEE7Ozs7SUFpQkQsb0NBQVM7OztJQUFUO1FBQUEsaUJBZ0JDO1FBZkMsSUFBSSxDQUFDLEtBQUs7YUFDUCxRQUFRLENBQUMsSUFBSSxVQUFVLEVBQUUsQ0FBQzthQUMxQixJQUFJLENBQ0gsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDN0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNSO2FBQ0EsU0FBUzs7OztRQUFDLFVBQUMsRUFBVztnQkFBWCwwQkFBVyxFQUFSLGVBQU87WUFDcEIsS0FBSSxDQUFDLElBQUksR0FBRyxLQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztnQkFDeEIsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDeEQsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pELElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pELFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDMUQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsbUNBQVE7OztJQUFSO1FBQUEsaUJBTUM7UUFMQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVM7OztRQUFDO1lBQ2hFLEtBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELG9DQUFTOzs7SUFBVDtRQUNFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELHNDQUFXOzs7O0lBQVgsVUFBWSxFQUEwQjtZQUF4QixvQkFBTztRQUNuQixJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFckIsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNsQjthQUFNLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6RCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7O2dCQWxFRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLGltRUFBdUM7aUJBQ3hDOzs7O2dCQVZRLFdBQVc7Z0JBQ0gsS0FBSzs7OzBCQWFuQixLQUFLO2dDQVVMLE1BQU07O0lBSVA7UUFEQyxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQzswQ0FDdEIsVUFBVTtzREFBbUI7SUE4Q3pDLHVCQUFDO0NBQUEsQUFuRUQsSUFtRUM7U0EvRFksZ0JBQWdCOzs7Ozs7SUFDM0Isb0NBQW1COztJQVluQix5Q0FDNEM7O0lBRTVDLG9DQUN1Qzs7SUFFdkMsZ0NBQWdCOzs7OztJQUVKLDhCQUF1Qjs7Ozs7SUFBRSxpQ0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9maWxlLCBQcm9maWxlR2V0LCBQcm9maWxlU3RhdGUsIFByb2ZpbGVVcGRhdGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuY29uc3QgeyBtYXhMZW5ndGgsIHJlcXVpcmVkLCBlbWFpbCB9ID0gVmFsaWRhdG9ycztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXByb2ZpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZmlsZS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFByb2ZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBwcm90ZWN0ZWQgX3Zpc2libGU7XG5cbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cblxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAU2VsZWN0KFByb2ZpbGVTdGF0ZS5nZXRQcm9maWxlKVxuICBwcm9maWxlJDogT2JzZXJ2YWJsZTxQcm9maWxlLlJlc3BvbnNlPjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxuXG4gIGJ1aWxkRm9ybSgpIHtcbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IFByb2ZpbGVHZXQoKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnByb2ZpbGUkKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKFssIHByb2ZpbGVdKSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgIHVzZXJOYW1lOiBbcHJvZmlsZS51c2VyTmFtZSwgW3JlcXVpcmVkLCBtYXhMZW5ndGgoMjU2KV1dLFxuICAgICAgICAgIGVtYWlsOiBbcHJvZmlsZS5lbWFpbCwgW3JlcXVpcmVkLCBlbWFpbCwgbWF4TGVuZ3RoKDI1NildXSxcbiAgICAgICAgICBuYW1lOiBbcHJvZmlsZS5uYW1lIHx8ICcnLCBbbWF4TGVuZ3RoKDY0KV1dLFxuICAgICAgICAgIHN1cm5hbWU6IFtwcm9maWxlLnN1cm5hbWUgfHwgJycsIFttYXhMZW5ndGgoNjQpXV0sXG4gICAgICAgICAgcGhvbmVOdW1iZXI6IFtwcm9maWxlLnBob25lTnVtYmVyIHx8ICcnLCBbbWF4TGVuZ3RoKDE2KV1dLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBQcm9maWxlVXBkYXRlKHRoaXMuZm9ybS52YWx1ZSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9KTtcbiAgfVxuXG4gIG9wZW5Nb2RhbCgpIHtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyh7IHZpc2libGUgfTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICghdmlzaWJsZSkgcmV0dXJuO1xuXG4gICAgaWYgKHZpc2libGUuY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICAgIH0gZWxzZSBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUgPT09IGZhbHNlICYmIHRoaXMudmlzaWJsZSkge1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js b/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js index f6719a7ddb..2944041490 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js @@ -4,7 +4,7 @@ */ import * as tslib_1 from "tslib"; import { State, Action, Selector } from '@ngxs/store'; -import { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions'; +import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; import snq from 'snq'; var LayoutState = /** @class */ (function () { function LayoutState() { @@ -102,15 +102,15 @@ var LayoutState = /** @class */ (function () { }); }; tslib_1.__decorate([ - Action(LayoutAddNavigationElement), + Action(AddNavigationElement), tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, LayoutAddNavigationElement]), + tslib_1.__metadata("design:paramtypes", [Object, AddNavigationElement]), tslib_1.__metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutAddAction", null); tslib_1.__decorate([ - Action(LayoutRemoveNavigationElementByName), + Action(RemoveNavigationElementByName), tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, LayoutRemoveNavigationElementByName]), + tslib_1.__metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), tslib_1.__metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutRemoveAction", null); tslib_1.__decorate([ @@ -128,4 +128,4 @@ var LayoutState = /** @class */ (function () { return LayoutState; }()); export { LayoutState }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUc1RyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7OztJQTBEdEIsQ0FBQzs7Ozs7SUFsRFEsaUNBQXFCOzs7O0lBQTVCLFVBQTZCLEVBQW9DO1lBQWxDLDBDQUFrQjtRQUMvQyxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7Ozs7OztJQUdELHFDQUFlOzs7OztJQUFmLFVBQWdCLEVBQW9ELEVBQUUsRUFBNEM7WUFBaEcsc0JBQVEsRUFBRSwwQkFBVTtZQUFrQyxlQUFZLEVBQVosaUNBQVk7UUFDNUUsSUFBQSxrREFBa0I7UUFFeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1g7Z0JBQ0UsT0FBQSxDQUFDLG1CQUFBLE9BQU8sRUFBOEIsQ0FBQyxDQUFDLE1BQU07Ozs7Z0JBQzVDLFVBQUMsRUFBUTt3QkFBTixjQUFJO29CQUFPLE9BQUEsa0JBQWtCLENBQUMsU0FBUzs7OztvQkFBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFqQixDQUFpQixFQUFDLEdBQUcsQ0FBQztnQkFBMUQsQ0FBMEQsRUFDekU7WUFGRCxDQUVDLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsaUJBQUksa0JBQWtCLEVBQUssT0FBTyxFQUNwRCxHQUFHOzs7O1FBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxzQkFBTSxPQUFPLElBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxJQUFHLEVBQTVDLENBQTRDLEVBQUM7YUFDNUQsSUFBSTs7Ozs7UUFBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQWpCLENBQWlCLEVBQUMsQ0FBQztRQUVyQyxPQUFPLFVBQVUsQ0FBQztZQUNoQixrQkFBa0Isb0JBQUE7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBR0Qsd0NBQWtCOzs7OztJQUFsQixVQUNFLEVBQW9ELEVBQ3BELEVBQTZDO1lBRDNDLHNCQUFRLEVBQUUsMEJBQVU7WUFDcEIsY0FBSTtRQUVBLElBQUEsa0RBQWtCOztZQUVsQixLQUFLLEdBQUcsa0JBQWtCLENBQUMsU0FBUzs7OztRQUFDLFVBQUEsT0FBTyxJQUFJLE9BQUEsT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQXJCLENBQXFCLEVBQUM7UUFFNUUsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDZCxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzFEO1FBRUQsT0FBTyxVQUFVLENBQUM7WUFDaEIsa0JBQWtCLG9CQUFBO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUE1Q0Q7UUFEQyxNQUFNLENBQUMsMEJBQTBCLENBQUM7O3lEQUNxRCwwQkFBMEI7O3NEQTBCakg7SUFHRDtRQURDLE1BQU0sQ0FBQyxtQ0FBbUMsQ0FBQzs7eURBR2hDLG1DQUFtQzs7eURBYTlDO0lBakREO1FBREMsUUFBUSxFQUFFOzs7O2tEQUdWO0lBSlUsV0FBVztRQUp2QixLQUFLLENBQWU7WUFDbkIsSUFBSSxFQUFFLGFBQWE7WUFDbkIsUUFBUSxFQUFFLG1CQUFBLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxFQUFFLEVBQWdCO1NBQ3JELENBQUM7T0FDVyxXQUFXLENBb0R2QjtJQUFELGtCQUFDO0NBQUEsSUFBQTtTQXBEWSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhdGUsIEFjdGlvbiwgU3RhdGVDb250ZXh0LCBTZWxlY3RvciB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IExheW91dEFkZE5hdmlnYXRpb25FbGVtZW50LCBMYXlvdXRSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSB9IGZyb20gJy4uL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMnO1xuaW1wb3J0IHsgTGF5b3V0IH0gZnJvbSAnLi4vbW9kZWxzL2xheW91dCc7XG5pbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuXG5AU3RhdGU8TGF5b3V0LlN0YXRlPih7XG4gIG5hbWU6ICdMYXlvdXRTdGF0ZScsXG4gIGRlZmF1bHRzOiB7IG5hdmlnYXRpb25FbGVtZW50czogW10gfSBhcyBMYXlvdXQuU3RhdGUsXG59KVxuZXhwb3J0IGNsYXNzIExheW91dFN0YXRlIHtcbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIGdldE5hdmlnYXRpb25FbGVtZW50cyh7IG5hdmlnYXRpb25FbGVtZW50cyB9OiBMYXlvdXQuU3RhdGUpOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIG5hdmlnYXRpb25FbGVtZW50cztcbiAgfVxuXG4gIEBBY3Rpb24oTGF5b3V0QWRkTmF2aWdhdGlvbkVsZW1lbnQpXG4gIGxheW91dEFkZEFjdGlvbih7IGdldFN0YXRlLCBwYXRjaFN0YXRlIH06IFN0YXRlQ29udGV4dDxMYXlvdXQuU3RhdGU+LCB7IHBheWxvYWQgPSBbXSB9OiBMYXlvdXRBZGROYXZpZ2F0aW9uRWxlbWVudCkge1xuICAgIGxldCB7IG5hdmlnYXRpb25FbGVtZW50cyB9ID0gZ2V0U3RhdGUoKTtcblxuICAgIGlmICghQXJyYXkuaXNBcnJheShwYXlsb2FkKSkge1xuICAgICAgcGF5bG9hZCA9IFtwYXlsb2FkXTtcbiAgICB9XG5cbiAgICBpZiAobmF2aWdhdGlvbkVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgcGF5bG9hZCA9IHNucShcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAocGF5bG9hZCBhcyBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkuZmlsdGVyKFxuICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYXZpZ2F0aW9uRWxlbWVudHMuZmluZEluZGV4KG5hdiA9PiBuYXYubmFtZSA9PT0gbmFtZSkgPCAwLFxuICAgICAgICAgICksXG4gICAgICAgIFtdLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoIXBheWxvYWQubGVuZ3RoKSByZXR1cm47XG5cbiAgICBuYXZpZ2F0aW9uRWxlbWVudHMgPSBbLi4ubmF2aWdhdGlvbkVsZW1lbnRzLCAuLi5wYXlsb2FkXVxuICAgICAgLm1hcChlbGVtZW50ID0+ICh7IC4uLmVsZW1lbnQsIG9yZGVyOiBlbGVtZW50Lm9yZGVyIHx8IDk5IH0pKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKTtcblxuICAgIHJldHVybiBwYXRjaFN0YXRlKHtcbiAgICAgIG5hdmlnYXRpb25FbGVtZW50cyxcbiAgICB9KTtcbiAgfVxuXG4gIEBBY3Rpb24oTGF5b3V0UmVtb3ZlTmF2aWdhdGlvbkVsZW1lbnRCeU5hbWUpXG4gIGxheW91dFJlbW92ZUFjdGlvbihcbiAgICB7IGdldFN0YXRlLCBwYXRjaFN0YXRlIH06IFN0YXRlQ29udGV4dDxMYXlvdXQuU3RhdGU+LFxuICAgIHsgbmFtZSB9OiBMYXlvdXRSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSxcbiAgKSB7XG4gICAgbGV0IHsgbmF2aWdhdGlvbkVsZW1lbnRzIH0gPSBnZXRTdGF0ZSgpO1xuXG4gICAgY29uc3QgaW5kZXggPSBuYXZpZ2F0aW9uRWxlbWVudHMuZmluZEluZGV4KGVsZW1lbnQgPT4gZWxlbWVudC5uYW1lID09PSBuYW1lKTtcblxuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMgPSBuYXZpZ2F0aW9uRWxlbWVudHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUdoRyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7OztJQXVEdEIsQ0FBQzs7Ozs7SUEvQ1EsaUNBQXFCOzs7O0lBQTVCLFVBQTZCLEVBQW9DO1lBQWxDLDBDQUFrQjtRQUMvQyxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7Ozs7OztJQUdELHFDQUFlOzs7OztJQUFmLFVBQWdCLEVBQW9ELEVBQUUsRUFBc0M7WUFBMUYsc0JBQVEsRUFBRSwwQkFBVTtZQUFrQyxlQUFZLEVBQVosaUNBQVk7UUFDNUUsSUFBQSxrREFBa0I7UUFFeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1g7Z0JBQ0UsT0FBQSxDQUFDLG1CQUFBLE9BQU8sRUFBOEIsQ0FBQyxDQUFDLE1BQU07Ozs7Z0JBQzVDLFVBQUMsRUFBUTt3QkFBTixjQUFJO29CQUFPLE9BQUEsa0JBQWtCLENBQUMsU0FBUzs7OztvQkFBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFqQixDQUFpQixFQUFDLEdBQUcsQ0FBQztnQkFBMUQsQ0FBMEQsRUFDekU7WUFGRCxDQUVDLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsaUJBQUksa0JBQWtCLEVBQUssT0FBTyxFQUNwRCxHQUFHOzs7O1FBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxzQkFBTSxPQUFPLElBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxJQUFHLEVBQTVDLENBQTRDLEVBQUM7YUFDNUQsSUFBSTs7Ozs7UUFBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQWpCLENBQWlCLEVBQUMsQ0FBQztRQUVyQyxPQUFPLFVBQVUsQ0FBQztZQUNoQixrQkFBa0Isb0JBQUE7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBR0Qsd0NBQWtCOzs7OztJQUFsQixVQUFtQixFQUFvRCxFQUFFLEVBQXVDO1lBQTNGLHNCQUFRLEVBQUUsMEJBQVU7WUFBa0MsY0FBSTtRQUN2RSxJQUFBLGtEQUFrQjs7WUFFbEIsS0FBSyxHQUFHLGtCQUFrQixDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLE9BQU8sSUFBSSxPQUFBLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFyQixDQUFxQixFQUFDO1FBRTVFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2Qsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRDtRQUVELE9BQU8sVUFBVSxDQUFDO1lBQ2hCLGtCQUFrQixvQkFBQTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBekNEO1FBREMsTUFBTSxDQUFDLG9CQUFvQixDQUFDOzt5REFDMkQsb0JBQW9COztzREEwQjNHO0lBR0Q7UUFEQyxNQUFNLENBQUMsNkJBQTZCLENBQUM7O3lEQUM2Qyw2QkFBNkI7O3lEQVkvRztJQTlDRDtRQURDLFFBQVEsRUFBRTs7OztrREFHVjtJQUpVLFdBQVc7UUFKdkIsS0FBSyxDQUFlO1lBQ25CLElBQUksRUFBRSxhQUFhO1lBQ25CLFFBQVEsRUFBRSxtQkFBQSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsRUFBRSxFQUFnQjtTQUNyRCxDQUFDO09BQ1csV0FBVyxDQWlEdkI7SUFBRCxrQkFBQztDQUFBLElBQUE7U0FqRFksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXRlLCBBY3Rpb24sIFN0YXRlQ29udGV4dCwgU2VsZWN0b3IgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBBZGROYXZpZ2F0aW9uRWxlbWVudCwgUmVtb3ZlTmF2aWdhdGlvbkVsZW1lbnRCeU5hbWUgfSBmcm9tICcuLi9hY3Rpb25zL2xheW91dC5hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcblxuQFN0YXRlPExheW91dC5TdGF0ZT4oe1xuICBuYW1lOiAnTGF5b3V0U3RhdGUnLFxuICBkZWZhdWx0czogeyBuYXZpZ2F0aW9uRWxlbWVudHM6IFtdIH0gYXMgTGF5b3V0LlN0YXRlLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRTdGF0ZSB7XG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyBnZXROYXZpZ2F0aW9uRWxlbWVudHMoeyBuYXZpZ2F0aW9uRWxlbWVudHMgfTogTGF5b3V0LlN0YXRlKTogTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10ge1xuICAgIHJldHVybiBuYXZpZ2F0aW9uRWxlbWVudHM7XG4gIH1cblxuICBAQWN0aW9uKEFkZE5hdmlnYXRpb25FbGVtZW50KVxuICBsYXlvdXRBZGRBY3Rpb24oeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPiwgeyBwYXlsb2FkID0gW10gfTogQWRkTmF2aWdhdGlvbkVsZW1lbnQpIHtcbiAgICBsZXQgeyBuYXZpZ2F0aW9uRWxlbWVudHMgfSA9IGdldFN0YXRlKCk7XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF5bG9hZCkpIHtcbiAgICAgIHBheWxvYWQgPSBbcGF5bG9hZF07XG4gICAgfVxuXG4gICAgaWYgKG5hdmlnYXRpb25FbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgIHBheWxvYWQgPSBzbnEoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgKHBheWxvYWQgYXMgTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10pLmZpbHRlcihcbiAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChuYXYgPT4gbmF2Lm5hbWUgPT09IG5hbWUpIDwgMCxcbiAgICAgICAgICApLFxuICAgICAgICBbXSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFwYXlsb2FkLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gWy4uLm5hdmlnYXRpb25FbGVtZW50cywgLi4ucGF5bG9hZF1cbiAgICAgIC5tYXAoZWxlbWVudCA9PiAoeyAuLi5lbGVtZW50LCBvcmRlcjogZWxlbWVudC5vcmRlciB8fCA5OSB9KSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cblxuICBAQWN0aW9uKFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lKVxuICBsYXlvdXRSZW1vdmVBY3Rpb24oeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPiwgeyBuYW1lIH06IFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lKSB7XG4gICAgbGV0IHsgbmF2aWdhdGlvbkVsZW1lbnRzIH0gPSBnZXRTdGF0ZSgpO1xuXG4gICAgY29uc3QgaW5kZXggPSBuYXZpZ2F0aW9uRWxlbWVudHMuZmluZEluZGV4KGVsZW1lbnQgPT4gZWxlbWVudC5uYW1lID09PSBuYW1lKTtcblxuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMgPSBuYXZpZ2F0aW9uRWxlbWVudHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js b/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js index 047d909621..f378add9db 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js +++ b/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js @@ -4,27 +4,25 @@ */ import * as tslib_1 from "tslib"; import { CoreModule } from '@abp/ng.core'; +import { ThemeSharedModule } from '@abp/ng.theme.shared'; import { NgModule } from '@angular/core'; import { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { ChangePasswordComponent } from './components/change-password/change-password.component'; -import { LayoutAccountComponent } from './components/layout-account/layout-account.component'; -import { LayoutApplicationComponent } from './components/layout-application/layout-application.component'; -import { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component'; -import { LayoutComponent } from './components/layout/layout.component'; -import { ProfileComponent } from './components/profile/profile.component'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { ToastModule } from 'primeng/toast'; import { NgxValidateCoreModule } from '@ngx-validate/core'; import { NgxsModule } from '@ngxs/store'; +import { ToastModule } from 'primeng/toast'; +import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; +import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; +import { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component'; +import { LayoutComponent } from './components/layout/layout.component'; import { LayoutState } from './states/layout.state'; /** @type {?} */ -export var LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent]; +export var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; var ThemeBasicModule = /** @class */ (function () { function ThemeBasicModule() { } ThemeBasicModule.decorators = [ { type: NgModule, args: [{ - declarations: tslib_1.__spread(LAYOUTS, [LayoutComponent, ChangePasswordComponent, ProfileComponent]), + declarations: tslib_1.__spread(LAYOUTS, [LayoutComponent]), imports: [ CoreModule, ThemeSharedModule, @@ -41,4 +39,4 @@ var ThemeBasicModule = /** @class */ (function () { return ThemeBasicModule; }()); export { ThemeBasicModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDOUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRXBELE1BQU0sS0FBTyxPQUFPLEdBQUcsQ0FBQywwQkFBMEIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztBQUVqRztJQUFBO0lBYytCLENBQUM7O2dCQWQvQixRQUFRLFNBQUM7b0JBQ1IsWUFBWSxtQkFBTSxPQUFPLEdBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFDO29CQUN0RixPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLHFCQUFxQjt3QkFDckIsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3FCQUNyQztvQkFDRCxPQUFPLG1CQUFNLE9BQU8sQ0FBQztvQkFDckIsZUFBZSxtQkFBTSxPQUFPLENBQUM7aUJBQzlCOztJQUM4Qix1QkFBQztDQUFBLEFBZGhDLElBY2dDO1NBQW5CLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkNvbGxhcHNlTW9kdWxlLCBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dEFjY291bnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGF5b3V0LWFjY291bnQvbGF5b3V0LWFjY291bnQuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dEFwcGxpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xheW91dC1hcHBsaWNhdGlvbi9sYXlvdXQtYXBwbGljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dEVtcHR5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xheW91dC1lbXB0eS9sYXlvdXQtZW1wdHkuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBMYXlvdXRTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL2xheW91dC5zdGF0ZSc7XG5cbmV4cG9ydCBjb25zdCBMQVlPVVRTID0gW0xheW91dEFwcGxpY2F0aW9uQ29tcG9uZW50LCBMYXlvdXRBY2NvdW50Q29tcG9uZW50LCBMYXlvdXRFbXB0eUNvbXBvbmVudF07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogWy4uLkxBWU9VVFMsIExheW91dENvbXBvbmVudCwgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQsIFByb2ZpbGVDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBOZ2JDb2xsYXBzZU1vZHVsZSxcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBUb2FzdE1vZHVsZSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtMYXlvdXRTdGF0ZV0pLFxuICBdLFxuICBleHBvcnRzOiBbLi4uTEFZT1VUU10sXG4gIGVudHJ5Q29tcG9uZW50czogWy4uLkxBWU9VVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZUJhc2ljTW9kdWxlIHt9XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRXBELE1BQU0sS0FBTyxPQUFPLEdBQUcsQ0FBQywwQkFBMEIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztBQUVqRztJQUFBO0lBYytCLENBQUM7O2dCQWQvQixRQUFRLFNBQUM7b0JBQ1IsWUFBWSxtQkFBTSxPQUFPLEdBQUUsZUFBZSxFQUFDO29CQUMzQyxPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLHFCQUFxQjt3QkFDckIsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3FCQUNyQztvQkFDRCxPQUFPLG1CQUFNLE9BQU8sQ0FBQztvQkFDckIsZUFBZSxtQkFBTSxPQUFPLENBQUM7aUJBQzlCOztJQUM4Qix1QkFBQztDQUFBLEFBZGhDLElBY2dDO1NBQW5CLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQ29sbGFwc2VNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xuaW1wb3J0IHsgQWNjb3VudExheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25MYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dFN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvbGF5b3V0LnN0YXRlJztcblxuZXhwb3J0IGNvbnN0IExBWU9VVFMgPSBbQXBwbGljYXRpb25MYXlvdXRDb21wb25lbnQsIEFjY291bnRMYXlvdXRDb21wb25lbnQsIEVtcHR5TGF5b3V0Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbLi4uTEFZT1VUUywgTGF5b3V0Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgTmdiQ29sbGFwc2VNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG4gICAgVG9hc3RNb2R1bGUsXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxuICAgIE5neHNNb2R1bGUuZm9yRmVhdHVyZShbTGF5b3V0U3RhdGVdKSxcbiAgXSxcbiAgZXhwb3J0czogWy4uLkxBWU9VVFNdLFxuICBlbnRyeUNvbXBvbmVudHM6IFsuLi5MQVlPVVRTXSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlbWVCYXNpY01vZHVsZSB7fVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/public-api.js b/npm/ng-packs/dist/theme-basic/esm5/public-api.js index 0ce06fadd6..42fd1f4364 100644 --- a/npm/ng-packs/dist/theme-basic/esm5/public-api.js +++ b/npm/ng-packs/dist/theme-basic/esm5/public-api.js @@ -6,8 +6,8 @@ * Public API Surface of theme-basic */ export { LAYOUTS, ThemeBasicModule } from './lib/theme-basic.module'; -export { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from './lib/actions'; -export { LayoutAccountComponent, LayoutApplicationComponent, LayoutEmptyComponent } from './lib/components'; +export { AddNavigationElement, RemoveNavigationElementByName } from './lib/actions'; +export { AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent } from './lib/components'; export {} from './lib/models'; export { LayoutState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxnRkFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxvRUFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js index ddc5f1e86f..95c06f77b4 100644 --- a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js +++ b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js @@ -1,139 +1,42 @@ -import { ProfileChangePassword, SessionState, takeUntilDestroy, SessionSetLanguage, ConfigGetAppConfiguration, ConfigState, ProfileGet, ProfileUpdate, ProfileState, CoreModule } from '@abp/ng.core'; -import { EventEmitter, Component, Input, Output, ViewChild, TemplateRef, ViewChildren, NgModule } from '@angular/core'; +import { SessionState, takeUntilDestroy, SetLanguage, GetAppConfiguration, ConfigState, CoreModule } from '@abp/ng.core'; +import { slideFromBottom, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Component, ViewChild, TemplateRef, ViewChildren, NgModule } from '@angular/core'; import { NgbDropdown, NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { FormBuilder, Validators } from '@angular/forms'; -import { validatePassword, comparePasswords, NgxValidateCoreModule } from '@ngx-validate/core'; -import { Store, Action, Selector, State, Select, NgxsModule } from '@ngxs/store'; +import { NgxValidateCoreModule } from '@ngx-validate/core'; +import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; +import { ToastModule } from 'primeng/toast'; import { __decorate, __metadata } from 'tslib'; import { Navigate, RouterState } from '@ngxs/router-plugin'; import { OAuthService } from 'angular-oauth2-oidc'; import compare from 'just-compare'; import { fromEvent, Observable } from 'rxjs'; -import { map, filter, debounceTime, withLatestFrom, take } from 'rxjs/operators'; +import { map, filter, debounceTime } from 'rxjs/operators'; import snq from 'snq'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { ToastModule } from 'primeng/toast'; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -const { minLength, required } = Validators; -class ChangePasswordComponent { - /** - * @param {?} fb - * @param {?} store - */ - constructor(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - /** - * @return {?} - */ - get visible() { - return this._visible; - } - /** - * @param {?} value - * @return {?} - */ - set visible(value) { - this._visible = value; - this.visibleChange.emit(value); - } - /** - * @return {?} - */ - ngOnInit() { - this.form = this.fb.group({ - password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - }, { - validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], - }); - } - /** - * @return {?} - */ - onSubmit() { - if (this.form.invalid) - return; - this.store - .dispatch(new ProfileChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .subscribe((/** - * @return {?} - */ - () => { - this.visible = false; - })); - } - /** - * @return {?} - */ - openModal() { - this.visible = true; - } - /** - * @param {?} __0 - * @return {?} - */ - ngOnChanges({ visible }) { - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - } -} -ChangePasswordComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } -]; -/** @nocollapse */ -ChangePasswordComponent.ctorParameters = () => [ - { type: FormBuilder }, - { type: Store } -]; -ChangePasswordComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }], - modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] -}; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class LayoutAccountComponent { - constructor() { - this.isCollapsed = false; - } +class AccountLayoutComponent { } // required for dynamic component -LayoutAccountComponent.type = "account" /* account */; -LayoutAccountComponent.decorators = [ +AccountLayoutComponent.type = "account" /* account */; +AccountLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-account', - template: "\n \n\n \n \n \n \n \n\n" + template: "\n" }] } ]; +if (false) { + /** @type {?} */ + AccountLayoutComponent.type; +} /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -class LayoutAddNavigationElement { +class AddNavigationElement { /** * @param {?} payload */ @@ -141,8 +44,14 @@ class LayoutAddNavigationElement { this.payload = payload; } } -LayoutAddNavigationElement.type = '[Layout] Add Navigation Element'; -class LayoutRemoveNavigationElementByName { +AddNavigationElement.type = '[Layout] Add Navigation Element'; +if (false) { + /** @type {?} */ + AddNavigationElement.type; + /** @type {?} */ + AddNavigationElement.prototype.payload; +} +class RemoveNavigationElementByName { /** * @param {?} name */ @@ -150,7 +59,18 @@ class LayoutRemoveNavigationElementByName { this.name = name; } } -LayoutRemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; +RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; +if (false) { + /** @type {?} */ + RemoveNavigationElementByName.type; + /** @type {?} */ + RemoveNavigationElementByName.prototype.name; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ /** * @fileoverview added by tsickle @@ -228,15 +148,15 @@ let LayoutState = class LayoutState { } }; __decorate([ - Action(LayoutAddNavigationElement), + Action(AddNavigationElement), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutAddNavigationElement]), + __metadata("design:paramtypes", [Object, AddNavigationElement]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutAddAction", null); __decorate([ - Action(LayoutRemoveNavigationElementByName), + Action(RemoveNavigationElementByName), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutRemoveNavigationElementByName]), + __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutRemoveAction", null); __decorate([ @@ -256,7 +176,12 @@ LayoutState = __decorate([ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -class LayoutApplicationComponent { + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +class ApplicationLayoutComponent { /** * @param {?} store * @param {?} oauthService @@ -365,7 +290,7 @@ class LayoutApplicationComponent { */ ({ name }) => name)); if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new LayoutAddNavigationElement([ + this.store.dispatch(new AddNavigationElement([ { element: this.languageRef, order: 4, name: 'LanguageRef' }, { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, ])); @@ -413,34 +338,33 @@ class LayoutApplicationComponent { * @return {?} */ onChangeLang(cultureName) { - this.store.dispatch(new SessionSetLanguage(cultureName)); - this.store.dispatch(new ConfigGetAppConfiguration()); + this.store.dispatch(new SetLanguage(cultureName)); } /** * @return {?} */ logout() { this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/account/login'], null, { + this.store.dispatch(new Navigate(['/'], null, { state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, })); - this.store.dispatch(new ConfigGetAppConfiguration()); + this.store.dispatch(new GetAppConfiguration()); } } // required for dynamic component -LayoutApplicationComponent.type = "application" /* application */; -LayoutApplicationComponent.decorators = [ +ApplicationLayoutComponent.type = "application" /* application */; +ApplicationLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" + template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" }] } ]; /** @nocollapse */ -LayoutApplicationComponent.ctorParameters = () => [ +ApplicationLayoutComponent.ctorParameters = () => [ { type: Store }, { type: OAuthService } ]; -LayoutApplicationComponent.propDecorators = { +ApplicationLayoutComponent.propDecorators = { currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] @@ -448,19 +372,59 @@ LayoutApplicationComponent.propDecorators = { __decorate([ Select(ConfigState.getOne('routes')), __metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "routes$", void 0); +], ApplicationLayoutComponent.prototype, "routes$", void 0); __decorate([ Select(ConfigState.getOne('currentUser')), __metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "currentUser$", void 0); +], ApplicationLayoutComponent.prototype, "currentUser$", void 0); __decorate([ Select(ConfigState.getDeep('localization.languages')), __metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "languages$", void 0); +], ApplicationLayoutComponent.prototype, "languages$", void 0); __decorate([ Select(LayoutState.getNavigationElements), __metadata("design:type", Observable) -], LayoutApplicationComponent.prototype, "navElements$", void 0); +], ApplicationLayoutComponent.prototype, "navElements$", void 0); +if (false) { + /** @type {?} */ + ApplicationLayoutComponent.type; + /** @type {?} */ + ApplicationLayoutComponent.prototype.routes$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUser$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languages$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navElements$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUserRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languageRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navbarRootDropdowns; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenChangePassword; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenProfile; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isDropdownChildDynamic; + /** @type {?} */ + ApplicationLayoutComponent.prototype.rightPartElements; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackByFn; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackElementByFn; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.store; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.oauthService; +} /** * @param {?} routes * @return {?} @@ -485,11 +449,10 @@ function getVisibleRoutes(routes) { * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -class LayoutEmptyComponent { +class EmptyLayoutComponent { } -// required for dynamic component -LayoutEmptyComponent.type = "empty" /* empty */; -LayoutEmptyComponent.decorators = [ +EmptyLayoutComponent.type = "empty" /* empty */; +EmptyLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-empty', template: ` @@ -498,139 +461,62 @@ LayoutEmptyComponent.decorators = [ ` }] } ]; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class LayoutComponent { - constructor() { - this.isCollapsed = false; - } +if (false) { + /** @type {?} */ + EmptyLayoutComponent.type; } -LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n
    \n \n
    \n\n\n\n" - }] } -]; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -const { maxLength, required: required$1, email } = Validators; -class ProfileComponent { +class LayoutComponent { /** - * @param {?} fb * @param {?} store */ - constructor(fb, store) { - this.fb = fb; + constructor(store) { this.store = store; - this.visibleChange = new EventEmitter(); - } - /** - * @return {?} - */ - get visible() { - return this._visible; - } - /** - * @param {?} value - * @return {?} - */ - set visible(value) { - this._visible = value; - this.visibleChange.emit(value); - } - /** - * @return {?} - */ - buildForm() { - this.store - .dispatch(new ProfileGet()) - .pipe(withLatestFrom(this.profile$), take(1)) - .subscribe((/** - * @param {?} __0 - * @return {?} - */ - ([, profile]) => { - this.form = this.fb.group({ - userName: [profile.userName, [required$1, maxLength(256)]], - email: [profile.email, [required$1, email, maxLength(256)]], - name: [profile.name || '', [maxLength(64)]], - surname: [profile.surname || '', [maxLength(64)]], - phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], - }); - })); - } - /** - * @return {?} - */ - onSubmit() { - if (this.form.invalid) - return; - this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe((/** - * @return {?} - */ - () => { - this.visible = false; - })); + this.isCollapsed = true; } /** * @return {?} */ - openModal() { - this.buildForm(); - this.visible = true; - } - /** - * @param {?} __0 - * @return {?} - */ - ngOnChanges({ visible }) { - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } + get appInfo() { + return this.store.selectSnapshot(ConfigState.getApplicationInfo); } } -ProfileComponent.decorators = [ +LayoutComponent.decorators = [ { type: Component, args: [{ - selector: 'abp-profile', - template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" + selector: ' abp-layout', + template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", + animations: [slideFromBottom] }] } ]; /** @nocollapse */ -ProfileComponent.ctorParameters = () => [ - { type: FormBuilder }, +LayoutComponent.ctorParameters = () => [ { type: Store } ]; -ProfileComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }] -}; -__decorate([ - Select(ProfileState.getProfile), - __metadata("design:type", Observable) -], ProfileComponent.prototype, "profile$", void 0); +if (false) { + /** @type {?} */ + LayoutComponent.prototype.isCollapsed; + /** + * @type {?} + * @private + */ + LayoutComponent.prototype.store; +} /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ -const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent]; +const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; class ThemeBasicModule { } ThemeBasicModule.decorators = [ { type: NgModule, args: [{ - declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent], + declarations: [...LAYOUTS, LayoutComponent], imports: [ CoreModule, ThemeSharedModule, @@ -645,6 +531,11 @@ ThemeBasicModule.decorators = [ },] } ]; +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -656,12 +547,39 @@ var Layout; */ function State() { } Layout.State = State; + if (false) { + /** @type {?} */ + State.prototype.navigationElements; + } /** * @record */ function NavigationElement() { } Layout.NavigationElement = NavigationElement; + if (false) { + /** @type {?} */ + NavigationElement.prototype.name; + /** @type {?} */ + NavigationElement.prototype.element; + /** @type {?|undefined} */ + NavigationElement.prototype.order; + } })(Layout || (Layout = {})); -export { LAYOUTS, LayoutAccountComponent, LayoutAddNavigationElement, LayoutApplicationComponent, LayoutEmptyComponent, LayoutRemoveNavigationElementByName, LayoutState, ThemeBasicModule, LayoutApplicationComponent as ɵa, LayoutState as ɵb, LayoutAccountComponent as ɵc, LayoutEmptyComponent as ɵd, LayoutComponent as ɵe, ChangePasswordComponent as ɵf, ProfileComponent as ɵg, LayoutState as ɵh, LayoutAddNavigationElement as ɵi, LayoutRemoveNavigationElementByName as ɵj }; +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +export { AccountLayoutComponent, AddNavigationElement, ApplicationLayoutComponent, EmptyLayoutComponent, LAYOUTS, LayoutState, RemoveNavigationElementByName, ThemeBasicModule, ApplicationLayoutComponent as ɵa, LayoutState as ɵb, AccountLayoutComponent as ɵc, EmptyLayoutComponent as ɵd, LayoutComponent as ɵe, LayoutState as ɵf, AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh }; //# sourceMappingURL=abp-ng.theme.basic.js.map diff --git a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map index 5ab79dcb4f..5d44457e7c 100644 --- a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map +++ b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-account/layout-account.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/layout-application/layout-application.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-empty/layout-empty.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { ProfileChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords, validatePassword } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store\n .dispatch(\n new ProfileChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './layout-account.component.html',\n})\nexport class LayoutAccountComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n\n isCollapsed: boolean = false;\n}\n","import { Layout } from '../models/layout';\n\nexport class LayoutAddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class LayoutRemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(LayoutAddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: LayoutAddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(LayoutRemoveNavigationElementByName)\n layoutRemoveAction(\n { getState, patchState }: StateContext,\n { name }: LayoutRemoveNavigationElementByName,\n ) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n ConfigGetAppConfiguration,\n ConfigState,\n eLayoutType,\n SessionSetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { LayoutAddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './layout-application.component.html',\n})\nexport class LayoutApplicationComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new LayoutAddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SessionSetLanguage(cultureName));\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class LayoutEmptyComponent {\n // required for dynamic component\n static type = eLayoutType.empty;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n})\nexport class LayoutComponent {\n isCollapsed: boolean = false;\n}\n","import { Profile, ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new ProfileGet())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { LayoutAccountComponent } from './components/layout-account/layout-account.component';\nimport { LayoutApplicationComponent } from './components/layout-application/layout-application.component';\nimport { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { ToastModule } from 'primeng/toast';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__decorate","required"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js index a6f79d2d12..7e3bed552d 100644 --- a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js +++ b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js @@ -1,169 +1,75 @@ -import { __spread, __assign, __decorate, __metadata, __read } from 'tslib'; -import { ProfileChangePassword, SessionState, takeUntilDestroy, SessionSetLanguage, ConfigGetAppConfiguration, ConfigState, ProfileGet, ProfileUpdate, ProfileState, CoreModule } from '@abp/ng.core'; -import { Component, Input, Output, ViewChild, EventEmitter, TemplateRef, ViewChildren, NgModule } from '@angular/core'; +import { __spread, __assign, __decorate, __metadata } from 'tslib'; +import { SessionState, takeUntilDestroy, SetLanguage, GetAppConfiguration, ConfigState, CoreModule } from '@abp/ng.core'; +import { slideFromBottom, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Component, ViewChild, TemplateRef, ViewChildren, NgModule } from '@angular/core'; import { NgbDropdown, NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { Validators, FormBuilder } from '@angular/forms'; -import { validatePassword, comparePasswords, NgxValidateCoreModule } from '@ngx-validate/core'; -import { Store, Action, Selector, State, Select, NgxsModule } from '@ngxs/store'; +import { NgxValidateCoreModule } from '@ngx-validate/core'; +import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; +import { ToastModule } from 'primeng/toast'; import { Navigate, RouterState } from '@ngxs/router-plugin'; import { OAuthService } from 'angular-oauth2-oidc'; import compare from 'just-compare'; import { fromEvent, Observable } from 'rxjs'; -import { map, filter, debounceTime, withLatestFrom, take } from 'rxjs/operators'; +import { map, filter, debounceTime } from 'rxjs/operators'; import snq from 'snq'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { ToastModule } from 'primeng/toast'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var minLength = Validators.minLength, required = Validators.required; -var ChangePasswordComponent = /** @class */ (function () { - function ChangePasswordComponent(fb, store) { - this.fb = fb; - this.store = store; - this.visibleChange = new EventEmitter(); - } - Object.defineProperty(ChangePasswordComponent.prototype, "visible", { - get: /** - * @return {?} - */ - function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); - }, - enumerable: true, - configurable: true - }); - /** - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.form = this.fb.group({ - password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]], - }, { - validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], - }); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store - .dispatch(new ProfileChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ChangePasswordComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ChangePasswordComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ChangePasswordComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" - }] } - ]; - /** @nocollapse */ - ChangePasswordComponent.ctorParameters = function () { return [ - { type: FormBuilder }, - { type: Store } - ]; }; - ChangePasswordComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }], - modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] - }; - return ChangePasswordComponent; -}()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var LayoutAccountComponent = /** @class */ (function () { - function LayoutAccountComponent() { - this.isCollapsed = false; +var AccountLayoutComponent = /** @class */ (function () { + function AccountLayoutComponent() { } // required for dynamic component - LayoutAccountComponent.type = "account" /* account */; - LayoutAccountComponent.decorators = [ + AccountLayoutComponent.type = "account" /* account */; + AccountLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-account', - template: "\n \n\n \n \n \n \n \n\n" + template: "\n" }] } ]; - return LayoutAccountComponent; + return AccountLayoutComponent; }()); +if (false) { + /** @type {?} */ + AccountLayoutComponent.type; +} /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var LayoutAddNavigationElement = /** @class */ (function () { - function LayoutAddNavigationElement(payload) { +var AddNavigationElement = /** @class */ (function () { + function AddNavigationElement(payload) { this.payload = payload; } - LayoutAddNavigationElement.type = '[Layout] Add Navigation Element'; - return LayoutAddNavigationElement; + AddNavigationElement.type = '[Layout] Add Navigation Element'; + return AddNavigationElement; }()); -var LayoutRemoveNavigationElementByName = /** @class */ (function () { - function LayoutRemoveNavigationElementByName(name) { +if (false) { + /** @type {?} */ + AddNavigationElement.type; + /** @type {?} */ + AddNavigationElement.prototype.payload; +} +var RemoveNavigationElementByName = /** @class */ (function () { + function RemoveNavigationElementByName(name) { this.name = name; } - LayoutRemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return LayoutRemoveNavigationElementByName; + RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; + return RemoveNavigationElementByName; }()); +if (false) { + /** @type {?} */ + RemoveNavigationElementByName.type; + /** @type {?} */ + RemoveNavigationElementByName.prototype.name; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ /** * @fileoverview added by tsickle @@ -265,15 +171,15 @@ var LayoutState = /** @class */ (function () { }); }; __decorate([ - Action(LayoutAddNavigationElement), + Action(AddNavigationElement), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutAddNavigationElement]), + __metadata("design:paramtypes", [Object, AddNavigationElement]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutAddAction", null); __decorate([ - Action(LayoutRemoveNavigationElementByName), + Action(RemoveNavigationElementByName), __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, LayoutRemoveNavigationElementByName]), + __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), __metadata("design:returntype", void 0) ], LayoutState.prototype, "layoutRemoveAction", null); __decorate([ @@ -295,8 +201,13 @@ var LayoutState = /** @class */ (function () { * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var LayoutApplicationComponent = /** @class */ (function () { - function LayoutApplicationComponent(store, oauthService) { + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +var ApplicationLayoutComponent = /** @class */ (function () { + function ApplicationLayoutComponent(store, oauthService) { this.store = store; this.oauthService = oauthService; this.isOpenChangePassword = false; @@ -315,7 +226,7 @@ var LayoutApplicationComponent = /** @class */ (function () { */ function (_, element) { return element; }); } - Object.defineProperty(LayoutApplicationComponent.prototype, "visibleRoutes$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { get: /** * @return {?} */ @@ -329,7 +240,7 @@ var LayoutApplicationComponent = /** @class */ (function () { enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "defaultLanguage$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { get: /** * @return {?} */ @@ -351,7 +262,7 @@ var LayoutApplicationComponent = /** @class */ (function () { enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "dropdownLanguages$", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { get: /** * @return {?} */ @@ -373,7 +284,7 @@ var LayoutApplicationComponent = /** @class */ (function () { enumerable: true, configurable: true }); - Object.defineProperty(LayoutApplicationComponent.prototype, "selectedLangCulture", { + Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { get: /** * @return {?} */ @@ -387,7 +298,7 @@ var LayoutApplicationComponent = /** @class */ (function () { * @private * @return {?} */ - LayoutApplicationComponent.prototype.checkWindowWidth = /** + ApplicationLayoutComponent.prototype.checkWindowWidth = /** * @private * @return {?} */ @@ -415,7 +326,7 @@ var LayoutApplicationComponent = /** @class */ (function () { /** * @return {?} */ - LayoutApplicationComponent.prototype.ngAfterViewInit = /** + ApplicationLayoutComponent.prototype.ngAfterViewInit = /** * @return {?} */ function () { @@ -430,7 +341,7 @@ var LayoutApplicationComponent = /** @class */ (function () { return name; })); if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new LayoutAddNavigationElement([ + this.store.dispatch(new AddNavigationElement([ { element: this.languageRef, order: 4, name: 'LanguageRef' }, { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, ])); @@ -475,7 +386,7 @@ var LayoutApplicationComponent = /** @class */ (function () { /** * @return {?} */ - LayoutApplicationComponent.prototype.ngOnDestroy = /** + ApplicationLayoutComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { }; @@ -483,41 +394,40 @@ var LayoutApplicationComponent = /** @class */ (function () { * @param {?} cultureName * @return {?} */ - LayoutApplicationComponent.prototype.onChangeLang = /** + ApplicationLayoutComponent.prototype.onChangeLang = /** * @param {?} cultureName * @return {?} */ function (cultureName) { - this.store.dispatch(new SessionSetLanguage(cultureName)); - this.store.dispatch(new ConfigGetAppConfiguration()); + this.store.dispatch(new SetLanguage(cultureName)); }; /** * @return {?} */ - LayoutApplicationComponent.prototype.logout = /** + ApplicationLayoutComponent.prototype.logout = /** * @return {?} */ function () { this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/account/login'], null, { + this.store.dispatch(new Navigate(['/'], null, { state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, })); - this.store.dispatch(new ConfigGetAppConfiguration()); + this.store.dispatch(new GetAppConfiguration()); }; // required for dynamic component - LayoutApplicationComponent.type = "application" /* application */; - LayoutApplicationComponent.decorators = [ + ApplicationLayoutComponent.type = "application" /* application */; + ApplicationLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" + template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" }] } ]; /** @nocollapse */ - LayoutApplicationComponent.ctorParameters = function () { return [ + ApplicationLayoutComponent.ctorParameters = function () { return [ { type: Store }, { type: OAuthService } ]; }; - LayoutApplicationComponent.propDecorators = { + ApplicationLayoutComponent.propDecorators = { currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] @@ -525,21 +435,61 @@ var LayoutApplicationComponent = /** @class */ (function () { __decorate([ Select(ConfigState.getOne('routes')), __metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "routes$", void 0); + ], ApplicationLayoutComponent.prototype, "routes$", void 0); __decorate([ Select(ConfigState.getOne('currentUser')), __metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "currentUser$", void 0); + ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); __decorate([ Select(ConfigState.getDeep('localization.languages')), __metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "languages$", void 0); + ], ApplicationLayoutComponent.prototype, "languages$", void 0); __decorate([ Select(LayoutState.getNavigationElements), __metadata("design:type", Observable) - ], LayoutApplicationComponent.prototype, "navElements$", void 0); - return LayoutApplicationComponent; + ], ApplicationLayoutComponent.prototype, "navElements$", void 0); + return ApplicationLayoutComponent; }()); +if (false) { + /** @type {?} */ + ApplicationLayoutComponent.type; + /** @type {?} */ + ApplicationLayoutComponent.prototype.routes$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUser$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languages$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navElements$; + /** @type {?} */ + ApplicationLayoutComponent.prototype.currentUserRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.languageRef; + /** @type {?} */ + ApplicationLayoutComponent.prototype.navbarRootDropdowns; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenChangePassword; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isOpenProfile; + /** @type {?} */ + ApplicationLayoutComponent.prototype.isDropdownChildDynamic; + /** @type {?} */ + ApplicationLayoutComponent.prototype.rightPartElements; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackByFn; + /** @type {?} */ + ApplicationLayoutComponent.prototype.trackElementByFn; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.store; + /** + * @type {?} + * @private + */ + ApplicationLayoutComponent.prototype.oauthService; +} /** * @param {?} routes * @return {?} @@ -564,172 +514,77 @@ function getVisibleRoutes(routes) { * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var LayoutEmptyComponent = /** @class */ (function () { - function LayoutEmptyComponent() { +var EmptyLayoutComponent = /** @class */ (function () { + function EmptyLayoutComponent() { } - // required for dynamic component - LayoutEmptyComponent.type = "empty" /* empty */; - LayoutEmptyComponent.decorators = [ + EmptyLayoutComponent.type = "empty" /* empty */; + EmptyLayoutComponent.decorators = [ { type: Component, args: [{ selector: 'abp-layout-empty', template: "\n Layout-empty\n \n " }] } ]; - return LayoutEmptyComponent; + return EmptyLayoutComponent; }()); +if (false) { + /** @type {?} */ + EmptyLayoutComponent.type; +} /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var LayoutComponent = /** @class */ (function () { - function LayoutComponent() { - this.isCollapsed = false; - } - LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n
    \n \n
    \n\n\n\n" - }] } - ]; - return LayoutComponent; -}()); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var maxLength = Validators.maxLength, required$1 = Validators.required, email = Validators.email; -var ProfileComponent = /** @class */ (function () { - function ProfileComponent(fb, store) { - this.fb = fb; + function LayoutComponent(store) { this.store = store; - this.visibleChange = new EventEmitter(); + this.isCollapsed = true; } - Object.defineProperty(ProfileComponent.prototype, "visible", { + Object.defineProperty(LayoutComponent.prototype, "appInfo", { get: /** * @return {?} */ function () { - return this._visible; - }, - set: /** - * @param {?} value - * @return {?} - */ - function (value) { - this._visible = value; - this.visibleChange.emit(value); + return this.store.selectSnapshot(ConfigState.getApplicationInfo); }, enumerable: true, configurable: true }); - /** - * @return {?} - */ - ProfileComponent.prototype.buildForm = /** - * @return {?} - */ - function () { - var _this = this; - this.store - .dispatch(new ProfileGet()) - .pipe(withLatestFrom(this.profile$), take(1)) - .subscribe((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var _b = __read(_a, 2), profile = _b[1]; - _this.form = _this.fb.group({ - userName: [profile.userName, [required$1, maxLength(256)]], - email: [profile.email, [required$1, email, maxLength(256)]], - name: [profile.name || '', [maxLength(64)]], - surname: [profile.surname || '', [maxLength(64)]], - phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], - }); - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.onSubmit = /** - * @return {?} - */ - function () { - var _this = this; - if (this.form.invalid) - return; - this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe((/** - * @return {?} - */ - function () { - _this.visible = false; - })); - }; - /** - * @return {?} - */ - ProfileComponent.prototype.openModal = /** - * @return {?} - */ - function () { - this.buildForm(); - this.visible = true; - }; - /** - * @param {?} __0 - * @return {?} - */ - ProfileComponent.prototype.ngOnChanges = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var visible = _a.visible; - if (!visible) - return; - if (visible.currentValue) { - this.openModal(); - } - else if (visible.currentValue === false && this.visible) { - this.visible = false; - } - }; - ProfileComponent.decorators = [ + LayoutComponent.decorators = [ { type: Component, args: [{ - selector: 'abp-profile', - template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n" + selector: ' abp-layout', + template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", + animations: [slideFromBottom] }] } ]; /** @nocollapse */ - ProfileComponent.ctorParameters = function () { return [ - { type: FormBuilder }, + LayoutComponent.ctorParameters = function () { return [ { type: Store } ]; }; - ProfileComponent.propDecorators = { - visible: [{ type: Input }], - visibleChange: [{ type: Output }] - }; - __decorate([ - Select(ProfileState.getProfile), - __metadata("design:type", Observable) - ], ProfileComponent.prototype, "profile$", void 0); - return ProfileComponent; + return LayoutComponent; }()); +if (false) { + /** @type {?} */ + LayoutComponent.prototype.isCollapsed; + /** + * @type {?} + * @private + */ + LayoutComponent.prototype.store; +} /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ -var LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent]; +var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; var ThemeBasicModule = /** @class */ (function () { function ThemeBasicModule() { } ThemeBasicModule.decorators = [ { type: NgModule, args: [{ - declarations: __spread(LAYOUTS, [LayoutComponent, ChangePasswordComponent, ProfileComponent]), + declarations: __spread(LAYOUTS, [LayoutComponent]), imports: [ CoreModule, ThemeSharedModule, @@ -746,6 +601,11 @@ var ThemeBasicModule = /** @class */ (function () { return ThemeBasicModule; }()); +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -757,12 +617,39 @@ var Layout; */ function State() { } Layout.State = State; + if (false) { + /** @type {?} */ + State.prototype.navigationElements; + } /** * @record */ function NavigationElement() { } Layout.NavigationElement = NavigationElement; + if (false) { + /** @type {?} */ + NavigationElement.prototype.name; + /** @type {?} */ + NavigationElement.prototype.element; + /** @type {?|undefined} */ + NavigationElement.prototype.order; + } })(Layout || (Layout = {})); -export { LAYOUTS, LayoutAccountComponent, LayoutAddNavigationElement, LayoutApplicationComponent, LayoutEmptyComponent, LayoutRemoveNavigationElementByName, LayoutState, ThemeBasicModule, LayoutApplicationComponent as ɵa, LayoutState as ɵb, LayoutAccountComponent as ɵc, LayoutEmptyComponent as ɵd, LayoutComponent as ɵe, ChangePasswordComponent as ɵf, ProfileComponent as ɵg, LayoutState as ɵh, LayoutAddNavigationElement as ɵi, LayoutRemoveNavigationElementByName as ɵj }; +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +export { AccountLayoutComponent, AddNavigationElement, ApplicationLayoutComponent, EmptyLayoutComponent, LAYOUTS, LayoutState, RemoveNavigationElementByName, ThemeBasicModule, ApplicationLayoutComponent as ɵa, LayoutState as ɵb, AccountLayoutComponent as ɵc, EmptyLayoutComponent as ɵd, LayoutComponent as ɵe, LayoutState as ɵf, AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh }; //# sourceMappingURL=abp-ng.theme.basic.js.map diff --git a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map index 0c868a1a3b..8a1ffbbd31 100644 --- a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map +++ b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-account/layout-account.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/layout-application/layout-application.component.ts","ng://@abp/ng.theme.basic/lib/components/layout-empty/layout-empty.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { ProfileChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords, validatePassword } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n newPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n repeatNewPassword: ['', [required, minLength(6), validatePassword(['small', 'capital', 'number', 'special'])]],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store\n .dispatch(\n new ProfileChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './layout-account.component.html',\n})\nexport class LayoutAccountComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n\n isCollapsed: boolean = false;\n}\n","import { Layout } from '../models/layout';\n\nexport class LayoutAddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class LayoutRemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(LayoutAddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: LayoutAddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(LayoutRemoveNavigationElementByName)\n layoutRemoveAction(\n { getState, patchState }: StateContext,\n { name }: LayoutRemoveNavigationElementByName,\n ) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n ConfigGetAppConfiguration,\n ConfigState,\n eLayoutType,\n SessionSetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { LayoutAddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './layout-application.component.html',\n})\nexport class LayoutApplicationComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new LayoutAddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SessionSetLanguage(cultureName));\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new ConfigGetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class LayoutEmptyComponent {\n // required for dynamic component\n static type = eLayoutType.empty;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n})\nexport class LayoutComponent {\n isCollapsed: boolean = false;\n}\n","import { Profile, ProfileGet, ProfileState, ProfileUpdate } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new ProfileGet())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.store.dispatch(new ProfileUpdate(this.form.value)).subscribe(() => {\n this.visible = false;\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { LayoutAccountComponent } from './components/layout-account/layout-account.component';\nimport { LayoutApplicationComponent } from './components/layout-application/layout-application.component';\nimport { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { ToastModule } from 'primeng/toast';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [LayoutApplicationComponent, LayoutAccountComponent, LayoutEmptyComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent, ChangePasswordComponent, ProfileComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__spread","tslib_1.__decorate","required"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__spread","tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts b/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts index 0dcaf42654..0af529c5c3 100644 --- a/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts @@ -1,10 +1,10 @@ import { Layout } from '../models/layout'; -export declare class LayoutAddNavigationElement { +export declare class AddNavigationElement { payload: Layout.NavigationElement | Layout.NavigationElement[]; static readonly type = "[Layout] Add Navigation Element"; constructor(payload: Layout.NavigationElement | Layout.NavigationElement[]); } -export declare class LayoutRemoveNavigationElementByName { +export declare class RemoveNavigationElementByName { name: string; static readonly type = "[Layout] Remove Navigation ElementByName"; constructor(name: string); diff --git a/npm/ng-packs/dist/theme-basic/lib/components/layout-account/layout-account.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts similarity index 51% rename from npm/ng-packs/dist/theme-basic/lib/components/layout-account/layout-account.component.d.ts rename to npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts index 544a175628..6f276026a9 100644 --- a/npm/ng-packs/dist/theme-basic/lib/components/layout-account/layout-account.component.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts @@ -1,5 +1,4 @@ import { eLayoutType } from '@abp/ng.core'; -export declare class LayoutAccountComponent { +export declare class AccountLayoutComponent { static type: eLayoutType; - isCollapsed: boolean; } diff --git a/npm/ng-packs/dist/theme-basic/lib/components/layout-application/layout-application.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts similarity index 96% rename from npm/ng-packs/dist/theme-basic/lib/components/layout-application/layout-application.component.d.ts rename to npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts index 14f8496c53..bae9e8fb23 100644 --- a/npm/ng-packs/dist/theme-basic/lib/components/layout-application/layout-application.component.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts @@ -5,7 +5,7 @@ import { Store } from '@ngxs/store'; import { OAuthService } from 'angular-oauth2-oidc'; import { Observable } from 'rxjs'; import { Layout } from '../../models/layout'; -export declare class LayoutApplicationComponent implements AfterViewInit, OnDestroy { +export declare class ApplicationLayoutComponent implements AfterViewInit, OnDestroy { private store; private oauthService; static type: eLayoutType; diff --git a/npm/ng-packs/dist/theme-basic/lib/components/layout-empty/layout-empty.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts similarity index 63% rename from npm/ng-packs/dist/theme-basic/lib/components/layout-empty/layout-empty.component.d.ts rename to npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts index 62a0e80586..e3282108b0 100644 --- a/npm/ng-packs/dist/theme-basic/lib/components/layout-empty/layout-empty.component.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts @@ -1,4 +1,4 @@ import { eLayoutType } from '@abp/ng.core'; -export declare class LayoutEmptyComponent { +export declare class EmptyLayoutComponent { static type: eLayoutType; } diff --git a/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts index 39d04d163d..ca8f7982bc 100644 --- a/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts @@ -1,3 +1,3 @@ -export * from './layout-account/layout-account.component'; -export * from './layout-application/layout-application.component'; -export * from './layout-empty/layout-empty.component'; +export * from './account-layout/account-layout.component'; +export * from './application-layout/application-layout.component'; +export * from './empty-layout/empty-layout.component'; diff --git a/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts index c0f7a3dd1e..8f32e7874d 100644 --- a/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts @@ -1,3 +1,8 @@ +import { Config } from '@abp/ng.core'; +import { Store } from '@ngxs/store'; export declare class LayoutComponent { + private store; isCollapsed: boolean; + readonly appInfo: Config.Application; + constructor(store: Store); } diff --git a/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts b/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts index b6547200d4..d1ceb93110 100644 --- a/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts @@ -1,8 +1,8 @@ import { StateContext } from '@ngxs/store'; -import { LayoutAddNavigationElement, LayoutRemoveNavigationElementByName } from '../actions/layout.actions'; +import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; import { Layout } from '../models/layout'; export declare class LayoutState { static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[]; - layoutAddAction({ getState, patchState }: StateContext, { payload }: LayoutAddNavigationElement): Layout.State; - layoutRemoveAction({ getState, patchState }: StateContext, { name }: LayoutRemoveNavigationElementByName): Layout.State; + layoutAddAction({ getState, patchState }: StateContext, { payload }: AddNavigationElement): Layout.State; + layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName): Layout.State; } diff --git a/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts b/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts index 84e9c65a01..0cf31961cb 100644 --- a/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts +++ b/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts @@ -1,5 +1,5 @@ -import { LayoutApplicationComponent } from './components/layout-application/layout-application.component'; -import { LayoutEmptyComponent } from './components/layout-empty/layout-empty.component'; -export declare const LAYOUTS: (typeof LayoutApplicationComponent | typeof LayoutEmptyComponent)[]; +import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; +import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; +export declare const LAYOUTS: (typeof ApplicationLayoutComponent | typeof AccountLayoutComponent)[]; export declare class ThemeBasicModule { } diff --git a/npm/ng-packs/dist/theme-basic/package.json b/npm/ng-packs/dist/theme-basic/package.json index d38574f664..b816bf17e7 100644 --- a/npm/ng-packs/dist/theme-basic/package.json +++ b/npm/ng-packs/dist/theme-basic/package.json @@ -1,8 +1,8 @@ { "name": "@abp/ng.theme.basic", - "version": "0.8.0", + "version": "0.8.3", "dependencies": { - "@abp/ng.theme.shared": "^0.8.0", + "@abp/ng.theme.shared": "^0.8.3", "tslib": "^1.9.0" }, "publishConfig": { diff --git a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts index c4bca9a612..6c76bd406f 100644 --- a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts +++ b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts @@ -2,11 +2,17 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; -export { AbstractToasterClass as ɵc } from './lib/abstracts/toaster'; -export { ConfirmationComponent as ɵa } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵf } from './lib/components/errors/error.component'; -export { LoaderBarComponent as ɵg } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵe } from './lib/components/modal/modal.component'; -export { ToastComponent as ɵd } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵh } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵb } from './lib/services/confirmation.service'; +export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵb } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; +export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; +export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; +export { ToasterService as ɵk } from './lib/services/toaster.service'; diff --git a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json index 0fd8642d33..023e254454 100644 --- a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json +++ b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/confirmation.service"},{"from":"./lib/toaster.service"},{"from":"./lib/modal/modal.component"}],"metadata":{"appendScript":{"__symbolic":"function"},"ThemeSharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":34,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":36,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":37,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbModalModule","line":38,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":39,"character":4},"member":"forRoot"},"arguments":[{"targetSelector":".form-group"}]}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"}],"exports":[{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbModalModule","line":44,"character":12},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵg"}],"entryComponents":[{"__symbolic":"reference","name":"ɵf"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ThemeSharedModule"},"providers":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":53,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":55,"character":17},{"__symbolic":"reference","name":"ɵh"}],"useFactory":{"__symbolic":"reference","name":"appendScript"}},{"provide":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":58,"character":19},"useClass":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":58,"character":45}}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"abp-confirmation","template":"\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵb"}]}],"close":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵc"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ngInjectableDef":{}}},"ɵc":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":11,"character":40}]}],"info":[{"__symbolic":"method"}],"success":[{"__symbolic":"method"}],"warn":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-toast","template":"\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n "}]}],"members":{}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":19,"character":1},"arguments":[{"selector":"abp-modal","template":"\n \n
    \n
    \n \n\n \n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n \n\n \n\n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"centered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":48,"character":3}}]}],"modalClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"abpHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":56,"character":3},"arguments":["abpHeader",{"static":false}]}]}],"abpBody":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":58,"character":3},"arguments":["abpBody",{"static":false}]}]}],"abpFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":60,"character":3},"arguments":["abpFooter",{"static":false}]}]}],"abpClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":62,"character":3},"arguments":["abpClose",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":62,"character":51}}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":64,"character":3},"arguments":["abpModalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":74,"character":32},{"__symbolic":"reference","name":"ɵb"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"setVisible":[{"__symbolic":"method"}],"listen":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-error","template":"\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n ","styles":[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"destroy":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"abp-loader-bar","template":"\n
    \n
    \n
    \n ","styles":[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],"members":{"containerClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"progressClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"isLoading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":33,"character":31},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":56}]}],"ngOnDestroy":[{"__symbolic":"method"}],"startLoading":[{"__symbolic":"method"}],"stopLoading":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":39,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":42,"character":21},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":43,"character":19},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":45,"character":20},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":46,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"RendererFactory2","line":47,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":48,"character":22}]}],"showError":[{"__symbolic":"method"}],"navigateToLogin":[{"__symbolic":"method"}],"createErrorComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"appendScript":"./lib/theme-shared.module","ThemeSharedModule":"./lib/theme-shared.module","ɵa":"./lib/components/confirmation/confirmation.component","ɵb":"./lib/services/confirmation.service","ɵc":"./lib/abstracts/toaster","ɵd":"./lib/components/toast/toast.component","ɵe":"./lib/components/modal/modal.component","ɵf":"./lib/components/errors/error.component","ɵg":"./lib/components/loader-bar/loader-bar.component","ɵh":"./lib/handlers/error.handler"},"importAs":"@abp/ng.theme.shared"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/confirmation.service"},{"from":"./lib/toaster.service"},{"from":"./lib/setting-management"},{"from":"./lib/confirmation/confirmation.component"},{"from":"./lib/loader-bar/loader-bar.component"},{"from":"./lib/modal/modal.component"},{"from":"./lib/profile/profile.component"},{"from":"./lib/toast/toast.component"}],"metadata":{"appendScript":{"__symbolic":"function"},"ThemeSharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":38,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":40,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":41,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":42,"character":4},"member":"forRoot"},"arguments":[{"targetSelector":".form-group","blueprints":{"email":"AbpAccount::ThisFieldIsNotAValidEmailAddress.","max":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","maxlength":"AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]","min":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","minlength":"AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]","required":"AbpAccount::ThisFieldIsRequired.","passwordMismatch":"AbpIdentity::Identity.PasswordConfirmationFailed"},"errorTemplate":{"__symbolic":"reference","name":"ɵa"}}]}],"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"}],"entryComponents":[{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ThemeSharedModule"},"providers":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":86,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":88,"character":17},{"__symbolic":"reference","name":"ɵn"}],"useFactory":{"__symbolic":"reference","name":"appendScript"}},{"provide":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":91,"character":19},"useClass":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":91,"character":45}}]}}}},"ɵa":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ngx-validate/core","name":"ValidationErrorComponent","line":13,"character":46},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-validation-error","template":"\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":10,"character":19},"member":"OnPush"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":11,"character":17},"member":"None"}}]}],"members":{}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-button","template":"\n \n "}]}],"members":{"buttonClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"iconClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"abp-confirmation","template":"\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵd"}]}],"close":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵe"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ngInjectableDef":{}}},"ɵe":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":11,"character":40}]}],"info":[{"__symbolic":"method"}],"success":[{"__symbolic":"method"}],"warn":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-toast","template":"\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n "}]}],"members":{}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"abp-modal","template":"\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"centered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"modalClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":74,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"minHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":78,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"abpHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":84,"character":3},"arguments":["abpHeader",{"static":false}]}]}],"abpBody":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":86,"character":3},"arguments":["abpBody",{"static":false}]}]}],"abpFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":88,"character":3},"arguments":["abpFooter",{"static":false}]}]}],"abpClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":90,"character":3},"arguments":["abpClose",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":90,"character":51}}]}]}],"abpSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":92,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵb"},{"static":false,"read":{"__symbolic":"reference","name":"ɵb"}}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":94,"character":3},"arguments":["abpModalContent",{"static":false}]}]}],"abpButtons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":96,"character":3},"arguments":["abp-button"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":110,"character":32},{"__symbolic":"reference","name":"ɵd"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"setVisible":[{"__symbolic":"method"}],"listen":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-error","template":"\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ","styles":[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"destroy":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"abp-loader-bar","template":"\n
    \n
    \n
    \n ","styles":[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],"members":{"containerClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"progressClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"isLoading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":33,"character":31},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":56}]}],"ngOnDestroy":[{"__symbolic":"method"}],"startLoading":[{"__symbolic":"method"}],"stopLoading":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"abp-change-password","template":"\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":41,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":48,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":48,"character":54},{"__symbolic":"reference","name":"ɵk"}]}],"ngOnInit":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵe"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"addAll":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-profile","template":"\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"profile$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":29,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ProfileState","line":29,"character":10},"member":"getProfile"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":36,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":36,"character":54}]}],"buildForm":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"abp-breadcrumb","template":"\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":28,"character":30},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":28,"character":53}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":40,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":43,"character":21},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":44,"character":19},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":46,"character":20},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":47,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"RendererFactory2","line":48,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":49,"character":22}]}],"showError":[{"__symbolic":"method"}],"navigateToLogin":[{"__symbolic":"method"}],"createErrorComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"appendScript":"./lib/theme-shared.module","ThemeSharedModule":"./lib/theme-shared.module","ɵa":"./lib/components/errors/validation-error.component","ɵb":"./lib/components/button/button.component","ɵc":"./lib/components/confirmation/confirmation.component","ɵd":"./lib/services/confirmation.service","ɵe":"./lib/abstracts/toaster","ɵf":"./lib/components/toast/toast.component","ɵg":"./lib/components/modal/modal.component","ɵh":"./lib/components/errors/error.component","ɵi":"./lib/components/loader-bar/loader-bar.component","ɵj":"./lib/components/change-password/change-password.component","ɵk":"./lib/services/toaster.service","ɵl":"./lib/components/profile/profile.component","ɵm":"./lib/components/breadcrumb/breadcrumb.component","ɵn":"./lib/handlers/error.handler"},"importAs":"@abp/ng.theme.shared"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js index d08cba6c66..05df2930a2 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js @@ -1,8 +1,10 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@ngx-validate/core'), require('primeng/components/common/messageservice'), require('primeng/toast'), require('rxjs'), require('rxjs/operators'), require('@ngxs/store'), require('@angular/router'), require('@ngxs/router-plugin')) : - typeof define === 'function' && define.amd ? define('@abp/ng.theme.shared', ['exports', '@abp/ng.core', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@ngx-validate/core', 'primeng/components/common/messageservice', 'primeng/toast', 'rxjs', 'rxjs/operators', '@ngxs/store', '@angular/router', '@ngxs/router-plugin'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.shared = {}), global.ng_core, global.ng.core, global.ngBootstrap, global.core$1, global.messageservice, global.toast, global.rxjs, global.rxjs.operators, global.store, global.ng.router, global.routerPlugin)); -}(this, function (exports, ng_core, core, ngBootstrap, core$1, messageservice, toast, rxjs, operators, store, router, routerPlugin) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ngx-validate/core'), require('primeng/components/common/messageservice'), require('primeng/toast'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@ngxs/store'), require('@angular/common/http'), require('@ngxs/router-plugin'), require('snq'), require('@angular/forms'), require('@angular/animations')) : + typeof define === 'function' && define.amd ? define('@abp/ng.theme.shared', ['exports', '@abp/ng.core', '@angular/core', '@ngx-validate/core', 'primeng/components/common/messageservice', 'primeng/toast', 'rxjs', 'rxjs/operators', '@angular/router', '@ngxs/store', '@angular/common/http', '@ngxs/router-plugin', 'snq', '@angular/forms', '@angular/animations'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.shared = {}), global.ng_core, global.ng.core, global.core$1, global.messageservice, global.toast, global.rxjs, global.rxjs.operators, global.ng.router, global.store, global.ng.common.http, global.routerPlugin, global.snq, global.ng.forms, global.ng.animations)); +}(this, function (exports, ng_core, core, core$1, messageservice, toast, rxjs, operators, router, store, http, routerPlugin, snq, forms, animations) { 'use strict'; + + snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. @@ -44,6 +46,85 @@ return __assign.apply(this, arguments); }; + function __rest(s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; + } + + function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; + } + + function __param(paramIndex, decorator) { + return function (target, key) { decorator(target, key, paramIndex); } + } + + function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); + } + + function __awaiter(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + } + + function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } + } + + function __exportStar(m, exports) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; + } + + function __values(o) { + var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; + if (m) return m.call(o); + return { + next: function () { + if (o && i >= o.length) o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + } + function __read(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; @@ -65,6 +146,61 @@ for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; + } + + function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; + }; + + function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); + } + + function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; + function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } + function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } + function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } + function fulfill(value) { resume("next", value); } + function reject(value) { resume("throw", value); } + function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } + } + + function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; + function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } + } + + function __asyncValues(o) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); + function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } + function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } + } + + function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; + }; + + function __importStar(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result.default = mod; + return result; + } + + function __importDefault(mod) { + return (mod && mod.__esModule) ? mod : { default: mod }; } /** @@ -77,8 +213,8 @@ var /** * @template T */ - AbstractToasterClass = /** @class */ (function () { - function AbstractToasterClass(messageService) { + AbstractToaster = /** @class */ (function () { + function AbstractToaster(messageService) { this.messageService = messageService; this.key = 'abpToast'; this.sticky = false; @@ -89,7 +225,7 @@ * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.info = /** + AbstractToaster.prototype.info = /** * @param {?} message * @param {?} title * @param {?=} options @@ -104,7 +240,7 @@ * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.success = /** + AbstractToaster.prototype.success = /** * @param {?} message * @param {?} title * @param {?=} options @@ -119,7 +255,7 @@ * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.warn = /** + AbstractToaster.prototype.warn = /** * @param {?} message * @param {?} title * @param {?=} options @@ -134,7 +270,7 @@ * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.error = /** + AbstractToaster.prototype.error = /** * @param {?} message * @param {?} title * @param {?=} options @@ -151,7 +287,7 @@ * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.show = /** + AbstractToaster.prototype.show = /** * @protected * @param {?} message * @param {?} title @@ -161,7 +297,7 @@ */ function (message, title, severity, options) { this.messageService.clear(this.key); - this.messageService.add(__assign({ severity: severity, detail: message, summary: title }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); + this.messageService.add(__assign({ severity: severity, detail: message || '', summary: title || '' }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); this.status$ = new rxjs.Subject(); return this.status$; }; @@ -169,7 +305,7 @@ * @param {?=} status * @return {?} */ - AbstractToasterClass.prototype.clear = /** + AbstractToaster.prototype.clear = /** * @param {?=} status * @return {?} */ @@ -178,8 +314,21 @@ this.status$.next(status || "dismiss" /* dismiss */); this.status$.complete(); }; - return AbstractToasterClass; + return AbstractToaster; }()); + if (false) { + /** @type {?} */ + AbstractToaster.prototype.status$; + /** @type {?} */ + AbstractToaster.prototype.key; + /** @type {?} */ + AbstractToaster.prototype.sticky; + /** + * @type {?} + * @protected + */ + AbstractToaster.prototype.messageService; + } /** * @fileoverview added by tsickle @@ -198,7 +347,13 @@ ]; /** @nocollapse */ ConfirmationService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ConfirmationService_Factory() { return new ConfirmationService(core.ɵɵinject(messageservice.MessageService)); }, token: ConfirmationService, providedIn: "root" }); return ConfirmationService; - }(AbstractToasterClass)); + }(AbstractToaster)); + if (false) { + /** @type {?} */ + ConfirmationService.prototype.key; + /** @type {?} */ + ConfirmationService.prototype.sticky; + } /** * @fileoverview added by tsickle @@ -225,7 +380,7 @@ ConfirmationComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-confirmation', - template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " + template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " }] } ]; /** @nocollapse */ @@ -234,6 +389,19 @@ ]; }; return ConfirmationComponent; }()); + if (false) { + /** @type {?} */ + ConfirmationComponent.prototype.confirm; + /** @type {?} */ + ConfirmationComponent.prototype.reject; + /** @type {?} */ + ConfirmationComponent.prototype.dismiss; + /** + * @type {?} + * @private + */ + ConfirmationComponent.prototype.confirmationService; + } /** * @fileoverview added by tsickle @@ -256,12 +424,24 @@ ErrorComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-error', - template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n ", + template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ", styles: [".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"] }] } ]; return ErrorComponent; }()); + if (false) { + /** @type {?} */ + ErrorComponent.prototype.title; + /** @type {?} */ + ErrorComponent.prototype.details; + /** @type {?} */ + ErrorComponent.prototype.renderer; + /** @type {?} */ + ErrorComponent.prototype.elementRef; + /** @type {?} */ + ErrorComponent.prototype.host; + } /** * @fileoverview added by tsickle @@ -282,13 +462,13 @@ function (action) { return action.payload.url.indexOf('openid-configuration') < 0; }); this.progressLevel = 0; actions - .pipe(store.ofActionSuccessful(ng_core.LoaderStart, ng_core.LoaderStop), operators.filter(this.filter), core$1.takeUntilDestroy(this)) + .pipe(store.ofActionSuccessful(ng_core.StartLoader, ng_core.StopLoader), operators.filter(this.filter), core$1.takeUntilDestroy(this)) .subscribe((/** * @param {?} action * @return {?} */ function (action) { - if (action instanceof ng_core.LoaderStart) + if (action instanceof ng_core.StartLoader) _this.startLoading(); else _this.stopLoading(); @@ -298,7 +478,9 @@ * @param {?} event * @return {?} */ - function (event) { return event instanceof router.NavigationStart || event instanceof router.NavigationEnd; })), core$1.takeUntilDestroy(this)) + function (event) { + return event instanceof router.NavigationStart || event instanceof router.NavigationEnd || event instanceof router.NavigationError; + })), core$1.takeUntilDestroy(this)) .subscribe((/** * @param {?} event * @return {?} @@ -384,22 +566,100 @@ }; return LoaderBarComponent; }()); + if (false) { + /** @type {?} */ + LoaderBarComponent.prototype.containerClass; + /** @type {?} */ + LoaderBarComponent.prototype.progressClass; + /** @type {?} */ + LoaderBarComponent.prototype.isLoading; + /** @type {?} */ + LoaderBarComponent.prototype.filter; + /** @type {?} */ + LoaderBarComponent.prototype.progressLevel; + /** @type {?} */ + LoaderBarComponent.prototype.interval; + /** + * @type {?} + * @private + */ + LoaderBarComponent.prototype.actions; + /** + * @type {?} + * @private + */ + LoaderBarComponent.prototype.router; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ButtonComponent = /** @class */ (function () { + function ButtonComponent() { + this.buttonClass = 'btn btn-primary'; + this.type = 'button'; + this.loading = false; + this.disabled = false; + } + Object.defineProperty(ButtonComponent.prototype, "icon", { + get: /** + * @return {?} + */ + function () { + return "" + (this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'); + }, + enumerable: true, + configurable: true + }); + ButtonComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-button', + template: "\n \n " + }] } + ]; + ButtonComponent.propDecorators = { + buttonClass: [{ type: core.Input }], + type: [{ type: core.Input }], + iconClass: [{ type: core.Input }], + loading: [{ type: core.Input }], + disabled: [{ type: core.Input }] + }; + return ButtonComponent; + }()); + if (false) { + /** @type {?} */ + ButtonComponent.prototype.buttonClass; + /** @type {?} */ + ButtonComponent.prototype.type; + /** @type {?} */ + ButtonComponent.prototype.iconClass; + /** @type {?} */ + ButtonComponent.prototype.loading; + /** @type {?} */ + ButtonComponent.prototype.disabled; + } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ + /** @type {?} */ + var ANIMATION_TIMEOUT = 200; var ModalComponent = /** @class */ (function () { function ModalComponent(renderer, confirmationService) { this.renderer = renderer; this.confirmationService = confirmationService; - this.centered = true; + this.centered = false; this.modalClass = ''; this.size = 'lg'; this.visibleChange = new core.EventEmitter(); + this.init = new core.EventEmitter(); this._visible = false; - this.closable = false; + this._busy = false; + this.showModal = false; this.isOpenConfirmation = false; + this.closable = false; this.destroy$ = new rxjs.Subject(); } Object.defineProperty(ModalComponent.prototype, "visible", { @@ -415,11 +675,18 @@ */ function (value) { var _this = this; + if (typeof value !== 'boolean') + return; if (!this.modalContent) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.visible = value); }), 0); + if (value) { + setTimeout((/** + * @return {?} + */ + function () { + _this.showModal = value; + _this.visible = value; + }), 0); + } return; } if (value) { @@ -434,10 +701,29 @@ */ function () { _this.setVisible(value); - _this.renderer.removeClass(_this.modalContent.nativeElement, 'fade-out-top'); _this.ngOnDestroy(); - }), 350); + }), ANIMATION_TIMEOUT - 10); + } + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ModalComponent.prototype, "busy", { + get: /** + * @return {?} + */ + function () { + return this._busy; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) { + this.abpSubmit.loading = value; } + this._busy = value; }, enumerable: true, configurable: true @@ -463,8 +749,9 @@ var _this = this; this._visible = value; this.visibleChange.emit(value); + this.showModal = value; value - ? rxjs.timer(500) + ? rxjs.timer(ANIMATION_TIMEOUT + 100) .pipe(operators.take(1)) .subscribe((/** * @param {?} _ @@ -481,31 +768,12 @@ */ function () { var _this = this; - rxjs.fromEvent(document, 'click') - .pipe(operators.debounceTime(350), operators.takeUntil(this.destroy$), operators.filter((/** - * @param {?} event - * @return {?} - */ - function (event) { - return event && - _this.closable && - _this.modalContent && - !_this.isOpenConfirmation && - !_this.modalContent.nativeElement.contains(event.target); - }))) - .subscribe((/** - * @param {?} _ - * @return {?} - */ - function (_) { - _this.close(); - })); rxjs.fromEvent(document, 'keyup') - .pipe(operators.takeUntil(this.destroy$), operators.filter((/** + .pipe(operators.takeUntil(this.destroy$), operators.debounceTime(150), operators.filter((/** * @param {?} key * @return {?} */ - function (key) { return key && key.code === 'Escape' && _this.closable; })), operators.debounceTime(350)) + function (key) { return key && key.code === 'Escape' && _this.closable; }))) .subscribe((/** * @param {?} _ * @return {?} @@ -513,17 +781,23 @@ function (_) { _this.close(); })); - if (!this.abpClose) - return; - rxjs.fromEvent(this.abpClose.nativeElement, 'click') - .pipe(operators.takeUntil(this.destroy$), operators.filter((/** - * @return {?} - */ - function () { return !!(_this.closable && _this.modalContent); })), operators.debounceTime(350)) - .subscribe((/** + setTimeout((/** * @return {?} */ - function () { return _this.close(); })); + function () { + if (!_this.abpClose) + return; + rxjs.fromEvent(_this.abpClose.nativeElement, 'click') + .pipe(operators.takeUntil(_this.destroy$), operators.filter((/** + * @return {?} + */ + function () { return !!(_this.closable && _this.modalContent); }))) + .subscribe((/** + * @return {?} + */ + function () { return _this.close(); })); + }), 0); + this.init.emit(); }; /** * @return {?} @@ -533,6 +807,8 @@ */ function () { var _this = this; + if (!this.closable || this.busy) + return; /** @type {?} */ var nodes = getFlatNodes(((/** @type {?} */ (this.modalContent.nativeElement.querySelector('#abp-modal-body')))).childNodes); if (hasNgDirty(nodes)) { @@ -546,7 +822,7 @@ * @return {?} */ function (status) { - rxjs.timer(400).subscribe((/** + rxjs.timer(ANIMATION_TIMEOUT).subscribe((/** * @return {?} */ function () { @@ -564,7 +840,7 @@ ModalComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-modal', - template: "\n \n
    \n
    \n \n\n \n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n \n\n \n\n" + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ @@ -574,18 +850,76 @@ ]; }; ModalComponent.propDecorators = { visible: [{ type: core.Input }], + busy: [{ type: core.Input }], centered: [{ type: core.Input }], modalClass: [{ type: core.Input }], size: [{ type: core.Input }], + height: [{ type: core.Input }], + minHeight: [{ type: core.Input }], visibleChange: [{ type: core.Output }], + init: [{ type: core.Output }], abpHeader: [{ type: core.ContentChild, args: ['abpHeader', { static: false },] }], abpBody: [{ type: core.ContentChild, args: ['abpBody', { static: false },] }], abpFooter: [{ type: core.ContentChild, args: ['abpFooter', { static: false },] }], abpClose: [{ type: core.ContentChild, args: ['abpClose', { static: false, read: core.ElementRef },] }], - modalContent: [{ type: core.ViewChild, args: ['abpModalContent', { static: false },] }] + abpSubmit: [{ type: core.ContentChild, args: [ButtonComponent, { static: false, read: ButtonComponent },] }], + modalContent: [{ type: core.ViewChild, args: ['abpModalContent', { static: false },] }], + abpButtons: [{ type: core.ViewChildren, args: ['abp-button',] }] }; return ModalComponent; }()); + if (false) { + /** @type {?} */ + ModalComponent.prototype.centered; + /** @type {?} */ + ModalComponent.prototype.modalClass; + /** @type {?} */ + ModalComponent.prototype.size; + /** @type {?} */ + ModalComponent.prototype.height; + /** @type {?} */ + ModalComponent.prototype.minHeight; + /** @type {?} */ + ModalComponent.prototype.visibleChange; + /** @type {?} */ + ModalComponent.prototype.init; + /** @type {?} */ + ModalComponent.prototype.abpHeader; + /** @type {?} */ + ModalComponent.prototype.abpBody; + /** @type {?} */ + ModalComponent.prototype.abpFooter; + /** @type {?} */ + ModalComponent.prototype.abpClose; + /** @type {?} */ + ModalComponent.prototype.abpSubmit; + /** @type {?} */ + ModalComponent.prototype.modalContent; + /** @type {?} */ + ModalComponent.prototype.abpButtons; + /** @type {?} */ + ModalComponent.prototype._visible; + /** @type {?} */ + ModalComponent.prototype._busy; + /** @type {?} */ + ModalComponent.prototype.showModal; + /** @type {?} */ + ModalComponent.prototype.isOpenConfirmation; + /** @type {?} */ + ModalComponent.prototype.closable; + /** @type {?} */ + ModalComponent.prototype.destroy$; + /** + * @type {?} + * @private + */ + ModalComponent.prototype.renderer; + /** + * @type {?} + * @private + */ + ModalComponent.prototype.confirmationService; + } /** * @param {?} nodes * @return {?} @@ -596,7 +930,7 @@ * @param {?} val * @return {?} */ - function (acc, val) { return __spread(acc, (val.childNodes && val.childNodes.length ? Array.from(val.childNodes) : [val])); }), []); + function (acc, val) { return __spread(acc, (val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])); }), []); } /** * @param {?} nodes @@ -630,7 +964,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var styles = "\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* -1) { + return __assign({}, error, { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') }); + } + return error; + })); + }, + enumerable: true, + configurable: true + }); + ValidationErrorComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-validation-error', + template: "\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ", + changeDetection: core.ChangeDetectionStrategy.OnPush, + encapsulation: core.ViewEncapsulation.None + }] } + ]; + return ValidationErrorComponent; + }(core$1.ValidationErrorComponent)); + /** - * @param {?} injector - * @return {?} + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - function appendScript(injector) { - /** @type {?} */ - var fn = (/** - * @return {?} - */ - function () { - /** @type {?} */ - var lazyLoadService = injector.get(ng_core.LazyLoadService); - return rxjs.forkJoin(lazyLoadService.load(null, 'style', styles, 'head', 'afterbegin') /* lazyLoadService.load(null, 'script', scripts) */).pipe(operators.take(1)); - }); - return fn; - } - var ThemeSharedModule = /** @class */ (function () { - function ThemeSharedModule() { + var ToasterService = /** @class */ (function (_super) { + __extends(ToasterService, _super); + function ToasterService() { + return _super !== null && _super.apply(this, arguments) || this; } /** + * @param {?} messages * @return {?} */ - ThemeSharedModule.forRoot = /** + ToasterService.prototype.addAll = /** + * @param {?} messages * @return {?} */ - function () { - return { - ngModule: ThemeSharedModule, - providers: [ - { - provide: core.APP_INITIALIZER, - multi: true, - deps: [core.Injector, ErrorHandler], - useFactory: appendScript, - }, + function (messages) { + var _this = this; + this.messageService.addAll(messages.map((/** + * @param {?} message + * @return {?} + */ + function (message) { return (__assign({ key: _this.key }, message)); }))); + }; + ToasterService.decorators = [ + { type: core.Injectable, args: [{ providedIn: 'root' },] } + ]; + /** @nocollapse */ ToasterService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ToasterService_Factory() { return new ToasterService(core.ɵɵinject(messageservice.MessageService)); }, token: ToasterService, providedIn: "root" }); + return ToasterService; + }(AbstractToaster)); + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var minLength = forms.Validators.minLength, required = forms.Validators.required; + var ChangePasswordComponent = /** @class */ (function () { + function ChangePasswordComponent(fb, store, toasterService) { + this.fb = fb; + this.store = store; + this.toasterService = toasterService; + this.visibleChange = new core.EventEmitter(); + this.modalBusy = false; + } + Object.defineProperty(ChangePasswordComponent.prototype, "visible", { + get: /** + * @return {?} + */ + function () { + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._visible = value; + this.visibleChange.emit(value); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + ChangePasswordComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + this.form = this.fb.group({ + password: ['', required], + newPassword: ['', required], + repeatNewPassword: ['', required], + }, { + validators: [core$1.comparePasswords(['newPassword', 'repeatNewPassword'])], + }); + }; + /** + * @return {?} + */ + ChangePasswordComponent.prototype.onSubmit = /** + * @return {?} + */ + function () { + var _this = this; + if (this.form.invalid) + return; + this.modalBusy = true; + this.store + .dispatch(new ng_core.ChangePassword({ + currentPassword: this.form.get('password').value, + newPassword: this.form.get('newPassword').value, + })) + .pipe(operators.finalize((/** + * @return {?} + */ + function () { + _this.modalBusy = false; + }))) + .subscribe({ + next: (/** + * @return {?} + */ + function () { + _this.visible = false; + _this.form.reset(); + }), + error: (/** + * @param {?} err + * @return {?} + */ + function (err) { + _this.toasterService.error(snq((/** + * @return {?} + */ + function () { return err.error.error.message; }), 'AbpAccount::DefaultErrorMessage'), 'Error', { + life: 7000, + }); + }), + }); + }; + /** + * @return {?} + */ + ChangePasswordComponent.prototype.openModal = /** + * @return {?} + */ + function () { + this.visible = true; + }; + /** + * @param {?} __0 + * @return {?} + */ + ChangePasswordComponent.prototype.ngOnChanges = /** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + }; + ChangePasswordComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-change-password', + template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ChangePasswordComponent.ctorParameters = function () { return [ + { type: forms.FormBuilder }, + { type: store.Store }, + { type: ToasterService } + ]; }; + ChangePasswordComponent.propDecorators = { + visible: [{ type: core.Input }], + visibleChange: [{ type: core.Output }], + modalContent: [{ type: core.ViewChild, args: ['modalContent', { static: false },] }] + }; + return ChangePasswordComponent; + }()); + if (false) { + /** + * @type {?} + * @protected + */ + ChangePasswordComponent.prototype._visible; + /** @type {?} */ + ChangePasswordComponent.prototype.visibleChange; + /** @type {?} */ + ChangePasswordComponent.prototype.modalContent; + /** @type {?} */ + ChangePasswordComponent.prototype.form; + /** @type {?} */ + ChangePasswordComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.store; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.toasterService; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var maxLength = forms.Validators.maxLength, required$1 = forms.Validators.required, email = forms.Validators.email; + var ProfileComponent = /** @class */ (function () { + function ProfileComponent(fb, store) { + this.fb = fb; + this.store = store; + this.visibleChange = new core.EventEmitter(); + this.modalBusy = false; + } + Object.defineProperty(ProfileComponent.prototype, "visible", { + get: /** + * @return {?} + */ + function () { + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._visible = value; + this.visibleChange.emit(value); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + ProfileComponent.prototype.buildForm = /** + * @return {?} + */ + function () { + var _this = this; + this.store + .dispatch(new ng_core.GetProfile()) + .pipe(operators.withLatestFrom(this.profile$), operators.take(1)) + .subscribe((/** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var _b = __read(_a, 2), profile = _b[1]; + _this.form = _this.fb.group({ + userName: [profile.userName, [required$1, maxLength(256)]], + email: [profile.email, [required$1, email, maxLength(256)]], + name: [profile.name || '', [maxLength(64)]], + surname: [profile.surname || '', [maxLength(64)]], + phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], + }); + })); + }; + /** + * @return {?} + */ + ProfileComponent.prototype.submit = /** + * @return {?} + */ + function () { + var _this = this; + if (this.form.invalid) + return; + this.modalBusy = true; + this.store.dispatch(new ng_core.UpdateProfile(this.form.value)).subscribe((/** + * @return {?} + */ + function () { + _this.modalBusy = false; + _this.visible = false; + _this.form.reset(); + })); + }; + /** + * @return {?} + */ + ProfileComponent.prototype.openModal = /** + * @return {?} + */ + function () { + this.buildForm(); + this.visible = true; + }; + /** + * @param {?} __0 + * @return {?} + */ + ProfileComponent.prototype.ngOnChanges = /** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + }; + ProfileComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-profile', + template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ProfileComponent.ctorParameters = function () { return [ + { type: forms.FormBuilder }, + { type: store.Store } + ]; }; + ProfileComponent.propDecorators = { + visible: [{ type: core.Input }], + visibleChange: [{ type: core.Output }] + }; + __decorate([ + store.Select(ng_core.ProfileState.getProfile), + __metadata("design:type", rxjs.Observable) + ], ProfileComponent.prototype, "profile$", void 0); + return ProfileComponent; + }()); + if (false) { + /** + * @type {?} + * @protected + */ + ProfileComponent.prototype._visible; + /** @type {?} */ + ProfileComponent.prototype.visibleChange; + /** @type {?} */ + ProfileComponent.prototype.profile$; + /** @type {?} */ + ProfileComponent.prototype.form; + /** @type {?} */ + ProfileComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.store; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var BreadcrumbComponent = /** @class */ (function () { + function BreadcrumbComponent(router, store) { + this.router = router; + this.store = store; + this.segments = []; + this.show = !!this.store.selectSnapshot((/** + * @param {?} state + * @return {?} + */ + function (state) { return state.LeptonLayoutState; })); + } + /** + * @return {?} + */ + BreadcrumbComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + /** @type {?} */ + var splittedUrl = this.router.url.split('/').filter((/** + * @param {?} chunk + * @return {?} + */ + function (chunk) { return chunk; })); + /** @type {?} */ + var currentUrl = this.store.selectSnapshot(ng_core.ConfigState.getRoute(splittedUrl[0])); + this.segments.push(currentUrl.name); + if (splittedUrl.length > 1) { + var _a = __read(splittedUrl), arr = _a.slice(1); + /** @type {?} */ + var childRoute = currentUrl; + var _loop_1 = function (i) { + /** @type {?} */ + var element = arr[i]; + childRoute = childRoute.children.find((/** + * @param {?} child + * @return {?} + */ + function (child) { return child.path === element; })); + this_1.segments.push(childRoute.name); + }; + var this_1 = this; + for (var i = 0; i < arr.length; i++) { + _loop_1(i); + } + } + }; + BreadcrumbComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-breadcrumb', + template: "\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n " + }] } + ]; + /** @nocollapse */ + BreadcrumbComponent.ctorParameters = function () { return [ + { type: router.Router }, + { type: store.Store } + ]; }; + return BreadcrumbComponent; + }()); + if (false) { + /** @type {?} */ + BreadcrumbComponent.prototype.show; + /** @type {?} */ + BreadcrumbComponent.prototype.segments; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.router; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.store; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @param {?} injector + * @return {?} + */ + function appendScript(injector) { + /** @type {?} */ + var fn = (/** + * @return {?} + */ + function () { + /** @type {?} */ + var lazyLoadService = injector.get(ng_core.LazyLoadService); + return rxjs.forkJoin(lazyLoadService.load(null, 'style', styles, 'head', 'afterbegin') /* lazyLoadService.load(null, 'script', scripts) */).pipe(operators.take(1)); + }); + return fn; + } + var ThemeSharedModule = /** @class */ (function () { + function ThemeSharedModule() { + } + /** + * @return {?} + */ + ThemeSharedModule.forRoot = /** + * @return {?} + */ + function () { + return { + ngModule: ThemeSharedModule, + providers: [ + { + provide: core.APP_INITIALIZER, + multi: true, + deps: [core.Injector, ErrorHandler], + useFactory: appendScript, + }, { provide: messageservice.MessageService, useClass: messageservice.MessageService }, ], }; @@ -858,19 +1710,80 @@ imports: [ ng_core.CoreModule, toast.ToastModule, - ngBootstrap.NgbModalModule, core$1.NgxValidateCoreModule.forRoot({ targetSelector: '.form-group', + blueprints: { + email: "AbpAccount::ThisFieldIsNotAValidEmailAddress.", + max: "AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]", + maxlength: "AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]", + min: "AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]", + minlength: "AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]", + required: "AbpAccount::ThisFieldIsRequired.", + passwordMismatch: "AbpIdentity::Identity.PasswordConfirmationFailed", + }, + errorTemplate: ValidationErrorComponent, }), ], - declarations: [ConfirmationComponent, ToastComponent, ModalComponent, ErrorComponent, LoaderBarComponent], - exports: [ngBootstrap.NgbModalModule, ConfirmationComponent, ToastComponent, ModalComponent, LoaderBarComponent], - entryComponents: [ErrorComponent], + declarations: [ + ButtonComponent, + ConfirmationComponent, + ToastComponent, + ModalComponent, + ErrorComponent, + LoaderBarComponent, + ValidationErrorComponent, + ChangePasswordComponent, + ProfileComponent, + BreadcrumbComponent, + ], + exports: [ + ButtonComponent, + ConfirmationComponent, + ToastComponent, + ModalComponent, + LoaderBarComponent, + ChangePasswordComponent, + ProfileComponent, + BreadcrumbComponent, + ], + entryComponents: [ErrorComponent, ValidationErrorComponent], },] } ]; return ThemeSharedModule; }()); + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var fade = animations.trigger('fade', [ + animations.state('void', animations.style({ opacity: 1 })), + animations.transition(':enter', [animations.style({ opacity: 0 }), animations.animate(250)]), + animations.transition(':leave', animations.animate(250, animations.style({ opacity: 0 }))), + ]); + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** @type {?} */ + var slideFromBottom = animations.trigger('routeAnimations', [ + animations.state('void', animations.style({ 'margin-top': '20px', opacity: '0' })), + animations.state('*', animations.style({ 'margin-top': '0px', opacity: '1' })), + animations.transition(':enter', [animations.animate('0.2s ease-out', animations.style({ opacity: '1', 'margin-top': '0px' }))]), + ]); + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -882,6 +1795,16 @@ */ function Options() { } Confirmation.Options = Options; + if (false) { + /** @type {?|undefined} */ + Options.prototype.hideCancelBtn; + /** @type {?|undefined} */ + Options.prototype.hideYesBtn; + /** @type {?|undefined} */ + Options.prototype.cancelCopy; + /** @type {?|undefined} */ + Options.prototype.yesCopy; + } })(Confirmation || (Confirmation = {})); /** @@ -895,55 +1818,71 @@ */ function Options() { } Toaster.Options = Options; + if (false) { + /** @type {?|undefined} */ + Options.prototype.id; + /** @type {?|undefined} */ + Options.prototype.closable; + /** @type {?|undefined} */ + Options.prototype.life; + /** @type {?|undefined} */ + Options.prototype.sticky; + /** @type {?|undefined} */ + Options.prototype.data; + /** @type {?|undefined} */ + Options.prototype.messageLocalizationParams; + /** @type {?|undefined} */ + Options.prototype.titleLocalizationParams; + } })(exports.Toaster || (exports.Toaster = {})); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ToasterService = /** @class */ (function (_super) { - __extends(ToasterService, _super); - function ToasterService() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * @param {?} messages - * @return {?} - */ - ToasterService.prototype.addAll = /** - * @param {?} messages - * @return {?} - */ - function (messages) { - var _this = this; - this.messageService.addAll(messages.map((/** - * @param {?} message - * @return {?} - */ - function (message) { return (__assign({ key: _this.key }, message)); }))); - }; - ToasterService.decorators = [ - { type: core.Injectable, args: [{ providedIn: 'root' },] } - ]; - /** @nocollapse */ ToasterService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ToasterService_Factory() { return new ToasterService(core.ɵɵinject(messageservice.MessageService)); }, token: ToasterService, providedIn: "root" }); - return ToasterService; - }(AbstractToasterClass)); + /** + * @record + */ + function SettingTab() { } + if (false) { + /** @type {?} */ + SettingTab.prototype.name; + /** @type {?} */ + SettingTab.prototype.order; + /** @type {?} */ + SettingTab.prototype.component; + /** @type {?|undefined} */ + SettingTab.prototype.requiredPolicy; + } + exports.BreadcrumbComponent = BreadcrumbComponent; + exports.ButtonComponent = ButtonComponent; + exports.ChangePasswordComponent = ChangePasswordComponent; exports.ConfirmationComponent = ConfirmationComponent; exports.ConfirmationService = ConfirmationService; + exports.LoaderBarComponent = LoaderBarComponent; exports.ModalComponent = ModalComponent; + exports.ProfileComponent = ProfileComponent; exports.ThemeSharedModule = ThemeSharedModule; exports.ToastComponent = ToastComponent; exports.ToasterService = ToasterService; exports.appendScript = appendScript; - exports.ɵa = ConfirmationComponent; - exports.ɵb = ConfirmationService; - exports.ɵc = AbstractToasterClass; - exports.ɵd = ToastComponent; - exports.ɵe = ModalComponent; - exports.ɵf = ErrorComponent; - exports.ɵg = LoaderBarComponent; - exports.ɵh = ErrorHandler; + exports.fade = fade; + exports.slideFromBottom = slideFromBottom; + exports.ɵa = ValidationErrorComponent; + exports.ɵb = ButtonComponent; + exports.ɵc = ConfirmationComponent; + exports.ɵd = ConfirmationService; + exports.ɵe = AbstractToaster; + exports.ɵf = ToastComponent; + exports.ɵg = ModalComponent; + exports.ɵh = ErrorComponent; + exports.ɵi = LoaderBarComponent; + exports.ɵj = ChangePasswordComponent; + exports.ɵk = ToasterService; + exports.ɵl = ProfileComponent; + exports.ɵm = BreadcrumbComponent; + exports.ɵn = ErrorHandler; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map index 6888837114..e77b970b56 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.theme.shared.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToasterClass {\n protected status$: Subject;\n\n protected key: string = 'abpToast';\n\n protected sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message,\n summary: title,\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToasterClass } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToasterClass {\n protected key: string = 'abpConfirmation';\n\n protected sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { LoaderStart, LoaderStop } from '@abp/ng.core';\nimport { filter } from 'rxjs/operators';\nimport { Router, NavigationStart, NavigationEnd } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: LoaderStart | LoaderStop) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(LoaderStart, LoaderStop),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof LoaderStart) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(event => event instanceof NavigationStart || event instanceof NavigationEnd),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { debounceTime, filter, take, takeUntil } from 'rxjs/operators';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (!this.modalContent) {\n setTimeout(() => (this.visible = value), 0);\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.renderer.removeClass(this.modalContent.nativeElement, 'fade-out-top');\n this.ngOnDestroy();\n }, 350);\n }\n }\n\n @Input() centered: boolean = true;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Output() visibleChange = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n _visible: boolean = false;\n\n closable: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n value\n ? timer(500)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'click')\n .pipe(\n debounceTime(350),\n takeUntil(this.destroy$),\n filter(\n (event: MouseEvent) =>\n event &&\n this.closable &&\n this.modalContent &&\n !this.isOpenConfirmation &&\n !this.modalContent.nativeElement.contains(event.target),\n ),\n )\n .subscribe(_ => {\n this.close();\n });\n\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n debounceTime(350),\n )\n .subscribe(_ => {\n this.close();\n });\n\n if (!this.abpClose) return;\n\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n debounceTime(350),\n )\n .subscribe(() => this.close());\n }\n\n close() {\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(400).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? Array.from(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = (err as HttpErrorResponse).error.error;\n\n if (err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'Sorry, an error has occured.',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'Sorry, an error has occured.',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgbModalModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgbModalModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n }),\n ],\n declarations: [ConfirmationComponent, ToastComponent, ModalComponent, ErrorComponent, LoaderBarComponent],\n exports: [NgbModalModule, ConfirmationComponent, ToastComponent, ModalComponent, LoaderBarComponent],\n entryComponents: [ErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToasterClass } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToasterClass {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n"],"names":["Subject","tslib_1.__extends","Injectable","Component","router","ofActionSuccessful","LoaderStart","LoaderStop","filter","takeUntilDestroy","NavigationStart","NavigationEnd","Actions","Router","Input","EventEmitter","timer","take","fromEvent","debounceTime","takeUntil","Renderer2","Output","ContentChild","ElementRef","ViewChild","store","RestOccurError","Navigate","RouterState","Store","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","LazyLoadService","forkJoin","APP_INITIALIZER","MessageService","NgModule","CoreModule","ToastModule","NgbModalModule","NgxValidateCoreModule","Toaster"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.theme.shared.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/button/button.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/components/errors/validation-error.component.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts","ng://@abp/ng.theme.shared/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.shared/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.shared/lib/components/breadcrumb/breadcrumb.component.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/animations/fade.animations.ts","ng://@abp/ng.theme.shared/lib/animations/slide.animations.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts","ng://@abp/ng.theme.shared/lib/models/setting-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n value\n ? timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n ErrorComponent,\n LoaderBarComponent,\n ValidationErrorComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n exports: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n LoaderBarComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n","import { Type } from '@angular/core';\n\nexport interface SettingTab {\n name: string;\n order: number;\n component: Type;\n requiredPolicy?: string;\n}\n"],"names":["Subject","tslib_1.__extends","Injectable","Component","router","ofActionSuccessful","StartLoader","StopLoader","filter","takeUntilDestroy","NavigationStart","NavigationEnd","NavigationError","Actions","Router","Input","EventEmitter","timer","take","fromEvent","takeUntil","debounceTime","Renderer2","Output","ContentChild","ElementRef","ViewChild","ViewChildren","store","RestOccurError","HttpErrorResponse","Navigate","RouterState","Store","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","ChangeDetectionStrategy","ViewEncapsulation","ErrorComponent","comparePasswords","ChangePassword","finalize","FormBuilder","required","GetProfile","withLatestFrom","UpdateProfile","tslib_1.__decorate","Select","ProfileState","Observable","ConfigState","LazyLoadService","forkJoin","APP_INITIALIZER","MessageService","NgModule","CoreModule","ToastModule","NgxValidateCoreModule","trigger","state","style","transition","animate","Toaster"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js index 82d7a2ec07..430c584130 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@ngx-validate/core"),require("primeng/components/common/messageservice"),require("primeng/toast"),require("rxjs"),require("rxjs/operators"),require("@ngxs/store"),require("@angular/router"),require("@ngxs/router-plugin")):"function"==typeof define&&define.amd?define("@abp/ng.theme.shared",["exports","@abp/ng.core","@angular/core","@ng-bootstrap/ng-bootstrap","@ngx-validate/core","primeng/components/common/messageservice","primeng/toast","rxjs","rxjs/operators","@ngxs/store","@angular/router","@ngxs/router-plugin"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.theme=e.abp.ng.theme||{},e.abp.ng.theme.shared={}),e.ng_core,e.ng.core,e.ngBootstrap,e.core$1,e.messageservice,e.toast,e.rxjs,e.rxjs.operators,e.store,e.ng.router,e.routerPlugin)}(this,function(e,t,n,o,r,i,s,a,c,l,p,d){"use strict";var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function f(e,t){function n(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var m=function(){return(m=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0)&&!(o=i.next()).done;)s.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}var h=function(){function e(e){this.messageService=e,this.key="abpToast",this.sticky=!1}return e.prototype.info=function(e,t,n){return this.show(e,t,"info",n)},e.prototype.success=function(e,t,n){return this.show(e,t,"success",n)},e.prototype.warn=function(e,t,n){return this.show(e,t,"warn",n)},e.prototype.error=function(e,t,n){return this.show(e,t,"error",n)},e.prototype.show=function(e,t,n,o){return this.messageService.clear(this.key),this.messageService.add(m({severity:n,detail:e,summary:t},o,{key:this.key},void 0===(o||{}).sticky&&{sticky:this.sticky})),this.status$=new a.Subject,this.status$},e.prototype.clear=function(e){this.messageService.clear(this.key),this.status$.next(e||"dismiss"),this.status$.complete()},e}(),b=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.key="abpConfirmation",t.sticky=!0,t}return f(t,e),t.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new t(n.ɵɵinject(i.MessageService))},token:t,providedIn:"root"}),t}(h),y=function(){function e(e){this.confirmationService=e,this.confirm="confirm",this.reject="reject",this.dismiss="dismiss"}return e.prototype.close=function(e){this.confirmationService.clear(e)},e.decorators=[{type:n.Component,args:[{selector:"abp-confirmation",template:'\n \n \n \n \n\n \n \n \n '}]}],e.ctorParameters=function(){return[{type:b}]},e}(),v=function(){function e(){this.title="Oops!",this.details="Sorry, an error has occured."}return e.prototype.destroy=function(){this.renderer.removeChild(this.host,this.elementRef.nativeElement)},e.decorators=[{type:n.Component,args:[{selector:"abp-error",template:'\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n ',styles:[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],e}(),C=function(){function e(e,n){var o=this;this.actions=e,this.router=n,this.containerClass="abp-loader-bar",this.progressClass="abp-progress",this.isLoading=!1,this.filter=function(e){return e.payload.url.indexOf("openid-configuration")<0},this.progressLevel=0,e.pipe(l.ofActionSuccessful(t.LoaderStart,t.LoaderStop),c.filter(this.filter),r.takeUntilDestroy(this)).subscribe(function(e){e instanceof t.LoaderStart?o.startLoading():o.stopLoading()}),n.events.pipe(c.filter(function(e){return e instanceof p.NavigationStart||e instanceof p.NavigationEnd}),r.takeUntilDestroy(this)).subscribe(function(e){e instanceof p.NavigationStart?o.startLoading():o.stopLoading()})}return e.prototype.ngOnDestroy=function(){},e.prototype.startLoading=function(){var e=this;this.isLoading=!0;var t=setInterval(function(){e.progressLevel<75?e.progressLevel+=10*Math.random():e.progressLevel<90?e.progressLevel+=.4:e.progressLevel<100?e.progressLevel+=.1:clearInterval(t)},300);this.interval=t},e.prototype.stopLoading=function(){var e=this;clearInterval(this.interval),this.progressLevel=100,this.isLoading=!1,setTimeout(function(){e.progressLevel=0},800)},e.decorators=[{type:n.Component,args:[{selector:"abp-loader-bar",template:'\n
    \n
    \n
    \n ',styles:[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],e.ctorParameters=function(){return[{type:l.Actions},{type:p.Router}]},e.propDecorators={containerClass:[{type:n.Input}],progressClass:[{type:n.Input}],isLoading:[{type:n.Input}],filter:[{type:n.Input}]},e}(),k=function(){function e(e,t){this.renderer=e,this.confirmationService=t,this.centered=!0,this.modalClass="",this.size="lg",this.visibleChange=new n.EventEmitter,this._visible=!1,this.closable=!1,this.isOpenConfirmation=!1,this.destroy$=new a.Subject}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){var t=this;this.modalContent?e?(this.setVisible(e),this.listen()):(this.closable=!1,this.renderer.addClass(this.modalContent.nativeElement,"fade-out-top"),setTimeout(function(){t.setVisible(e),t.renderer.removeClass(t.modalContent.nativeElement,"fade-out-top"),t.ngOnDestroy()},350)):setTimeout(function(){return t.visible=e},0)},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.destroy$.next()},e.prototype.setVisible=function(e){var t=this;this._visible=e,this.visibleChange.emit(e),e?a.timer(500).pipe(c.take(1)).subscribe(function(e){return t.closable=!0}):this.closable=!1},e.prototype.listen=function(){var e=this;a.fromEvent(document,"click").pipe(c.debounceTime(350),c.takeUntil(this.destroy$),c.filter(function(t){return t&&e.closable&&e.modalContent&&!e.isOpenConfirmation&&!e.modalContent.nativeElement.contains(t.target)})).subscribe(function(t){e.close()}),a.fromEvent(document,"keyup").pipe(c.takeUntil(this.destroy$),c.filter(function(t){return t&&"Escape"===t.code&&e.closable}),c.debounceTime(350)).subscribe(function(t){e.close()}),this.abpClose&&a.fromEvent(this.abpClose.nativeElement,"click").pipe(c.takeUntil(this.destroy$),c.filter(function(){return!(!e.closable||!e.modalContent)}),c.debounceTime(350)).subscribe(function(){return e.close()})},e.prototype.close=function(){var e=this;if(function(e){return e.findIndex(function(e){return(e.className||"").indexOf("ng-dirty")>-1})>-1}(function(e){return Array.from(e).reduce(function(e,t){return function(){for(var e=[],t=0;t\n \n \n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:n.Renderer2},{type:b}]},e.propDecorators={visible:[{type:n.Input}],centered:[{type:n.Input}],modalClass:[{type:n.Input}],size:[{type:n.Input}],visibleChange:[{type:n.Output}],abpHeader:[{type:n.ContentChild,args:["abpHeader",{static:!1}]}],abpBody:[{type:n.ContentChild,args:["abpBody",{static:!1}]}],abpFooter:[{type:n.ContentChild,args:["abpFooter",{static:!1}]}],abpClose:[{type:n.ContentChild,args:["abpClose",{static:!1,read:n.ElementRef}]}],modalContent:[{type:n.ViewChild,args:["abpModalContent",{static:!1}]}]},e}();var w=function(){function e(){}return e.decorators=[{type:n.Component,args:[{selector:"abp-toast",template:'\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n '}]}],e}(),x="\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* 0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}var C=function(){function e(e){this.messageService=e,this.key="abpToast",this.sticky=!1}return e.prototype.info=function(e,t,n){return this.show(e,t,"info",n)},e.prototype.success=function(e,t,n){return this.show(e,t,"success",n)},e.prototype.warn=function(e,t,n){return this.show(e,t,"warn",n)},e.prototype.error=function(e,t,n){return this.show(e,t,"error",n)},e.prototype.show=function(e,t,n,o){return this.messageService.clear(this.key),this.messageService.add(g({severity:n,detail:e||"",summary:t||""},o,{key:this.key},void 0===(o||{}).sticky&&{sticky:this.sticky})),this.status$=new a.Subject,this.status$},e.prototype.clear=function(e){this.messageService.clear(this.key),this.status$.next(e||"dismiss"),this.status$.complete()},e}();var w=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.key="abpConfirmation",t.sticky=!0,t}return h(t,e),t.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new t(n.ɵɵinject(r.MessageService))},token:t,providedIn:"root"}),t}(C);var I=function(){function e(e){this.confirmationService=e,this.confirm="confirm",this.reject="reject",this.dismiss="dismiss"}return e.prototype.close=function(e){this.confirmationService.clear(e)},e.decorators=[{type:n.Component,args:[{selector:"abp-confirmation",template:'\n \n \n \n \n\n \n \n \n '}]}],e.ctorParameters=function(){return[{type:w}]},e}();var L=function(){function e(){this.title="Oops!",this.details="Sorry, an error has occured."}return e.prototype.destroy=function(){this.renderer.removeChild(this.host,this.elementRef.nativeElement)},e.decorators=[{type:n.Component,args:[{selector:"abp-error",template:'\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ',styles:[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],e}();var S=function(){function e(e,n){var r=this;this.actions=e,this.router=n,this.containerClass="abp-loader-bar",this.progressClass="abp-progress",this.isLoading=!1,this.filter=function(e){return e.payload.url.indexOf("openid-configuration")<0},this.progressLevel=0,e.pipe(p.ofActionSuccessful(t.StartLoader,t.StopLoader),s.filter(this.filter),o.takeUntilDestroy(this)).subscribe(function(e){e instanceof t.StartLoader?r.startLoading():r.stopLoading()}),n.events.pipe(s.filter(function(e){return e instanceof l.NavigationStart||e instanceof l.NavigationEnd||e instanceof l.NavigationError}),o.takeUntilDestroy(this)).subscribe(function(e){e instanceof l.NavigationStart?r.startLoading():r.stopLoading()})}return e.prototype.ngOnDestroy=function(){},e.prototype.startLoading=function(){var e=this;this.isLoading=!0;var t=setInterval(function(){e.progressLevel<75?e.progressLevel+=10*Math.random():e.progressLevel<90?e.progressLevel+=.4:e.progressLevel<100?e.progressLevel+=.1:clearInterval(t)},300);this.interval=t},e.prototype.stopLoading=function(){var e=this;clearInterval(this.interval),this.progressLevel=100,this.isLoading=!1,setTimeout(function(){e.progressLevel=0},800)},e.decorators=[{type:n.Component,args:[{selector:"abp-loader-bar",template:'\n
    \n
    \n
    \n ',styles:[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],e.ctorParameters=function(){return[{type:p.Actions},{type:l.Router}]},e.propDecorators={containerClass:[{type:n.Input}],progressClass:[{type:n.Input}],isLoading:[{type:n.Input}],filter:[{type:n.Input}]},e}();var A=function(){function e(){this.buttonClass="btn btn-primary",this.type="button",this.loading=!1,this.disabled=!1}return Object.defineProperty(e.prototype,"icon",{get:function(){return""+(this.loading?"fa fa-spin fa-spinner":this.iconClass||"d-none")},enumerable:!0,configurable:!0}),e.decorators=[{type:n.Component,args:[{selector:"abp-button",template:'\n \n '}]}],e.propDecorators={buttonClass:[{type:n.Input}],type:[{type:n.Input}],iconClass:[{type:n.Input}],loading:[{type:n.Input}],disabled:[{type:n.Input}]},e}();var x=function(){function e(e,t){this.renderer=e,this.confirmationService=t,this.centered=!1,this.modalClass="",this.size="lg",this.visibleChange=new n.EventEmitter,this.init=new n.EventEmitter,this._visible=!1,this._busy=!1,this.showModal=!1,this.isOpenConfirmation=!1,this.closable=!1,this.destroy$=new a.Subject}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){var t=this;"boolean"==typeof e&&(this.modalContent?e?(this.setVisible(e),this.listen()):(this.closable=!1,this.renderer.addClass(this.modalContent.nativeElement,"fade-out-top"),setTimeout(function(){t.setVisible(e),t.ngOnDestroy()},190)):e&&setTimeout(function(){t.showModal=e,t.visible=e},0))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"busy",{get:function(){return this._busy},set:function(e){this.abpSubmit&&this.abpSubmit instanceof A&&(this.abpSubmit.loading=e),this._busy=e},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.destroy$.next()},e.prototype.setVisible=function(e){var t=this;this._visible=e,this.visibleChange.emit(e),this.showModal=e,e?a.timer(300).pipe(s.take(1)).subscribe(function(e){return t.closable=!0}):this.closable=!1},e.prototype.listen=function(){var e=this;a.fromEvent(document,"keyup").pipe(s.takeUntil(this.destroy$),s.debounceTime(150),s.filter(function(t){return t&&"Escape"===t.code&&e.closable})).subscribe(function(t){e.close()}),setTimeout(function(){e.abpClose&&a.fromEvent(e.abpClose.nativeElement,"click").pipe(s.takeUntil(e.destroy$),s.filter(function(){return!(!e.closable||!e.modalContent)})).subscribe(function(){return e.close()})},0),this.init.emit()},e.prototype.close=function(){var e=this;if(this.closable&&!this.busy)if(function(e){return e.findIndex(function(e){return(e.className||"").indexOf("ng-dirty")>-1})>-1}(function e(t){return Array.from(t).reduce(function(t,n){return function(){for(var e=[],t=0;t\n \n \n \n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:n.Renderer2},{type:w}]},e.propDecorators={visible:[{type:n.Input}],busy:[{type:n.Input}],centered:[{type:n.Input}],modalClass:[{type:n.Input}],size:[{type:n.Input}],height:[{type:n.Input}],minHeight:[{type:n.Input}],visibleChange:[{type:n.Output}],init:[{type:n.Output}],abpHeader:[{type:n.ContentChild,args:["abpHeader",{static:!1}]}],abpBody:[{type:n.ContentChild,args:["abpBody",{static:!1}]}],abpFooter:[{type:n.ContentChild,args:["abpFooter",{static:!1}]}],abpClose:[{type:n.ContentChild,args:["abpClose",{static:!1,read:n.ElementRef}]}],abpSubmit:[{type:n.ContentChild,args:[A,{static:!1,read:A}]}],modalContent:[{type:n.ViewChild,args:["abpModalContent",{static:!1}]}],abpButtons:[{type:n.ViewChildren,args:["abp-button"]}]},e}();var k=function(){function e(){}return e.decorators=[{type:n.Component,args:[{selector:"abp-toast",template:'\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n '}]}],e}(),E="\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* -1?g({},e,{message:e.message.slice(0,t),interpoliteParams:e.message.slice(t+1,e.message.length-1).split(",")}):e}):[]},enumerable:!0,configurable:!0}),t.decorators=[{type:n.Component,args:[{selector:"abp-validation-error",template:'\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ',changeDetection:n.ChangeDetectionStrategy.OnPush,encapsulation:n.ViewEncapsulation.None}]}],t}(o.ValidationErrorComponent),N=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return h(t,e),t.prototype.addAll=function(e){var t=this;this.messageService.addAll(e.map(function(e){return g({key:t.key},e)}))},t.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new t(n.ɵɵinject(r.MessageService))},token:t,providedIn:"root"}),t}(C),z=(m.Validators.minLength,m.Validators.required),T=function(){function e(e,t,o){this.fb=e,this.store=t,this.toasterService=o,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.form=this.fb.group({password:["",z],newPassword:["",z],repeatNewPassword:["",z]},{validators:[o.comparePasswords(["newPassword","repeatNewPassword"])]})},e.prototype.onSubmit=function(){var e=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new t.ChangePassword({currentPassword:this.form.get("password").value,newPassword:this.form.get("newPassword").value})).pipe(s.finalize(function(){e.modalBusy=!1})).subscribe({next:function(){e.visible=!1,e.form.reset()},error:function(t){e.toasterService.error(d(function(){return t.error.error.message},"AbpAccount::DefaultErrorMessage"),"Error",{life:7e3})}}))},e.prototype.openModal=function(){this.visible=!0},e.prototype.ngOnChanges=function(e){var t=e.visible;t&&(t.currentValue?this.openModal():!1===t.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:n.Component,args:[{selector:"abp-change-password",template:'\n \n

    {{ \'AbpIdentity::ChangePassword\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],e.ctorParameters=function(){return[{type:m.FormBuilder},{type:p.Store},{type:N}]},e.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}],modalContent:[{type:n.ViewChild,args:["modalContent",{static:!1}]}]},e}();var M=m.Validators.maxLength,R=m.Validators.required,B=m.Validators.email,F=function(){function e(e,t){this.fb=e,this.store=t,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e)},enumerable:!0,configurable:!0}),e.prototype.buildForm=function(){var e=this;this.store.dispatch(new t.GetProfile).pipe(s.withLatestFrom(this.profile$),s.take(1)).subscribe(function(t){var n=v(t,2)[1];e.form=e.fb.group({userName:[n.userName,[R,M(256)]],email:[n.email,[R,B,M(256)]],name:[n.name||"",[M(64)]],surname:[n.surname||"",[M(64)]],phoneNumber:[n.phoneNumber||"",[M(16)]]})})},e.prototype.submit=function(){var e=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new t.UpdateProfile(this.form.value)).subscribe(function(){e.modalBusy=!1,e.visible=!1,e.form.reset()}))},e.prototype.openModal=function(){this.buildForm(),this.visible=!0},e.prototype.ngOnChanges=function(e){var t=e.visible;t&&(t.currentValue?this.openModal():!1===t.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:n.Component,args:[{selector:"abp-profile",template:'\n \n

    {{ \'AbpIdentity::PersonalInfo\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],e.ctorParameters=function(){return[{type:m.FormBuilder},{type:p.Store}]},e.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}]},function(e,t,n,o){var r,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);i>3&&a&&Object.defineProperty(t,n,a)}([p.Select(t.ProfileState.getProfile),y("design:type",a.Observable)],e.prototype,"profile$",void 0),e}();var D=function(){function e(e,t){this.router=e,this.store=t,this.segments=[],this.show=!!this.store.selectSnapshot(function(e){return e.LeptonLayoutState})}return e.prototype.ngOnInit=function(){var e=this.router.url.split("/").filter(function(e){return e}),n=this.store.selectSnapshot(t.ConfigState.getRoute(e[0]));if(this.segments.push(n.name),e.length>1)for(var o=v(e).slice(1),r=n,i=function(e){var t=o[e];r=r.children.find(function(e){return e.path===t}),a.segments.push(r.name)},a=this,s=0;s\n \n \n {{ segment | abpLocalization }}\n \n \n '}]}],e.ctorParameters=function(){return[{type:l.Router},{type:p.Store}]},e}();function q(e){return function(){var n=e.get(t.LazyLoadService);return a.forkJoin(n.load(null,"style",E,"head","afterbegin")).pipe(s.take(1))}}var _,V=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[{provide:n.APP_INITIALIZER,multi:!0,deps:[n.Injector,O],useFactory:q},{provide:r.MessageService,useClass:r.MessageService}]}},e.decorators=[{type:n.NgModule,args:[{imports:[t.CoreModule,i.ToastModule,o.NgxValidateCoreModule.forRoot({targetSelector:".form-group",blueprints:{email:"AbpAccount::ThisFieldIsNotAValidEmailAddress.",max:"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]",maxlength:"AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]",min:"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]",minlength:"AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]",required:"AbpAccount::ThisFieldIsRequired.",passwordMismatch:"AbpIdentity::Identity.PasswordConfirmationFailed"},errorTemplate:j})],declarations:[A,I,k,x,L,S,j,T,F,D],exports:[A,I,k,x,S,T,F,D],entryComponents:[L,j]}]}],e}(),Y=f.trigger("fade",[f.state("void",f.style({opacity:1})),f.transition(":enter",[f.style({opacity:0}),f.animate(250)]),f.transition(":leave",f.animate(250,f.style({opacity:0})))]),$=f.trigger("routeAnimations",[f.state("void",f.style({"margin-top":"20px",opacity:"0"})),f.state("*",f.style({"margin-top":"0px",opacity:"1"})),f.transition(":enter",[f.animate("0.2s ease-out",f.style({opacity:"1","margin-top":"0px"}))])]);!function(e){function t(){}e.Options=t}(_||(_={})),function(t){function n(){}(e.Toaster||(e.Toaster={})).Options=n}(),e.BreadcrumbComponent=D,e.ButtonComponent=A,e.ChangePasswordComponent=T,e.ConfirmationComponent=I,e.ConfirmationService=w,e.LoaderBarComponent=S,e.ModalComponent=x,e.ProfileComponent=F,e.ThemeSharedModule=V,e.ToastComponent=k,e.ToasterService=N,e.appendScript=q,e.fade=Y,e.slideFromBottom=$,e.ɵa=j,e.ɵb=A,e.ɵc=I,e.ɵd=w,e.ɵe=C,e.ɵf=k,e.ɵg=x,e.ɵh=L,e.ɵi=S,e.ɵj=T,e.ɵk=N,e.ɵl=F,e.ɵm=D,e.ɵn=O,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.theme.shared.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js.map b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js.map index df359f93c3..fc17623577 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js.map +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__read","o","m","Symbol","iterator","r","e","ar","next","done","push","value","error","AbstractToasterClass","messageService","key","sticky","info","message","title","options","show","success","warn","severity","clear","add","detail","summary","status$","Subject","status","complete","ConfirmationService","_this","_super","tslib_1.__extends","Injectable","args","providedIn","ConfirmationComponent","confirmationService","confirm","reject","dismiss","close","Component","selector","template","ErrorComponent","details","destroy","renderer","removeChild","host","elementRef","nativeElement","LoaderBarComponent","actions","router","containerClass","progressClass","isLoading","filter","action","payload","url","indexOf","progressLevel","pipe","ofActionSuccessful","LoaderStart","LoaderStop","takeUntilDestroy","subscribe","startLoading","stopLoading","events","event","NavigationStart","NavigationEnd","ngOnDestroy","interval","setInterval","Math","random","clearInterval","setTimeout","Actions","Router","Input","ModalComponent","centered","modalClass","size","visibleChange","EventEmitter","_visible","closable","isOpenConfirmation","destroy$","defineProperty","modalContent","setVisible","listen","addClass","removeClass","visible","emit","timer","take","_","fromEvent","document","debounceTime","takeUntil","contains","target","code","abpClose","nodes","findIndex","node","className","hasNgDirty","from","reduce","acc","val","concat","__spread","childNodes","getFlatNodes","querySelector","Renderer2","Output","ContentChild","static","read","ElementRef","ViewChild","ToastComponent","styles","DEFAULTS","defaultError","defaultError401","defaultError403","defaultError404","ErrorHandler","store","appRef","cfRes","rendererFactory","injector","RestOccurError","res","_a","err","body","headers","get","confirmation$","showError","navigateToLogin","createErrorComponent","statusText","hideCancelBtn","yesCopy","dispatch","Navigate","state","redirectUrl","selectSnapshot","RouterState","instance","createRenderer","selectRootElement","componentRef","resolveComponentFactory","attachView","hostView","appendChild","rootNodes","location","Store","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","appendScript","lazyLoadService","LazyLoadService","forkJoin","load","Confirmation","ThemeSharedModule","forRoot","ngModule","providers","provide","APP_INITIALIZER","multi","deps","useFactory","MessageService","useClass","NgModule","imports","CoreModule","ToastModule","NgbModalModule","NgxValidateCoreModule","targetSelector","declarations","exports","entryComponents","Toaster","ToasterService","addAll","messages","map"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToasterClass {\n protected status$: Subject;\n\n protected key: string = 'abpToast';\n\n protected sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message,\n summary: title,\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToasterClass } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToasterClass {\n protected key: string = 'abpConfirmation';\n\n protected sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { LoaderStart, LoaderStop } from '@abp/ng.core';\nimport { filter } from 'rxjs/operators';\nimport { Router, NavigationStart, NavigationEnd } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: LoaderStart | LoaderStop) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(LoaderStart, LoaderStop),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof LoaderStart) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(event => event instanceof NavigationStart || event instanceof NavigationEnd),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { debounceTime, filter, take, takeUntil } from 'rxjs/operators';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (!this.modalContent) {\n setTimeout(() => (this.visible = value), 0);\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.renderer.removeClass(this.modalContent.nativeElement, 'fade-out-top');\n this.ngOnDestroy();\n }, 350);\n }\n }\n\n @Input() centered: boolean = true;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Output() visibleChange = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n _visible: boolean = false;\n\n closable: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n value\n ? timer(500)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'click')\n .pipe(\n debounceTime(350),\n takeUntil(this.destroy$),\n filter(\n (event: MouseEvent) =>\n event &&\n this.closable &&\n this.modalContent &&\n !this.isOpenConfirmation &&\n !this.modalContent.nativeElement.contains(event.target),\n ),\n )\n .subscribe(_ => {\n this.close();\n });\n\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n debounceTime(350),\n )\n .subscribe(_ => {\n this.close();\n });\n\n if (!this.abpClose) return;\n\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n debounceTime(350),\n )\n .subscribe(() => this.close());\n }\n\n close() {\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(400).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? Array.from(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = (err as HttpErrorResponse).error.error;\n\n if (err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'Sorry, an error has occured.',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'Sorry, an error has occured.',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgbModalModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgbModalModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n }),\n ],\n declarations: [ConfirmationComponent, ToastComponent, ModalComponent, ErrorComponent, LoaderBarComponent],\n exports: [NgbModalModule, ConfirmationComponent, ToastComponent, ModalComponent, LoaderBarComponent],\n entryComponents: [ErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToasterClass } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToasterClass {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/button/button.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/components/errors/validation-error.component.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts","ng://@abp/ng.theme.shared/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.shared/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.shared/lib/components/breadcrumb/breadcrumb.component.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/animations/fade.animations.ts","ng://@abp/ng.theme.shared/lib/animations/slide.animations.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__metadata","metadataKey","metadataValue","Reflect","metadata","__read","o","m","Symbol","iterator","r","e","ar","next","done","push","value","error","AbstractToaster","messageService","key","sticky","info","message","title","options","show","success","warn","severity","clear","add","detail","summary","status$","Subject","status","complete","ConfirmationService","_this","_super","tslib_1.__extends","Injectable","args","providedIn","ConfirmationComponent","confirmationService","confirm","reject","dismiss","close","Component","selector","template","ErrorComponent","details","destroy","renderer","removeChild","host","elementRef","nativeElement","LoaderBarComponent","actions","router","containerClass","progressClass","isLoading","filter","action","payload","url","indexOf","progressLevel","pipe","ofActionSuccessful","StartLoader","StopLoader","takeUntilDestroy","subscribe","startLoading","stopLoading","events","event","NavigationStart","NavigationEnd","NavigationError","ngOnDestroy","interval","setInterval","Math","random","clearInterval","setTimeout","Actions","Router","Input","ButtonComponent","buttonClass","type","loading","disabled","defineProperty","iconClass","ModalComponent","centered","modalClass","size","visibleChange","EventEmitter","init","_visible","_busy","showModal","isOpenConfirmation","closable","destroy$","modalContent","setVisible","listen","addClass","ANIMATION_TIMEOUT","visible","abpSubmit","emit","timer","take","_","fromEvent","document","takeUntil","debounceTime","code","abpClose","busy","nodes","findIndex","node","className","hasNgDirty","getFlatNodes","from","reduce","acc","val","concat","__spread","childNodes","querySelector","Renderer2","Output","ContentChild","static","read","ElementRef","ViewChild","ViewChildren","ToastComponent","styles","DEFAULTS","defaultError","defaultError401","defaultError403","defaultError404","ErrorHandler","store","appRef","cfRes","rendererFactory","injector","RestOccurError","res","_a","err","body","snq","HttpErrorResponse","headers","get","confirmation$","showError","navigateToLogin","createErrorComponent","statusText","hideCancelBtn","yesCopy","dispatch","Navigate","state","redirectUrl","selectSnapshot","RouterState","instance","createRenderer","selectRootElement","componentRef","resolveComponentFactory","attachView","hostView","appendChild","rootNodes","location","Store","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","ValidationErrorComponent","errors","map","index","slice","interpoliteParams","split","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","ToasterService","addAll","messages","required","forms","Validators","minLength","ChangePasswordComponent","fb","toasterService","modalBusy","ngOnInit","form","group","password","newPassword","repeatNewPassword","validators","comparePasswords","onSubmit","invalid","ChangePassword","currentPassword","finalize","reset","life","openModal","ngOnChanges","currentValue","FormBuilder","maxLength","email","ProfileComponent","buildForm","GetProfile","withLatestFrom","profile$","profile","userName","name","surname","phoneNumber","submit","UpdateProfile","decorators","target","desc","c","getOwnPropertyDescriptor","decorate","tslib_1.__decorate","Select","ProfileState","getProfile","Observable","BreadcrumbComponent","segments","LeptonLayoutState","splittedUrl","chunk","currentUrl","ConfigState","getRoute","arr","childRoute","element","children","find","child","path","this_1","appendScript","lazyLoadService","LazyLoadService","forkJoin","load","Confirmation","ThemeSharedModule","forRoot","ngModule","providers","provide","APP_INITIALIZER","multi","deps","useFactory","MessageService","useClass","NgModule","imports","CoreModule","ToastModule","NgxValidateCoreModule","targetSelector","blueprints","max","maxlength","min","minlength","passwordMismatch","errorTemplate","declarations","exports","entryComponents","fade","trigger","style","opacity","transition","animate","slideFromBottom","margin-top","Options","Toaster"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n value\n ? timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n ErrorComponent,\n LoaderBarComponent,\n ValidationErrorComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n exports: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n LoaderBarComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js b/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js index e355417f47..43d4337172 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js @@ -5,13 +5,19 @@ /** * Generated bundle index. Do not edit. */ -export { appendScript, ThemeSharedModule, ConfirmationComponent, ToastComponent, ModalComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; -export { AbstractToasterClass as ɵc } from './lib/abstracts/toaster'; -export { ConfirmationComponent as ɵa } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵf } from './lib/components/errors/error.component'; -export { LoaderBarComponent as ɵg } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵe } from './lib/components/modal/modal.component'; -export { ToastComponent as ɵd } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵh } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵb } from './lib/services/confirmation.service'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUpBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDakcsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlckNsYXNzIGFzIMm1Y30gZnJvbSAnLi9saWIvYWJzdHJhY3RzL3RvYXN0ZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtMb2FkZXJCYXJDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0IHtNb2RhbENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtWh9IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnOyJdfQ== \ No newline at end of file +export { appendScript, ThemeSharedModule, fade, slideFromBottom, ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; +export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵb } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; +export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; +export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; +export { ToasterService as ɵk } from './lib/services/toaster.service'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaVJBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlciBhcyDJtWV9IGZyb20gJy4vbGliL2Fic3RyYWN0cy90b2FzdGVyJztcbmV4cG9ydCB7QnJlYWRjcnVtYkNvbXBvbmVudCBhcyDJtW19IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQge0J1dHRvbkNvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWl9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW59IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1ZH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWt9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/abstracts/toaster.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/abstracts/toaster.js index 20bcdff046..fa72c8b23e 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/abstracts/toaster.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/abstracts/toaster.js @@ -6,7 +6,7 @@ import { Subject } from 'rxjs'; /** * @template T */ -export class AbstractToasterClass { +export class AbstractToaster { /** * @param {?} messageService */ @@ -61,7 +61,7 @@ export class AbstractToasterClass { */ show(message, title, severity, options) { this.messageService.clear(this.key); - this.messageService.add(Object.assign({ severity, detail: message, summary: title }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); + this.messageService.add(Object.assign({ severity, detail: message || '', summary: title || '' }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); this.status$ = new Subject(); return this.status$; } @@ -76,25 +76,16 @@ export class AbstractToasterClass { } } if (false) { + /** @type {?} */ + AbstractToaster.prototype.status$; + /** @type {?} */ + AbstractToaster.prototype.key; + /** @type {?} */ + AbstractToaster.prototype.sticky; /** * @type {?} * @protected */ - AbstractToasterClass.prototype.status$; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.key; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.sticky; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.messageService; + AbstractToaster.prototype.messageService; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2Fic3RyYWN0cy90b2FzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBRzNDLE1BQU0sT0FBTyxvQkFBb0I7Ozs7SUFPL0IsWUFBc0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBSjFDLFFBQUcsR0FBVyxVQUFVLENBQUM7UUFFekIsV0FBTSxHQUFZLEtBQUssQ0FBQztJQUVxQixDQUFDOzs7Ozs7O0lBQ3hELElBQUksQ0FBQyxPQUFlLEVBQUUsS0FBYSxFQUFFLE9BQVc7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs7Ozs7SUFFRCxPQUFPLENBQUMsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQ2pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDOzs7Ozs7O0lBRUQsSUFBSSxDQUFDLE9BQWUsRUFBRSxLQUFhLEVBQUUsT0FBVztRQUM5QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Ozs7OztJQUVELEtBQUssQ0FBQyxPQUFlLEVBQUUsS0FBYSxFQUFFLE9BQVc7UUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JELENBQUM7Ozs7Ozs7OztJQUVTLElBQUksQ0FBQyxPQUFlLEVBQUUsS0FBYSxFQUFFLFFBQTBCLEVBQUUsT0FBVztRQUNwRixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFcEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLGlCQUNyQixRQUFRLEVBQ1IsTUFBTSxFQUFFLE9BQU8sRUFDZixPQUFPLEVBQUUsS0FBSyxJQUNYLE9BQU8sSUFDVixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFDVixDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksQ0FBQyxtQkFBQSxFQUFFLEVBQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLFdBQVcsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFDdEYsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQWtCLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Ozs7O0lBRUQsS0FBSyxDQUFDLE1BQXVCO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLDJCQUEwQixDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7Ozs7OztJQTNDQyx1Q0FBMkM7Ozs7O0lBRTNDLG1DQUFtQzs7Ozs7SUFFbkMsc0NBQWtDOzs7OztJQUV0Qiw4Q0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9hc3RlciB9IGZyb20gJy4uL21vZGVscy90b2FzdGVyJztcblxuZXhwb3J0IGNsYXNzIEFic3RyYWN0VG9hc3RlckNsYXNzPFQgPSBUb2FzdGVyLk9wdGlvbnM+IHtcbiAgcHJvdGVjdGVkIHN0YXR1cyQ6IFN1YmplY3Q8VG9hc3Rlci5TdGF0dXM+O1xuXG4gIHByb3RlY3RlZCBrZXk6IHN0cmluZyA9ICdhYnBUb2FzdCc7XG5cbiAgcHJvdGVjdGVkIHN0aWNreTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHt9XG4gIGluZm8obWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnaW5mbycsIG9wdGlvbnMpO1xuICB9XG5cbiAgc3VjY2VzcyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICdzdWNjZXNzJywgb3B0aW9ucyk7XG4gIH1cblxuICB3YXJuKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ3dhcm4nLCBvcHRpb25zKTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ2Vycm9yJywgb3B0aW9ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2hvdyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIHNldmVyaXR5OiBUb2FzdGVyLlNldmVyaXR5LCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmNsZWFyKHRoaXMua2V5KTtcblxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcbiAgICAgIHNldmVyaXR5LFxuICAgICAgZGV0YWlsOiBtZXNzYWdlLFxuICAgICAgc3VtbWFyeTogdGl0bGUsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAga2V5OiB0aGlzLmtleSxcbiAgICAgIC4uLih0eXBlb2YgKG9wdGlvbnMgfHwgKHt9IGFzIGFueSkpLnN0aWNreSA9PT0gJ3VuZGVmaW5lZCcgJiYgeyBzdGlja3k6IHRoaXMuc3RpY2t5IH0pLFxuICAgIH0pO1xuICAgIHRoaXMuc3RhdHVzJCA9IG5ldyBTdWJqZWN0PFRvYXN0ZXIuU3RhdHVzPigpO1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyQ7XG4gIH1cblxuICBjbGVhcihzdGF0dXM/OiBUb2FzdGVyLlN0YXR1cykge1xuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY2xlYXIodGhpcy5rZXkpO1xuICAgIHRoaXMuc3RhdHVzJC5uZXh0KHN0YXR1cyB8fCBUb2FzdGVyLlN0YXR1cy5kaXNtaXNzKTtcbiAgICB0aGlzLnN0YXR1cyQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2Fic3RyYWN0cy90b2FzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBRzNDLE1BQU0sT0FBTyxlQUFlOzs7O0lBTzFCLFlBQXNCLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUpwRCxRQUFHLEdBQVcsVUFBVSxDQUFDO1FBRXpCLFdBQU0sR0FBWSxLQUFLLENBQUM7SUFFK0IsQ0FBQzs7Ozs7OztJQUN4RCxJQUFJLENBQUMsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7Ozs7O0lBRUQsT0FBTyxDQUFDLE9BQWUsRUFBRSxLQUFhLEVBQUUsT0FBVztRQUNqRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQzs7Ozs7OztJQUVELElBQUksQ0FBQyxPQUFlLEVBQUUsS0FBYSxFQUFFLE9BQVc7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs7Ozs7SUFFRCxLQUFLLENBQUMsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQy9DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs7Ozs7Ozs7SUFFUyxJQUFJLENBQUMsT0FBZSxFQUFFLEtBQWEsRUFBRSxRQUEwQixFQUFFLE9BQVc7UUFDcEYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXBDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxpQkFDckIsUUFBUSxFQUNSLE1BQU0sRUFBRSxPQUFPLElBQUksRUFBRSxFQUNyQixPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFDakIsT0FBTyxJQUNWLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxJQUNWLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLG1CQUFBLEVBQUUsRUFBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssV0FBVyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUN0RixDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBa0IsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQzs7Ozs7SUFFRCxLQUFLLENBQUMsTUFBdUI7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sMkJBQTBCLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FDRjs7O0lBM0NDLGtDQUFpQzs7SUFFakMsOEJBQXlCOztJQUV6QixpQ0FBd0I7Ozs7O0lBRVoseUNBQXdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2NvbXBvbmVudHMvY29tbW9uL21lc3NhZ2VzZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi9tb2RlbHMvdG9hc3Rlcic7XG5cbmV4cG9ydCBjbGFzcyBBYnN0cmFjdFRvYXN0ZXI8VCA9IFRvYXN0ZXIuT3B0aW9ucz4ge1xuICBzdGF0dXMkOiBTdWJqZWN0PFRvYXN0ZXIuU3RhdHVzPjtcblxuICBrZXk6IHN0cmluZyA9ICdhYnBUb2FzdCc7XG5cbiAgc3RpY2t5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkge31cbiAgaW5mbyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICdpbmZvJywgb3B0aW9ucyk7XG4gIH1cblxuICBzdWNjZXNzKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ3N1Y2Nlc3MnLCBvcHRpb25zKTtcbiAgfVxuXG4gIHdhcm4obWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnd2FybicsIG9wdGlvbnMpO1xuICB9XG5cbiAgZXJyb3IobWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnZXJyb3InLCBvcHRpb25zKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzaG93KG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgc2V2ZXJpdHk6IFRvYXN0ZXIuU2V2ZXJpdHksIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY2xlYXIodGhpcy5rZXkpO1xuXG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xuICAgICAgc2V2ZXJpdHksXG4gICAgICBkZXRhaWw6IG1lc3NhZ2UgfHwgJycsXG4gICAgICBzdW1tYXJ5OiB0aXRsZSB8fCAnJyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBrZXk6IHRoaXMua2V5LFxuICAgICAgLi4uKHR5cGVvZiAob3B0aW9ucyB8fCAoe30gYXMgYW55KSkuc3RpY2t5ID09PSAndW5kZWZpbmVkJyAmJiB7IHN0aWNreTogdGhpcy5zdGlja3kgfSksXG4gICAgfSk7XG4gICAgdGhpcy5zdGF0dXMkID0gbmV3IFN1YmplY3Q8VG9hc3Rlci5TdGF0dXM+KCk7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzJDtcbiAgfVxuXG4gIGNsZWFyKHN0YXR1cz86IFRvYXN0ZXIuU3RhdHVzKSB7XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5jbGVhcih0aGlzLmtleSk7XG4gICAgdGhpcy5zdGF0dXMkLm5leHQoc3RhdHVzIHx8IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3MpO1xuICAgIHRoaXMuc3RhdHVzJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/fade.animations.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/fade.animations.js new file mode 100644 index 0000000000..7b11917a61 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/fade.animations.js @@ -0,0 +1,12 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { animate, state, style, transition, trigger } from '@angular/animations'; +/** @type {?} */ +export const fade = trigger('fade', [ + state('void', style({ opacity: 1 })), + transition(':enter', [style({ opacity: 0 }), animate(250)]), + transition(':leave', animate(250, style({ opacity: 0 }))), +]); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFkZS5hbmltYXRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvYW5pbWF0aW9ucy9mYWRlLmFuaW1hdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpGLE1BQU0sT0FBTyxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRTtJQUNsQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzRCxVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztDQUMxRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBmYWRlID0gdHJpZ2dlcignZmFkZScsIFtcbiAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpLFxuICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbc3R5bGUoeyBvcGFjaXR5OiAwIH0pLCBhbmltYXRlKDI1MCldKSxcbiAgdHJhbnNpdGlvbignOmxlYXZlJywgYW5pbWF0ZSgyNTAsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSkpLFxuXSk7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/index.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/index.js new file mode 100644 index 0000000000..56c7f53734 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/index.js @@ -0,0 +1,7 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +export { fade } from './fade.animations'; +export { slideFromBottom } from './slide.animations'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9hbmltYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxQkFBYyxtQkFBbUIsQ0FBQztBQUNsQyxnQ0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmFkZS5hbmltYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc2xpZGUuYW5pbWF0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/slide.animations.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/slide.animations.js new file mode 100644 index 0000000000..3d416a8f59 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/animations/slide.animations.js @@ -0,0 +1,12 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { animate, state, style, transition, trigger } from '@angular/animations'; +/** @type {?} */ +export const slideFromBottom = trigger('routeAnimations', [ + state('void', style({ 'margin-top': '20px', opacity: '0' })), + state('*', style({ 'margin-top': '0px', opacity: '1' })), + transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]), +]); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUuYW5pbWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FuaW1hdGlvbnMvc2xpZGUuYW5pbWF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQVMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFDeEYsTUFBTSxPQUFPLGVBQWUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDeEQsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzVELEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUN4RCxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUMvRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyLCBxdWVyeSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuZXhwb3J0IGNvbnN0IHNsaWRlRnJvbUJvdHRvbSA9IHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7ICdtYXJnaW4tdG9wJzogJzIwcHgnLCBvcGFjaXR5OiAnMCcgfSkpLFxuICBzdGF0ZSgnKicsIHN0eWxlKHsgJ21hcmdpbi10b3AnOiAnMHB4Jywgb3BhY2l0eTogJzEnIH0pKSxcbiAgdHJhbnNpdGlvbignOmVudGVyJywgW2FuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6ICcxJywgJ21hcmdpbi10b3AnOiAnMHB4JyB9KSldKSxcbl0pO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/breadcrumb/breadcrumb.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/breadcrumb/breadcrumb.component.js new file mode 100644 index 0000000000..e77afe6a39 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/breadcrumb/breadcrumb.component.js @@ -0,0 +1,95 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; +import { Store } from '@ngxs/store'; +import { ConfigState } from '@abp/ng.core'; +export class BreadcrumbComponent { + /** + * @param {?} router + * @param {?} store + */ + constructor(router, store) { + this.router = router; + this.store = store; + this.segments = []; + this.show = !!this.store.selectSnapshot((/** + * @param {?} state + * @return {?} + */ + state => state.LeptonLayoutState)); + } + /** + * @return {?} + */ + ngOnInit() { + /** @type {?} */ + const splittedUrl = this.router.url.split('/').filter((/** + * @param {?} chunk + * @return {?} + */ + chunk => chunk)); + /** @type {?} */ + const currentUrl = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0])); + this.segments.push(currentUrl.name); + if (splittedUrl.length > 1) { + const [, ...arr] = splittedUrl; + /** @type {?} */ + let childRoute = currentUrl; + for (let i = 0; i < arr.length; i++) { + /** @type {?} */ + const element = arr[i]; + childRoute = childRoute.children.find((/** + * @param {?} child + * @return {?} + */ + child => child.path === element)); + this.segments.push(childRoute.name); + } + } + } +} +BreadcrumbComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-breadcrumb', + template: ` + + ` + }] } +]; +/** @nocollapse */ +BreadcrumbComponent.ctorParameters = () => [ + { type: Router }, + { type: Store } +]; +if (false) { + /** @type {?} */ + BreadcrumbComponent.prototype.show; + /** @type {?} */ + BreadcrumbComponent.prototype.segments; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.router; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLFdBQVcsRUFBTyxNQUFNLGNBQWMsQ0FBQztBQW9CaEQsTUFBTSxPQUFPLG1CQUFtQjs7Ozs7SUFLOUIsWUFBb0IsTUFBYyxFQUFVLEtBQVk7UUFBcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFGeEQsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUd0QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWM7Ozs7UUFBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBQyxDQUFDO0lBQzVFLENBQUM7Ozs7SUFFRCxRQUFROztjQUNBLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTTs7OztRQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDOztjQUUvRCxVQUFVLEdBQWtCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBDLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7a0JBQ3BCLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxHQUFHLFdBQVc7O2dCQUUxQixVQUFVLEdBQWtCLFVBQVU7WUFDMUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7O3NCQUM3QixPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDdEIsVUFBVSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSTs7OztnQkFBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFDLENBQUM7Z0JBRXZFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyQztTQUNGO0lBQ0gsQ0FBQzs7O1lBNUNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7O0dBY1Q7YUFDRjs7OztZQXJCUSxNQUFNO1lBQ04sS0FBSzs7OztJQXNCWixtQ0FBYzs7SUFFZCx1Q0FBd0I7Ozs7O0lBRVoscUNBQXNCOzs7OztJQUFFLG9DQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBDb25maWdTdGF0ZSwgQUJQIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWJyZWFkY3J1bWInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxvbCAqbmdJZj1cInNob3dcIiBjbGFzcz1cImJyZWFkY3J1bWJcIj5cbiAgICAgIDxsaSBjbGFzcz1cImJyZWFkY3J1bWItaXRlbVwiPlxuICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL1wiPjxpIGNsYXNzPVwiZmEgZmEtaG9tZVwiPjwvaT4gPC9hPlxuICAgICAgPC9saT5cbiAgICAgIDxsaVxuICAgICAgICAqbmdGb3I9XCJsZXQgc2VnbWVudCBvZiBzZWdtZW50czsgbGV0IGxhc3QgPSBsYXN0XCJcbiAgICAgICAgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIlxuICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImxhc3RcIlxuICAgICAgICBhcmlhLWN1cnJlbnQ9XCJwYWdlXCJcbiAgICAgID5cbiAgICAgICAge3sgc2VnbWVudCB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgPC9saT5cbiAgICA8L29sPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgc2hvdzogYm9vbGVhbjtcblxuICBzZWdtZW50czogc3RyaW5nW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIHRoaXMuc2hvdyA9ICEhdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChzdGF0ZSA9PiBzdGF0ZS5MZXB0b25MYXlvdXRTdGF0ZSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBzcGxpdHRlZFVybCA9IHRoaXMucm91dGVyLnVybC5zcGxpdCgnLycpLmZpbHRlcihjaHVuayA9PiBjaHVuayk7XG5cbiAgICBjb25zdCBjdXJyZW50VXJsOiBBQlAuRnVsbFJvdXRlID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChDb25maWdTdGF0ZS5nZXRSb3V0ZShzcGxpdHRlZFVybFswXSkpO1xuICAgIHRoaXMuc2VnbWVudHMucHVzaChjdXJyZW50VXJsLm5hbWUpO1xuXG4gICAgaWYgKHNwbGl0dGVkVXJsLmxlbmd0aCA+IDEpIHtcbiAgICAgIGNvbnN0IFssIC4uLmFycl0gPSBzcGxpdHRlZFVybDtcblxuICAgICAgbGV0IGNoaWxkUm91dGU6IEFCUC5GdWxsUm91dGUgPSBjdXJyZW50VXJsO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IGFycltpXTtcbiAgICAgICAgY2hpbGRSb3V0ZSA9IGNoaWxkUm91dGUuY2hpbGRyZW4uZmluZChjaGlsZCA9PiBjaGlsZC5wYXRoID09PSBlbGVtZW50KTtcblxuICAgICAgICB0aGlzLnNlZ21lbnRzLnB1c2goY2hpbGRSb3V0ZS5uYW1lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/button/button.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/button/button.component.js new file mode 100644 index 0000000000..e9055e40cd --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/button/button.component.js @@ -0,0 +1,49 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component, Input } from '@angular/core'; +export class ButtonComponent { + constructor() { + this.buttonClass = 'btn btn-primary'; + this.type = 'button'; + this.loading = false; + this.disabled = false; + } + /** + * @return {?} + */ + get icon() { + return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`; + } +} +ButtonComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-button', + template: ` + + ` + }] } +]; +ButtonComponent.propDecorators = { + buttonClass: [{ type: Input }], + type: [{ type: Input }], + iconClass: [{ type: Input }], + loading: [{ type: Input }], + disabled: [{ type: Input }] +}; +if (false) { + /** @type {?} */ + ButtonComponent.prototype.buttonClass; + /** @type {?} */ + ButtonComponent.prototype.type; + /** @type {?} */ + ButtonComponent.prototype.iconClass; + /** @type {?} */ + ButtonComponent.prototype.loading; + /** @type {?} */ + ButtonComponent.prototype.disabled; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBVWpELE1BQU0sT0FBTyxlQUFlO0lBUjVCO1FBVUUsZ0JBQVcsR0FBVyxpQkFBaUIsQ0FBQztRQUd4QyxTQUFJLEdBQVcsUUFBUSxDQUFDO1FBTXhCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFHekIsYUFBUSxHQUFZLEtBQUssQ0FBQztJQUs1QixDQUFDOzs7O0lBSEMsSUFBSSxJQUFJO1FBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBQ2xGLENBQUM7OztZQTFCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFFBQVEsRUFBRTs7OztHQUlUO2FBQ0Y7OzswQkFFRSxLQUFLO21CQUdMLEtBQUs7d0JBR0wsS0FBSztzQkFHTCxLQUFLO3VCQUdMLEtBQUs7Ozs7SUFaTixzQ0FDd0M7O0lBRXhDLCtCQUN3Qjs7SUFFeEIsb0NBQ2tCOztJQUVsQixrQ0FDeUI7O0lBRXpCLG1DQUMwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWJ1dHRvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGJ1dHRvbiBbYXR0ci50eXBlXT1cInR5cGVcIiBbbmdDbGFzc109XCJidXR0b25DbGFzc1wiIFtkaXNhYmxlZF09XCJsb2FkaW5nIHx8IGRpc2FibGVkXCI+XG4gICAgICA8aSBbbmdDbGFzc109XCJpY29uXCIgY2xhc3M9XCJtci0xXCI+PC9pPjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2J1dHRvbj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgYnV0dG9uQ2xhc3M6IHN0cmluZyA9ICdidG4gYnRuLXByaW1hcnknO1xuXG4gIEBJbnB1dCgpXG4gIHR5cGU6IHN0cmluZyA9ICdidXR0b24nO1xuXG4gIEBJbnB1dCgpXG4gIGljb25DbGFzczogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldCBpY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMubG9hZGluZyA/ICdmYSBmYS1zcGluIGZhLXNwaW5uZXInIDogdGhpcy5pY29uQ2xhc3MgfHwgJ2Qtbm9uZSd9YDtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/change-password/change-password.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/change-password/change-password.component.js new file mode 100644 index 0000000000..3a7eb6552d --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/change-password/change-password.component.js @@ -0,0 +1,161 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { ChangePassword } from '@abp/ng.core'; +import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild, } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { comparePasswords } from '@ngx-validate/core'; +import { Store } from '@ngxs/store'; +import snq from 'snq'; +import { finalize } from 'rxjs/operators'; +import { ToasterService } from '../../services/toaster.service'; +const { minLength, required } = Validators; +export class ChangePasswordComponent { + /** + * @param {?} fb + * @param {?} store + * @param {?} toasterService + */ + constructor(fb, store, toasterService) { + this.fb = fb; + this.store = store; + this.toasterService = toasterService; + this.visibleChange = new EventEmitter(); + this.modalBusy = false; + } + /** + * @return {?} + */ + get visible() { + return this._visible; + } + /** + * @param {?} value + * @return {?} + */ + set visible(value) { + this._visible = value; + this.visibleChange.emit(value); + } + /** + * @return {?} + */ + ngOnInit() { + this.form = this.fb.group({ + password: ['', required], + newPassword: ['', required], + repeatNewPassword: ['', required], + }, { + validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], + }); + } + /** + * @return {?} + */ + onSubmit() { + if (this.form.invalid) + return; + this.modalBusy = true; + this.store + .dispatch(new ChangePassword({ + currentPassword: this.form.get('password').value, + newPassword: this.form.get('newPassword').value, + })) + .pipe(finalize((/** + * @return {?} + */ + () => { + this.modalBusy = false; + }))) + .subscribe({ + next: (/** + * @return {?} + */ + () => { + this.visible = false; + this.form.reset(); + }), + error: (/** + * @param {?} err + * @return {?} + */ + err => { + this.toasterService.error(snq((/** + * @return {?} + */ + () => err.error.error.message), 'AbpAccount::DefaultErrorMessage'), 'Error', { + life: 7000, + }); + }), + }); + } + /** + * @return {?} + */ + openModal() { + this.visible = true; + } + /** + * @param {?} __0 + * @return {?} + */ + ngOnChanges({ visible }) { + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + } +} +ChangePasswordComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-change-password', + template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } +]; +/** @nocollapse */ +ChangePasswordComponent.ctorParameters = () => [ + { type: FormBuilder }, + { type: Store }, + { type: ToasterService } +]; +ChangePasswordComponent.propDecorators = { + visible: [{ type: Input }], + visibleChange: [{ type: Output }], + modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] +}; +if (false) { + /** + * @type {?} + * @protected + */ + ChangePasswordComponent.prototype._visible; + /** @type {?} */ + ChangePasswordComponent.prototype.visibleChange; + /** @type {?} */ + ChangePasswordComponent.prototype.modalContent; + /** @type {?} */ + ChangePasswordComponent.prototype.form; + /** @type {?} */ + ChangePasswordComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.store; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.toasterService; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztNQUUxRCxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsR0FBRyxVQUFVO0FBTTFDLE1BQU0sT0FBTyx1QkFBdUI7Ozs7OztJQXVCbEMsWUFBb0IsRUFBZSxFQUFVLEtBQVksRUFBVSxjQUE4QjtRQUE3RSxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQVRqRyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFPNUMsY0FBUyxHQUFZLEtBQUssQ0FBQztJQUV5RSxDQUFDOzs7O0lBcEJyRyxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FB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Q29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VQYXNzd29yZCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvbXBhcmVQYXNzd29yZHMgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlJztcblxuY29uc3QgeyBtaW5MZW5ndGgsIHJlcXVpcmVkIH0gPSBWYWxpZGF0b3JzO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY2hhbmdlLXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcm90ZWN0ZWQgX3Zpc2libGU7XG5cbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cblxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAVmlld0NoaWxkKCdtb2RhbENvbnRlbnQnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgbW9kYWxDb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGZvcm06IEZvcm1Hcm91cDtcblxuICBtb2RhbEJ1c3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoXG4gICAgICB7XG4gICAgICAgIHBhc3N3b3JkOiBbJycsIHJlcXVpcmVkXSxcbiAgICAgICAgbmV3UGFzc3dvcmQ6IFsnJywgcmVxdWlyZWRdLFxuICAgICAgICByZXBlYXROZXdQYXNzd29yZDogWycnLCByZXF1aXJlZF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB2YWxpZGF0b3JzOiBbY29tcGFyZVBhc3N3b3JkcyhbJ25ld1Bhc3N3b3JkJywgJ3JlcGVhdE5ld1Bhc3N3b3JkJ10pXSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcblxuICAgIHRoaXMuc3RvcmVcbiAgICAgIC5kaXNwYXRjaChcbiAgICAgICAgbmV3IENoYW5nZVBhc3N3b3JkKHtcbiAgICAgICAgICBjdXJyZW50UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ3Bhc3N3b3JkJykudmFsdWUsXG4gICAgICAgICAgbmV3UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ25ld1Bhc3N3b3JkJykudmFsdWUsXG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICB0aGlzLm1vZGFsQnVzeSA9IGZhbHNlO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5mb3JtLnJlc2V0KCk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBlcnIgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3Ioc25xKCgpID0+IGVyci5lcnJvci5lcnJvci5tZXNzYWdlLCAnQWJwQWNjb3VudDo6RGVmYXVsdEVycm9yTWVzc2FnZScpLCAnRXJyb3InLCB7XG4gICAgICAgICAgICBsaWZlOiA3MDAwLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy52aXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgdmlzaWJsZSB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCF2aXNpYmxlKSByZXR1cm47XG5cbiAgICBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UgJiYgdGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js index 2224d732e7..1fc497334a 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js @@ -48,7 +48,13 @@ ConfirmationComponent.decorators = [ - @@ -74,4 +80,4 @@ if (false) { */ ConfirmationComponent.prototype.confirmationService; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFvQzFFLE1BQU0sT0FBTyxxQkFBcUI7Ozs7SUFLaEMsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFKNUQsWUFBTywyQkFBMEI7UUFDakMsV0FBTSx5QkFBeUI7UUFDL0IsWUFBTywyQkFBMEI7SUFFOEIsQ0FBQzs7Ozs7SUFFaEUsS0FBSyxDQUFDLE1BQXNCO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQzs7O1lBMUNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkJUO2FBQ0Y7Ozs7WUFuQ1EsbUJBQW1COzs7O0lBcUMxQix3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cIlwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2Uuc3VtbWFyeVwiIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShyZWplY3QpXCI+XG4gICAgICAgICAgICB7eyBtZXNzYWdlLmNhbmNlbENvcHkgfHwgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVZZXNCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShjb25maXJtKVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgbWVzc2FnZS55ZXNDb3B5IHx8ICdBYnBJZGVudGl0eTo6WWVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcbiAgY29uZmlybSA9IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm07XG4gIHJlamVjdCA9IFRvYXN0ZXIuU3RhdHVzLnJlamVjdDtcbiAgZGlzbWlzcyA9IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3M7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGNsb3NlKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xlYXIoc3RhdHVzKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUEwQzFFLE1BQU0sT0FBTyxxQkFBcUI7Ozs7SUFLaEMsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFKNUQsWUFBTywyQkFBMEI7UUFDakMsV0FBTSx5QkFBeUI7UUFDL0IsWUFBTywyQkFBMEI7SUFFOEIsQ0FBQzs7Ozs7SUFFaEUsS0FBSyxDQUFDLE1BQXNCO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQzs7O1lBaERGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUNUO2FBQ0Y7Ozs7WUF6Q1EsbUJBQW1COzs7O0lBMkMxQix3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cIlwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2Uuc3VtbWFyeVwiIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShyZWplY3QpXCI+XG4gICAgICAgICAgICB7eyBtZXNzYWdlLmNhbmNlbENvcHkgfHwgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhbWVzc2FnZS5oaWRlWWVzQnRuXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoY29uZmlybSlcIlxuICAgICAgICAgICAgYXV0b2ZvY3VzXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+e3sgbWVzc2FnZS55ZXNDb3B5IHx8ICdBYnBJZGVudGl0eTo6WWVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcbiAgY29uZmlybSA9IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm07XG4gIHJlamVjdCA9IFRvYXN0ZXIuU3RhdHVzLnJlamVjdDtcbiAgZGlzbWlzcyA9IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3M7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGNsb3NlKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xlYXIoc3RhdHVzKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/error.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/error.component.js index 53d41c0ad3..c05c44244a 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/error.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/error.component.js @@ -27,14 +27,14 @@ ErrorComponent.decorators = [

    - {{ title }} + {{ title | abpLocalization }}

    - {{ details }} + {{ details | abpLocalization }}
    @@ -57,4 +57,4 @@ if (false) { /** @type {?} */ ErrorComponent.prototype.host; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lcnJvcnMvZXJyb3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQThCakUsTUFBTSxPQUFPLGNBQWM7SUE1QjNCO1FBNkJFLFVBQUssR0FBRyxPQUFPLENBQUM7UUFFaEIsWUFBTyxHQUFHLDhCQUE4QixDQUFDO0lBVzNDLENBQUM7Ozs7SUFIQyxPQUFPO1FBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7OztZQXpDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7O2FBRUY7Ozs7SUFFQywrQkFBZ0I7O0lBRWhCLGlDQUF5Qzs7SUFFekMsa0NBQW9COztJQUVwQixvQ0FBdUI7O0lBRXZCLDhCQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBSZW5kZXJlcjIsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWVycm9yJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgIDxidXR0b24gaWQ9XCJhYnAtY2xvc2UtYnV0dG9uIG1yLTJcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZVwiIChjbGljayk9XCJkZXN0cm95KClcIj5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBjZW50ZXJlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLXRlbXBsYXRlXCI+XG4gICAgICAgICAgICA8aDE+XG4gICAgICAgICAgICAgIHt7IHRpdGxlIH19XG4gICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWRldGFpbHNcIj5cbiAgICAgICAgICAgICAge3sgZGV0YWlscyB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3ItYWN0aW9uc1wiPlxuICAgICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL1wiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1tZCBtdC0yXCJcbiAgICAgICAgICAgICAgICA+PHNwYW4gY2xhc3M9XCJnbHlwaGljb24gZ2x5cGhpY29uLWhvbWVcIj48L3NwYW4+IFRha2UgbWUgaG9tZVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJ2Vycm9yLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQ29tcG9uZW50IHtcbiAgdGl0bGUgPSAnT29wcyEnO1xuXG4gIGRldGFpbHMgPSAnU29ycnksIGFuIGVycm9yIGhhcyBvY2N1cmVkLic7XG5cbiAgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuXG4gIGhvc3Q6IGFueTtcblxuICBkZXN0cm95KCkge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5ob3N0LCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lcnJvcnMvZXJyb3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQThCakUsTUFBTSxPQUFPLGNBQWM7SUE1QjNCO1FBNkJFLFVBQUssR0FBRyxPQUFPLENBQUM7UUFFaEIsWUFBTyxHQUFHLDhCQUE4QixDQUFDO0lBVzNDLENBQUM7Ozs7SUFIQyxPQUFPO1FBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7OztZQXpDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7O2FBRUY7Ozs7SUFFQywrQkFBZ0I7O0lBRWhCLGlDQUF5Qzs7SUFFekMsa0NBQW9COztJQUVwQixvQ0FBdUI7O0lBRXZCLDhCQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBSZW5kZXJlcjIsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWVycm9yJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgIDxidXR0b24gaWQ9XCJhYnAtY2xvc2UtYnV0dG9uIG1yLTJcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJjbG9zZVwiIChjbGljayk9XCJkZXN0cm95KClcIj5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBjZW50ZXJlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLXRlbXBsYXRlXCI+XG4gICAgICAgICAgICA8aDE+XG4gICAgICAgICAgICAgIHt7IHRpdGxlIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWRldGFpbHNcIj5cbiAgICAgICAgICAgICAge3sgZGV0YWlscyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3ItYWN0aW9uc1wiPlxuICAgICAgICAgICAgICA8YSAoY2xpY2spPVwiZGVzdHJveSgpXCIgcm91dGVyTGluaz1cIi9cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tbWQgbXQtMlwiXG4gICAgICAgICAgICAgICAgPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1ob21lXCI+PC9zcGFuPiB7eyAnOjpNZW51OkhvbWUnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnZXJyb3IuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRXJyb3JDb21wb25lbnQge1xuICB0aXRsZSA9ICdPb3BzISc7XG5cbiAgZGV0YWlscyA9ICdTb3JyeSwgYW4gZXJyb3IgaGFzIG9jY3VyZWQuJztcblxuICByZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG5cbiAgaG9zdDogYW55O1xuXG4gIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmhvc3QsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/validation-error.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/validation-error.component.js new file mode 100644 index 0000000000..56eef48009 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/errors/validation-error.component.js @@ -0,0 +1,42 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core'; +import { ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core'; +export class ValidationErrorComponent extends ErrorComponent { + /** + * @return {?} + */ + get abpErrors() { + if (!this.errors || !this.errors.length) + return []; + return this.errors.map((/** + * @param {?} error + * @return {?} + */ + error => { + if (!error.message) + return error; + /** @type {?} */ + const index = error.message.indexOf('['); + if (index > -1) { + return Object.assign({}, error, { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') }); + } + return error; + })); + } +} +ValidationErrorComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-validation-error', + template: ` +
    + {{ error.message | abpLocalization: error.interpoliteParams }} +
    + `, + changeDetection: ChangeDetectionStrategy.OnPush, + encapsulation: ViewEncapsulation.None + }] } +]; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1lcnJvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQWMsd0JBQXdCLElBQUksY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFZNUYsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGNBQWM7Ozs7SUFDMUQsSUFBSSxTQUFTO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUVuRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRzs7OztRQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTztnQkFBRSxPQUFPLEtBQUssQ0FBQzs7a0JBRTNCLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFFeEMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2QseUJBQ0ssS0FBSyxJQUNSLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQ3RDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUN0RjthQUNIO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQTdCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsUUFBUSxFQUFFOzs7O0dBSVQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRpb24sIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCBhcyBFcnJvckNvbXBvbmVudCB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC12YWxpZGF0aW9uLWVycm9yJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0Zvcj1cImxldCBlcnJvciBvZiBhYnBFcnJvcnM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAge3sgZXJyb3IubWVzc2FnZSB8IGFicExvY2FsaXphdGlvbjogZXJyb3IuaW50ZXJwb2xpdGVQYXJhbXMgfX1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCBleHRlbmRzIEVycm9yQ29tcG9uZW50IHtcbiAgZ2V0IGFicEVycm9ycygpOiBWYWxpZGF0aW9uLkVycm9yW10gJiB7IGludGVycG9saXRlUGFyYW1zPzogc3RyaW5nW10gfSB7XG4gICAgaWYgKCF0aGlzLmVycm9ycyB8fCAhdGhpcy5lcnJvcnMubGVuZ3RoKSByZXR1cm4gW107XG5cbiAgICByZXR1cm4gdGhpcy5lcnJvcnMubWFwKGVycm9yID0+IHtcbiAgICAgIGlmICghZXJyb3IubWVzc2FnZSkgcmV0dXJuIGVycm9yO1xuXG4gICAgICBjb25zdCBpbmRleCA9IGVycm9yLm1lc3NhZ2UuaW5kZXhPZignWycpO1xuXG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmVycm9yLFxuICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2Uuc2xpY2UoMCwgaW5kZXgpLFxuICAgICAgICAgIGludGVycG9saXRlUGFyYW1zOiBlcnJvci5tZXNzYWdlLnNsaWNlKGluZGV4ICsgMSwgZXJyb3IubWVzc2FnZS5sZW5ndGggLSAxKS5zcGxpdCgnLCcpLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZXJyb3I7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/index.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/index.js index c5ead0704c..056a0009d9 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/index.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/index.js @@ -2,7 +2,12 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +export { ButtonComponent } from './button/button.component'; +export { BreadcrumbComponent } from './breadcrumb/breadcrumb.component'; +export { ChangePasswordComponent } from './change-password/change-password.component'; export { ConfirmationComponent } from './confirmation/confirmation.component'; -export { ToastComponent } from './toast/toast.component'; +export { LoaderBarComponent } from './loader-bar/loader-bar.component'; export { ModalComponent } from './modal/modal.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuIl19 \ No newline at end of file +export { ProfileComponent } from './profile/profile.component'; +export { ToastComponent } from './toast/toast.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxnQ0FBYywyQkFBMkIsQ0FBQztBQUMxQyxvQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCx3Q0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxtQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QyxpQ0FBYyw2QkFBNkIsQ0FBQztBQUM1QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maXJtYXRpb24vY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/loader-bar/loader-bar.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/loader-bar/loader-bar.component.js index 5e997731b1..2f6a467602 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/loader-bar/loader-bar.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/loader-bar/loader-bar.component.js @@ -2,12 +2,12 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +import { StartLoader, StopLoader } from '@abp/ng.core'; import { Component, Input } from '@angular/core'; +import { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router'; +import { takeUntilDestroy } from '@ngx-validate/core'; import { Actions, ofActionSuccessful } from '@ngxs/store'; -import { LoaderStart, LoaderStop } from '@abp/ng.core'; import { filter } from 'rxjs/operators'; -import { Router, NavigationStart, NavigationEnd } from '@angular/router'; -import { takeUntilDestroy } from '@ngx-validate/core'; export class LoaderBarComponent { /** * @param {?} actions @@ -26,13 +26,13 @@ export class LoaderBarComponent { (action) => action.payload.url.indexOf('openid-configuration') < 0); this.progressLevel = 0; actions - .pipe(ofActionSuccessful(LoaderStart, LoaderStop), filter(this.filter), takeUntilDestroy(this)) + .pipe(ofActionSuccessful(StartLoader, StopLoader), filter(this.filter), takeUntilDestroy(this)) .subscribe((/** * @param {?} action * @return {?} */ action => { - if (action instanceof LoaderStart) + if (action instanceof StartLoader) this.startLoading(); else this.stopLoading(); @@ -42,7 +42,7 @@ export class LoaderBarComponent { * @param {?} event * @return {?} */ - event => event instanceof NavigationStart || event instanceof NavigationEnd)), takeUntilDestroy(this)) + event => event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError)), takeUntilDestroy(this)) .subscribe((/** * @param {?} event * @return {?} @@ -144,4 +144,4 @@ if (false) { */ LoaderBarComponent.prototype.router; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBV3RELE1BQU0sT0FBTyxrQkFBa0I7Ozs7O0lBaUI3QixZQUFvQixPQUFnQixFQUFVLE1BQWM7UUFBeEMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFmNUQsbUJBQWMsR0FBVyxnQkFBZ0IsQ0FBQztRQUcxQyxrQkFBYSxHQUFXLGNBQWMsQ0FBQztRQUd2QyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRzNCLFdBQU07Ozs7UUFBRyxDQUFDLE1BQWdDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsRUFBQztRQUV0RyxrQkFBYSxHQUFXLENBQUMsQ0FBQztRQUt4QixPQUFPO2FBQ0osSUFBSSxDQUNILGtCQUFrQixDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFDM0MsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDbkIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQ3ZCO2FBQ0EsU0FBUzs7OztRQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2xCLElBQUksTUFBTSxZQUFZLFdBQVc7Z0JBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDOztnQkFDbEQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFCLENBQUMsRUFBQyxDQUFDO1FBRUwsTUFBTSxDQUFDLE1BQU07YUFDVixJQUFJLENBQ0gsTUFBTTs7OztRQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxZQUFZLGVBQWUsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFDLEVBQ25GLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixJQUFJLEtBQUssWUFBWSxlQUFlO2dCQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ3JELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxXQUFXLEtBQUksQ0FBQzs7OztJQUVoQixZQUFZO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7O2NBQ2hCLFFBQVEsR0FBRyxXQUFXOzs7UUFBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDO2FBQzFDO2lCQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLElBQUksR0FBRyxDQUFDO2FBQzNCO2lCQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxhQUFhLElBQUksR0FBRyxDQUFDO2FBQzNCO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN6QjtRQUNILENBQUMsR0FBRSxHQUFHLENBQUM7UUFFUCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDOzs7O0lBRUQsV0FBVztRQUNULGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsVUFBVTs7O1FBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDekIsQ0FBQyxHQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQzs7O1lBNUVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7R0FJVDs7YUFFRjs7OztZQWRRLE9BQU87WUFHUCxNQUFNOzs7NkJBYVosS0FBSzs0QkFHTCxLQUFLO3dCQUdMLEtBQUs7cUJBR0wsS0FBSzs7OztJQVROLDRDQUMwQzs7SUFFMUMsMkNBQ3VDOztJQUV2Qyx1Q0FDMkI7O0lBRTNCLG9DQUNzRzs7SUFFdEcsMkNBQTBCOztJQUUxQixzQ0FBYzs7Ozs7SUFFRixxQ0FBd0I7Ozs7O0lBQUUsb0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIG9mQWN0aW9uU3VjY2Vzc2Z1bCB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IExvYWRlclN0YXJ0LCBMb2FkZXJTdG9wIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJvdXRlciwgTmF2aWdhdGlvblN0YXJ0LCBOYXZpZ2F0aW9uRW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3kgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbG9hZGVyLWJhcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBpZD1cImFicC1sb2FkZXItYmFyXCIgW25nQ2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIiBbY2xhc3MuaXMtbG9hZGluZ109XCJpc0xvYWRpbmdcIj5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwicHJvZ3Jlc3NDbGFzc1wiIFtzdHlsZS53aWR0aC52d109XCJwcm9ncmVzc0xldmVsXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2xvYWRlci1iYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGVyQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgY29udGFpbmVyQ2xhc3M6IHN0cmluZyA9ICdhYnAtbG9hZGVyLWJhcic7XG5cbiAgQElucHV0KClcbiAgcHJvZ3Jlc3NDbGFzczogc3RyaW5nID0gJ2FicC1wcm9ncmVzcyc7XG5cbiAgQElucHV0KClcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZmlsdGVyID0gKGFjdGlvbjogTG9hZGVyU3RhcnQgfCBMb2FkZXJTdG9wKSA9PiBhY3Rpb24ucGF5bG9hZC51cmwuaW5kZXhPZignb3BlbmlkLWNvbmZpZ3VyYXRpb24nKSA8IDA7XG5cbiAgcHJvZ3Jlc3NMZXZlbDogbnVtYmVyID0gMDtcblxuICBpbnRlcnZhbDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uczogQWN0aW9ucywgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xuICAgIGFjdGlvbnNcbiAgICAgIC5waXBlKFxuICAgICAgICBvZkFjdGlvblN1Y2Nlc3NmdWwoTG9hZGVyU3RhcnQsIExvYWRlclN0b3ApLFxuICAgICAgICBmaWx0ZXIodGhpcy5maWx0ZXIpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShhY3Rpb24gPT4ge1xuICAgICAgICBpZiAoYWN0aW9uIGluc3RhbmNlb2YgTG9hZGVyU3RhcnQpIHRoaXMuc3RhcnRMb2FkaW5nKCk7XG4gICAgICAgIGVsc2UgdGhpcy5zdG9wTG9hZGluZygpO1xuICAgICAgfSk7XG5cbiAgICByb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0IHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB0aGlzLnN0YXJ0TG9hZGluZygpO1xuICAgICAgICBlbHNlIHRoaXMuc3RvcExvYWRpbmcoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxuXG4gIHN0YXJ0TG9hZGluZygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgNzUpIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IE1hdGgucmFuZG9tKCkgKiAxMDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgOTApIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IDAuNDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgMTAwKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCArPSAwLjE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgIH1cbiAgICB9LCAzMDApO1xuXG4gICAgdGhpcy5pbnRlcnZhbCA9IGludGVydmFsO1xuICB9XG5cbiAgc3RvcExvYWRpbmcoKSB7XG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKTtcbiAgICB0aGlzLnByb2dyZXNzTGV2ZWwgPSAxMDA7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5wcm9ncmVzc0xldmVsID0gMDtcbiAgICB9LCA4MDApO1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVd4QyxNQUFNLE9BQU8sa0JBQWtCOzs7OztJQWlCN0IsWUFBb0IsT0FBZ0IsRUFBVSxNQUFjO1FBQXhDLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBZjVELG1CQUFjLEdBQVcsZ0JBQWdCLENBQUM7UUFHMUMsa0JBQWEsR0FBVyxjQUFjLENBQUM7UUFHdkMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUczQixXQUFNOzs7O1FBQUcsQ0FBQyxNQUFnQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLEVBQUM7UUFFdEcsa0JBQWEsR0FBVyxDQUFDLENBQUM7UUFLeEIsT0FBTzthQUNKLElBQUksQ0FDSCxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ25CLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxNQUFNLENBQUMsRUFBRTtZQUNsQixJQUFJLE1BQU0sWUFBWSxXQUFXO2dCQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ2xELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztRQUVMLE1BQU0sQ0FBQyxNQUFNO2FBQ1YsSUFBSSxDQUNILE1BQU07Ozs7UUFDSixLQUFLLENBQUMsRUFBRSxDQUNOLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGFBQWEsSUFBSSxLQUFLLFlBQVksZUFBZSxFQUN6RyxFQUNELGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixJQUFJLEtBQUssWUFBWSxlQUFlO2dCQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ3JELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxXQUFXLEtBQUksQ0FBQzs7OztJQUVoQixZQUFZO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7O2NBQ2hCLFFBQVEsR0FBRyxXQUFXOzs7UUFBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDO2FBQzFDO2lCQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLElBQUksR0FBRyxDQUFDO2FBQzNCO2lCQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxhQUFhLElBQUksR0FBRyxDQUFDO2FBQzNCO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN6QjtRQUNILENBQUMsR0FBRSxHQUFHLENBQUM7UUFFUCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDOzs7O0lBRUQsV0FBVztRQUNULGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsVUFBVTs7O1FBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDekIsQ0FBQyxHQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQzs7O1lBL0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7R0FJVDs7YUFFRjs7OztZQVhRLE9BQU87WUFGeUIsTUFBTTs7OzZCQWU1QyxLQUFLOzRCQUdMLEtBQUs7d0JBR0wsS0FBSztxQkFHTCxLQUFLOzs7O0lBVE4sNENBQzBDOztJQUUxQywyQ0FDdUM7O0lBRXZDLHVDQUMyQjs7SUFFM0Isb0NBQ3NHOztJQUV0RywyQ0FBMEI7O0lBRTFCLHNDQUFjOzs7OztJQUVGLHFDQUF3Qjs7Ozs7SUFBRSxvQ0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGFydExvYWRlciwgU3RvcExvYWRlciB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIE5hdmlnYXRpb25TdGFydCwgUm91dGVyLCBOYXZpZ2F0aW9uRXJyb3IgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZkFjdGlvblN1Y2Nlc3NmdWwgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sb2FkZXItYmFyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGlkPVwiYWJwLWxvYWRlci1iYXJcIiBbbmdDbGFzc109XCJjb250YWluZXJDbGFzc1wiIFtjbGFzcy5pcy1sb2FkaW5nXT1cImlzTG9hZGluZ1wiPlxuICAgICAgPGRpdiBbbmdDbGFzc109XCJwcm9ncmVzc0NsYXNzXCIgW3N0eWxlLndpZHRoLnZ3XT1cInByb2dyZXNzTGV2ZWxcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGVyLWJhci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBMb2FkZXJCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBjb250YWluZXJDbGFzczogc3RyaW5nID0gJ2FicC1sb2FkZXItYmFyJztcblxuICBASW5wdXQoKVxuICBwcm9ncmVzc0NsYXNzOiBzdHJpbmcgPSAnYWJwLXByb2dyZXNzJztcblxuICBASW5wdXQoKVxuICBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBmaWx0ZXIgPSAoYWN0aW9uOiBTdGFydExvYWRlciB8IFN0b3BMb2FkZXIpID0+IGFjdGlvbi5wYXlsb2FkLnVybC5pbmRleE9mKCdvcGVuaWQtY29uZmlndXJhdGlvbicpIDwgMDtcblxuICBwcm9ncmVzc0xldmVsOiBudW1iZXIgPSAwO1xuXG4gIGludGVydmFsOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zOiBBY3Rpb25zLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgYWN0aW9uc1xuICAgICAgLnBpcGUoXG4gICAgICAgIG9mQWN0aW9uU3VjY2Vzc2Z1bChTdGFydExvYWRlciwgU3RvcExvYWRlciksXG4gICAgICAgIGZpbHRlcih0aGlzLmZpbHRlciksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGFjdGlvbiA9PiB7XG4gICAgICAgIGlmIChhY3Rpb24gaW5zdGFuY2VvZiBTdGFydExvYWRlcikgdGhpcy5zdGFydExvYWRpbmcoKTtcbiAgICAgICAgZWxzZSB0aGlzLnN0b3BMb2FkaW5nKCk7XG4gICAgICB9KTtcblxuICAgIHJvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgZXZlbnQgPT5cbiAgICAgICAgICAgIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0IHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fCBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FcnJvcixcbiAgICAgICAgKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveSh0aGlzKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHRoaXMuc3RhcnRMb2FkaW5nKCk7XG4gICAgICAgIGVsc2UgdGhpcy5zdG9wTG9hZGluZygpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG5cbiAgc3RhcnRMb2FkaW5nKCkge1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA3NSkge1xuICAgICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gTWF0aC5yYW5kb20oKSAqIDEwO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCA5MCkge1xuICAgICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMC40O1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnByb2dyZXNzTGV2ZWwgPCAxMDApIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IDAuMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICAgICAgfVxuICAgIH0sIDMwMCk7XG5cbiAgICB0aGlzLmludGVydmFsID0gaW50ZXJ2YWw7XG4gIH1cblxuICBzdG9wTG9hZGluZygpIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWwpO1xuICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCA9IDEwMDtcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgPSAwO1xuICAgIH0sIDgwMCk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/modal/modal.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/modal/modal.component.js index 15e1a94f42..a36b653afa 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/modal/modal.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/modal/modal.component.js @@ -2,10 +2,13 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -import { Component, ContentChild, ElementRef, EventEmitter, Input, Output, Renderer2, TemplateRef, ViewChild, } from '@angular/core'; +import { Component, ContentChild, ElementRef, EventEmitter, Input, Output, Renderer2, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; import { fromEvent, Subject, timer } from 'rxjs'; -import { debounceTime, filter, take, takeUntil } from 'rxjs/operators'; +import { filter, take, takeUntil, debounceTime } from 'rxjs/operators'; import { ConfirmationService } from '../../services/confirmation.service'; +import { ButtonComponent } from '../button/button.component'; +/** @type {?} */ +const ANIMATION_TIMEOUT = 200; export class ModalComponent { /** * @param {?} renderer @@ -14,13 +17,16 @@ export class ModalComponent { constructor(renderer, confirmationService) { this.renderer = renderer; this.confirmationService = confirmationService; - this.centered = true; + this.centered = false; this.modalClass = ''; this.size = 'lg'; this.visibleChange = new EventEmitter(); + this.init = new EventEmitter(); this._visible = false; - this.closable = false; + this._busy = false; + this.showModal = false; this.isOpenConfirmation = false; + this.closable = false; this.destroy$ = new Subject(); } /** @@ -34,11 +40,18 @@ export class ModalComponent { * @return {?} */ set visible(value) { + if (typeof value !== 'boolean') + return; if (!this.modalContent) { - setTimeout((/** - * @return {?} - */ - () => (this.visible = value)), 0); + if (value) { + setTimeout((/** + * @return {?} + */ + () => { + this.showModal = value; + this.visible = value; + }), 0); + } return; } if (value) { @@ -53,10 +66,25 @@ export class ModalComponent { */ () => { this.setVisible(value); - this.renderer.removeClass(this.modalContent.nativeElement, 'fade-out-top'); this.ngOnDestroy(); - }), 350); + }), ANIMATION_TIMEOUT - 10); + } + } + /** + * @return {?} + */ + get busy() { + return this._busy; + } + /** + * @param {?} value + * @return {?} + */ + set busy(value) { + if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) { + this.abpSubmit.loading = value; } + this._busy = value; } /** * @return {?} @@ -71,8 +99,9 @@ export class ModalComponent { setVisible(value) { this._visible = value; this.visibleChange.emit(value); + this.showModal = value; value - ? timer(500) + ? timer(ANIMATION_TIMEOUT + 100) .pipe(take(1)) .subscribe((/** * @param {?} _ @@ -85,29 +114,12 @@ export class ModalComponent { * @return {?} */ listen() { - fromEvent(document, 'click') - .pipe(debounceTime(350), takeUntil(this.destroy$), filter((/** - * @param {?} event - * @return {?} - */ - (event) => event && - this.closable && - this.modalContent && - !this.isOpenConfirmation && - !this.modalContent.nativeElement.contains(event.target)))) - .subscribe((/** - * @param {?} _ - * @return {?} - */ - _ => { - this.close(); - })); fromEvent(document, 'keyup') - .pipe(takeUntil(this.destroy$), filter((/** + .pipe(takeUntil(this.destroy$), debounceTime(150), filter((/** * @param {?} key * @return {?} */ - (key) => key && key.code === 'Escape' && this.closable)), debounceTime(350)) + (key) => key && key.code === 'Escape' && this.closable))) .subscribe((/** * @param {?} _ * @return {?} @@ -115,22 +127,30 @@ export class ModalComponent { _ => { this.close(); })); - if (!this.abpClose) - return; - fromEvent(this.abpClose.nativeElement, 'click') - .pipe(takeUntil(this.destroy$), filter((/** - * @return {?} - */ - () => !!(this.closable && this.modalContent))), debounceTime(350)) - .subscribe((/** + setTimeout((/** * @return {?} */ - () => this.close())); + () => { + if (!this.abpClose) + return; + fromEvent(this.abpClose.nativeElement, 'click') + .pipe(takeUntil(this.destroy$), filter((/** + * @return {?} + */ + () => !!(this.closable && this.modalContent)))) + .subscribe((/** + * @return {?} + */ + () => this.close())); + }), 0); + this.init.emit(); } /** * @return {?} */ close() { + if (!this.closable || this.busy) + return; /** @type {?} */ const nodes = getFlatNodes(((/** @type {?} */ (this.modalContent.nativeElement.querySelector('#abp-modal-body')))).childNodes); if (hasNgDirty(nodes)) { @@ -144,7 +164,7 @@ export class ModalComponent { * @return {?} */ (status) => { - timer(400).subscribe((/** + timer(ANIMATION_TIMEOUT).subscribe((/** * @return {?} */ () => { @@ -163,7 +183,7 @@ export class ModalComponent { ModalComponent.decorators = [ { type: Component, args: [{ selector: 'abp-modal', - template: "\n \n
    \n
    \n \n\n \n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n
    \n\n \n\n" + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ @@ -173,15 +193,21 @@ ModalComponent.ctorParameters = () => [ ]; ModalComponent.propDecorators = { visible: [{ type: Input }], + busy: [{ type: Input }], centered: [{ type: Input }], modalClass: [{ type: Input }], size: [{ type: Input }], + height: [{ type: Input }], + minHeight: [{ type: Input }], visibleChange: [{ type: Output }], + init: [{ type: Output }], abpHeader: [{ type: ContentChild, args: ['abpHeader', { static: false },] }], abpBody: [{ type: ContentChild, args: ['abpBody', { static: false },] }], abpFooter: [{ type: ContentChild, args: ['abpFooter', { static: false },] }], abpClose: [{ type: ContentChild, args: ['abpClose', { static: false, read: ElementRef },] }], - modalContent: [{ type: ViewChild, args: ['abpModalContent', { static: false },] }] + abpSubmit: [{ type: ContentChild, args: [ButtonComponent, { static: false, read: ButtonComponent },] }], + modalContent: [{ type: ViewChild, args: ['abpModalContent', { static: false },] }], + abpButtons: [{ type: ViewChildren, args: ['abp-button',] }] }; if (false) { /** @type {?} */ @@ -191,8 +217,14 @@ if (false) { /** @type {?} */ ModalComponent.prototype.size; /** @type {?} */ + ModalComponent.prototype.height; + /** @type {?} */ + ModalComponent.prototype.minHeight; + /** @type {?} */ ModalComponent.prototype.visibleChange; /** @type {?} */ + ModalComponent.prototype.init; + /** @type {?} */ ModalComponent.prototype.abpHeader; /** @type {?} */ ModalComponent.prototype.abpBody; @@ -201,14 +233,22 @@ if (false) { /** @type {?} */ ModalComponent.prototype.abpClose; /** @type {?} */ + ModalComponent.prototype.abpSubmit; + /** @type {?} */ ModalComponent.prototype.modalContent; /** @type {?} */ + ModalComponent.prototype.abpButtons; + /** @type {?} */ ModalComponent.prototype._visible; /** @type {?} */ - ModalComponent.prototype.closable; + ModalComponent.prototype._busy; + /** @type {?} */ + ModalComponent.prototype.showModal; /** @type {?} */ ModalComponent.prototype.isOpenConfirmation; /** @type {?} */ + ModalComponent.prototype.closable; + /** @type {?} */ ModalComponent.prototype.destroy$; /** * @type {?} @@ -231,7 +271,7 @@ function getFlatNodes(nodes) { * @param {?} val * @return {?} */ - (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? Array.from(val.childNodes) : [val])]), []); + (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])]), []); } /** * @param {?} nodes @@ -244,4 +284,4 @@ function hasNgDirty(nodes) { */ node => (node.className || '').indexOf('ng-dirty') > -1)) > -1; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBUzFFLE1BQU0sT0FBTyxjQUFjOzs7OztJQW1EekIsWUFBb0IsUUFBbUIsRUFBVSxtQkFBd0M7UUFBckUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUExQmhGLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFFekIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUV4QixTQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXRCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVl0RCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRXBDLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRTZELENBQUM7Ozs7SUFsRDdGLElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOzs7OztJQUNELElBQUksT0FBTyxD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Q0FBQyxHQUN6RyxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7Ozs7O0FBRUQsU0FBUyxVQUFVLENBQUMsS0FBb0I7SUFDdEMsT0FBTyxLQUFLLENBQUMsU0FBUzs7OztJQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3ZGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9hc3Rlcic7XG5cbmV4cG9ydCB0eXBlIE1vZGFsU2l6ZSA9ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMubW9kYWxDb250ZW50KSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLnZpc2libGUgPSB2YWx1ZSksIDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2FibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgICB0aGlzLm5nT25EZXN0cm95KCk7XG4gICAgICB9LCAzNTApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpIGNlbnRlcmVkOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKSBtb2RhbENsYXNzOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemUgPSAnbGcnO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEhlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBIZWFkZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQm9keScsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBCb2R5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBGb290ZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQ2xvc2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgYWJwQ2xvc2U6IEVsZW1lbnRSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdhYnBNb2RhbENvbnRlbnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgbW9kYWxDb250ZW50OiBFbGVtZW50UmVmO1xuXG4gIF92aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY2xvc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc09wZW5Db25maXJtYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB2YWx1ZVxuICAgICAgPyB0aW1lcig1MDApXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4gKHRoaXMuY2xvc2FibGUgPSB0cnVlKSlcbiAgICAgIDogKHRoaXMuY2xvc2FibGUgPSBmYWxzZSk7XG4gIH1cblxuICBsaXN0ZW4oKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAnY2xpY2snKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSgzNTApLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGZpbHRlcihcbiAgICAgICAgICAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+XG4gICAgICAgICAgICBldmVudCAmJlxuICAgICAgICAgICAgdGhpcy5jbG9zYWJsZSAmJlxuICAgICAgICAgICAgdGhpcy5tb2RhbENvbnRlbnQgJiZcbiAgICAgICAgICAgICF0aGlzLmlzT3BlbkNvbmZpcm1hdGlvbiAmJlxuICAgICAgICAgICAgIXRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoXyA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZmlsdGVyKChrZXk6IEtleWJvYXJkRXZlbnQpID0+IGtleSAmJiBrZXkuY29kZSA9PT0gJ0VzY2FwZScgJiYgdGhpcy5jbG9zYWJsZSksXG4gICAgICAgIGRlYm91bmNlVGltZSgzNTApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBpZiAoIXRoaXMuYWJwQ2xvc2UpIHJldHVybjtcblxuICAgIGZyb21FdmVudCh0aGlzLmFicENsb3NlLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBmaWx0ZXIoKCkgPT4gISEodGhpcy5jbG9zYWJsZSAmJiB0aGlzLm1vZGFsQ29udGVudCkpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMzUwKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGNvbnN0IG5vZGVzID0gZ2V0RmxhdE5vZGVzKFxuICAgICAgKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI2FicC1tb2RhbC1ib2R5JykgYXMgSFRNTEVsZW1lbnQpLmNoaWxkTm9kZXMsXG4gICAgKTtcblxuICAgIGlmIChoYXNOZ0RpcnR5KG5vZGVzKSkge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgICAud2FybignQWJwQWNjb3VudDo6QXJlWW91U3VyZVlvdVdhbnRUb0NhbmNlbEVkaXRpbmdXYXJuaW5nTWVzc2FnZScsICdBYnBBY2NvdW50OjpBcmVZb3VTdXJlJylcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBUb2FzdGVyLlN0YXR1cykgPT4ge1xuICAgICAgICAgIHRpbWVyKDQwMCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gZmFsc2U7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoc3RhdHVzID09PSBUb2FzdGVyLlN0YXR1cy5jb25maXJtKSB7XG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0RmxhdE5vZGVzKG5vZGVzOiBOb2RlTGlzdCk6IEhUTUxFbGVtZW50W10ge1xuICByZXR1cm4gQXJyYXkuZnJvbShub2RlcykucmVkdWNlKFxuICAgIChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4uKHZhbC5jaGlsZE5vZGVzICYmIHZhbC5jaGlsZE5vZGVzLmxlbmd0aCA/IEFycmF5LmZyb20odmFsLmNoaWxkTm9kZXMpIDogW3ZhbF0pXSxcbiAgICBbXSxcbiAgKTtcbn1cblxuZnVuY3Rpb24gaGFzTmdEaXJ0eShub2RlczogSFRNTEVsZW1lbnRbXSkge1xuICByZXR1cm4gbm9kZXMuZmluZEluZGV4KG5vZGUgPT4gKG5vZGUuY2xhc3NOYW1lIHx8ICcnKS5pbmRleE9mKCduZy1kaXJ0eScpID4gLTEpID4gLTE7XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O01BSXZELGlCQUFpQixHQUFHLEdBQUc7QUFNN0IsTUFBTSxPQUFPLGNBQWM7Ozs7O0lBbUZ6QixZQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FB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RSxpQ0FBc0U7O0lBRXRFLG1DQUEwRTs7SUFFMUUsa0NBQXlGOztJQUV6RixtQ0FBb0c7O0lBRXBHLHNDQUEwRTs7SUFFMUUsb0NBQXVDOztJQUV2QyxrQ0FBMEI7O0lBRTFCLCtCQUF1Qjs7SUFFdkIsbUNBQTJCOztJQUUzQiw0Q0FBb0M7O0lBRXBDLGtDQUEwQjs7SUFFMUIsa0NBQStCOzs7OztJQUVuQixrQ0FBMkI7Ozs7O0lBQUUsNkNBQWdEOzs7Ozs7QUFzRTNGLFNBQVMsWUFBWSxDQUFDLEtBQWU7SUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU07Ozs7O0lBQzdCLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQzNHLEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQzs7Ozs7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFvQjtJQUN0QyxPQUFPLEtBQUssQ0FBQyxTQUFTOzs7O0lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlLCB0YWtlVW50aWwsIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9hc3Rlcic7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBNb2RhbFNpemUgPSAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnO1xuXG5jb25zdCBBTklNQVRJT05fVElNRU9VVCA9IDIwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgcmV0dXJuO1xuXG4gICAgaWYgKCF0aGlzLm1vZGFsQ29udGVudCkge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdmFsdWU7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gdmFsdWU7XG4gICAgICAgIH0sIDApO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2FibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubmdPbkRlc3Ryb3koKTtcbiAgICAgIH0sIEFOSU1BVElPTl9USU1FT1VUIC0gMTApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBidXN5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9idXN5O1xuICB9XG4gIHNldCBidXN5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuYWJwU3VibWl0ICYmIHRoaXMuYWJwU3VibWl0IGluc3RhbmNlb2YgQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmFicFN1Ym1pdC5sb2FkaW5nID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5fYnVzeSA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgY2VudGVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBtb2RhbENsYXNzOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemUgPSAnbGcnO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIG1pbkhlaWdodDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEhlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBIZWFkZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQm9keScsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBCb2R5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBGb290ZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQ2xvc2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgYWJwQ2xvc2U6IEVsZW1lbnRSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEJ1dHRvbkNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBCdXR0b25Db21wb25lbnQgfSkgYWJwU3VibWl0OiBCdXR0b25Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZCgnYWJwTW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vZGFsQ29udGVudDogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkcmVuKCdhYnAtYnV0dG9uJykgYWJwQnV0dG9ucztcblxuICBfdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIF9idXN5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgc2hvd01vZGFsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNPcGVuQ29uZmlybWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY2xvc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuXG4gICAgdmFsdWVcbiAgICAgID8gdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4gKHRoaXMuY2xvc2FibGUgPSB0cnVlKSlcbiAgICAgIDogKHRoaXMuY2xvc2FibGUgPSBmYWxzZSk7XG4gIH1cblxuICBsaXN0ZW4oKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXG4gICAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuY2xvc2FibGUpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5hYnBDbG9zZSkgcmV0dXJuO1xuICAgICAgZnJvbUV2ZW50KHRoaXMuYWJwQ2xvc2UubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgIGZpbHRlcigoKSA9PiAhISh0aGlzLmNsb3NhYmxlICYmIHRoaXMubW9kYWxDb250ZW50KSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH0sIDApO1xuXG4gICAgdGhpcy5pbml0LmVtaXQoKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5jbG9zYWJsZSB8fCB0aGlzLmJ1c3kpIHJldHVybjtcblxuICAgIGNvbnN0IG5vZGVzID0gZ2V0RmxhdE5vZGVzKFxuICAgICAgKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI2FicC1tb2RhbC1ib2R5JykgYXMgSFRNTEVsZW1lbnQpLmNoaWxkTm9kZXMsXG4gICAgKTtcblxuICAgIGlmIChoYXNOZ0RpcnR5KG5vZGVzKSkge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgICAud2FybignQWJwQWNjb3VudDo6QXJlWW91U3VyZVlvdVdhbnRUb0NhbmNlbEVkaXRpbmdXYXJuaW5nTWVzc2FnZScsICdBYnBBY2NvdW50OjpBcmVZb3VTdXJlJylcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBUb2FzdGVyLlN0YXR1cykgPT4ge1xuICAgICAgICAgIHRpbWVyKEFOSU1BVElPTl9USU1FT1VUKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSBmYWxzZTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChzdGF0dXMgPT09IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGbGF0Tm9kZXMobm9kZXM6IE5vZGVMaXN0KTogSFRNTEVsZW1lbnRbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKG5vZGVzKS5yZWR1Y2UoXG4gICAgKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi4odmFsLmNoaWxkTm9kZXMgJiYgdmFsLmNoaWxkTm9kZXMubGVuZ3RoID8gZ2V0RmxhdE5vZGVzKHZhbC5jaGlsZE5vZGVzKSA6IFt2YWxdKV0sXG4gICAgW10sXG4gICk7XG59XG5cbmZ1bmN0aW9uIGhhc05nRGlydHkobm9kZXM6IEhUTUxFbGVtZW50W10pIHtcbiAgcmV0dXJuIG5vZGVzLmZpbmRJbmRleChub2RlID0+IChub2RlLmNsYXNzTmFtZSB8fCAnJykuaW5kZXhPZignbmctZGlydHknKSA+IC0xKSA+IC0xO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/profile/profile.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/profile/profile.component.js new file mode 100644 index 0000000000..e8924090e3 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/profile/profile.component.js @@ -0,0 +1,141 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core'; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { Select, Store } from '@ngxs/store'; +import { Observable } from 'rxjs'; +import { take, withLatestFrom } from 'rxjs/operators'; +const { maxLength, required, email } = Validators; +export class ProfileComponent { + /** + * @param {?} fb + * @param {?} store + */ + constructor(fb, store) { + this.fb = fb; + this.store = store; + this.visibleChange = new EventEmitter(); + this.modalBusy = false; + } + /** + * @return {?} + */ + get visible() { + return this._visible; + } + /** + * @param {?} value + * @return {?} + */ + set visible(value) { + this._visible = value; + this.visibleChange.emit(value); + } + /** + * @return {?} + */ + buildForm() { + this.store + .dispatch(new GetProfile()) + .pipe(withLatestFrom(this.profile$), take(1)) + .subscribe((/** + * @param {?} __0 + * @return {?} + */ + ([, profile]) => { + this.form = this.fb.group({ + userName: [profile.userName, [required, maxLength(256)]], + email: [profile.email, [required, email, maxLength(256)]], + name: [profile.name || '', [maxLength(64)]], + surname: [profile.surname || '', [maxLength(64)]], + phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], + }); + })); + } + /** + * @return {?} + */ + submit() { + if (this.form.invalid) + return; + this.modalBusy = true; + this.store.dispatch(new UpdateProfile(this.form.value)).subscribe((/** + * @return {?} + */ + () => { + this.modalBusy = false; + this.visible = false; + this.form.reset(); + })); + } + /** + * @return {?} + */ + openModal() { + this.buildForm(); + this.visible = true; + } + /** + * @param {?} __0 + * @return {?} + */ + ngOnChanges({ visible }) { + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + } +} +ProfileComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-profile', + template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } +]; +/** @nocollapse */ +ProfileComponent.ctorParameters = () => [ + { type: FormBuilder }, + { type: Store } +]; +ProfileComponent.propDecorators = { + visible: [{ type: Input }], + visibleChange: [{ type: Output }] +}; +tslib_1.__decorate([ + Select(ProfileState.getProfile), + tslib_1.__metadata("design:type", Observable) +], ProfileComponent.prototype, "profile$", void 0); +if (false) { + /** + * @type {?} + * @protected + */ + ProfileComponent.prototype._visible; + /** @type {?} */ + ProfileComponent.prototype.visibleChange; + /** @type {?} */ + ProfileComponent.prototype.profile$; + /** @type {?} */ + ProfileComponent.prototype.form; + /** @type {?} */ + ProfileComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQVcsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7TUFFaEQsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVU7QUFNakQsTUFBTSxPQUFPLGdCQUFnQjs7Ozs7SUF1QjNCLFlBQW9CLEVBQWUsRUFBVSxLQUFZO1FBQXJDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBVHpELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQU81QyxjQUFTLEdBQVksS0FBSyxDQUFDO0lBRWlDLENBQUM7Ozs7SUFwQjdELElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVELElBQUksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7OztJQWNELFNBQVM7UUFDUCxJQUFJLENBQUMsS0FBSzthQUNQLFFBQVEsQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUFDO2FBQzFCLElBQUksQ0FDSCxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUM3QixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO2dCQUN4QixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDekQsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDakQsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUMxRCxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXRCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUU7WUFDckUsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNwQixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7Ozs7O0lBRUQsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFpQjtRQUNwQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFckIsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNsQjthQUFNLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6RCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7OztZQXZFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLDhqRUFBdUM7YUFDeEM7Ozs7WUFWUSxXQUFXO1lBQ0gsS0FBSzs7O3NCQWFuQixLQUFLOzRCQVVMLE1BQU07O0FBSVA7SUFEQyxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQztzQ0FDdEIsVUFBVTtrREFBbUI7Ozs7OztJQWhCdkMsb0NBQW1COztJQVluQix5Q0FDNEM7O0lBRTVDLG9DQUN1Qzs7SUFFdkMsZ0NBQWdCOztJQUVoQixxQ0FBMkI7Ozs7O0lBRWYsOEJBQXVCOzs7OztJQUFFLGlDQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2ZpbGUsIEdldFByb2ZpbGUsIFByb2ZpbGVTdGF0ZSwgVXBkYXRlUHJvZmlsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCB7IG1heExlbmd0aCwgcmVxdWlyZWQsIGVtYWlsIH0gPSBWYWxpZGF0b3JzO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtcHJvZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIHByb3RlY3RlZCBfdmlzaWJsZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBTZWxlY3QoUHJvZmlsZVN0YXRlLmdldFByb2ZpbGUpXG4gIHByb2ZpbGUkOiBPYnNlcnZhYmxlPFByb2ZpbGUuUmVzcG9uc2U+O1xuXG4gIGZvcm06IEZvcm1Hcm91cDtcblxuICBtb2RhbEJ1c3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG5cbiAgYnVpbGRGb3JtKCkge1xuICAgIHRoaXMuc3RvcmVcbiAgICAgIC5kaXNwYXRjaChuZXcgR2V0UHJvZmlsZSgpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMucHJvZmlsZSQpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoWywgcHJvZmlsZV0pID0+IHtcbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAgdXNlck5hbWU6IFtwcm9maWxlLnVzZXJOYW1lLCBbcmVxdWlyZWQsIG1heExlbmd0aCgyNTYpXV0sXG4gICAgICAgICAgZW1haWw6IFtwcm9maWxlLmVtYWlsLCBbcmVxdWlyZWQsIGVtYWlsLCBtYXhMZW5ndGgoMjU2KV1dLFxuICAgICAgICAgIG5hbWU6IFtwcm9maWxlLm5hbWUgfHwgJycsIFttYXhMZW5ndGgoNjQpXV0sXG4gICAgICAgICAgc3VybmFtZTogW3Byb2ZpbGUuc3VybmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcbiAgICAgICAgICBwaG9uZU51bWJlcjogW3Byb2ZpbGUucGhvbmVOdW1iZXIgfHwgJycsIFttYXhMZW5ndGgoMTYpXV0sXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBzdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XG4gICAgdGhpcy5tb2RhbEJ1c3kgPSB0cnVlO1xuXG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgVXBkYXRlUHJvZmlsZSh0aGlzLmZvcm0udmFsdWUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5mb3JtLnJlc2V0KCk7XG4gICAgfSk7XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/contants/styles.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/contants/styles.js index d12438e974..e1ec0552d4 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/contants/styles.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/contants/styles.js @@ -28,25 +28,35 @@ export default ` top: 18px; } +.navbar .dropdown-menu { + min-width: 215px; +} + .modal { background-color: rgba(0, 0, 0, .6); } -.abp-ellipsis { +.abp-ellipsis-inline { display: inline-block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.abp-ellipsis { + overflow: hidden !important; + text-overflow: ellipsis; + white-space: nowrap; +} + /* { const { payload: err = (/** @type {?} */ ({})) } = res; /** @type {?} */ - const body = ((/** @type {?} */ (err))).error.error; - if (err.headers.get('_AbpErrorFormat')) { + const body = snq((/** + * @return {?} + */ + () => ((/** @type {?} */ (err))).error.error), DEFAULTS.defaultError.message); + if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) { /** @type {?} */ const confirmation$ = this.showError(null, null, body); if (err.status === 401) { @@ -88,14 +93,14 @@ export class ErrorHandler { case 500: this.createErrorComponent({ title: '500', - details: 'Sorry, an error has occured.', + details: 'AbpAccount::InternalServerErrorMessage', }); break; case 0: if (((/** @type {?} */ (err))).statusText === 'Unknown Error') { this.createErrorComponent({ title: 'Unknown Error', - details: 'Sorry, an error has occured.', + details: 'AbpAccount::InternalServerErrorMessage', }); } break; @@ -211,4 +216,4 @@ if (false) { */ ErrorHandler.prototype.injector; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFOUMsT0FBTyxFQUNMLGNBQWMsRUFDZCx3QkFBd0IsRUFFeEIsVUFBVSxFQUNWLFFBQVEsRUFDUixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7O01BRWpFLFFBQVEsR0FBRztJQUNmLFlBQVksRUFBRTtRQUNaLE9BQU8sRUFBRSx3QkFBd0I7UUFDakMsT0FBTyxFQUFFLGtDQUFrQztLQUM1QztJQUVELGVBQWUsRUFBRTtRQUNmLE9BQU8sRUFBRSw0QkFBNEI7UUFDckMsT0FBTyxFQUFFLDJFQUEyRTtLQUNyRjtJQUVELGVBQWUsRUFBRTtRQUNmLE9BQU8sRUFBRSx5QkFBeUI7UUFDbEMsT0FBTyxFQUFFLGdEQUFnRDtLQUMxRDtJQUVELGVBQWUsRUFBRTtRQUNmLE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtDQUNGO0FBR0QsTUFBTSxPQUFPLFlBQVk7Ozs7Ozs7Ozs7SUFDdkIsWUFDVSxPQUFnQixFQUNoQixLQUFZLEVBQ1osbUJBQXdDLEVBQ3hDLE1BQXNCLEVBQ3RCLEtBQStCLEVBQy9CLGVBQWlDLEVBQ2pDLFFBQWtCO1FBTmxCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBMEI7UUFDL0Isb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFFMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVM7Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtrQkFDekQsRUFBRSxPQUFPLEVBQUUsR0FBRyxHQUFHLG1CQUFBLEVBQUUsRUFBMkIsRUFBRSxHQUFHLEdBQUc7O2tCQUN0RCxJQUFJLEdBQUcsQ0FBQyxtQkFBQSxHQUFHLEVBQXFCLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSztZQUVuRCxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEVBQUU7O3NCQUNoQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQztnQkFFdEQsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtvQkFDdEIsYUFBYSxDQUFDLFNBQVM7OztvQkFBQyxHQUFHLEVBQUU7d0JBQzNCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztvQkFDekIsQ0FBQyxFQUFDLENBQUM7aUJBQ0o7YUFDRjtpQkFBTTtnQkFDTCxRQUFRLENBQUMsbUJBQUEsR0FBRyxFQUFxQixDQUFDLENBQUMsTUFBTSxFQUFFO29CQUN6QyxLQUFLLEdBQUc7d0JBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVM7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FDaEcsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUN2QixDQUFDO3dCQUNGLE1BQU07b0JBQ1IsS0FBSyxHQUFHO3dCQUNOLElBQUksQ0FBQyxvQkFBb0IsQ0FBQzs0QkFDeEIsS0FBSyxFQUFFLFFBQVEsQ0FBQyxlQUFlLENBQUMsT0FBTzs0QkFDdkMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxlQUFlLENBQUMsT0FBTzt5QkFDMUMsQ0FBQyxDQUFDO3dCQUNILE1BQU07b0JBQ1IsS0FBSyxHQUFHO3dCQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDbkYsTUFBTTtvQkFDUixLQUFLLEdBQUc7d0JBQ04sSUFBSSxDQUFDLG9CQUFvQixDQUFDOzRCQUN4QixLQUFLLEVBQUUsS0FBSzs0QkFDWixPQUFPLEVBQUUsOEJBQThCO3lCQUN4QyxDQUFDLENBQUM7d0JBQ0gsTUFBTTtvQkFDUixLQUFLLENBQUM7d0JBQ0osSUFBSSxDQUFDLG1CQUFBLEdBQUcsRUFBcUIsQ0FBQyxDQUFDLFVBQVUsS0FBSyxlQUFlLEVBQUU7NEJBQzdELElBQUksQ0FBQyxvQkFBb0IsQ0FBQztnQ0FDeEIsS0FBSyxFQUFFLGVBQWU7Z0NBQ3RCLE9BQU8sRUFBRSw4QkFBOEI7NkJBQ3hDLENBQUMsQ0FBQzt5QkFDSjt3QkFDRCxNQUFNO29CQUNSO3dCQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDN0UsTUFBTTtpQkFDVDthQUNGO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7Ozs7OztJQUVPLFNBQVMsQ0FBQyxPQUFnQixFQUFFLEtBQWMsRUFBRSxJQUFVO1FBQzVELElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQixPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDdkIsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDdEI7aUJBQU07Z0JBQ0wsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7YUFDekQ7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFO1lBQ3BELGFBQWEsRUFBRSxJQUFJO1lBQ25CLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7SUFFTyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixJQUFJLFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxFQUFFO1lBQ3JDLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO1NBQ3pFLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFFRCxvQkFBb0IsQ0FBQyxRQUFpQzs7Y0FDOUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7O2NBQzFELElBQUksR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQzs7Y0FFbkQsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFN0YsS0FBSyxNQUFNLEdBQUcsSUFBSSxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3ZDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzdDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzVDO1NBQ0Y7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxtQkFBQSxZQUFZLENBQUMsUUFBUSxFQUF3QixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekYsWUFBWSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQzFDLFlBQVksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDekQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ3BDLENBQUM7OztZQXZHRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O1lBNUJ6QixPQUFPO1lBQXNCLEtBQUs7WUFJbEMsbUJBQW1CO1lBWjFCLGNBQWM7WUFDZCx3QkFBd0I7WUFJeEIsZ0JBQWdCO1lBRGhCLFFBQVE7Ozs7Ozs7O0lBbUNOLCtCQUF3Qjs7Ozs7SUFDeEIsNkJBQW9COzs7OztJQUNwQiwyQ0FBZ0Q7Ozs7O0lBQ2hELDhCQUE4Qjs7Ozs7SUFDOUIsNkJBQXVDOzs7OztJQUN2Qyx1Q0FBeUM7Ozs7O0lBQ3pDLGdDQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc3RPY2N1ckVycm9yIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25SZWYsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBJbmplY3RhYmxlLFxuICBJbmplY3RvcixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0ZSwgUm91dGVyU3RhdGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IEFjdGlvbnMsIG9mQWN0aW9uU3VjY2Vzc2Z1bCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFcnJvckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZXJyb3JzL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vbW9kZWxzL3RvYXN0ZXInO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi5zZXJ2aWNlJztcblxuY29uc3QgREVGQVVMVFMgPSB7XG4gIGRlZmF1bHRFcnJvcjoge1xuICAgIG1lc3NhZ2U6ICdBbiBlcnJvciBoYXMgb2NjdXJyZWQhJyxcbiAgICBkZXRhaWxzOiAnRXJyb3IgZGV0YWlsIG5vdCBzZW50IGJ5IHNlcnZlci4nLFxuICB9LFxuXG4gIGRlZmF1bHRFcnJvcjQwMToge1xuICAgIG1lc3NhZ2U6ICdZb3UgYXJlIG5vdCBhdXRoZW50aWNhdGVkIScsXG4gICAgZGV0YWlsczogJ1lvdSBzaG91bGQgYmUgYXV0aGVudGljYXRlZCAoc2lnbiBpbikgaW4gb3JkZXIgdG8gcGVyZm9ybSB0aGlzIG9wZXJhdGlvbi4nLFxuICB9LFxuXG4gIGRlZmF1bHRFcnJvcjQwMzoge1xuICAgIG1lc3NhZ2U6ICdZb3UgYXJlIG5vdCBhdXRob3JpemVkIScsXG4gICAgZGV0YWlsczogJ1lvdSBhcmUgbm90IGFsbG93ZWQgdG8gcGVyZm9ybSB0aGlzIG9wZXJhdGlvbi4nLFxuICB9LFxuXG4gIGRlZmF1bHRFcnJvcjQwNDoge1xuICAgIG1lc3NhZ2U6ICdSZXNvdXJjZSBub3QgZm91bmQhJyxcbiAgICBkZXRhaWxzOiAnVGhlIHJlc291cmNlIHJlcXVlc3RlZCBjb3VsZCBub3QgZm91bmQgb24gdGhlIHNlcnZlci4nLFxuICB9LFxufTtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBFcnJvckhhbmRsZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnM6IEFjdGlvbnMsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICBwcml2YXRlIGNmUmVzOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICkge1xuICAgIGFjdGlvbnMucGlwZShvZkFjdGlvblN1Y2Nlc3NmdWwoUmVzdE9jY3VyRXJyb3IpKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIGNvbnN0IHsgcGF5bG9hZDogZXJyID0ge30gYXMgSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkgfSA9IHJlcztcbiAgICAgIGNvbnN0IGJvZHkgPSAoZXJyIGFzIEh0dHBFcnJvclJlc3BvbnNlKS5lcnJvci5lcnJvcjtcblxuICAgICAgaWYgKGVyci5oZWFkZXJzLmdldCgnX0FicEVycm9yRm9ybWF0JykpIHtcbiAgICAgICAgY29uc3QgY29uZmlybWF0aW9uJCA9IHRoaXMuc2hvd0Vycm9yKG51bGwsIG51bGwsIGJvZHkpO1xuXG4gICAgICAgIGlmIChlcnIuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICBjb25maXJtYXRpb24kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlVG9Mb2dpbigpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzd2l0Y2ggKChlcnIgYXMgSHR0cEVycm9yUmVzcG9uc2UpLnN0YXR1cykge1xuICAgICAgICAgIGNhc2UgNDAxOlxuICAgICAgICAgICAgdGhpcy5zaG93RXJyb3IoREVGQVVMVFMuZGVmYXVsdEVycm9yNDAxLmRldGFpbHMsIERFRkFVTFRTLmRlZmF1bHRFcnJvcjQwMS5tZXNzYWdlKS5zdWJzY3JpYmUoKCkgPT5cbiAgICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvTG9naW4oKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIDQwMzpcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlRXJyb3JDb21wb25lbnQoe1xuICAgICAgICAgICAgICB0aXRsZTogREVGQVVMVFMuZGVmYXVsdEVycm9yNDAzLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIGRldGFpbHM6IERFRkFVTFRTLmRlZmF1bHRFcnJvcjQwMy5kZXRhaWxzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIDQwNDpcbiAgICAgICAgICAgIHRoaXMuc2hvd0Vycm9yKERFRkFVTFRTLmRlZmF1bHRFcnJvcjQwNC5kZXRhaWxzLCBERUZBVUxUUy5kZWZhdWx0RXJyb3I0MDQubWVzc2FnZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIDUwMDpcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlRXJyb3JDb21wb25lbnQoe1xuICAgICAgICAgICAgICB0aXRsZTogJzUwMCcsXG4gICAgICAgICAgICAgIGRldGFpbHM6ICdTb3JyeSwgYW4gZXJyb3IgaGFzIG9jY3VyZWQuJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgaWYgKChlcnIgYXMgSHR0cEVycm9yUmVzcG9uc2UpLnN0YXR1c1RleHQgPT09ICdVbmtub3duIEVycm9yJykge1xuICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUVycm9yQ29tcG9uZW50KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ1Vua25vd24gRXJyb3InLFxuICAgICAgICAgICAgICAgIGRldGFpbHM6ICdTb3JyeSwgYW4gZXJyb3IgaGFzIG9jY3VyZWQuJyxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgdGhpcy5zaG93RXJyb3IoREVGQVVMVFMuZGVmYXVsdEVycm9yLmRldGFpbHMsIERFRkFVTFRTLmRlZmF1bHRFcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNob3dFcnJvcihtZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZywgYm9keT86IGFueSk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICBpZiAoYm9keSkge1xuICAgICAgaWYgKGJvZHkuZGV0YWlscykge1xuICAgICAgICBtZXNzYWdlID0gYm9keS5kZXRhaWxzO1xuICAgICAgICB0aXRsZSA9IGJvZHkubWVzc2FnZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1lc3NhZ2UgPSBib2R5Lm1lc3NhZ2UgfHwgREVGQVVMVFMuZGVmYXVsdEVycm9yLm1lc3NhZ2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSwge1xuICAgICAgaGlkZUNhbmNlbEJ0bjogdHJ1ZSxcbiAgICAgIHllc0NvcHk6ICdPSycsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG9Mb2dpbigpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgbmV3IE5hdmlnYXRlKFsnL2FjY291bnQvbG9naW4nXSwgbnVsbCwge1xuICAgICAgICBzdGF0ZTogeyByZWRpcmVjdFVybDogdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSkuc3RhdGUudXJsIH0sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgY3JlYXRlRXJyb3JDb21wb25lbnQoaW5zdGFuY2U6IFBhcnRpYWw8RXJyb3JDb21wb25lbnQ+KSB7XG4gICAgY29uc3QgcmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKTtcbiAgICBjb25zdCBob3N0ID0gcmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoJ2FwcC1yb290JywgdHJ1ZSk7XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNmUmVzLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KEVycm9yQ29tcG9uZW50KS5jcmVhdGUodGhpcy5pbmplY3Rvcik7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBjb21wb25lbnRSZWYuaW5zdGFuY2UpIHtcbiAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vba2V5XSA9IGluc3RhbmNlW2tleV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5hcHBSZWYuYXR0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgIHJlbmRlcmVyLmFwcGVuZENoaWxkKGhvc3QsIChjb21wb25lbnRSZWYuaG9zdFZpZXcgYXMgRW1iZWRkZWRWaWV3UmVmPGFueT4pLnJvb3ROb2Rlc1swXSk7XG5cbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucmVuZGVyZXIgPSByZW5kZXJlcjtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZWxlbWVudFJlZiA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbjtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuaG9zdCA9IGhvc3Q7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUNMLGNBQWMsRUFDZCx3QkFBd0IsRUFFeEIsVUFBVSxFQUNWLFFBQVEsRUFDUixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDOzs7OztNQUVoQixRQUFRLEdBQUc7SUFDZixZQUFZLEVBQUU7UUFDWixPQUFPLEVBQUUsd0JBQXdCO1FBQ2pDLE9BQU8sRUFBRSxrQ0FBa0M7S0FDNUM7SUFFRCxlQUFlLEVBQUU7UUFDZixPQUFPLEVBQUUsNEJBQTRCO1FBQ3JDLE9BQU8sRUFBRSwyRUFBMkU7S0FDckY7SUFFRCxlQUFlLEVBQUU7UUFDZixPQUFPLEVBQUUseUJBQXlCO1FBQ2xDLE9BQU8sRUFBRSxnREFBZ0Q7S0FDMUQ7SUFFRCxlQUFlLEVBQUU7UUFDZixPQUFPLEVBQUUscUJBQXFCO1FBQzlCLE9BQU8sRUFBRSx1REFBdUQ7S0FDakU7Q0FDRjtBQUdELE1BQU0sT0FBTyxZQUFZOzs7Ozs7Ozs7O0lBQ3ZCLFlBQ1UsT0FBZ0IsRUFDaEIs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RUFBRTtZQUN2QyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUM3QyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM1QztTQUNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsbUJBQUEsWUFBWSxDQUFDLFFBQVEsRUFBd0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpGLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUMxQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQ3pELFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNwQyxDQUFDOzs7WUF2R0YsVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7OztZQTdCekIsT0FBTztZQUFzQixLQUFLO1lBSWxDLG1CQUFtQjtZQVoxQixjQUFjO1lBQ2Qsd0JBQXdCO1lBSXhCLGdCQUFnQjtZQURoQixRQUFROzs7Ozs7OztJQW9DTiwrQkFBd0I7Ozs7O0lBQ3hCLDZCQUFvQjs7Ozs7SUFDcEIsMkNBQWdEOzs7OztJQUNoRCw4QkFBOEI7Ozs7O0lBQzlCLDZCQUF1Qzs7Ozs7SUFDdkMsdUNBQXlDOzs7OztJQUN6QyxnQ0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXN0T2NjdXJFcnJvciB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEVtYmVkZGVkVmlld1JlZixcbiAgSW5qZWN0YWJsZSxcbiAgSW5qZWN0b3IsXG4gIFJlbmRlcmVyRmFjdG9yeTIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGUsIFJvdXRlclN0YXRlIH0gZnJvbSAnQG5neHMvcm91dGVyLXBsdWdpbic7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZkFjdGlvblN1Y2Nlc3NmdWwsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRXJyb3JDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9hc3RlciB9IGZyb20gJy4uL21vZGVscy90b2FzdGVyJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5cbmNvbnN0IERFRkFVTFRTID0ge1xuICBkZWZhdWx0RXJyb3I6IHtcbiAgICBtZXNzYWdlOiAnQW4gZXJyb3IgaGFzIG9jY3VycmVkIScsXG4gICAgZGV0YWlsczogJ0Vycm9yIGRldGFpbCBub3Qgc2VudCBieSBzZXJ2ZXIuJyxcbiAgfSxcblxuICBkZWZhdWx0RXJyb3I0MDE6IHtcbiAgICBtZXNzYWdlOiAnWW91IGFyZSBub3QgYXV0aGVudGljYXRlZCEnLFxuICAgIGRldGFpbHM6ICdZb3Ugc2hvdWxkIGJlIGF1dGhlbnRpY2F0ZWQgKHNpZ24gaW4pIGluIG9yZGVyIHRvIHBlcmZvcm0gdGhpcyBvcGVyYXRpb24uJyxcbiAgfSxcblxuICBkZWZhdWx0RXJyb3I0MDM6IHtcbiAgICBtZXNzYWdlOiAnWW91IGFyZSBub3QgYXV0aG9yaXplZCEnLFxuICAgIGRldGFpbHM6ICdZb3UgYXJlIG5vdCBhbGxvd2VkIHRvIHBlcmZvcm0gdGhpcyBvcGVyYXRpb24uJyxcbiAgfSxcblxuICBkZWZhdWx0RXJyb3I0MDQ6IHtcbiAgICBtZXNzYWdlOiAnUmVzb3VyY2Ugbm90IGZvdW5kIScsXG4gICAgZGV0YWlsczogJ1RoZSByZXNvdXJjZSByZXF1ZXN0ZWQgY291bGQgbm90IGZvdW5kIG9uIHRoZSBzZXJ2ZXIuJyxcbiAgfSxcbn07XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRXJyb3JIYW5kbGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpb25zOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlLFxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgcHJpdmF0ZSBjZlJlczogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICApIHtcbiAgICBhY3Rpb25zLnBpcGUob2ZBY3Rpb25TdWNjZXNzZnVsKFJlc3RPY2N1ckVycm9yKSkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICBjb25zdCB7IHBheWxvYWQ6IGVyciA9IHt9IGFzIEh0dHBFcnJvclJlc3BvbnNlIHwgYW55IH0gPSByZXM7XG4gICAgICBjb25zdCBib2R5ID0gc25xKCgpID0+IChlcnIgYXMgSHR0cEVycm9yUmVzcG9uc2UpLmVycm9yLmVycm9yLCBERUZBVUxUUy5kZWZhdWx0RXJyb3IubWVzc2FnZSk7XG5cbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSAmJiBlcnIuaGVhZGVycy5nZXQoJ19BYnBFcnJvckZvcm1hdCcpKSB7XG4gICAgICAgIGNvbnN0IGNvbmZpcm1hdGlvbiQgPSB0aGlzLnNob3dFcnJvcihudWxsLCBudWxsLCBib2R5KTtcblxuICAgICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgY29uZmlybWF0aW9uJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvTG9naW4oKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoICgoZXJyIGFzIEh0dHBFcnJvclJlc3BvbnNlKS5zdGF0dXMpIHtcbiAgICAgICAgICBjYXNlIDQwMTpcbiAgICAgICAgICAgIHRoaXMuc2hvd0Vycm9yKERFRkFVTFRTLmRlZmF1bHRFcnJvcjQwMS5kZXRhaWxzLCBERUZBVUxUUy5kZWZhdWx0RXJyb3I0MDEubWVzc2FnZSkuc3Vic2NyaWJlKCgpID0+XG4gICAgICAgICAgICAgIHRoaXMubmF2aWdhdGVUb0xvZ2luKCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSA0MDM6XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUVycm9yQ29tcG9uZW50KHtcbiAgICAgICAgICAgICAgdGl0bGU6IERFRkFVTFRTLmRlZmF1bHRFcnJvcjQwMy5tZXNzYWdlLFxuICAgICAgICAgICAgICBkZXRhaWxzOiBERUZBVUxUUy5kZWZhdWx0RXJyb3I0MDMuZGV0YWlscyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSA0MDQ6XG4gICAgICAgICAgICB0aGlzLnNob3dFcnJvcihERUZBVUxUUy5kZWZhdWx0RXJyb3I0MDQuZGV0YWlscywgREVGQVVMVFMuZGVmYXVsdEVycm9yNDA0Lm1lc3NhZ2UpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSA1MDA6XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUVycm9yQ29tcG9uZW50KHtcbiAgICAgICAgICAgICAgdGl0bGU6ICc1MDAnLFxuICAgICAgICAgICAgICBkZXRhaWxzOiAnQWJwQWNjb3VudDo6SW50ZXJuYWxTZXJ2ZXJFcnJvck1lc3NhZ2UnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICBpZiAoKGVyciBhcyBIdHRwRXJyb3JSZXNwb25zZSkuc3RhdHVzVGV4dCA9PT0gJ1Vua25vd24gRXJyb3InKSB7XG4gICAgICAgICAgICAgIHRoaXMuY3JlYXRlRXJyb3JDb21wb25lbnQoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnVW5rbm93biBFcnJvcicsXG4gICAgICAgICAgICAgICAgZGV0YWlsczogJ0FicEFjY291bnQ6OkludGVybmFsU2VydmVyRXJyb3JNZXNzYWdlJyxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgdGhpcy5zaG93RXJyb3IoREVGQVVMVFMuZGVmYXVsdEVycm9yLmRldGFpbHMsIERFRkFVTFRTLmRlZmF1bHRFcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNob3dFcnJvcihtZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZywgYm9keT86IGFueSk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICBpZiAoYm9keSkge1xuICAgICAgaWYgKGJvZHkuZGV0YWlscykge1xuICAgICAgICBtZXNzYWdlID0gYm9keS5kZXRhaWxzO1xuICAgICAgICB0aXRsZSA9IGJvZHkubWVzc2FnZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1lc3NhZ2UgPSBib2R5Lm1lc3NhZ2UgfHwgREVGQVVMVFMuZGVmYXVsdEVycm9yLm1lc3NhZ2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5lcnJvcihtZXNzYWdlLCB0aXRsZSwge1xuICAgICAgaGlkZUNhbmNlbEJ0bjogdHJ1ZSxcbiAgICAgIHllc0NvcHk6ICdPSycsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG9Mb2dpbigpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgbmV3IE5hdmlnYXRlKFsnL2FjY291bnQvbG9naW4nXSwgbnVsbCwge1xuICAgICAgICBzdGF0ZTogeyByZWRpcmVjdFVybDogdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChSb3V0ZXJTdGF0ZSkuc3RhdGUudXJsIH0sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgY3JlYXRlRXJyb3JDb21wb25lbnQoaW5zdGFuY2U6IFBhcnRpYWw8RXJyb3JDb21wb25lbnQ+KSB7XG4gICAgY29uc3QgcmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKTtcbiAgICBjb25zdCBob3N0ID0gcmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoJ2FwcC1yb290JywgdHJ1ZSk7XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNmUmVzLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KEVycm9yQ29tcG9uZW50KS5jcmVhdGUodGhpcy5pbmplY3Rvcik7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBjb21wb25lbnRSZWYuaW5zdGFuY2UpIHtcbiAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vba2V5XSA9IGluc3RhbmNlW2tleV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5hcHBSZWYuYXR0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgIHJlbmRlcmVyLmFwcGVuZENoaWxkKGhvc3QsIChjb21wb25lbnRSZWYuaG9zdFZpZXcgYXMgRW1iZWRkZWRWaWV3UmVmPGFueT4pLnJvb3ROb2Rlc1swXSk7XG5cbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucmVuZGVyZXIgPSByZW5kZXJlcjtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZWxlbWVudFJlZiA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbjtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuaG9zdCA9IGhvc3Q7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/models/index.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/models/index.js index cc2ac4afa2..d5daee2159 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/models/index.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/models/index.js @@ -4,4 +4,5 @@ */ export {} from './confirmation'; export { Toaster } from './toaster'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGVBQWMsZ0JBQWdCLENBQUM7QUFDL0Isd0JBQWMsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb25maXJtYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi90b2FzdGVyJztcbiJdfQ== \ No newline at end of file +export {} from './setting-management'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGVBQWMsZ0JBQWdCLENBQUM7QUFDL0Isd0JBQWMsV0FBVyxDQUFDO0FBQzFCLGVBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbmZpcm1hdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3RvYXN0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zZXR0aW5nLW1hbmFnZW1lbnQnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/models/setting-management.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/models/setting-management.js new file mode 100644 index 0000000000..86b3c50948 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/models/setting-management.js @@ -0,0 +1,19 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @record + */ +export function SettingTab() { } +if (false) { + /** @type {?} */ + SettingTab.prototype.name; + /** @type {?} */ + SettingTab.prototype.order; + /** @type {?} */ + SettingTab.prototype.component; + /** @type {?|undefined} */ + SettingTab.prototype.requiredPolicy; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3NldHRpbmctbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsZ0NBS0M7OztJQUpDLDBCQUFhOztJQUNiLDJCQUFjOztJQUNkLCtCQUFxQjs7SUFDckIsb0NBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNldHRpbmdUYWIge1xuICBuYW1lOiBzdHJpbmc7XG4gIG9yZGVyOiBudW1iZXI7XG4gIGNvbXBvbmVudDogVHlwZTxhbnk+O1xuICByZXF1aXJlZFBvbGljeT86IHN0cmluZztcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/services/confirmation.service.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/services/confirmation.service.js index d2a6377965..f1bf4c4044 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/services/confirmation.service.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/services/confirmation.service.js @@ -3,10 +3,10 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; -import { AbstractToasterClass } from '../abstracts/toaster'; +import { AbstractToaster } from '../abstracts/toaster'; import * as i0 from "@angular/core"; import * as i1 from "primeng/components/common/messageservice"; -export class ConfirmationService extends AbstractToasterClass { +export class ConfirmationService extends AbstractToaster { constructor() { super(...arguments); this.key = 'abpConfirmation'; @@ -18,15 +18,9 @@ ConfirmationService.decorators = [ ]; /** @nocollapse */ ConfirmationService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function ConfirmationService_Factory() { return new ConfirmationService(i0.ɵɵinject(i1.MessageService)); }, token: ConfirmationService, providedIn: "root" }); if (false) { - /** - * @type {?} - * @protected - */ + /** @type {?} */ ConfirmationService.prototype.key; - /** - * @type {?} - * @protected - */ + /** @type {?} */ ConfirmationService.prototype.sticky; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBSTVELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxvQkFBMEM7SUFEbkY7O1FBRVksUUFBRyxHQUFXLGlCQUFpQixDQUFDO1FBRWhDLFdBQU0sR0FBWSxJQUFJLENBQUM7S0FDbEM7OztZQUxBLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7Ozs7Ozs7O0lBRWhDLGtDQUEwQzs7Ozs7SUFFMUMscUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RUb2FzdGVyQ2xhc3MgfSBmcm9tICcuLi9hYnN0cmFjdHMvdG9hc3Rlcic7XG5pbXBvcnQgeyBDb25maXJtYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29uZmlybWF0aW9uJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25TZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RUb2FzdGVyQ2xhc3M8Q29uZmlybWF0aW9uLk9wdGlvbnM+IHtcbiAgcHJvdGVjdGVkIGtleTogc3RyaW5nID0gJ2FicENvbmZpcm1hdGlvbic7XG5cbiAgcHJvdGVjdGVkIHN0aWNreTogYm9vbGVhbiA9IHRydWU7XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUl2RCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZUFBcUM7SUFEOUU7O1FBRUUsUUFBRyxHQUFXLGlCQUFpQixDQUFDO1FBRWhDLFdBQU0sR0FBWSxJQUFJLENBQUM7S0FDeEI7OztZQUxBLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7Ozs7O0lBRWhDLGtDQUFnQzs7SUFFaEMscUNBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RUb2FzdGVyIH0gZnJvbSAnLi4vYWJzdHJhY3RzL3RvYXN0ZXInO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2NvbmZpcm1hdGlvbic7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uU2VydmljZSBleHRlbmRzIEFic3RyYWN0VG9hc3RlcjxDb25maXJtYXRpb24uT3B0aW9ucz4ge1xuICBrZXk6IHN0cmluZyA9ICdhYnBDb25maXJtYXRpb24nO1xuXG4gIHN0aWNreTogYm9vbGVhbiA9IHRydWU7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/services/toaster.service.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/services/toaster.service.js index 9e7b2e3a0a..16adfcc183 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/services/toaster.service.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/services/toaster.service.js @@ -3,10 +3,10 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; -import { AbstractToasterClass } from '../abstracts/toaster'; +import { AbstractToaster } from '../abstracts/toaster'; import * as i0 from "@angular/core"; import * as i1 from "primeng/components/common/messageservice"; -export class ToasterService extends AbstractToasterClass { +export class ToasterService extends AbstractToaster { /** * @param {?} messages * @return {?} @@ -23,4 +23,4 @@ ToasterService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ ToasterService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function ToasterService_Factory() { return new ToasterService(i0.ɵɵinject(i1.MessageService)); }, token: ToasterService, providedIn: "root" }); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFJNUQsTUFBTSxPQUFPLGNBQWUsU0FBUSxvQkFBb0I7Ozs7O0lBQ3RELE1BQU0sQ0FBQyxRQUFtQjtRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRzs7OztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsaUJBQUcsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUssT0FBTyxFQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7OztZQUpGLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFRvYXN0ZXJDbGFzcyB9IGZyb20gJy4uL2Fic3RyYWN0cy90b2FzdGVyJztcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICdwcmltZW5nL2NvbXBvbmVudHMvY29tbW9uL21lc3NhZ2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFRvYXN0ZXJTZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RUb2FzdGVyQ2xhc3Mge1xuICBhZGRBbGwobWVzc2FnZXM6IE1lc3NhZ2VbXSk6IHZvaWQge1xuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkQWxsKG1lc3NhZ2VzLm1hcChtZXNzYWdlID0+ICh7IGtleTogdGhpcy5rZXksIC4uLm1lc3NhZ2UgfSkpKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBSXZELE1BQU0sT0FBTyxjQUFlLFNBQVEsZUFBZTs7Ozs7SUFDakQsTUFBTSxDQUFDLFFBQW1CO1FBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHOzs7O1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxpQkFBRyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSyxPQUFPLEVBQUcsRUFBQyxDQUFDLENBQUM7SUFDdkYsQ0FBQzs7O1lBSkYsVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0VG9hc3RlciB9IGZyb20gJy4uL2Fic3RyYWN0cy90b2FzdGVyJztcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICdwcmltZW5nL2NvbXBvbmVudHMvY29tbW9uL21lc3NhZ2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFRvYXN0ZXJTZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RUb2FzdGVyIHtcbiAgYWRkQWxsKG1lc3NhZ2VzOiBNZXNzYWdlW10pOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZEFsbChtZXNzYWdlcy5tYXAobWVzc2FnZSA9PiAoeyBrZXk6IHRoaXMua2V5LCAuLi5tZXNzYWdlIH0pKSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/theme-shared.module.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/theme-shared.module.js index 579c2e19c9..577c637fd7 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/theme-shared.module.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/theme-shared.module.js @@ -4,7 +4,6 @@ */ import { CoreModule, LazyLoadService } from '@abp/ng.core'; import { APP_INITIALIZER, Injector, NgModule } from '@angular/core'; -import { NgbModalModule } from '@ng-bootstrap/ng-bootstrap'; import { NgxValidateCoreModule } from '@ngx-validate/core'; import { MessageService } from 'primeng/components/common/messageservice'; import { ToastModule } from 'primeng/toast'; @@ -17,6 +16,11 @@ import { ModalComponent } from './components/modal/modal.component'; import { ToastComponent } from './components/toast/toast.component'; import styles from './contants/styles'; import { ErrorHandler } from './handlers/error.handler'; +import { ButtonComponent } from './components/button/button.component'; +import { ValidationErrorComponent } from './components/errors/validation-error.component'; +import { ChangePasswordComponent } from './components/change-password/change-password.component'; +import { ProfileComponent } from './components/profile/profile.component'; +import { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component'; /** * @param {?} injector * @return {?} @@ -57,14 +61,43 @@ ThemeSharedModule.decorators = [ imports: [ CoreModule, ToastModule, - NgbModalModule, NgxValidateCoreModule.forRoot({ targetSelector: '.form-group', + blueprints: { + email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`, + max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`, + maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`, + min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`, + minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`, + required: `AbpAccount::ThisFieldIsRequired.`, + passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`, + }, + errorTemplate: ValidationErrorComponent, }), ], - declarations: [ConfirmationComponent, ToastComponent, ModalComponent, ErrorComponent, LoaderBarComponent], - exports: [NgbModalModule, ConfirmationComponent, ToastComponent, ModalComponent, LoaderBarComponent], - entryComponents: [ErrorComponent], + declarations: [ + ButtonComponent, + ConfirmationComponent, + ToastComponent, + ModalComponent, + ErrorComponent, + LoaderBarComponent, + ValidationErrorComponent, + ChangePasswordComponent, + ProfileComponent, + BreadcrumbComponent, + ], + exports: [ + ButtonComponent, + ConfirmationComponent, + ToastComponent, + ModalComponent, + LoaderBarComponent, + ChangePasswordComponent, + ProfileComponent, + BreadcrumbComponent, + ], + entryComponents: [ErrorComponent, ValidationErrorComponent], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL3RoZW1lLXNoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFFeEQsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFrQjs7VUFDdkMsRUFBRTs7O0lBQUc7O2NBQ0gsZUFBZSxHQUFvQixRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztRQUV0RSxPQUFPLFFBQVEsQ0FDYixlQUFlLENBQUMsSUFBSSxDQUNsQixJQUFJLEVBQ0osT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sWUFBWSxDQUNiLENBQUMsbURBQW1ELENBQ3RELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQWVELE1BQU0sT0FBTyxpQkFBaUI7Ozs7SUFDNUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLEtBQUssRUFBRSxJQUFJO29CQUNYLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUM7b0JBQzlCLFVBQVUsRUFBRSxZQUFZO2lCQUN6QjtnQkFDRCxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRTthQUN0RDtTQUNGLENBQUM7SUFDSixDQUFDOzs7WUEzQkYsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxVQUFVO29CQUNWLFdBQVc7b0JBQ1gsY0FBYztvQkFDZCxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7d0JBQzVCLGNBQWMsRUFBRSxhQUFhO3FCQUM5QixDQUFDO2lCQUNIO2dCQUNELFlBQVksRUFBRSxDQUFDLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixDQUFDO2dCQUN6RyxPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQztnQkFDcEcsZUFBZSxFQUFFLENBQUMsY0FBYyxDQUFDO2FBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSwgTGF6eUxvYWRTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgSW5qZWN0b3IsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JNb2RhbE1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RvYXN0JztcbmltcG9ydCB7IGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGVyQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vY29udGFudHMvc3R5bGVzJztcbmltcG9ydCB7IEVycm9ySGFuZGxlciB9IGZyb20gJy4vaGFuZGxlcnMvZXJyb3IuaGFuZGxlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRTY3JpcHQoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIGNvbnN0IGZuID0gZnVuY3Rpb24oKSB7XG4gICAgY29uc3QgbGF6eUxvYWRTZXJ2aWNlOiBMYXp5TG9hZFNlcnZpY2UgPSBpbmplY3Rvci5nZXQoTGF6eUxvYWRTZXJ2aWNlKTtcblxuICAgIHJldHVybiBmb3JrSm9pbihcbiAgICAgIGxhenlMb2FkU2VydmljZS5sb2FkKFxuICAgICAgICBudWxsLFxuICAgICAgICAnc3R5bGUnLFxuICAgICAgICBzdHlsZXMsXG4gICAgICAgICdoZWFkJyxcbiAgICAgICAgJ2FmdGVyYmVnaW4nLFxuICAgICAgKSAvKiBsYXp5TG9hZFNlcnZpY2UubG9hZChudWxsLCAnc2NyaXB0Jywgc2NyaXB0cykgKi8sXG4gICAgKS5waXBlKHRha2UoMSkpO1xuICB9O1xuXG4gIHJldHVybiBmbjtcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgVG9hc3RNb2R1bGUsXG4gICAgTmdiTW9kYWxNb2R1bGUsXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgdGFyZ2V0U2VsZWN0b3I6ICcuZm9ybS1ncm91cCcsXG4gICAgfSksXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW0NvbmZpcm1hdGlvbkNvbXBvbmVudCwgVG9hc3RDb21wb25lbnQsIE1vZGFsQ29tcG9uZW50LCBFcnJvckNvbXBvbmVudCwgTG9hZGVyQmFyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW05nYk1vZGFsTW9kdWxlLCBDb25maXJtYXRpb25Db21wb25lbnQsIFRvYXN0Q29tcG9uZW50LCBNb2RhbENvbXBvbmVudCwgTG9hZGVyQmFyQ29tcG9uZW50XSxcbiAgZW50cnlDb21wb25lbnRzOiBbRXJyb3JDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZVNoYXJlZE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3IsIEVycm9ySGFuZGxlcl0sXG4gICAgICAgICAgdXNlRmFjdG9yeTogYXBwZW5kU2NyaXB0LFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE1lc3NhZ2VTZXJ2aWNlLCB1c2VDbGFzczogTWVzc2FnZVNlcnZpY2UgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL3RoZW1lLXNoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7QUFFbkYsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFrQjs7VUFDdkMsRUFBRTs7O0lBQUc7O2NBQ0gsZUFBZSxHQUFvQixRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztRQUV0RSxPQUFPLFFBQVEsQ0FDYixlQUFlLENBQUMsSUFBSSxDQUNsQixJQUFJLEVBQ0osT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sWUFBWSxDQUNiLENBQUMsbURBQW1ELENBQ3RELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQTRDRCxNQUFNLE9BQU8saUJBQWlCOzs7O0lBQzVCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxlQUFlO29CQUN4QixLQUFLLEVBQUUsSUFBSTtvQkFDWCxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO29CQUM5QixVQUFVLEVBQUUsWUFBWTtpQkFDekI7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7YUFDdEQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBeERGLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsVUFBVTtvQkFDVixXQUFXO29CQUNYLHFCQUFxQixDQUFDLE9BQU8sQ0FBQzt3QkFDNUIsY0FBYyxFQUFFLGFBQWE7d0JBQzdCLFVBQVUsRUFBRTs0QkFDVixLQUFLLEVBQUUsK0NBQStDOzRCQUN0RCxHQUFHLEVBQUUsa0VBQWtFOzRCQUN2RSxTQUFTLEVBQUUsaUZBQWlGOzRCQUM1RixHQUFHLEVBQUUsa0VBQWtFOzRCQUN2RSxTQUFTLEVBQUUsd0ZBQXdGOzRCQUNuRyxRQUFRLEVBQUUsa0NBQWtDOzRCQUM1QyxnQkFBZ0IsRUFBRSxrREFBa0Q7eUJBQ3JFO3dCQUNELGFBQWEsRUFBRSx3QkFBd0I7cUJBQ3hDLENBQUM7aUJBQ0g7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLGVBQWU7b0JBQ2YscUJBQXFCO29CQUNyQixjQUFjO29CQUNkLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxrQkFBa0I7b0JBQ2xCLHdCQUF3QjtvQkFDeEIsdUJBQXVCO29CQUN2QixnQkFBZ0I7b0JBQ2hCLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGVBQWU7b0JBQ2YscUJBQXFCO29CQUNyQixjQUFjO29CQUNkLGNBQWM7b0JBQ2Qsa0JBQWtCO29CQUNsQix1QkFBdUI7b0JBQ3ZCLGdCQUFnQjtvQkFDaEIsbUJBQW1CO2lCQUNwQjtnQkFDRCxlQUFlLEVBQUUsQ0FBQyxjQUFjLEVBQUUsd0JBQXdCLENBQUM7YUFDNUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBMYXp5TG9hZFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RvciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RvYXN0JztcbmltcG9ydCB7IGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGVyQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vY29udGFudHMvc3R5bGVzJztcbmltcG9ydCB7IEVycm9ySGFuZGxlciB9IGZyb20gJy4vaGFuZGxlcnMvZXJyb3IuaGFuZGxlcic7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZFNjcmlwdChpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgY29uc3QgZm4gPSBmdW5jdGlvbigpIHtcbiAgICBjb25zdCBsYXp5TG9hZFNlcnZpY2U6IExhenlMb2FkU2VydmljZSA9IGluamVjdG9yLmdldChMYXp5TG9hZFNlcnZpY2UpO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgbGF6eUxvYWRTZXJ2aWNlLmxvYWQoXG4gICAgICAgIG51bGwsXG4gICAgICAgICdzdHlsZScsXG4gICAgICAgIHN0eWxlcyxcbiAgICAgICAgJ2hlYWQnLFxuICAgICAgICAnYWZ0ZXJiZWdpbicsXG4gICAgICApIC8qIGxhenlMb2FkU2VydmljZS5sb2FkKG51bGwsICdzY3JpcHQnLCBzY3JpcHRzKSAqLyxcbiAgICApLnBpcGUodGFrZSgxKSk7XG4gIH07XG5cbiAgcmV0dXJuIGZuO1xufVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUb2FzdE1vZHVsZSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICB0YXJnZXRTZWxlY3RvcjogJy5mb3JtLWdyb3VwJyxcbiAgICAgIGJsdWVwcmludHM6IHtcbiAgICAgICAgZW1haWw6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRJc05vdEFWYWxpZEVtYWlsQWRkcmVzcy5gLFxuICAgICAgICBtYXg6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRNdXN0QmVCZXR3ZWVuezB9QW5kezF9W3t7IG1pbiB9fSx7eyBtYXggfX1dYCxcbiAgICAgICAgbWF4bGVuZ3RoOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkTXVzdEJlQVN0cmluZ1dpdGhBTWF4aW11bUxlbmd0aE9mezF9W3t7IHJlcXVpcmVkTGVuZ3RoIH19XWAsXG4gICAgICAgIG1pbjogYEFicEFjY291bnQ6OlRoaXNGaWVsZE11c3RCZUJldHdlZW57MH1BbmR7MX1be3sgbWluIH19LHt7IG1heCB9fV1gLFxuICAgICAgICBtaW5sZW5ndGg6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRNdXN0QmVBU3RyaW5nT3JBcnJheVR5cGVXaXRoQU1pbmltdW1MZW5ndGhPZlt7eyBtaW4gfX0se3sgbWF4IH19XWAsXG4gICAgICAgIHJlcXVpcmVkOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkSXNSZXF1aXJlZC5gLFxuICAgICAgICBwYXNzd29yZE1pc21hdGNoOiBgQWJwSWRlbnRpdHk6OklkZW50aXR5LlBhc3N3b3JkQ29uZmlybWF0aW9uRmFpbGVkYCxcbiAgICAgIH0sXG4gICAgICBlcnJvclRlbXBsYXRlOiBWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQsXG4gICAgfSksXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBDb25maXJtYXRpb25Db21wb25lbnQsXG4gICAgVG9hc3RDb21wb25lbnQsXG4gICAgTW9kYWxDb21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgTG9hZGVyQmFyQ29tcG9uZW50LFxuICAgIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ29uZmlybWF0aW9uQ29tcG9uZW50LFxuICAgIFRvYXN0Q29tcG9uZW50LFxuICAgIE1vZGFsQ29tcG9uZW50LFxuICAgIExvYWRlckJhckNvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0Vycm9yQ29tcG9uZW50LCBWYWxpZGF0aW9uRXJyb3JDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZVNoYXJlZE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3IsIEVycm9ySGFuZGxlcl0sXG4gICAgICAgICAgdXNlRmFjdG9yeTogYXBwZW5kU2NyaXB0LFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE1lc3NhZ2VTZXJ2aWNlLCB1c2VDbGFzczogTWVzc2FnZVNlcnZpY2UgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/public-api.js b/npm/ng-packs/dist/theme-shared/esm2015/public-api.js index 76b93dad5b..3ce6f1abc8 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/public-api.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/public-api.js @@ -6,7 +6,8 @@ * Public API Surface of theme-shared */ export { appendScript, ThemeSharedModule } from './lib/theme-shared.module'; -export { ConfirmationComponent, ToastComponent, ModalComponent } from './lib/components'; +export { fade, slideFromBottom } from './lib/animations'; +export { ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent } from './lib/components'; export { Toaster } from './lib/models'; export { ConfirmationService, ToasterService } from './lib/services'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsZ0RBQWMsMkJBQTJCLENBQUM7QUFDMUMsc0VBQWMsa0JBQWtCLENBQUM7QUFDakMsd0JBQWMsY0FBYyxDQUFDO0FBQzdCLG9EQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1zaGFyZWRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90aGVtZS1zaGFyZWQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsZ0RBQWMsMkJBQTJCLENBQUM7QUFDMUMsc0NBQWMsa0JBQWtCLENBQUM7QUFDakMsMktBQWMsa0JBQWtCLENBQUM7QUFDakMsd0JBQWMsY0FBYyxDQUFDO0FBQzdCLG9EQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1zaGFyZWRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90aGVtZS1zaGFyZWQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FuaW1hdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js b/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js index e355417f47..43d4337172 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js +++ b/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js @@ -5,13 +5,19 @@ /** * Generated bundle index. Do not edit. */ -export { appendScript, ThemeSharedModule, ConfirmationComponent, ToastComponent, ModalComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; -export { AbstractToasterClass as ɵc } from './lib/abstracts/toaster'; -export { ConfirmationComponent as ɵa } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵf } from './lib/components/errors/error.component'; -export { LoaderBarComponent as ɵg } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵe } from './lib/components/modal/modal.component'; -export { ToastComponent as ɵd } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵh } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵb } from './lib/services/confirmation.service'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUpBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDakcsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlckNsYXNzIGFzIMm1Y30gZnJvbSAnLi9saWIvYWJzdHJhY3RzL3RvYXN0ZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtMb2FkZXJCYXJDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0IHtNb2RhbENvbXBvbmVudCBhcyDJtWV9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtWh9IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnOyJdfQ== \ No newline at end of file +export { appendScript, ThemeSharedModule, fade, slideFromBottom, ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; +export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵb } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; +export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; +export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; +export { ToasterService as ɵk } from './lib/services/toaster.service'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaVJBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlciBhcyDJtWV9IGZyb20gJy4vbGliL2Fic3RyYWN0cy90b2FzdGVyJztcbmV4cG9ydCB7QnJlYWRjcnVtYkNvbXBvbmVudCBhcyDJtW19IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQge0J1dHRvbkNvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWl9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW59IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1ZH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWt9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/abstracts/toaster.js b/npm/ng-packs/dist/theme-shared/esm5/lib/abstracts/toaster.js index f6543f8d5e..7ae677cd9e 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/abstracts/toaster.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/abstracts/toaster.js @@ -10,8 +10,8 @@ import { Subject } from 'rxjs'; var /** * @template T */ -AbstractToasterClass = /** @class */ (function () { - function AbstractToasterClass(messageService) { +AbstractToaster = /** @class */ (function () { + function AbstractToaster(messageService) { this.messageService = messageService; this.key = 'abpToast'; this.sticky = false; @@ -22,7 +22,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.info = /** + AbstractToaster.prototype.info = /** * @param {?} message * @param {?} title * @param {?=} options @@ -37,7 +37,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.success = /** + AbstractToaster.prototype.success = /** * @param {?} message * @param {?} title * @param {?=} options @@ -52,7 +52,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.warn = /** + AbstractToaster.prototype.warn = /** * @param {?} message * @param {?} title * @param {?=} options @@ -67,7 +67,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.error = /** + AbstractToaster.prototype.error = /** * @param {?} message * @param {?} title * @param {?=} options @@ -84,7 +84,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} options * @return {?} */ - AbstractToasterClass.prototype.show = /** + AbstractToaster.prototype.show = /** * @protected * @param {?} message * @param {?} title @@ -94,7 +94,7 @@ AbstractToasterClass = /** @class */ (function () { */ function (message, title, severity, options) { this.messageService.clear(this.key); - this.messageService.add(tslib_1.__assign({ severity: severity, detail: message, summary: title }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); + this.messageService.add(tslib_1.__assign({ severity: severity, detail: message || '', summary: title || '' }, options, { key: this.key }, (typeof (options || ((/** @type {?} */ ({})))).sticky === 'undefined' && { sticky: this.sticky }))); this.status$ = new Subject(); return this.status$; }; @@ -102,7 +102,7 @@ AbstractToasterClass = /** @class */ (function () { * @param {?=} status * @return {?} */ - AbstractToasterClass.prototype.clear = /** + AbstractToaster.prototype.clear = /** * @param {?=} status * @return {?} */ @@ -111,32 +111,23 @@ AbstractToasterClass = /** @class */ (function () { this.status$.next(status || "dismiss" /* dismiss */); this.status$.complete(); }; - return AbstractToasterClass; + return AbstractToaster; }()); /** * @template T */ -export { AbstractToasterClass }; +export { AbstractToaster }; if (false) { + /** @type {?} */ + AbstractToaster.prototype.status$; + /** @type {?} */ + AbstractToaster.prototype.key; + /** @type {?} */ + AbstractToaster.prototype.sticky; /** * @type {?} * @protected */ - AbstractToasterClass.prototype.status$; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.key; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.sticky; - /** - * @type {?} - * @protected - */ - AbstractToasterClass.prototype.messageService; + AbstractToaster.prototype.messageService; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2Fic3RyYWN0cy90b2FzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUczQzs7OztJQU9FLDhCQUFzQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFKMUMsUUFBRyxHQUFXLFVBQVUsQ0FBQztRQUV6QixXQUFNLEdBQVksS0FBSyxDQUFDO0lBRXFCLENBQUM7Ozs7Ozs7SUFDeEQsbUNBQUk7Ozs7OztJQUFKLFVBQUssT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7Ozs7O0lBRUQsc0NBQU87Ozs7OztJQUFQLFVBQVEsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQ2pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDOzs7Ozs7O0lBRUQsbUNBQUk7Ozs7OztJQUFKLFVBQUssT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7Ozs7O0lBRUQsb0NBQUs7Ozs7OztJQUFMLFVBQU0sT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQy9DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs7Ozs7Ozs7SUFFUyxtQ0FBSTs7Ozs7Ozs7SUFBZCxVQUFlLE9BQWUsRUFBRSxLQUFhLEVBQUUsUUFBMEIsRUFBRSxPQUFXO1FBQ3BGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsb0JBQ3JCLFFBQVEsVUFBQSxFQUNSLE1BQU0sRUFBRSxPQUFPLEVBQ2YsT0FBTyxFQUFFLEtBQUssSUFDWCxPQUFPLElBQ1YsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLElBQ1YsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsbUJBQUEsRUFBRSxFQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxXQUFXLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQ3RGLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksT0FBTyxFQUFrQixDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELG9DQUFLOzs7O0lBQUwsVUFBTSxNQUF1QjtRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSwyQkFBMEIsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUNILDJCQUFDO0FBQUQsQ0FBQyxBQTVDRCxJQTRDQzs7Ozs7Ozs7OztJQTNDQyx1Q0FBMkM7Ozs7O0lBRTNDLG1DQUFtQzs7Ozs7SUFFbkMsc0NBQWtDOzs7OztJQUV0Qiw4Q0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9hc3RlciB9IGZyb20gJy4uL21vZGVscy90b2FzdGVyJztcblxuZXhwb3J0IGNsYXNzIEFic3RyYWN0VG9hc3RlckNsYXNzPFQgPSBUb2FzdGVyLk9wdGlvbnM+IHtcbiAgcHJvdGVjdGVkIHN0YXR1cyQ6IFN1YmplY3Q8VG9hc3Rlci5TdGF0dXM+O1xuXG4gIHByb3RlY3RlZCBrZXk6IHN0cmluZyA9ICdhYnBUb2FzdCc7XG5cbiAgcHJvdGVjdGVkIHN0aWNreTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHt9XG4gIGluZm8obWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnaW5mbycsIG9wdGlvbnMpO1xuICB9XG5cbiAgc3VjY2VzcyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICdzdWNjZXNzJywgb3B0aW9ucyk7XG4gIH1cblxuICB3YXJuKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ3dhcm4nLCBvcHRpb25zKTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ2Vycm9yJywgb3B0aW9ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2hvdyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIHNldmVyaXR5OiBUb2FzdGVyLlNldmVyaXR5LCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmNsZWFyKHRoaXMua2V5KTtcblxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcbiAgICAgIHNldmVyaXR5LFxuICAgICAgZGV0YWlsOiBtZXNzYWdlLFxuICAgICAgc3VtbWFyeTogdGl0bGUsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAga2V5OiB0aGlzLmtleSxcbiAgICAgIC4uLih0eXBlb2YgKG9wdGlvbnMgfHwgKHt9IGFzIGFueSkpLnN0aWNreSA9PT0gJ3VuZGVmaW5lZCcgJiYgeyBzdGlja3k6IHRoaXMuc3RpY2t5IH0pLFxuICAgIH0pO1xuICAgIHRoaXMuc3RhdHVzJCA9IG5ldyBTdWJqZWN0PFRvYXN0ZXIuU3RhdHVzPigpO1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyQ7XG4gIH1cblxuICBjbGVhcihzdGF0dXM/OiBUb2FzdGVyLlN0YXR1cykge1xuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY2xlYXIodGhpcy5rZXkpO1xuICAgIHRoaXMuc3RhdHVzJC5uZXh0KHN0YXR1cyB8fCBUb2FzdGVyLlN0YXR1cy5kaXNtaXNzKTtcbiAgICB0aGlzLnN0YXR1cyQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2Fic3RyYWN0cy90b2FzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUczQzs7OztJQU9FLHlCQUFzQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFKcEQsUUFBRyxHQUFXLFVBQVUsQ0FBQztRQUV6QixXQUFNLEdBQVksS0FBSyxDQUFDO0lBRStCLENBQUM7Ozs7Ozs7SUFDeEQsOEJBQUk7Ozs7OztJQUFKLFVBQUssT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7Ozs7O0lBRUQsaUNBQU87Ozs7OztJQUFQLFVBQVEsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQ2pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDOzs7Ozs7O0lBRUQsOEJBQUk7Ozs7OztJQUFKLFVBQUssT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7Ozs7O0lBRUQsK0JBQUs7Ozs7OztJQUFMLFVBQU0sT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFXO1FBQy9DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs7Ozs7Ozs7SUFFUyw4QkFBSTs7Ozs7Ozs7SUFBZCxVQUFlLE9BQWUsRUFBRSxLQUFhLEVBQUUsUUFBMEIsRUFBRSxPQUFXO1FBQ3BGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsb0JBQ3JCLFFBQVEsVUFBQSxFQUNSLE1BQU0sRUFBRSxPQUFPLElBQUksRUFBRSxFQUNyQixPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFDakIsT0FBTyxJQUNWLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxJQUNWLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLG1CQUFBLEVBQUUsRUFBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssV0FBVyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUN0RixDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBa0IsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQzs7Ozs7SUFFRCwrQkFBSzs7OztJQUFMLFVBQU0sTUFBdUI7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sMkJBQTBCLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFDSCxzQkFBQztBQUFELENBQUMsQUE1Q0QsSUE0Q0M7Ozs7Ozs7SUEzQ0Msa0NBQWlDOztJQUVqQyw4QkFBeUI7O0lBRXpCLGlDQUF3Qjs7Ozs7SUFFWix5Q0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9hc3RlciB9IGZyb20gJy4uL21vZGVscy90b2FzdGVyJztcblxuZXhwb3J0IGNsYXNzIEFic3RyYWN0VG9hc3RlcjxUID0gVG9hc3Rlci5PcHRpb25zPiB7XG4gIHN0YXR1cyQ6IFN1YmplY3Q8VG9hc3Rlci5TdGF0dXM+O1xuXG4gIGtleTogc3RyaW5nID0gJ2FicFRvYXN0JztcblxuICBzdGlja3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlKSB7fVxuICBpbmZvKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU6IHN0cmluZywgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ2luZm8nLCBvcHRpb25zKTtcbiAgfVxuXG4gIHN1Y2Nlc3MobWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBvcHRpb25zPzogVCk6IE9ic2VydmFibGU8VG9hc3Rlci5TdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnc3VjY2VzcycsIG9wdGlvbnMpO1xuICB9XG5cbiAgd2FybihtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICd3YXJuJywgb3B0aW9ucyk7XG4gIH1cblxuICBlcnJvcihtZXNzYWdlOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIG9wdGlvbnM/OiBUKTogT2JzZXJ2YWJsZTxUb2FzdGVyLlN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICdlcnJvcicsIG9wdGlvbnMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNob3cobWVzc2FnZTogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBzZXZlcml0eTogVG9hc3Rlci5TZXZlcml0eSwgb3B0aW9ucz86IFQpOiBPYnNlcnZhYmxlPFRvYXN0ZXIuU3RhdHVzPiB7XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5jbGVhcih0aGlzLmtleSk7XG5cbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XG4gICAgICBzZXZlcml0eSxcbiAgICAgIGRldGFpbDogbWVzc2FnZSB8fCAnJyxcbiAgICAgIHN1bW1hcnk6IHRpdGxlIHx8ICcnLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGtleTogdGhpcy5rZXksXG4gICAgICAuLi4odHlwZW9mIChvcHRpb25zIHx8ICh7fSBhcyBhbnkpKS5zdGlja3kgPT09ICd1bmRlZmluZWQnICYmIHsgc3RpY2t5OiB0aGlzLnN0aWNreSB9KSxcbiAgICB9KTtcbiAgICB0aGlzLnN0YXR1cyQgPSBuZXcgU3ViamVjdDxUb2FzdGVyLlN0YXR1cz4oKTtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMkO1xuICB9XG5cbiAgY2xlYXIoc3RhdHVzPzogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmNsZWFyKHRoaXMua2V5KTtcbiAgICB0aGlzLnN0YXR1cyQubmV4dChzdGF0dXMgfHwgVG9hc3Rlci5TdGF0dXMuZGlzbWlzcyk7XG4gICAgdGhpcy5zdGF0dXMkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/animations/fade.animations.js b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/fade.animations.js new file mode 100644 index 0000000000..66f53ef249 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/fade.animations.js @@ -0,0 +1,12 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { animate, state, style, transition, trigger } from '@angular/animations'; +/** @type {?} */ +export var fade = trigger('fade', [ + state('void', style({ opacity: 1 })), + transition(':enter', [style({ opacity: 0 }), animate(250)]), + transition(':leave', animate(250, style({ opacity: 0 }))), +]); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFkZS5hbmltYXRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvYW5pbWF0aW9ucy9mYWRlLmFuaW1hdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpGLE1BQU0sS0FBTyxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRTtJQUNsQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzRCxVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztDQUMxRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBmYWRlID0gdHJpZ2dlcignZmFkZScsIFtcbiAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpLFxuICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbc3R5bGUoeyBvcGFjaXR5OiAwIH0pLCBhbmltYXRlKDI1MCldKSxcbiAgdHJhbnNpdGlvbignOmxlYXZlJywgYW5pbWF0ZSgyNTAsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSkpLFxuXSk7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/animations/index.js b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/index.js new file mode 100644 index 0000000000..56c7f53734 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/index.js @@ -0,0 +1,7 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +export { fade } from './fade.animations'; +export { slideFromBottom } from './slide.animations'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9hbmltYXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxQkFBYyxtQkFBbUIsQ0FBQztBQUNsQyxnQ0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmFkZS5hbmltYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc2xpZGUuYW5pbWF0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/animations/slide.animations.js b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/slide.animations.js new file mode 100644 index 0000000000..d6414c0657 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/animations/slide.animations.js @@ -0,0 +1,12 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { animate, state, style, transition, trigger } from '@angular/animations'; +/** @type {?} */ +export var slideFromBottom = trigger('routeAnimations', [ + state('void', style({ 'margin-top': '20px', opacity: '0' })), + state('*', style({ 'margin-top': '0px', opacity: '1' })), + transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]), +]); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUuYW5pbWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FuaW1hdGlvbnMvc2xpZGUuYW5pbWF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQVMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFDeEYsTUFBTSxLQUFPLGVBQWUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLEVBQUU7SUFDeEQsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzVELEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUN4RCxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUMvRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyLCBxdWVyeSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuZXhwb3J0IGNvbnN0IHNsaWRlRnJvbUJvdHRvbSA9IHRyaWdnZXIoJ3JvdXRlQW5pbWF0aW9ucycsIFtcbiAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7ICdtYXJnaW4tdG9wJzogJzIwcHgnLCBvcGFjaXR5OiAnMCcgfSkpLFxuICBzdGF0ZSgnKicsIHN0eWxlKHsgJ21hcmdpbi10b3AnOiAnMHB4Jywgb3BhY2l0eTogJzEnIH0pKSxcbiAgdHJhbnNpdGlvbignOmVudGVyJywgW2FuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6ICcxJywgJ21hcmdpbi10b3AnOiAnMHB4JyB9KSldKSxcbl0pO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/breadcrumb/breadcrumb.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/breadcrumb/breadcrumb.component.js new file mode 100644 index 0000000000..ad7e58557d --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/breadcrumb/breadcrumb.component.js @@ -0,0 +1,87 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; +import { Store } from '@ngxs/store'; +import { ConfigState } from '@abp/ng.core'; +var BreadcrumbComponent = /** @class */ (function () { + function BreadcrumbComponent(router, store) { + this.router = router; + this.store = store; + this.segments = []; + this.show = !!this.store.selectSnapshot((/** + * @param {?} state + * @return {?} + */ + function (state) { return state.LeptonLayoutState; })); + } + /** + * @return {?} + */ + BreadcrumbComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + /** @type {?} */ + var splittedUrl = this.router.url.split('/').filter((/** + * @param {?} chunk + * @return {?} + */ + function (chunk) { return chunk; })); + /** @type {?} */ + var currentUrl = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0])); + this.segments.push(currentUrl.name); + if (splittedUrl.length > 1) { + var _a = tslib_1.__read(splittedUrl), arr = _a.slice(1); + /** @type {?} */ + var childRoute = currentUrl; + var _loop_1 = function (i) { + /** @type {?} */ + var element = arr[i]; + childRoute = childRoute.children.find((/** + * @param {?} child + * @return {?} + */ + function (child) { return child.path === element; })); + this_1.segments.push(childRoute.name); + }; + var this_1 = this; + for (var i = 0; i < arr.length; i++) { + _loop_1(i); + } + } + }; + BreadcrumbComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-breadcrumb', + template: "\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n " + }] } + ]; + /** @nocollapse */ + BreadcrumbComponent.ctorParameters = function () { return [ + { type: Router }, + { type: Store } + ]; }; + return BreadcrumbComponent; +}()); +export { BreadcrumbComponent }; +if (false) { + /** @type {?} */ + BreadcrumbComponent.prototype.show; + /** @type {?} */ + BreadcrumbComponent.prototype.segments; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.router; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxXQUFXLEVBQU8sTUFBTSxjQUFjLENBQUM7QUFFaEQ7SUF1QkUsNkJBQW9CLE1BQWMsRUFBVSxLQUFZO1FBQXBDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBRnhELGFBQVEsR0FBYSxFQUFFLENBQUM7UUFHdEIsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjOzs7O1FBQUMsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsaUJBQWlCLEVBQXZCLENBQXVCLEVBQUMsQ0FBQztJQUM1RSxDQUFDOzs7O0lBRUQsc0NBQVE7OztJQUFSOztZQUNRLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTTs7OztRQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSyxFQUFMLENBQUssRUFBQzs7WUFFL0QsVUFBVSxHQUFrQixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3BCLElBQUEsZ0NBQXdCLEVBQXJCLGlCQUFxQjs7Z0JBRTFCLFVBQVUsR0FBa0IsVUFBVTtvQ0FDakMsQ0FBQzs7b0JBQ0YsT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUk7Ozs7Z0JBQUMsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBdEIsQ0FBc0IsRUFBQyxDQUFDO2dCQUV2RSxPQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDOzs7WUFKdEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFO3dCQUExQixDQUFDO2FBS1Q7U0FDRjtJQUNILENBQUM7O2dCQTVDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLDJaQWNUO2lCQUNGOzs7O2dCQXJCUSxNQUFNO2dCQUNOLEtBQUs7O0lBZ0RkLDBCQUFDO0NBQUEsQUE3Q0QsSUE2Q0M7U0EzQlksbUJBQW1COzs7SUFDOUIsbUNBQWM7O0lBRWQsdUNBQXdCOzs7OztJQUVaLHFDQUFzQjs7Ozs7SUFBRSxvQ0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgQ29uZmlnU3RhdGUsIEFCUCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1icmVhZGNydW1iJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8b2wgKm5nSWY9XCJzaG93XCIgY2xhc3M9XCJicmVhZGNydW1iXCI+XG4gICAgICA8bGkgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIj5cbiAgICAgICAgPGEgcm91dGVyTGluaz1cIi9cIj48aSBjbGFzcz1cImZhIGZhLWhvbWVcIj48L2k+IDwvYT5cbiAgICAgIDwvbGk+XG4gICAgICA8bGlcbiAgICAgICAgKm5nRm9yPVwibGV0IHNlZ21lbnQgb2Ygc2VnbWVudHM7IGxldCBsYXN0ID0gbGFzdFwiXG4gICAgICAgIGNsYXNzPVwiYnJlYWRjcnVtYi1pdGVtXCJcbiAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJsYXN0XCJcbiAgICAgICAgYXJpYS1jdXJyZW50PVwicGFnZVwiXG4gICAgICA+XG4gICAgICAgIHt7IHNlZ21lbnQgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgIDwvbGk+XG4gICAgPC9vbD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWRjcnVtYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNob3c6IGJvb2xlYW47XG5cbiAgc2VnbWVudHM6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHtcbiAgICB0aGlzLnNob3cgPSAhIXRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3Qoc3RhdGUgPT4gc3RhdGUuTGVwdG9uTGF5b3V0U3RhdGUpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3Qgc3BsaXR0ZWRVcmwgPSB0aGlzLnJvdXRlci51cmwuc3BsaXQoJy8nKS5maWx0ZXIoY2h1bmsgPT4gY2h1bmspO1xuXG4gICAgY29uc3QgY3VycmVudFVybDogQUJQLkZ1bGxSb3V0ZSA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoQ29uZmlnU3RhdGUuZ2V0Um91dGUoc3BsaXR0ZWRVcmxbMF0pKTtcbiAgICB0aGlzLnNlZ21lbnRzLnB1c2goY3VycmVudFVybC5uYW1lKTtcblxuICAgIGlmIChzcGxpdHRlZFVybC5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBbLCAuLi5hcnJdID0gc3BsaXR0ZWRVcmw7XG5cbiAgICAgIGxldCBjaGlsZFJvdXRlOiBBQlAuRnVsbFJvdXRlID0gY3VycmVudFVybDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBhcnJbaV07XG4gICAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmNoaWxkcmVuLmZpbmQoY2hpbGQgPT4gY2hpbGQucGF0aCA9PT0gZWxlbWVudCk7XG5cbiAgICAgICAgdGhpcy5zZWdtZW50cy5wdXNoKGNoaWxkUm91dGUubmFtZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/button/button.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/button/button.component.js new file mode 100644 index 0000000000..88485470d2 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/button/button.component.js @@ -0,0 +1,51 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component, Input } from '@angular/core'; +var ButtonComponent = /** @class */ (function () { + function ButtonComponent() { + this.buttonClass = 'btn btn-primary'; + this.type = 'button'; + this.loading = false; + this.disabled = false; + } + Object.defineProperty(ButtonComponent.prototype, "icon", { + get: /** + * @return {?} + */ + function () { + return "" + (this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'); + }, + enumerable: true, + configurable: true + }); + ButtonComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-button', + template: "\n \n " + }] } + ]; + ButtonComponent.propDecorators = { + buttonClass: [{ type: Input }], + type: [{ type: Input }], + iconClass: [{ type: Input }], + loading: [{ type: Input }], + disabled: [{ type: Input }] + }; + return ButtonComponent; +}()); +export { ButtonComponent }; +if (false) { + /** @type {?} */ + ButtonComponent.prototype.buttonClass; + /** @type {?} */ + ButtonComponent.prototype.type; + /** @type {?} */ + ButtonComponent.prototype.iconClass; + /** @type {?} */ + ButtonComponent.prototype.loading; + /** @type {?} */ + ButtonComponent.prototype.disabled; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpEO0lBQUE7UUFVRSxnQkFBVyxHQUFXLGlCQUFpQixDQUFDO1FBR3hDLFNBQUksR0FBVyxRQUFRLENBQUM7UUFNeEIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUd6QixhQUFRLEdBQVksS0FBSyxDQUFDO0lBSzVCLENBQUM7SUFIQyxzQkFBSSxpQ0FBSTs7OztRQUFSO1lBQ0UsT0FBTyxNQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLFFBQVEsQ0FBRSxDQUFDO1FBQ2xGLENBQUM7OztPQUFBOztnQkExQkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixRQUFRLEVBQUUsK0xBSVQ7aUJBQ0Y7Ozs4QkFFRSxLQUFLO3VCQUdMLEtBQUs7NEJBR0wsS0FBSzswQkFHTCxLQUFLOzJCQUdMLEtBQUs7O0lBTVIsc0JBQUM7Q0FBQSxBQTNCRCxJQTJCQztTQW5CWSxlQUFlOzs7SUFDMUIsc0NBQ3dDOztJQUV4QywrQkFDd0I7O0lBRXhCLG9DQUNrQjs7SUFFbEIsa0NBQ3lCOztJQUV6QixtQ0FDMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1idXR0b24nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxidXR0b24gW2F0dHIudHlwZV09XCJ0eXBlXCIgW25nQ2xhc3NdPVwiYnV0dG9uQ2xhc3NcIiBbZGlzYWJsZWRdPVwibG9hZGluZyB8fCBkaXNhYmxlZFwiPlxuICAgICAgPGkgW25nQ2xhc3NdPVwiaWNvblwiIGNsYXNzPVwibXItMVwiPjwvaT48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9idXR0b24+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGJ1dHRvbkNsYXNzOiBzdHJpbmcgPSAnYnRuIGJ0bi1wcmltYXJ5JztcblxuICBASW5wdXQoKVxuICB0eXBlOiBzdHJpbmcgPSAnYnV0dG9uJztcblxuICBASW5wdXQoKVxuICBpY29uQ2xhc3M6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXQgaWNvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmxvYWRpbmcgPyAnZmEgZmEtc3BpbiBmYS1zcGlubmVyJyA6IHRoaXMuaWNvbkNsYXNzIHx8ICdkLW5vbmUnfWA7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/change-password/change-password.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/change-password/change-password.component.js new file mode 100644 index 0000000000..5bf57c5b48 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/change-password/change-password.component.js @@ -0,0 +1,177 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { ChangePassword } from '@abp/ng.core'; +import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild, } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { comparePasswords } from '@ngx-validate/core'; +import { Store } from '@ngxs/store'; +import snq from 'snq'; +import { finalize } from 'rxjs/operators'; +import { ToasterService } from '../../services/toaster.service'; +var minLength = Validators.minLength, required = Validators.required; +var ChangePasswordComponent = /** @class */ (function () { + function ChangePasswordComponent(fb, store, toasterService) { + this.fb = fb; + this.store = store; + this.toasterService = toasterService; + this.visibleChange = new EventEmitter(); + this.modalBusy = false; + } + Object.defineProperty(ChangePasswordComponent.prototype, "visible", { + get: /** + * @return {?} + */ + function () { + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._visible = value; + this.visibleChange.emit(value); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + ChangePasswordComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + this.form = this.fb.group({ + password: ['', required], + newPassword: ['', required], + repeatNewPassword: ['', required], + }, { + validators: [comparePasswords(['newPassword', 'repeatNewPassword'])], + }); + }; + /** + * @return {?} + */ + ChangePasswordComponent.prototype.onSubmit = /** + * @return {?} + */ + function () { + var _this = this; + if (this.form.invalid) + return; + this.modalBusy = true; + this.store + .dispatch(new ChangePassword({ + currentPassword: this.form.get('password').value, + newPassword: this.form.get('newPassword').value, + })) + .pipe(finalize((/** + * @return {?} + */ + function () { + _this.modalBusy = false; + }))) + .subscribe({ + next: (/** + * @return {?} + */ + function () { + _this.visible = false; + _this.form.reset(); + }), + error: (/** + * @param {?} err + * @return {?} + */ + function (err) { + _this.toasterService.error(snq((/** + * @return {?} + */ + function () { return err.error.error.message; }), 'AbpAccount::DefaultErrorMessage'), 'Error', { + life: 7000, + }); + }), + }); + }; + /** + * @return {?} + */ + ChangePasswordComponent.prototype.openModal = /** + * @return {?} + */ + function () { + this.visible = true; + }; + /** + * @param {?} __0 + * @return {?} + */ + ChangePasswordComponent.prototype.ngOnChanges = /** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + }; + ChangePasswordComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-change-password', + template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ChangePasswordComponent.ctorParameters = function () { return [ + { type: FormBuilder }, + { type: Store }, + { type: ToasterService } + ]; }; + ChangePasswordComponent.propDecorators = { + visible: [{ type: Input }], + visibleChange: [{ type: Output }], + modalContent: [{ type: ViewChild, args: ['modalContent', { static: false },] }] + }; + return ChangePasswordComponent; +}()); +export { ChangePasswordComponent }; +if (false) { + /** + * @type {?} + * @protected + */ + ChangePasswordComponent.prototype._visible; + /** @type {?} */ + ChangePasswordComponent.prototype.visibleChange; + /** @type {?} */ + ChangePasswordComponent.prototype.modalContent; + /** @type {?} */ + ChangePasswordComponent.prototype.form; + /** @type {?} */ + ChangePasswordComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.store; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.toasterService; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4RCxJQUFBLGdDQUFTLEVBQUUsOEJBQVE7QUFFM0I7SUEyQkUsaUNBQW9CLEVBQWUsRUFBVSxLQUFZLEVBQVUsY0FBOEI7UUFBN0UsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFUakcsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBTzVDLGNBQVMsR0FBWSxLQUFLLENBQUM7SUFFeUUsQ0FBQztJQXBCckcsc0JBQ0ksNENBQU87Ozs7UUFEWDtZQUVFLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN2QixDQUFDOzs7OztRQUVELFVBQVksS0FBYztZQUN4QixJ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Q0FBdUI7Ozs7O0lBQUUsd0NBQW9COzs7OztJQUFFLGlEQUFzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZVBhc3N3b3JkIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY29tcGFyZVBhc3N3b3JkcyB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90b2FzdGVyLnNlcnZpY2UnO1xuXG5jb25zdCB7IG1pbkxlbmd0aCwgcmVxdWlyZWQgfSA9IFZhbGlkYXRvcnM7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1jaGFuZ2UtcGFzc3dvcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByb3RlY3RlZCBfdmlzaWJsZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBtb2RhbENvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSwgcHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChcbiAgICAgIHtcbiAgICAgICAgcGFzc3dvcmQ6IFsnJywgcmVxdWlyZWRdLFxuICAgICAgICBuZXdQYXNzd29yZDogWycnLCByZXF1aXJlZF0sXG4gICAgICAgIHJlcGVhdE5ld1Bhc3N3b3JkOiBbJycsIHJlcXVpcmVkXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHZhbGlkYXRvcnM6IFtjb21wYXJlUGFzc3dvcmRzKFsnbmV3UGFzc3dvcmQnLCAncmVwZWF0TmV3UGFzc3dvcmQnXSldLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XG4gICAgdGhpcy5tb2RhbEJ1c3kgPSB0cnVlO1xuXG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKFxuICAgICAgICBuZXcgQ2hhbmdlUGFzc3dvcmQoe1xuICAgICAgICAgIGN1cnJlbnRQYXNzd29yZDogdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKS52YWx1ZSxcbiAgICAgICAgICBuZXdQYXNzd29yZDogdGhpcy5mb3JtLmdldCgnbmV3UGFzc3dvcmQnKS52YWx1ZSxcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubW9kYWxCdXN5ID0gZmFsc2U7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcihzbnEoKCkgPT4gZXJyLmVycm9yLmVycm9yLm1lc3NhZ2UsICdBYnBBY2NvdW50OjpEZWZhdWx0RXJyb3JNZXNzYWdlJyksICdFcnJvcicsIHtcbiAgICAgICAgICAgIGxpZmU6IDcwMDAsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgfVxuXG4gIG9wZW5Nb2RhbCgpIHtcbiAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js index 74f44b2c36..91b23088cb 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js @@ -25,7 +25,7 @@ var ConfirmationComponent = /** @class */ (function () { ConfirmationComponent.decorators = [ { type: Component, args: [{ selector: 'abp-confirmation', - template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " + template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " }] } ]; /** @nocollapse */ @@ -48,4 +48,4 @@ if (false) { */ ConfirmationComponent.prototype.confirmationService; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHMUU7SUFzQ0UsK0JBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBSjVELFlBQU8sMkJBQTBCO1FBQ2pDLFdBQU0seUJBQXlCO1FBQy9CLFlBQU8sMkJBQTBCO0lBRThCLENBQUM7Ozs7O0lBRWhFLHFDQUFLOzs7O0lBQUwsVUFBTSxNQUFzQjtRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O2dCQTFDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLDhwQ0E2QlQ7aUJBQ0Y7Ozs7Z0JBbkNRLG1CQUFtQjs7SUE4QzVCLDRCQUFDO0NBQUEsQUEzQ0QsSUEyQ0M7U0FWWSxxQkFBcUI7OztJQUNoQyx3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cIlwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2Uuc3VtbWFyeVwiIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShyZWplY3QpXCI+XG4gICAgICAgICAgICB7eyBtZXNzYWdlLmNhbmNlbENvcHkgfHwgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVZZXNCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShjb25maXJtKVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgbWVzc2FnZS55ZXNDb3B5IHx8ICdBYnBJZGVudGl0eTo6WWVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcbiAgY29uZmlybSA9IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm07XG4gIHJlamVjdCA9IFRvYXN0ZXIuU3RhdHVzLnJlamVjdDtcbiAgZGlzbWlzcyA9IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3M7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGNsb3NlKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xlYXIoc3RhdHVzKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHMUU7SUE0Q0UsK0JBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBSjVELFlBQU8sMkJBQTBCO1FBQ2pDLFdBQU0seUJBQXlCO1FBQy9CLFlBQU8sMkJBQTBCO0lBRThCLENBQUM7Ozs7O0lBRWhFLHFDQUFLOzs7O0lBQUwsVUFBTSxNQUFzQjtRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O2dCQWhERixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLHF2Q0FtQ1Q7aUJBQ0Y7Ozs7Z0JBekNRLG1CQUFtQjs7SUFvRDVCLDRCQUFDO0NBQUEsQUFqREQsSUFpREM7U0FWWSxxQkFBcUI7OztJQUNoQyx3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cIlwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2Uuc3VtbWFyeVwiIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShyZWplY3QpXCI+XG4gICAgICAgICAgICB7eyBtZXNzYWdlLmNhbmNlbENvcHkgfHwgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhbWVzc2FnZS5oaWRlWWVzQnRuXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoY29uZmlybSlcIlxuICAgICAgICAgICAgYXV0b2ZvY3VzXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+e3sgbWVzc2FnZS55ZXNDb3B5IHx8ICdBYnBJZGVudGl0eTo6WWVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcbiAgY29uZmlybSA9IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm07XG4gIHJlamVjdCA9IFRvYXN0ZXIuU3RhdHVzLnJlamVjdDtcbiAgZGlzbWlzcyA9IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3M7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGNsb3NlKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xlYXIoc3RhdHVzKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/error.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/error.component.js index 1f2f22c95e..bf8bc88c00 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/error.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/error.component.js @@ -20,7 +20,7 @@ var ErrorComponent = /** @class */ (function () { ErrorComponent.decorators = [ { type: Component, args: [{ selector: 'abp-error', - template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title }}\n

    \n
    \n {{ details }}\n
    \n \n
    \n
    \n
    \n
    \n ", + template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ", styles: [".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"] }] } ]; @@ -39,4 +39,4 @@ if (false) { /** @type {?} */ ErrorComponent.prototype.host; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lcnJvcnMvZXJyb3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUVqRTtJQUFBO1FBNkJFLFVBQUssR0FBRyxPQUFPLENBQUM7UUFFaEIsWUFBTyxHQUFHLDhCQUE4QixDQUFDO0lBVzNDLENBQUM7Ozs7SUFIQyxnQ0FBTzs7O0lBQVA7UUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7Z0JBekNGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLDZ2QkF1QlQ7O2lCQUVGOztJQWVELHFCQUFDO0NBQUEsQUExQ0QsSUEwQ0M7U0FkWSxjQUFjOzs7SUFDekIsK0JBQWdCOztJQUVoQixpQ0FBeUM7O0lBRXpDLGtDQUFvQjs7SUFFcEIsb0NBQXVCOztJQUV2Qiw4QkFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgUmVuZGVyZXIyLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1lcnJvcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImVycm9yXCI+XG4gICAgICA8YnV0dG9uIGlkPVwiYWJwLWNsb3NlLWJ1dHRvbiBtci0yXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiY2xvc2VcIiAoY2xpY2spPVwiZGVzdHJveSgpXCI+XG4gICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZ0aW1lczs8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgY2VudGVyZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci10ZW1wbGF0ZVwiPlxuICAgICAgICAgICAgPGgxPlxuICAgICAgICAgICAgICB7eyB0aXRsZSB9fVxuICAgICAgICAgICAgPC9oMT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci1kZXRhaWxzXCI+XG4gICAgICAgICAgICAgIHt7IGRldGFpbHMgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWFjdGlvbnNcIj5cbiAgICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tbWQgbXQtMlwiXG4gICAgICAgICAgICAgICAgPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1ob21lXCI+PC9zcGFuPiBUYWtlIG1lIGhvbWVcbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWydlcnJvci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBFcnJvckNvbXBvbmVudCB7XG4gIHRpdGxlID0gJ09vcHMhJztcblxuICBkZXRhaWxzID0gJ1NvcnJ5LCBhbiBlcnJvciBoYXMgb2NjdXJlZC4nO1xuXG4gIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgZWxlbWVudFJlZjogRWxlbWVudFJlZjtcblxuICBob3N0OiBhbnk7XG5cbiAgZGVzdHJveSgpIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMuaG9zdCwgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lcnJvcnMvZXJyb3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUVqRTtJQUFBO1FBNkJFLFVBQUssR0FBRyxPQUFPLENBQUM7UUFFaEIsWUFBTyxHQUFHLDhCQUE4QixDQUFDO0lBVzNDLENBQUM7Ozs7SUFIQyxnQ0FBTzs7O0lBQVA7UUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7Z0JBekNGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLGcxQkF1QlQ7O2lCQUVGOztJQWVELHFCQUFDO0NBQUEsQUExQ0QsSUEwQ0M7U0FkWSxjQUFjOzs7SUFDekIsK0JBQWdCOztJQUVoQixpQ0FBeUM7O0lBRXpDLGtDQUFvQjs7SUFFcEIsb0NBQXVCOztJQUV2Qiw4QkFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgUmVuZGVyZXIyLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1lcnJvcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImVycm9yXCI+XG4gICAgICA8YnV0dG9uIGlkPVwiYWJwLWNsb3NlLWJ1dHRvbiBtci0yXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiY2xvc2VcIiAoY2xpY2spPVwiZGVzdHJveSgpXCI+XG4gICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiZ0aW1lczs8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgY2VudGVyZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci10ZW1wbGF0ZVwiPlxuICAgICAgICAgICAgPGgxPlxuICAgICAgICAgICAgICB7eyB0aXRsZSB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgPC9oMT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci1kZXRhaWxzXCI+XG4gICAgICAgICAgICAgIHt7IGRldGFpbHMgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWFjdGlvbnNcIj5cbiAgICAgICAgICAgICAgPGEgKGNsaWNrKT1cImRlc3Ryb3koKVwiIHJvdXRlckxpbms9XCIvXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLW1kIG10LTJcIlxuICAgICAgICAgICAgICAgID48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24taG9tZVwiPjwvc3Bhbj4ge3sgJzo6TWVudTpIb21lJyB8IGFicExvY2FsaXphdGlvbiB9fVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJ2Vycm9yLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQ29tcG9uZW50IHtcbiAgdGl0bGUgPSAnT29wcyEnO1xuXG4gIGRldGFpbHMgPSAnU29ycnksIGFuIGVycm9yIGhhcyBvY2N1cmVkLic7XG5cbiAgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuXG4gIGhvc3Q6IGFueTtcblxuICBkZXN0cm95KCkge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5ob3N0LCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/validation-error.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/validation-error.component.js new file mode 100644 index 0000000000..a44a93f69c --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/errors/validation-error.component.js @@ -0,0 +1,49 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core'; +import { ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core'; +var ValidationErrorComponent = /** @class */ (function (_super) { + tslib_1.__extends(ValidationErrorComponent, _super); + function ValidationErrorComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(ValidationErrorComponent.prototype, "abpErrors", { + get: /** + * @return {?} + */ + function () { + if (!this.errors || !this.errors.length) + return []; + return this.errors.map((/** + * @param {?} error + * @return {?} + */ + function (error) { + if (!error.message) + return error; + /** @type {?} */ + var index = error.message.indexOf('['); + if (index > -1) { + return tslib_1.__assign({}, error, { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') }); + } + return error; + })); + }, + enumerable: true, + configurable: true + }); + ValidationErrorComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-validation-error', + template: "\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ", + changeDetection: ChangeDetectionStrategy.OnPush, + encapsulation: ViewEncapsulation.None + }] } + ]; + return ValidationErrorComponent; +}(ErrorComponent)); +export { ValidationErrorComponent }; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1lcnJvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFjLHdCQUF3QixJQUFJLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTVGO0lBVThDLG9EQUFjO0lBVjVEOztJQThCQSxDQUFDO0lBbkJDLHNCQUFJLCtDQUFTOzs7O1FBQWI7WUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtnQkFBRSxPQUFPLEVBQUUsQ0FBQztZQUVuRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsS0FBSztnQkFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO29CQUFFLE9BQU8sS0FBSyxDQUFDOztvQkFFM0IsS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFFeEMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQ2QsNEJBQ0ssS0FBSyxJQUNSLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQ3RDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUN0RjtpQkFDSDtnQkFFRCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUMsRUFBQyxDQUFDO1FBQ0wsQ0FBQzs7O09BQUE7O2dCQTdCRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLG9MQUlUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7O0lBcUJELCtCQUFDO0NBQUEsQUE5QkQsQ0FVOEMsY0FBYyxHQW9CM0Q7U0FwQlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRpb24sIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCBhcyBFcnJvckNvbXBvbmVudCB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC12YWxpZGF0aW9uLWVycm9yJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0Zvcj1cImxldCBlcnJvciBvZiBhYnBFcnJvcnM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAge3sgZXJyb3IubWVzc2FnZSB8IGFicExvY2FsaXphdGlvbjogZXJyb3IuaW50ZXJwb2xpdGVQYXJhbXMgfX1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCBleHRlbmRzIEVycm9yQ29tcG9uZW50IHtcbiAgZ2V0IGFicEVycm9ycygpOiBWYWxpZGF0aW9uLkVycm9yW10gJiB7IGludGVycG9saXRlUGFyYW1zPzogc3RyaW5nW10gfSB7XG4gICAgaWYgKCF0aGlzLmVycm9ycyB8fCAhdGhpcy5lcnJvcnMubGVuZ3RoKSByZXR1cm4gW107XG5cbiAgICByZXR1cm4gdGhpcy5lcnJvcnMubWFwKGVycm9yID0+IHtcbiAgICAgIGlmICghZXJyb3IubWVzc2FnZSkgcmV0dXJuIGVycm9yO1xuXG4gICAgICBjb25zdCBpbmRleCA9IGVycm9yLm1lc3NhZ2UuaW5kZXhPZignWycpO1xuXG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmVycm9yLFxuICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2Uuc2xpY2UoMCwgaW5kZXgpLFxuICAgICAgICAgIGludGVycG9saXRlUGFyYW1zOiBlcnJvci5tZXNzYWdlLnNsaWNlKGluZGV4ICsgMSwgZXJyb3IubWVzc2FnZS5sZW5ndGggLSAxKS5zcGxpdCgnLCcpLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZXJyb3I7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js index c5ead0704c..056a0009d9 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js @@ -2,7 +2,12 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +export { ButtonComponent } from './button/button.component'; +export { BreadcrumbComponent } from './breadcrumb/breadcrumb.component'; +export { ChangePasswordComponent } from './change-password/change-password.component'; export { ConfirmationComponent } from './confirmation/confirmation.component'; -export { ToastComponent } from './toast/toast.component'; +export { LoaderBarComponent } from './loader-bar/loader-bar.component'; export { ModalComponent } from './modal/modal.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90b2FzdC90b2FzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuIl19 \ No newline at end of file +export { ProfileComponent } from './profile/profile.component'; +export { ToastComponent } from './toast/toast.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxnQ0FBYywyQkFBMkIsQ0FBQztBQUMxQyxvQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCx3Q0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxtQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QyxpQ0FBYyw2QkFBNkIsQ0FBQztBQUM1QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maXJtYXRpb24vY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/loader-bar/loader-bar.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/loader-bar/loader-bar.component.js index 04f5563f60..4c8f351c31 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/loader-bar/loader-bar.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/loader-bar/loader-bar.component.js @@ -2,12 +2,12 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +import { StartLoader, StopLoader } from '@abp/ng.core'; import { Component, Input } from '@angular/core'; +import { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router'; +import { takeUntilDestroy } from '@ngx-validate/core'; import { Actions, ofActionSuccessful } from '@ngxs/store'; -import { LoaderStart, LoaderStop } from '@abp/ng.core'; import { filter } from 'rxjs/operators'; -import { Router, NavigationStart, NavigationEnd } from '@angular/router'; -import { takeUntilDestroy } from '@ngx-validate/core'; var LoaderBarComponent = /** @class */ (function () { function LoaderBarComponent(actions, router) { var _this = this; @@ -23,13 +23,13 @@ var LoaderBarComponent = /** @class */ (function () { function (action) { return action.payload.url.indexOf('openid-configuration') < 0; }); this.progressLevel = 0; actions - .pipe(ofActionSuccessful(LoaderStart, LoaderStop), filter(this.filter), takeUntilDestroy(this)) + .pipe(ofActionSuccessful(StartLoader, StopLoader), filter(this.filter), takeUntilDestroy(this)) .subscribe((/** * @param {?} action * @return {?} */ function (action) { - if (action instanceof LoaderStart) + if (action instanceof StartLoader) _this.startLoading(); else _this.stopLoading(); @@ -39,7 +39,9 @@ var LoaderBarComponent = /** @class */ (function () { * @param {?} event * @return {?} */ - function (event) { return event instanceof NavigationStart || event instanceof NavigationEnd; })), takeUntilDestroy(this)) + function (event) { + return event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError; + })), takeUntilDestroy(this)) .subscribe((/** * @param {?} event * @return {?} @@ -150,4 +152,4 @@ if (false) { */ LoaderBarComponent.prototype.router; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXREO0lBMEJFLDRCQUFvQixPQUFnQixFQUFVLE1BQWM7UUFBNUQsaUJBcUJDO1FBckJtQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWY1RCxtQkFBYyxHQUFXLGdCQUFnQixDQUFDO1FBRzFDLGtCQUFhLEdBQVcsY0FBYyxDQUFDO1FBR3ZDLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFHM0IsV0FBTTs7OztRQUFHLFVBQUMsTUFBZ0MsSUFBSyxPQUFBLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsRUFBdEQsQ0FBc0QsRUFBQztRQUV0RyxrQkFBYSxHQUFXLENBQUMsQ0FBQztRQUt4QixPQUFPO2FBQ0osSUFBSSxDQUNILGtCQUFrQixDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFDM0MsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDbkIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQ3ZCO2FBQ0EsU0FBUzs7OztRQUFDLFVBQUEsTUFBTTtZQUNmLElBQUksTUFBTSxZQUFZLFdBQVc7Z0JBQUUsS0FBSSxDQUFDLFlBQVksRUFBRSxDQUFDOztnQkFDbEQsS0FBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFCLENBQUMsRUFBQyxDQUFDO1FBRUwsTUFBTSxDQUFDLE1BQU07YUFDVixJQUFJLENBQ0gsTUFBTTs7OztRQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSyxZQUFZLGVBQWUsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFsRSxDQUFrRSxFQUFDLEVBQ25GLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxVQUFBLEtBQUs7WUFDZCxJQUFJLEtBQUssWUFBWSxlQUFlO2dCQUFFLEtBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ3JELEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCx3Q0FBVzs7O0lBQVgsY0FBZSxDQUFDOzs7O0lBRWhCLHlDQUFZOzs7SUFBWjtRQUFBLGlCQWVDO1FBZEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7O1lBQ2hCLFFBQVEsR0FBRyxXQUFXOzs7UUFBQztZQUMzQixJQUFJLEtBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxFQUFFO2dCQUMzQixLQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUM7YUFDMUM7aUJBQU0sSUFBSSxLQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsRUFBRTtnQkFDbEMsS0FBSSxDQUFDLGFBQWEsSUFBSSxHQUFHLENBQUM7YUFDM0I7aUJBQU0sSUFBSSxLQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsRUFBRTtnQkFDbkMsS0FBSSxDQUFDLGFBQWEsSUFBSSxHQUFHLENBQUM7YUFDM0I7aUJBQU07Z0JBQ0wsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxHQUFFLEdBQUcsQ0FBQztRQUVQLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7Ozs7SUFFRCx3Q0FBVzs7O0lBQVg7UUFBQSxpQkFRQztRQVBDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsVUFBVTs7O1FBQUM7WUFDVCxLQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUN6QixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOztnQkE1RUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxtTUFJVDs7aUJBRUY7Ozs7Z0JBZFEsT0FBTztnQkFHUCxNQUFNOzs7aUNBYVosS0FBSztnQ0FHTCxLQUFLOzRCQUdMLEtBQUs7eUJBR0wsS0FBSzs7SUEwRFIseUJBQUM7Q0FBQSxBQTdFRCxJQTZFQztTQXBFWSxrQkFBa0I7OztJQUM3Qiw0Q0FDMEM7O0lBRTFDLDJDQUN1Qzs7SUFFdkMsdUNBQzJCOztJQUUzQixvQ0FDc0c7O0lBRXRHLDJDQUEwQjs7SUFFMUIsc0NBQWM7Ozs7O0lBRUYscUNBQXdCOzs7OztJQUFFLG9DQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZkFjdGlvblN1Y2Nlc3NmdWwgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBMb2FkZXJTdGFydCwgTG9hZGVyU3RvcCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBSb3V0ZXIsIE5hdmlnYXRpb25TdGFydCwgTmF2aWdhdGlvbkVuZCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95IH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxvYWRlci1iYXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgaWQ9XCJhYnAtbG9hZGVyLWJhclwiIFtuZ0NsYXNzXT1cImNvbnRhaW5lckNsYXNzXCIgW2NsYXNzLmlzLWxvYWRpbmddPVwiaXNMb2FkaW5nXCI+XG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cInByb2dyZXNzQ2xhc3NcIiBbc3R5bGUud2lkdGgudnddPVwicHJvZ3Jlc3NMZXZlbFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9sb2FkZXItYmFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIExvYWRlckJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIGNvbnRhaW5lckNsYXNzOiBzdHJpbmcgPSAnYWJwLWxvYWRlci1iYXInO1xuXG4gIEBJbnB1dCgpXG4gIHByb2dyZXNzQ2xhc3M6IHN0cmluZyA9ICdhYnAtcHJvZ3Jlc3MnO1xuXG4gIEBJbnB1dCgpXG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGZpbHRlciA9IChhY3Rpb246IExvYWRlclN0YXJ0IHwgTG9hZGVyU3RvcCkgPT4gYWN0aW9uLnBheWxvYWQudXJsLmluZGV4T2YoJ29wZW5pZC1jb25maWd1cmF0aW9uJykgPCAwO1xuXG4gIHByb2dyZXNzTGV2ZWw6IG51bWJlciA9IDA7XG5cbiAgaW50ZXJ2YWw6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFjdGlvbnM6IEFjdGlvbnMsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICBhY3Rpb25zXG4gICAgICAucGlwZShcbiAgICAgICAgb2ZBY3Rpb25TdWNjZXNzZnVsKExvYWRlclN0YXJ0LCBMb2FkZXJTdG9wKSxcbiAgICAgICAgZmlsdGVyKHRoaXMuZmlsdGVyKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveSh0aGlzKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoYWN0aW9uID0+IHtcbiAgICAgICAgaWYgKGFjdGlvbiBpbnN0YW5jZW9mIExvYWRlclN0YXJ0KSB0aGlzLnN0YXJ0TG9hZGluZygpO1xuICAgICAgICBlbHNlIHRoaXMuc3RvcExvYWRpbmcoKTtcbiAgICAgIH0pO1xuXG4gICAgcm91dGVyLmV2ZW50c1xuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCB8fCBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkgdGhpcy5zdGFydExvYWRpbmcoKTtcbiAgICAgICAgZWxzZSB0aGlzLnN0b3BMb2FkaW5nKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge31cblxuICBzdGFydExvYWRpbmcoKSB7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIGNvbnN0IGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMucHJvZ3Jlc3NMZXZlbCA8IDc1KSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCArPSBNYXRoLnJhbmRvbSgpICogMTA7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMucHJvZ3Jlc3NMZXZlbCA8IDkwKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCArPSAwLjQ7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMucHJvZ3Jlc3NMZXZlbCA8IDEwMCkge1xuICAgICAgICB0aGlzLnByb2dyZXNzTGV2ZWwgKz0gMC4xO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7XG4gICAgICB9XG4gICAgfSwgMzAwKTtcblxuICAgIHRoaXMuaW50ZXJ2YWwgPSBpbnRlcnZhbDtcbiAgfVxuXG4gIHN0b3BMb2FkaW5nKCkge1xuICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbCk7XG4gICAgdGhpcy5wcm9ncmVzc0xldmVsID0gMTAwO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCA9IDA7XG4gICAgfSwgODAwKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QztJQTBCRSw0QkFBb0IsT0FBZ0IsRUFBVSxNQUFjO1FBQTVELGlCQXdCQztRQXhCbUIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFmNUQsbUJBQWMsR0FBVyxnQkFBZ0IsQ0FBQztRQUcxQyxrQkFBYSxHQUFXLGNBQWMsQ0FBQztRQUd2QyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRzNCLFdBQU07Ozs7UUFBRyxVQUFDLE1BQWdDLElBQUssT0FBQSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLEVBQXRELENBQXNELEVBQUM7UUFFdEcsa0JBQWEsR0FBVyxDQUFDLENBQUM7UUFLeEIsT0FBTzthQUNKLElBQUksQ0FDSCxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ25CLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxVQUFBLE1BQU07WUFDZixJQUFJLE1BQU0sWUFBWSxXQUFXO2dCQUFFLEtBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ2xELEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztRQUVMLE1BQU0sQ0FBQyxNQUFNO2FBQ1YsSUFBSSxDQUNILE1BQU07Ozs7UUFDSixVQUFBLEtBQUs7WUFDSCxPQUFBLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGFBQWEsSUFBSSxLQUFLLFlBQVksZUFBZTtRQUF0RyxDQUFzRyxFQUN6RyxFQUNELGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUN2QjthQUNBLFNBQVM7Ozs7UUFBQyxVQUFBLEtBQUs7WUFDZCxJQUFJLEtBQUssWUFBWSxlQUFlO2dCQUFFLEtBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs7Z0JBQ3JELEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCx3Q0FBVzs7O0lBQVgsY0FBZSxDQUFDOzs7O0lBRWhCLHlDQUFZOzs7SUFBWjtRQUFBLGlCQWVDO1FBZEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7O1lBQ2hCLFFBQVEsR0FBRyxXQUFXOzs7UUFBQztZQUMzQixJQUFJLEtBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxFQUFFO2dCQUMzQixLQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUM7YUFDMUM7aUJBQU0sSUFBSSxLQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsRUFBRTtnQkFDbEMsS0FBSSxDQUFDLGFBQWEsSUFBSSxHQUFHLENBQUM7YUFDM0I7aUJBQU0sSUFBSSxLQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsRUFBRTtnQkFDbkMsS0FBSSxDQUFDLGFBQWEsSUFBSSxHQUFHLENBQUM7YUFDM0I7aUJBQU07Z0JBQ0wsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxHQUFFLEdBQUcsQ0FBQztRQUVQLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7Ozs7SUFFRCx3Q0FBVzs7O0lBQVg7UUFBQSxpQkFRQztRQVBDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsVUFBVTs7O1FBQUM7WUFDVCxLQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUN6QixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOztnQkEvRUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxtTUFJVDs7aUJBRUY7Ozs7Z0JBWFEsT0FBTztnQkFGeUIsTUFBTTs7O2lDQWU1QyxLQUFLO2dDQUdMLEtBQUs7NEJBR0wsS0FBSzt5QkFHTCxLQUFLOztJQTZEUix5QkFBQztDQUFBLEFBaEZELElBZ0ZDO1NBdkVZLGtCQUFrQjs7O0lBQzdCLDRDQUMwQzs7SUFFMUMsMkNBQ3VDOztJQUV2Qyx1Q0FDMkI7O0lBRTNCLG9DQUNzRzs7SUFFdEcsMkNBQTBCOztJQUUxQixzQ0FBYzs7Ozs7SUFFRixxQ0FBd0I7Ozs7O0lBQUUsb0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhcnRMb2FkZXIsIFN0b3BMb2FkZXIgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciwgTmF2aWdhdGlvbkVycm9yIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3kgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9ucywgb2ZBY3Rpb25TdWNjZXNzZnVsIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbG9hZGVyLWJhcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBpZD1cImFicC1sb2FkZXItYmFyXCIgW25nQ2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIiBbY2xhc3MuaXMtbG9hZGluZ109XCJpc0xvYWRpbmdcIj5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwicHJvZ3Jlc3NDbGFzc1wiIFtzdHlsZS53aWR0aC52d109XCJwcm9ncmVzc0xldmVsXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2xvYWRlci1iYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGVyQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgY29udGFpbmVyQ2xhc3M6IHN0cmluZyA9ICdhYnAtbG9hZGVyLWJhcic7XG5cbiAgQElucHV0KClcbiAgcHJvZ3Jlc3NDbGFzczogc3RyaW5nID0gJ2FicC1wcm9ncmVzcyc7XG5cbiAgQElucHV0KClcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZmlsdGVyID0gKGFjdGlvbjogU3RhcnRMb2FkZXIgfCBTdG9wTG9hZGVyKSA9PiBhY3Rpb24ucGF5bG9hZC51cmwuaW5kZXhPZignb3BlbmlkLWNvbmZpZ3VyYXRpb24nKSA8IDA7XG5cbiAgcHJvZ3Jlc3NMZXZlbDogbnVtYmVyID0gMDtcblxuICBpbnRlcnZhbDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uczogQWN0aW9ucywgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xuICAgIGFjdGlvbnNcbiAgICAgIC5waXBlKFxuICAgICAgICBvZkFjdGlvblN1Y2Nlc3NmdWwoU3RhcnRMb2FkZXIsIFN0b3BMb2FkZXIpLFxuICAgICAgICBmaWx0ZXIodGhpcy5maWx0ZXIpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShhY3Rpb24gPT4ge1xuICAgICAgICBpZiAoYWN0aW9uIGluc3RhbmNlb2YgU3RhcnRMb2FkZXIpIHRoaXMuc3RhcnRMb2FkaW5nKCk7XG4gICAgICAgIGVsc2UgdGhpcy5zdG9wTG9hZGluZygpO1xuICAgICAgfSk7XG5cbiAgICByb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgIGV2ZW50ID0+XG4gICAgICAgICAgICBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCB8fCBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHwgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IsXG4gICAgICAgICksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB0aGlzLnN0YXJ0TG9hZGluZygpO1xuICAgICAgICBlbHNlIHRoaXMuc3RvcExvYWRpbmcoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxuXG4gIHN0YXJ0TG9hZGluZygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgNzUpIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IE1hdGgucmFuZG9tKCkgKiAxMDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgOTApIHtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0xldmVsICs9IDAuNDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5wcm9ncmVzc0xldmVsIDwgMTAwKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NMZXZlbCArPSAwLjE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgIH1cbiAgICB9LCAzMDApO1xuXG4gICAgdGhpcy5pbnRlcnZhbCA9IGludGVydmFsO1xuICB9XG5cbiAgc3RvcExvYWRpbmcoKSB7XG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKTtcbiAgICB0aGlzLnByb2dyZXNzTGV2ZWwgPSAxMDA7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5wcm9ncmVzc0xldmVsID0gMDtcbiAgICB9LCA4MDApO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js index d10da3d441..9317e0858b 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js @@ -3,21 +3,27 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; -import { Component, ContentChild, ElementRef, EventEmitter, Input, Output, Renderer2, TemplateRef, ViewChild, } from '@angular/core'; +import { Component, ContentChild, ElementRef, EventEmitter, Input, Output, Renderer2, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; import { fromEvent, Subject, timer } from 'rxjs'; -import { debounceTime, filter, take, takeUntil } from 'rxjs/operators'; +import { filter, take, takeUntil, debounceTime } from 'rxjs/operators'; import { ConfirmationService } from '../../services/confirmation.service'; +import { ButtonComponent } from '../button/button.component'; +/** @type {?} */ +var ANIMATION_TIMEOUT = 200; var ModalComponent = /** @class */ (function () { function ModalComponent(renderer, confirmationService) { this.renderer = renderer; this.confirmationService = confirmationService; - this.centered = true; + this.centered = false; this.modalClass = ''; this.size = 'lg'; this.visibleChange = new EventEmitter(); + this.init = new EventEmitter(); this._visible = false; - this.closable = false; + this._busy = false; + this.showModal = false; this.isOpenConfirmation = false; + this.closable = false; this.destroy$ = new Subject(); } Object.defineProperty(ModalComponent.prototype, "visible", { @@ -33,11 +39,18 @@ var ModalComponent = /** @class */ (function () { */ function (value) { var _this = this; + if (typeof value !== 'boolean') + return; if (!this.modalContent) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.visible = value); }), 0); + if (value) { + setTimeout((/** + * @return {?} + */ + function () { + _this.showModal = value; + _this.visible = value; + }), 0); + } return; } if (value) { @@ -52,10 +65,29 @@ var ModalComponent = /** @class */ (function () { */ function () { _this.setVisible(value); - _this.renderer.removeClass(_this.modalContent.nativeElement, 'fade-out-top'); _this.ngOnDestroy(); - }), 350); + }), ANIMATION_TIMEOUT - 10); + } + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ModalComponent.prototype, "busy", { + get: /** + * @return {?} + */ + function () { + return this._busy; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) { + this.abpSubmit.loading = value; } + this._busy = value; }, enumerable: true, configurable: true @@ -81,8 +113,9 @@ var ModalComponent = /** @class */ (function () { var _this = this; this._visible = value; this.visibleChange.emit(value); + this.showModal = value; value - ? timer(500) + ? timer(ANIMATION_TIMEOUT + 100) .pipe(take(1)) .subscribe((/** * @param {?} _ @@ -99,31 +132,12 @@ var ModalComponent = /** @class */ (function () { */ function () { var _this = this; - fromEvent(document, 'click') - .pipe(debounceTime(350), takeUntil(this.destroy$), filter((/** - * @param {?} event - * @return {?} - */ - function (event) { - return event && - _this.closable && - _this.modalContent && - !_this.isOpenConfirmation && - !_this.modalContent.nativeElement.contains(event.target); - }))) - .subscribe((/** - * @param {?} _ - * @return {?} - */ - function (_) { - _this.close(); - })); fromEvent(document, 'keyup') - .pipe(takeUntil(this.destroy$), filter((/** + .pipe(takeUntil(this.destroy$), debounceTime(150), filter((/** * @param {?} key * @return {?} */ - function (key) { return key && key.code === 'Escape' && _this.closable; })), debounceTime(350)) + function (key) { return key && key.code === 'Escape' && _this.closable; }))) .subscribe((/** * @param {?} _ * @return {?} @@ -131,17 +145,23 @@ var ModalComponent = /** @class */ (function () { function (_) { _this.close(); })); - if (!this.abpClose) - return; - fromEvent(this.abpClose.nativeElement, 'click') - .pipe(takeUntil(this.destroy$), filter((/** + setTimeout((/** * @return {?} */ - function () { return !!(_this.closable && _this.modalContent); })), debounceTime(350)) - .subscribe((/** - * @return {?} - */ - function () { return _this.close(); })); + function () { + if (!_this.abpClose) + return; + fromEvent(_this.abpClose.nativeElement, 'click') + .pipe(takeUntil(_this.destroy$), filter((/** + * @return {?} + */ + function () { return !!(_this.closable && _this.modalContent); }))) + .subscribe((/** + * @return {?} + */ + function () { return _this.close(); })); + }), 0); + this.init.emit(); }; /** * @return {?} @@ -151,6 +171,8 @@ var ModalComponent = /** @class */ (function () { */ function () { var _this = this; + if (!this.closable || this.busy) + return; /** @type {?} */ var nodes = getFlatNodes(((/** @type {?} */ (this.modalContent.nativeElement.querySelector('#abp-modal-body')))).childNodes); if (hasNgDirty(nodes)) { @@ -164,7 +186,7 @@ var ModalComponent = /** @class */ (function () { * @return {?} */ function (status) { - timer(400).subscribe((/** + timer(ANIMATION_TIMEOUT).subscribe((/** * @return {?} */ function () { @@ -182,7 +204,7 @@ var ModalComponent = /** @class */ (function () { ModalComponent.decorators = [ { type: Component, args: [{ selector: 'abp-modal', - template: "\n \n
    \n
    \n \n\n \n
    \n
    \n \n\n
    \n \n
    \n
    \n
    \n \n\n \n\n" + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ @@ -192,15 +214,21 @@ var ModalComponent = /** @class */ (function () { ]; }; ModalComponent.propDecorators = { visible: [{ type: Input }], + busy: [{ type: Input }], centered: [{ type: Input }], modalClass: [{ type: Input }], size: [{ type: Input }], + height: [{ type: Input }], + minHeight: [{ type: Input }], visibleChange: [{ type: Output }], + init: [{ type: Output }], abpHeader: [{ type: ContentChild, args: ['abpHeader', { static: false },] }], abpBody: [{ type: ContentChild, args: ['abpBody', { static: false },] }], abpFooter: [{ type: ContentChild, args: ['abpFooter', { static: false },] }], abpClose: [{ type: ContentChild, args: ['abpClose', { static: false, read: ElementRef },] }], - modalContent: [{ type: ViewChild, args: ['abpModalContent', { static: false },] }] + abpSubmit: [{ type: ContentChild, args: [ButtonComponent, { static: false, read: ButtonComponent },] }], + modalContent: [{ type: ViewChild, args: ['abpModalContent', { static: false },] }], + abpButtons: [{ type: ViewChildren, args: ['abp-button',] }] }; return ModalComponent; }()); @@ -213,8 +241,14 @@ if (false) { /** @type {?} */ ModalComponent.prototype.size; /** @type {?} */ + ModalComponent.prototype.height; + /** @type {?} */ + ModalComponent.prototype.minHeight; + /** @type {?} */ ModalComponent.prototype.visibleChange; /** @type {?} */ + ModalComponent.prototype.init; + /** @type {?} */ ModalComponent.prototype.abpHeader; /** @type {?} */ ModalComponent.prototype.abpBody; @@ -223,14 +257,22 @@ if (false) { /** @type {?} */ ModalComponent.prototype.abpClose; /** @type {?} */ + ModalComponent.prototype.abpSubmit; + /** @type {?} */ ModalComponent.prototype.modalContent; /** @type {?} */ + ModalComponent.prototype.abpButtons; + /** @type {?} */ ModalComponent.prototype._visible; /** @type {?} */ - ModalComponent.prototype.closable; + ModalComponent.prototype._busy; + /** @type {?} */ + ModalComponent.prototype.showModal; /** @type {?} */ ModalComponent.prototype.isOpenConfirmation; /** @type {?} */ + ModalComponent.prototype.closable; + /** @type {?} */ ModalComponent.prototype.destroy$; /** * @type {?} @@ -253,7 +295,7 @@ function getFlatNodes(nodes) { * @param {?} val * @return {?} */ - function (acc, val) { return tslib_1.__spread(acc, (val.childNodes && val.childNodes.length ? Array.from(val.childNodes) : [val])); }), []); + function (acc, val) { return tslib_1.__spread(acc, (val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])); }), []); } /** * @param {?} nodes @@ -266,4 +308,4 @@ function hasNgDirty(nodes) { */ function (node) { return (node.className || '').indexOf('ng-dirty') > -1; })) > -1; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUsxRTtJQXVERSx3QkFBb0IsUUFBbUIsRUFBVSxtQkFBd0M7UUFBckUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUExQmhGLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFFekIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUV4QixTQUFJLEdBQWMsSUFBSSxDQUFDO1FBRXRCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVl0RCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRXBDLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRTZELENBQUM7SUFsRDdGLHNCQUNJLG1DQUFPOzs7O1FBRFg7WUFFRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkIsQ0FBQzs7Ozs7UUFDRCxVQUFZLEtBQWM7WUFBMUIsaUJBa0JDO1lBakJDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUN0QixVQUFVOzs7Z0JBQUMsY0FBTSxPQUFBLENBQUMsS0FBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsRUFBdEIsQ0FBc0IsR0FBRSxDQUFDLENBQUMsQ0FBQztnQkFDNUMsT0FBTzthQUNSO1lBRUQsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2Y7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2dCQUN4RSxVQUFVOzs7Z0JBQUM7b0JBQ1QsS0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkIsS0FBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsS0FBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUM7b0JBQzNFLEtBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDckIsQ0FBQyxHQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ1Q7UUFDSCxDQUFDOzs7T0FuQkE7Ozs7SUFpREQsb0NBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVELG1DQUFVOzs7O0lBQVYsVUFBVyxLQUFjO1FBQXpCLGlCQVFDO1FBUEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsS0FBSztZQUNILENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO2lCQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2IsU0FBUzs7OztZQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxLQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxFQUF0QixDQUFzQixFQUFDO1lBQzNDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7OztJQUVELCtCQUFNOzs7SUFBTjtRQUFBLGlCQXFDQztRQXBDQyxTQUFTLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQzthQUN6QixJQUFJLENBQ0gsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixNQUFNOzs7O1FBQ0osVUFBQyxLQUFpQjtZQUNoQixPQUFBLEtBQUs7Z0JBQ0wsS0FBSSxDQUFDLFFBQVE7Z0JBQ2IsS0FBSSxDQUFDLFlBQVk7Z0JBQ2pCLENBQUMsS0FBSSxDQUFDLGtCQUFrQjtnQkFDeEIsQ0FBQyxLQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUp2RCxDQUl1RCxFQUMxRCxDQUNGO2FBQ0EsU0FBUzs7OztRQUFDLFVBQUEsQ0FBQztZQUNWLEtBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLENBQUMsRUFBQyxDQUFDO1FBRUwsU0FBUyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7YUFDekIsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQ3hCLE1BQU07Ozs7UUFBQyxVQUFDLEdBQWtCLElBQUssT0FBQSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksS0FBSSxDQUFDLFFBQVEsRUFBN0MsQ0FBNkMsRUFBQyxFQUM3RSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQ2xCO2FBQ0EsU0FBUzs7OztRQUFDLFVBQUEsQ0FBQztZQUNWLEtBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLENBQUMsRUFBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUUzQixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDO2FBQzVDLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixNQUFNOzs7UUFBQyxjQUFNLE9BQUEsQ0FBQyxDQUFDLENBQUMsS0FBSSxDQUFDLFFBQVEsSUFBSSxLQUFJLENBQUMsWUFBWSxDQUFDLEVBQXRDLENBQXNDLEVBQUMsRUFDcEQsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUNsQjthQUNBLFNBQVM7OztRQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsS0FBSyxFQUFFLEVBQVosQ0FBWSxFQUFDLENBQUM7SUFDbkMsQ0FBQzs7OztJQUVELDhCQUFLOzs7SUFBTDtRQUFBLGlCQXVCQzs7WUF0Qk8sS0FBSyxHQUFHLFlBQVksQ0FDeEIsQ0FBQyxtQkFBQSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsRUFBZSxDQUFDLENBQUMsVUFBVSxDQUM3RjtRQUVELElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLGtCQUFrQjtnQkFBRSxPQUFPO1lBRXBDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7WUFDL0IsSUFBSSxDQUFDLG1CQUFtQjtpQkFDckIsSUFBSSxDQUFDLDREQUE0RCxFQUFFLHdCQUF3QixDQUFDO2lCQUM1RixTQUFTOzs7O1lBQUMsVUFBQyxNQUFzQjtnQkFDaEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVM7OztnQkFBQztvQkFDbkIsS0FBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztnQkFDbEMsQ0FBQyxFQUFDLENBQUM7Z0JBRUgsSUFBSSxNQUFNLDRCQUEyQixFQUFFO29CQUNyQyxLQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztpQkFDdEI7WUFDSCxDQUFDLEVBQUMsQ0FBQztTQUNOO2FBQU07WUFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7O2dCQXJJRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLHltQ0FBcUM7aUJBQ3RDOzs7O2dCQWRDLFNBQVM7Z0JBTUYsbUJBQW1COzs7MEJBVXpCLEtBQUs7MkJBd0JMLEtBQUs7NkJBRUwsS0FBSzt1QkFFTCxLQUFLO2dDQUVMLE1BQU07NEJBRU4sWUFBWSxTQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7MEJBRTNDLFlBQVksU0FBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzRCQUV6QyxZQUFZLFNBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTsyQkFFM0MsWUFBWSxTQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTsrQkFFNUQsU0FBUyxTQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7SUF5RmpELHFCQUFDO0NBQUEsQUF0SUQsSUFzSUM7U0FsSVksY0FBYzs7O0lBeUJ6QixrQ0FBa0M7O0lBRWxDLG9DQUFpQzs7SUFFakMsOEJBQWdDOztJQUVoQyx1Q0FBc0Q7O0lBRXRELG1DQUEwRTs7SUFFMUUsaUNBQXNFOztJQUV0RSxtQ0FBMEU7O0lBRTFFLGtDQUF5Rjs7SUFFekYsc0NBQTBFOztJQUUxRSxrQ0FBMEI7O0lBRTFCLGtDQUEwQjs7SUFFMUIsNENBQW9DOztJQUVwQyxrQ0FBK0I7Ozs7O0lBRW5CLGtDQUEyQjs7Ozs7SUFBRSw2Q0FBZ0Q7Ozs7OztBQWlGM0YsU0FBUyxZQUFZLENBQUMsS0FBZTtJQUNuQyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTTs7Ozs7SUFDN0IsVUFBQyxHQUFHLEVBQUUsR0FBRyxJQUFLLHdCQUFJLEdBQUcsRUFBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQTFGLENBQTJGLEdBQ3pHLEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQzs7Ozs7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFvQjtJQUN0QyxPQUFPLEtBQUssQ0FBQyxTQUFTOzs7O0lBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUEvQyxDQUErQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3RlciB9IGZyb20gJy4uLy4uL21vZGVscy90b2FzdGVyJztcblxuZXhwb3J0IHR5cGUgTW9kYWxTaXplID0gJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5tb2RhbENvbnRlbnQpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMudmlzaWJsZSA9IHZhbHVlKSwgMCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnNldFZpc2libGUodmFsdWUpO1xuICAgICAgdGhpcy5saXN0ZW4oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbG9zYWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLm1vZGFsQ29udGVudC5uYXRpdmVFbGVtZW50LCAnZmFkZS1vdXQtdG9wJyk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLm1vZGFsQ29udGVudC5uYXRpdmVFbGVtZW50LCAnZmFkZS1vdXQtdG9wJyk7XG4gICAgICAgIHRoaXMubmdPbkRlc3Ryb3koKTtcbiAgICAgIH0sIDM1MCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgY2VudGVyZWQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpIG1vZGFsQ2xhc3M6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpIHNpemU6IE1vZGFsU2l6ZSA9ICdsZyc7XG5cbiAgQE91dHB1dCgpIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwSGVhZGVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIGFicEhlYWRlcjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKCdhYnBCb2R5JywgeyBzdGF0aWM6IGZhbHNlIH0pIGFicEJvZHk6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwRm9vdGVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIGFicEZvb3RlcjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKCdhYnBDbG9zZScsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogRWxlbWVudFJlZiB9KSBhYnBDbG9zZTogRWxlbWVudFJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoJ2FicE1vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBtb2RhbENvbnRlbnQ6IEVsZW1lbnRSZWY7XG5cbiAgX3Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjbG9zYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlbkNvbmZpcm1hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSkge31cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgfVxuXG4gIHNldFZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlID0gdmFsdWU7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIHZhbHVlXG4gICAgICA/IHRpbWVyKDUwMClcbiAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoXyA9PiAodGhpcy5jbG9zYWJsZSA9IHRydWUpKVxuICAgICAgOiAodGhpcy5jbG9zYWJsZSA9IGZhbHNlKTtcbiAgfVxuXG4gIGxpc3RlbigpIHtcbiAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDM1MCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgIChldmVudDogTW91c2VFdmVudCkgPT5cbiAgICAgICAgICAgIGV2ZW50ICYmXG4gICAgICAgICAgICB0aGlzLmNsb3NhYmxlICYmXG4gICAgICAgICAgICB0aGlzLm1vZGFsQ29udGVudCAmJlxuICAgICAgICAgICAgIXRoaXMuaXNPcGVuQ29uZmlybWF0aW9uICYmXG4gICAgICAgICAgICAhdGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpLFxuICAgICAgICApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdrZXl1cCcpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBmaWx0ZXIoKGtleTogS2V5Ym9hcmRFdmVudCkgPT4ga2V5ICYmIGtleS5jb2RlID09PSAnRXNjYXBlJyAmJiB0aGlzLmNsb3NhYmxlKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDM1MCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICB9KTtcblxuICAgIGlmICghdGhpcy5hYnBDbG9zZSkgcmV0dXJuO1xuXG4gICAgZnJvbUV2ZW50KHRoaXMuYWJwQ2xvc2UubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGZpbHRlcigoKSA9PiAhISh0aGlzLmNsb3NhYmxlICYmIHRoaXMubW9kYWxDb250ZW50KSksXG4gICAgICAgIGRlYm91bmNlVGltZSgzNTApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBnZXRGbGF0Tm9kZXMoXG4gICAgICAodGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcjYWJwLW1vZGFsLWJvZHknKSBhcyBIVE1MRWxlbWVudCkuY2hpbGROb2RlcyxcbiAgICApO1xuXG4gICAgaWYgKGhhc05nRGlydHkobm9kZXMpKSB7XG4gICAgICBpZiAodGhpcy5pc09wZW5Db25maXJtYXRpb24pIHJldHVybjtcblxuICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSB0cnVlO1xuICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlXG4gICAgICAgIC53YXJuKCdBYnBBY2NvdW50OjpBcmVZb3VTdXJlWW91V2FudFRvQ2FuY2VsRWRpdGluZ1dhcm5pbmdNZXNzYWdlJywgJ0FicEFjY291bnQ6OkFyZVlvdVN1cmUnKVxuICAgICAgICAuc3Vic2NyaWJlKChzdGF0dXM6IFRvYXN0ZXIuU3RhdHVzKSA9PiB7XG4gICAgICAgICAgdGltZXIoNDAwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSBmYWxzZTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChzdGF0dXMgPT09IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGbGF0Tm9kZXMobm9kZXM6IE5vZGVMaXN0KTogSFRNTEVsZW1lbnRbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKG5vZGVzKS5yZWR1Y2UoXG4gICAgKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi4odmFsLmNoaWxkTm9kZXMgJiYgdmFsLmNoaWxkTm9kZXMubGVuZ3RoID8gQXJyYXkuZnJvbSh2YWwuY2hpbGROb2RlcykgOiBbdmFsXSldLFxuICAgIFtdLFxuICApO1xufVxuXG5mdW5jdGlvbiBoYXNOZ0RpcnR5KG5vZGVzOiBIVE1MRWxlbWVudFtdKSB7XG4gIHJldHVybiBub2Rlcy5maW5kSW5kZXgobm9kZSA9PiAobm9kZS5jbGFzc05hbWUgfHwgJycpLmluZGV4T2YoJ25nLWRpcnR5JykgPiAtMSkgPiAtMTtcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztJQUl2RCxpQkFBaUIsR0FBRyxHQUFHO0FBRTdCO0lBdUZFLHdCQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFFcEMs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QUFtQzs7SUFFbkMsb0NBQWlDOztJQUVqQyw4QkFBZ0M7O0lBRWhDLGdDQUF3Qjs7SUFFeEIsbUNBQTJCOztJQUUzQix1Q0FBc0Q7O0lBRXRELDhCQUEwQzs7SUFFMUMsbUNBQTBFOztJQUUxRSxpQ0FBc0U7O0lBRXRFLG1DQUEwRTs7SUFFMUUsa0NBQXlGOztJQUV6RixtQ0FBb0c7O0lBRXBHLHNDQUEwRTs7SUFFMUUsb0NBQXVDOztJQUV2QyxrQ0FBMEI7O0lBRTFCLCtCQUF1Qjs7SUFFdkIsbUNBQTJCOztJQUUzQiw0Q0FBb0M7O0lBRXBDLGtDQUEwQjs7SUFFMUIsa0NBQStCOzs7OztJQUVuQixrQ0FBMkI7Ozs7O0lBQUUsNkNBQWdEOzs7Ozs7QUFzRTNGLFNBQVMsWUFBWSxDQUFDLEtBQWU7SUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU07Ozs7O0lBQzdCLFVBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSyx3QkFBSSxHQUFHLEVBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQTVGLENBQTZGLEdBQzNHLEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQzs7Ozs7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFvQjtJQUN0QyxPQUFPLEtBQUssQ0FBQyxTQUFTOzs7O0lBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUEvQyxDQUErQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlLCB0YWtlVW50aWwsIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9hc3Rlcic7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBNb2RhbFNpemUgPSAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnO1xuXG5jb25zdCBBTklNQVRJT05fVElNRU9VVCA9IDIwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgcmV0dXJuO1xuXG4gICAgaWYgKCF0aGlzLm1vZGFsQ29udGVudCkge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdmFsdWU7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gdmFsdWU7XG4gICAgICAgIH0sIDApO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2FibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubmdPbkRlc3Ryb3koKTtcbiAgICAgIH0sIEFOSU1BVElPTl9USU1FT1VUIC0gMTApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBidXN5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9idXN5O1xuICB9XG4gIHNldCBidXN5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuYWJwU3VibWl0ICYmIHRoaXMuYWJwU3VibWl0IGluc3RhbmNlb2YgQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmFicFN1Ym1pdC5sb2FkaW5nID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5fYnVzeSA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgY2VudGVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBtb2RhbENsYXNzOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemUgPSAnbGcnO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIG1pbkhlaWdodDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEhlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBIZWFkZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQm9keScsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBCb2R5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBGb290ZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQ2xvc2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgYWJwQ2xvc2U6IEVsZW1lbnRSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEJ1dHRvbkNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBCdXR0b25Db21wb25lbnQgfSkgYWJwU3VibWl0OiBCdXR0b25Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZCgnYWJwTW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vZGFsQ29udGVudDogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkcmVuKCdhYnAtYnV0dG9uJykgYWJwQnV0dG9ucztcblxuICBfdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIF9idXN5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgc2hvd01vZGFsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNPcGVuQ29uZmlybWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY2xvc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuXG4gICAgdmFsdWVcbiAgICAgID8gdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4gKHRoaXMuY2xvc2FibGUgPSB0cnVlKSlcbiAgICAgIDogKHRoaXMuY2xvc2FibGUgPSBmYWxzZSk7XG4gIH1cblxuICBsaXN0ZW4oKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXG4gICAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuY2xvc2FibGUpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5hYnBDbG9zZSkgcmV0dXJuO1xuICAgICAgZnJvbUV2ZW50KHRoaXMuYWJwQ2xvc2UubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgIGZpbHRlcigoKSA9PiAhISh0aGlzLmNsb3NhYmxlICYmIHRoaXMubW9kYWxDb250ZW50KSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH0sIDApO1xuXG4gICAgdGhpcy5pbml0LmVtaXQoKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5jbG9zYWJsZSB8fCB0aGlzLmJ1c3kpIHJldHVybjtcblxuICAgIGNvbnN0IG5vZGVzID0gZ2V0RmxhdE5vZGVzKFxuICAgICAgKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI2FicC1tb2RhbC1ib2R5JykgYXMgSFRNTEVsZW1lbnQpLmNoaWxkTm9kZXMsXG4gICAgKTtcblxuICAgIGlmIChoYXNOZ0RpcnR5KG5vZGVzKSkge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgICAud2FybignQWJwQWNjb3VudDo6QXJlWW91U3VyZVlvdVdhbnRUb0NhbmNlbEVkaXRpbmdXYXJuaW5nTWVzc2FnZScsICdBYnBBY2NvdW50OjpBcmVZb3VTdXJlJylcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBUb2FzdGVyLlN0YXR1cykgPT4ge1xuICAgICAgICAgIHRpbWVyKEFOSU1BVElPTl9USU1FT1VUKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSBmYWxzZTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChzdGF0dXMgPT09IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGbGF0Tm9kZXMobm9kZXM6IE5vZGVMaXN0KTogSFRNTEVsZW1lbnRbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKG5vZGVzKS5yZWR1Y2UoXG4gICAgKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi4odmFsLmNoaWxkTm9kZXMgJiYgdmFsLmNoaWxkTm9kZXMubGVuZ3RoID8gZ2V0RmxhdE5vZGVzKHZhbC5jaGlsZE5vZGVzKSA6IFt2YWxdKV0sXG4gICAgW10sXG4gICk7XG59XG5cbmZ1bmN0aW9uIGhhc05nRGlydHkobm9kZXM6IEhUTUxFbGVtZW50W10pIHtcbiAgcmV0dXJuIG5vZGVzLmZpbmRJbmRleChub2RlID0+IChub2RlLmNsYXNzTmFtZSB8fCAnJykuaW5kZXhPZignbmctZGlydHknKSA+IC0xKSA+IC0xO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/profile/profile.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/profile/profile.component.js new file mode 100644 index 0000000000..6e6c8ae153 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/profile/profile.component.js @@ -0,0 +1,160 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import * as tslib_1 from "tslib"; +import { GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core'; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { Select, Store } from '@ngxs/store'; +import { Observable } from 'rxjs'; +import { take, withLatestFrom } from 'rxjs/operators'; +var maxLength = Validators.maxLength, required = Validators.required, email = Validators.email; +var ProfileComponent = /** @class */ (function () { + function ProfileComponent(fb, store) { + this.fb = fb; + this.store = store; + this.visibleChange = new EventEmitter(); + this.modalBusy = false; + } + Object.defineProperty(ProfileComponent.prototype, "visible", { + get: /** + * @return {?} + */ + function () { + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._visible = value; + this.visibleChange.emit(value); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + ProfileComponent.prototype.buildForm = /** + * @return {?} + */ + function () { + var _this = this; + this.store + .dispatch(new GetProfile()) + .pipe(withLatestFrom(this.profile$), take(1)) + .subscribe((/** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var _b = tslib_1.__read(_a, 2), profile = _b[1]; + _this.form = _this.fb.group({ + userName: [profile.userName, [required, maxLength(256)]], + email: [profile.email, [required, email, maxLength(256)]], + name: [profile.name || '', [maxLength(64)]], + surname: [profile.surname || '', [maxLength(64)]], + phoneNumber: [profile.phoneNumber || '', [maxLength(16)]], + }); + })); + }; + /** + * @return {?} + */ + ProfileComponent.prototype.submit = /** + * @return {?} + */ + function () { + var _this = this; + if (this.form.invalid) + return; + this.modalBusy = true; + this.store.dispatch(new UpdateProfile(this.form.value)).subscribe((/** + * @return {?} + */ + function () { + _this.modalBusy = false; + _this.visible = false; + _this.form.reset(); + })); + }; + /** + * @return {?} + */ + ProfileComponent.prototype.openModal = /** + * @return {?} + */ + function () { + this.buildForm(); + this.visible = true; + }; + /** + * @param {?} __0 + * @return {?} + */ + ProfileComponent.prototype.ngOnChanges = /** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + }; + ProfileComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-profile', + template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ProfileComponent.ctorParameters = function () { return [ + { type: FormBuilder }, + { type: Store } + ]; }; + ProfileComponent.propDecorators = { + visible: [{ type: Input }], + visibleChange: [{ type: Output }] + }; + tslib_1.__decorate([ + Select(ProfileState.getProfile), + tslib_1.__metadata("design:type", Observable) + ], ProfileComponent.prototype, "profile$", void 0); + return ProfileComponent; +}()); +export { ProfileComponent }; +if (false) { + /** + * @type {?} + * @protected + */ + ProfileComponent.prototype._visible; + /** @type {?} */ + ProfileComponent.prototype.visibleChange; + /** @type {?} */ + ProfileComponent.prototype.profile$; + /** @type {?} */ + ProfileComponent.prototype.form; + /** @type {?} */ + ProfileComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQVcsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsSUFBQSxnQ0FBUyxFQUFFLDhCQUFRLEVBQUUsd0JBQUs7QUFFbEM7SUEyQkUsMEJBQW9CLEVBQWUsRUFBVSxLQUFZO1FBQXJDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBVHpELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQU81QyxjQUFTLEdBQVksS0FBSyxDQUFDO0lBRWlDLENBQUM7SUFwQjdELHNCQUNJLHFDQUFPOzs7O1FBRFg7WUFFRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkIsQ0FBQzs7Ozs7UUFFRCxVQUFZLEtBQWM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQzs7O09BTEE7Ozs7SUFtQkQs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bnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZSwgR2V0UHJvZmlsZSwgUHJvZmlsZVN0YXRlLCBVcGRhdGVQcm9maWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZSwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1wcm9maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJvdGVjdGVkIF92aXNpYmxlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlO1xuICB9XG5cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl92aXNpYmxlID0gdmFsdWU7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFNlbGVjdChQcm9maWxlU3RhdGUuZ2V0UHJvZmlsZSlcbiAgcHJvZmlsZSQ6IE9ic2VydmFibGU8UHJvZmlsZS5SZXNwb25zZT47XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBHZXRQcm9maWxlKCkpXG4gICAgICAucGlwZShcbiAgICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5wcm9maWxlJCksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbLCBwcm9maWxlXSkgPT4ge1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICB1c2VyTmFtZTogW3Byb2ZpbGUudXNlck5hbWUsIFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDI1NildXSxcbiAgICAgICAgICBlbWFpbDogW3Byb2ZpbGUuZW1haWwsIFtyZXF1aXJlZCwgZW1haWwsIG1heExlbmd0aCgyNTYpXV0sXG4gICAgICAgICAgbmFtZTogW3Byb2ZpbGUubmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcbiAgICAgICAgICBzdXJuYW1lOiBbcHJvZmlsZS5zdXJuYW1lIHx8ICcnLCBbbWF4TGVuZ3RoKDY0KV1dLFxuICAgICAgICAgIHBob25lTnVtYmVyOiBbcHJvZmlsZS5waG9uZU51bWJlciB8fCAnJywgW21heExlbmd0aCgxNildXSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHN1Ym1pdCgpIHtcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcbiAgICB0aGlzLm1vZGFsQnVzeSA9IHRydWU7XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBVcGRhdGVQcm9maWxlKHRoaXMuZm9ybS52YWx1ZSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm1vZGFsQnVzeSA9IGZhbHNlO1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9wZW5Nb2RhbCgpIHtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyh7IHZpc2libGUgfTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICghdmlzaWJsZSkgcmV0dXJuO1xuXG4gICAgaWYgKHZpc2libGUuY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICAgIH0gZWxzZSBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUgPT09IGZhbHNlICYmIHRoaXMudmlzaWJsZSkge1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js b/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js index c8edd69cb7..f1819c2696 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js @@ -2,5 +2,5 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export default "\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/*