├── .gitignore ├── BasicSetup ├── BasicSetup.sln ├── DotNetRun.cmd ├── global.json └── src │ ├── AureliaAspNetApp │ ├── .bowerrc │ ├── .gitignore │ ├── AppSettings.cs │ ├── AureliaAspNetApp.xproj │ ├── Controllers │ │ ├── HomeController.cs │ │ └── TokenController.cs │ ├── Dockerfile │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── README.md │ ├── Startup.cs │ ├── Views │ │ ├── Home │ │ │ ├── About.cshtml │ │ │ ├── Contact.cshtml │ │ │ └── Index.cshtml │ │ ├── Shared │ │ │ ├── Error.cshtml │ │ │ ├── _Layout.cshtml │ │ │ ├── _LoginPartial.cshtml │ │ │ └── _ValidationScriptsPartial.cshtml │ │ ├── _ViewImports.cshtml │ │ └── _ViewStart.cshtml │ ├── appsettings.json │ ├── aurelia.protractor.js │ ├── bower.json │ ├── jsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── project.json │ ├── protractor.conf.js │ ├── src │ │ ├── .eslintrc │ │ ├── app.html │ │ ├── app.js │ │ ├── authConfig.js │ │ ├── blur-image.js │ │ ├── child-router.html │ │ ├── child-router.js │ │ ├── customer.html │ │ ├── customer.js │ │ ├── identity.html │ │ ├── identity.js │ │ ├── login.html │ │ ├── login.js │ │ ├── logout.html │ │ ├── logout.js │ │ ├── main.js │ │ ├── nav-bar.html │ │ ├── nav-bar.js │ │ ├── welcome.html │ │ └── welcome.js │ ├── test │ │ ├── e2e │ │ │ └── src │ │ │ │ ├── demo.spec.js │ │ │ │ ├── skeleton.po.js │ │ │ │ └── welcome.po.js │ │ └── unit │ │ │ ├── .eslintrc │ │ │ ├── app.spec.js │ │ │ ├── child-router.spec.js │ │ │ └── users.spec.js │ ├── wallaby.js │ ├── web.config │ ├── webpack.config.js │ ├── webpack.prod.config.js │ └── wwwroot │ │ ├── css │ │ └── site.css │ │ ├── favicon.ico │ │ ├── lib │ │ ├── bootstrap │ │ │ ├── .bower.json │ │ │ ├── LICENSE │ │ │ └── dist │ │ │ │ ├── css │ │ │ │ ├── bootstrap-theme.css │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ └── bootstrap.min.css │ │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── npm.js │ │ ├── jquery-validation-unobtrusive │ │ │ ├── .bower.json │ │ │ ├── bower.json │ │ │ ├── jquery.validate.unobtrusive.js │ │ │ └── jquery.validate.unobtrusive.min.js │ │ ├── jquery-validation │ │ │ ├── .bower.json │ │ │ ├── CONTRIBUTING.md │ │ │ ├── Gruntfile.js │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ ├── bower.json │ │ │ ├── build │ │ │ │ └── release.js │ │ │ ├── changelog.md │ │ │ ├── dist │ │ │ │ ├── additional-methods.js │ │ │ │ ├── additional-methods.min.js │ │ │ │ ├── jquery.validate.js │ │ │ │ └── jquery.validate.min.js │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── additional │ │ │ │ │ ├── accept.js │ │ │ │ │ ├── additional.js │ │ │ │ │ ├── alphanumeric.js │ │ │ │ │ ├── bankaccountNL.js │ │ │ │ │ ├── bankorgiroaccountNL.js │ │ │ │ │ ├── bic.js │ │ │ │ │ ├── cifES.js │ │ │ │ │ ├── cpfBR.js │ │ │ │ │ ├── creditcardtypes.js │ │ │ │ │ ├── currency.js │ │ │ │ │ ├── dateFA.js │ │ │ │ │ ├── dateITA.js │ │ │ │ │ ├── dateNL.js │ │ │ │ │ ├── extension.js │ │ │ │ │ ├── giroaccountNL.js │ │ │ │ │ ├── iban.js │ │ │ │ │ ├── integer.js │ │ │ │ │ ├── ipv4.js │ │ │ │ │ ├── ipv6.js │ │ │ │ │ ├── lettersonly.js │ │ │ │ │ ├── letterswithbasicpunc.js │ │ │ │ │ ├── mobileNL.js │ │ │ │ │ ├── mobileUK.js │ │ │ │ │ ├── nieES.js │ │ │ │ │ ├── nifES.js │ │ │ │ │ ├── notEqualTo.js │ │ │ │ │ ├── nowhitespace.js │ │ │ │ │ ├── pattern.js │ │ │ │ │ ├── phoneNL.js │ │ │ │ │ ├── phoneUK.js │ │ │ │ │ ├── phoneUS.js │ │ │ │ │ ├── phonesUK.js │ │ │ │ │ ├── postalCodeCA.js │ │ │ │ │ ├── postalcodeBR.js │ │ │ │ │ ├── postalcodeIT.js │ │ │ │ │ ├── postalcodeNL.js │ │ │ │ │ ├── postcodeUK.js │ │ │ │ │ ├── require_from_group.js │ │ │ │ │ ├── skip_or_fill_minimum.js │ │ │ │ │ ├── statesUS.js │ │ │ │ │ ├── strippedminlength.js │ │ │ │ │ ├── time.js │ │ │ │ │ ├── time12h.js │ │ │ │ │ ├── url2.js │ │ │ │ │ ├── vinUS.js │ │ │ │ │ ├── zipcodeUS.js │ │ │ │ │ └── ziprange.js │ │ │ │ ├── ajax.js │ │ │ │ ├── core.js │ │ │ │ └── localization │ │ │ │ │ ├── messages_ar.js │ │ │ │ │ ├── messages_bg.js │ │ │ │ │ ├── messages_bn_BD.js │ │ │ │ │ ├── messages_ca.js │ │ │ │ │ ├── messages_cs.js │ │ │ │ │ ├── messages_da.js │ │ │ │ │ ├── messages_de.js │ │ │ │ │ ├── messages_el.js │ │ │ │ │ ├── messages_es.js │ │ │ │ │ ├── messages_es_AR.js │ │ │ │ │ ├── messages_es_PE.js │ │ │ │ │ ├── messages_et.js │ │ │ │ │ ├── messages_eu.js │ │ │ │ │ ├── messages_fa.js │ │ │ │ │ ├── messages_fi.js │ │ │ │ │ ├── messages_fr.js │ │ │ │ │ ├── messages_ge.js │ │ │ │ │ ├── messages_gl.js │ │ │ │ │ ├── messages_he.js │ │ │ │ │ ├── messages_hr.js │ │ │ │ │ ├── messages_hu.js │ │ │ │ │ ├── messages_hy_AM.js │ │ │ │ │ ├── messages_id.js │ │ │ │ │ ├── messages_is.js │ │ │ │ │ ├── messages_it.js │ │ │ │ │ ├── messages_ja.js │ │ │ │ │ ├── messages_ka.js │ │ │ │ │ ├── messages_kk.js │ │ │ │ │ ├── messages_ko.js │ │ │ │ │ ├── messages_lt.js │ │ │ │ │ ├── messages_lv.js │ │ │ │ │ ├── messages_my.js │ │ │ │ │ ├── messages_nl.js │ │ │ │ │ ├── messages_no.js │ │ │ │ │ ├── messages_pl.js │ │ │ │ │ ├── messages_pt_BR.js │ │ │ │ │ ├── messages_pt_PT.js │ │ │ │ │ ├── messages_ro.js │ │ │ │ │ ├── messages_ru.js │ │ │ │ │ ├── messages_si.js │ │ │ │ │ ├── messages_sk.js │ │ │ │ │ ├── messages_sl.js │ │ │ │ │ ├── messages_sr.js │ │ │ │ │ ├── messages_sr_lat.js │ │ │ │ │ ├── messages_sv.js │ │ │ │ │ ├── messages_th.js │ │ │ │ │ ├── messages_tj.js │ │ │ │ │ ├── messages_tr.js │ │ │ │ │ ├── messages_uk.js │ │ │ │ │ ├── messages_vi.js │ │ │ │ │ ├── messages_zh.js │ │ │ │ │ ├── messages_zh_TW.js │ │ │ │ │ ├── methods_de.js │ │ │ │ │ ├── methods_es_CL.js │ │ │ │ │ ├── methods_fi.js │ │ │ │ │ ├── methods_nl.js │ │ │ │ │ └── methods_pt.js │ │ │ └── validation.jquery.json │ │ └── jquery │ │ │ ├── .bower.json │ │ │ ├── MIT-LICENSE.txt │ │ │ └── dist │ │ │ ├── jquery.js │ │ │ ├── jquery.min.js │ │ │ └── jquery.min.map │ │ └── web.config │ ├── AureliaWebsite │ ├── .editorconfig │ ├── .eslintignore │ ├── .eslintrc │ ├── .gitignore │ ├── .npmignore │ ├── README.md │ ├── aurelia.protractor.js │ ├── build │ │ ├── 1.bundle.js │ │ ├── 32400f4e08932a94d8bfd2422702c446.eot │ │ ├── 448c34a56d699c29117adc64c43affeb.woff2 │ │ ├── 89889688147bd7575d6327160d64e760.svg │ │ ├── a35720c2fed2c7f043bc7e4ffb45e073.woff │ │ ├── a3de2170e4e9df77161ea5d3f31b2668.ttf │ │ ├── bundle.js │ │ ├── db812d8a70a4e88e888744c1c9a27e89.woff2 │ │ ├── e18bbf611f2a2e43afc071aa2f4e1512.ttf │ │ ├── f4769f9bdb7466be65088239c12046d1.eot │ │ ├── f775f9cca88e21d45bebe185b27c0e5b.svg │ │ └── fa2772327f55d8198301fdb8bcfc8158.woff │ ├── css │ │ └── site.css │ ├── doc │ │ ├── CHANGELOG.md │ │ └── api.json │ ├── favicon.ico │ ├── index.html │ ├── index.js │ ├── index.prod.html │ ├── jsconfig.json │ ├── karma.conf.js │ ├── package.json │ ├── protractor.conf.js │ ├── src │ │ ├── .eslintrc │ │ ├── app.html │ │ ├── app.js │ │ ├── authConfig.js │ │ ├── blur-image.js │ │ ├── child-router.html │ │ ├── child-router.js │ │ ├── customer.html │ │ ├── customer.js │ │ ├── identity.html │ │ ├── identity.js │ │ ├── login.html │ │ ├── login.js │ │ ├── logout.html │ │ ├── logout.js │ │ ├── main.js │ │ ├── nav-bar.html │ │ ├── nav-bar.js │ │ ├── welcome.html │ │ └── welcome.js │ ├── styles │ │ └── styles.css │ ├── test │ │ ├── e2e │ │ │ └── src │ │ │ │ ├── demo.spec.js │ │ │ │ ├── skeleton.po.js │ │ │ │ └── welcome.po.js │ │ └── unit │ │ │ ├── .eslintrc │ │ │ ├── app.spec.js │ │ │ ├── child-router.spec.js │ │ │ └── users.spec.js │ ├── wallaby.js │ ├── webpack.config.js │ └── webpack.prod.config.js │ ├── IdSvrHost │ ├── AppSettings.cs │ ├── Configuration │ │ ├── Clients.cs │ │ ├── Scopes.cs │ │ └── Users.cs │ ├── Dockerfile │ ├── Extensions │ │ └── CustomGrantValidator.cs │ ├── IdSvrHost.xproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Startup.cs │ ├── UI │ │ ├── Consent │ │ │ ├── ConsentController.cs │ │ │ ├── ConsentInputModel.cs │ │ │ ├── ConsentResult.cs │ │ │ ├── ConsentViewModel.cs │ │ │ └── Views │ │ │ │ ├── Index.cshtml │ │ │ │ └── _ScopeListItem.cshtml │ │ ├── CustomViewLocationExpander.cs │ │ ├── Error │ │ │ ├── ErrorController.cs │ │ │ └── ErrorViewModel.cs │ │ ├── Home │ │ │ ├── HomeController.cs │ │ │ └── Views │ │ │ │ └── Index.cshtml │ │ ├── Login │ │ │ ├── LoginController.cs │ │ │ ├── LoginInputModel.cs │ │ │ ├── LoginService.cs │ │ │ ├── LoginViewModel.cs │ │ │ ├── SignInResult.cs │ │ │ └── Views │ │ │ │ └── Index.cshtml │ │ ├── Logout │ │ │ ├── LoggedOutViewModel.cs │ │ │ ├── LogoutController.cs │ │ │ ├── LogoutViewModel.cs │ │ │ └── Views │ │ │ │ ├── Index.cshtml │ │ │ │ └── LoggedOut.cshtml │ │ ├── SharedViews │ │ │ ├── Error.cshtml │ │ │ ├── _Layout.cshtml │ │ │ └── _ValidationSummary.cshtml │ │ ├── TagHelpers │ │ │ └── HideShowTagHelpers.cs │ │ ├── _ViewImports.cshtml │ │ └── _ViewStart.cshtml │ ├── idsrv4test.pfx │ ├── project.json │ ├── web.config │ └── wwwroot │ │ ├── css │ │ ├── site.css │ │ ├── site.less │ │ └── site.min.css │ │ ├── favicon.ico │ │ ├── icon.jpg │ │ ├── icon.png │ │ ├── lib │ │ ├── bootstrap │ │ │ ├── css │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ └── bootstrap.min.css │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ └── bootstrap.min.js │ │ └── jquery │ │ │ ├── jquery.js │ │ │ ├── jquery.min.js │ │ │ └── jquery.min.map │ │ └── web.config │ ├── WebApi │ ├── AppSettings.cs │ ├── AuthorizationHandlers │ │ └── CrmAuthorizationHandler.cs │ ├── Controllers │ │ ├── CustomersController.cs │ │ └── IdentityController.cs │ ├── Dockerfile │ ├── Models │ │ └── Customer.cs │ ├── Program.cs │ ├── Project_Readme.html │ ├── Properties │ │ └── launchSettings.json │ ├── Startup.cs │ ├── WebApi.xproj │ ├── appsettings.json │ ├── project.json │ ├── web.config │ └── wwwroot │ │ └── web.config │ ├── build-docker-compose.sh │ ├── docker-compose.yml │ └── start-docker-compose.sh ├── LICENSE └── README.md /BasicSetup/DotNetRun.cmd: -------------------------------------------------------------------------------- 1 | set baseDir=%~dp0\src 2 | 3 | set ASPNETCORE_ENVIRONMENT=Development 4 | set Aurelia_Sample_BaseURI=localhost 5 | set Aurelia_Sample_API_URL=http://%Aurelia_Sample_BaseURI%:57391 6 | set Aurelia_Sample_MVC_URL=http://%Aurelia_Sample_BaseURI%:49849 7 | set Aurelia_Sample_STS_URL=http://%Aurelia_Sample_BaseURI%:22530 8 | 9 | start cmd.exe /K "cd %baseDir%\IdSvrHost\ && dotnet watch run" 10 | start cmd.exe /K "cd %baseDir%\WebApi\ && dotnet watch run" 11 | start cmd.exe /K "cd %baseDir%\AureliaAspNetApp\ && dotnet watch run" 12 | start cmd.exe /K "cd %baseDir%\AureliaAspNetApp\ && npm run build" 13 | start cmd.exe /K "cd %baseDir%\AureliaWebsite\ && npm run dev" 14 | -------------------------------------------------------------------------------- /BasicSetup/global.json: -------------------------------------------------------------------------------- 1 | { 2 | "projects": [ "src", "test" ], 3 | "sdk": { 4 | "version": "1.0.0-preview2-003121" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "wwwroot/lib" 3 | } 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/AureliaAspNetApp.xproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 14.0 5 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) 6 | 7 | 8 | 9 | 4aafd9a8-008c-4adf-8089-90c6ed4b96e3 10 | skeleton_navigation_es2016_vs 11 | ..\..\artifacts\obj\$(MSBuildProjectName) 12 | .\bin\ 13 | 14 | 15 | 2.0 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Controllers/HomeController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Mvc; 6 | using Microsoft.AspNetCore.Builder; 7 | using Microsoft.Extensions.Options; 8 | 9 | namespace AureliaAspNetApp.Controllers 10 | { 11 | public class HomeController : Controller 12 | { 13 | public HomeController(IOptions settings) 14 | { 15 | } 16 | public IActionResult Index() 17 | { 18 | return View(); 19 | } 20 | 21 | public IActionResult About() 22 | { 23 | ViewData["Message"] = "Your application description page."; 24 | 25 | return View(); 26 | } 27 | 28 | public IActionResult Contact() 29 | { 30 | ViewData["Message"] = "Your contact page."; 31 | 32 | return View(); 33 | } 34 | 35 | public IActionResult Error() 36 | { 37 | return View(); 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Controllers/TokenController.cs: -------------------------------------------------------------------------------- 1 | using IdentityModel.Client; 2 | using Microsoft.AspNetCore.Mvc; 3 | using Microsoft.Extensions.Options; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Threading.Tasks; 8 | 9 | namespace AureliaAspNetApp.Controllers 10 | { 11 | public class TokenController: Controller 12 | { 13 | private readonly AppSettings _settings; 14 | 15 | public TokenController(IOptions settings) 16 | { 17 | _settings = settings.Value; 18 | } 19 | public class TokenExchangeInput 20 | { 21 | public string Code { get; set; } 22 | public string RedirectUri { get; set; } 23 | public string ClientId { get; set; } 24 | } 25 | 26 | public class TokenResponse 27 | { 28 | public string Token { get; set; } 29 | } 30 | 31 | [HttpPost()] 32 | public async Task Exchange([FromBody]TokenExchangeInput tokenExchangeInput) 33 | { 34 | var client = new TokenClient(_settings.STSTokenEndpoint, "AureliaAspNetApp", _settings.ClientSecret); 35 | var tokenResponse = await client.RequestAuthorizationCodeAsync(tokenExchangeInput.Code, tokenExchangeInput.RedirectUri); 36 | return Json(new TokenResponse { Token = tokenResponse.AccessToken }); 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM microsoft/dotnet:1.0.0-preview2-sdk 2 | ARG hostip 3 | RUN rm /etc/apt/sources.list.d/llvm.list 4 | RUN apt-get -qq update && apt-get -qqy --no-install-recommends install \ 5 | git \ 6 | unzip 7 | 8 | RUN curl -sL https://deb.nodesource.com/setup_6.x | bash - 9 | RUN apt-get install -y nodejs 10 | 11 | RUN mkdir -p /AureliaAspNetApp 12 | 13 | COPY . /AureliaAspNetApp 14 | WORKDIR /AureliaAspNetApp 15 | RUN ["dotnet", "restore"] 16 | 17 | RUN ["npm","install"] 18 | #the docker compose environment var is injected here in the SPA javascript file authConfig.js 19 | #for magic see following line 20 | 21 | RUN sed -i s/docker-provided-apiServerBaseAddress/$hostip/g ./src/authConfig.js 22 | 23 | RUN ["npm", "run","build"] 24 | 25 | 26 | EXPOSE 49849/tcp 27 | ENTRYPOINT ["dotnet", "run"] 28 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "iisSettings": { 3 | "windowsAuthentication": false, 4 | "anonymousAuthentication": true, 5 | "iisExpress": { 6 | "applicationUrl": "http://localhost:49849", 7 | "sslPort": 0 8 | } 9 | }, 10 | "profiles": { 11 | "IIS Express": { 12 | "commandName": "IISExpress", 13 | "launchBrowser": true, 14 | "launchUrl": "http://localhost:49849", 15 | "environmentVariables": { 16 | "Aurelia_Sample_BaseURI": "localhost", 17 | "ASPNETCORE_ENVIRONMENT": "Development" 18 | } 19 | }, 20 | "AureliaAspNetApp": { 21 | "commandName": "Project", 22 | "launchBrowser": true, 23 | "launchUrl": "http://localhost:49849", 24 | "environmentVariables": { 25 | "Aurelia_Sample_BaseURI": "localhost", 26 | "ASPNETCORE_ENVIRONMENT": "Development", 27 | "ASPNETCORE_SERVER.URLS": "http://localhost:49849" 28 | } 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Home/About.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "About"; 3 | } 4 |

@ViewData["Title"].

5 |

@ViewData["Message"]

6 | 7 |

Use this area to provide additional information.

8 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Home/Contact.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "Contact"; 3 | } 4 |

@ViewData["Title"].

5 |

@ViewData["Message"]

6 | 7 |
8 | One Microsoft Way
9 | Redmond, WA 98052-6399
10 | P: 11 | 425.555.0100 12 |
13 | 14 |
15 | Support: Support@example.com
16 | Marketing: Marketing@example.com 17 |
18 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Home/Index.cshtml: -------------------------------------------------------------------------------- 1 | 
2 |
3 |
Aurelia Navigation Skeleton
4 | 5 |
6 | 7 |
8 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Shared/Error.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "Error"; 3 | } 4 | 5 |

Error.

6 |

An error occurred while processing your request.

7 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Shared/_LoginPartial.cshtml: -------------------------------------------------------------------------------- 1 | @using System.Security.Claims 2 | 3 | @if (User.IsSignedIn()) 4 | { 5 | 15 | } 16 | else 17 | { 18 | 22 | } 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/Shared/_ValidationScriptsPartial.cshtml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 10 | 14 | 15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/_ViewImports.cshtml: -------------------------------------------------------------------------------- 1 | @using AureliaAspNetApp 2 | @addTagHelper "*, Microsoft.AspNetCore.Mvc.TagHelpers" 3 | @inject Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration TelemetryConfiguration 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/Views/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "AppSettings": { 3 | "Other stuff": "other settings...." 4 | }, 5 | "ApplicationInsights": { 6 | "InstrumentationKey": "" 7 | }, 8 | "Data": { 9 | "DefaultConnection": { 10 | "ConnectionString": "Server=(localdb)\\mssqllocaldb;Database=aspnet5-AureliaAspNetApp-6df5fca9-b862-4931-8867-c46d52bbed68;Trusted_Connection=True;MultipleActiveResultSets=true" 11 | } 12 | }, 13 | "Logging": { 14 | "IncludeScopes": false, 15 | "LogLevel": { 16 | "Default": "Trace", 17 | "System": "Information", 18 | "Microsoft": "Information" 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ASP.NET", 3 | "private": true, 4 | "dependencies": { 5 | "bootstrap": "3.3.5", 6 | "jquery": "2.1.4", 7 | "jquery-validation": "1.14.0", 8 | "jquery-validation-unobtrusive": "3.2.4" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES6", 4 | "module": "system", 5 | "experimentalDecorators": true 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/protractor.conf.js: -------------------------------------------------------------------------------- 1 | // An example configuration file. 2 | exports.config = { 3 | directConnect: true, 4 | 5 | // Capabilities to be passed to the webdriver instance. 6 | capabilities: { 7 | 'browserName': 'chrome' 8 | }, 9 | 10 | //seleniumAddress: 'http://0.0.0.0:4444', 11 | specs: ['test/e2e/dist/**/*.js'], 12 | 13 | plugins: [{ 14 | path: 'aurelia.protractor.js' 15 | }], 16 | 17 | 18 | // Options to be passed to Jasmine-node. 19 | jasmineNodeOpts: { 20 | showColors: true, 21 | defaultTimeoutInterval: 30000 22 | } 23 | }; 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-alert": 0 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/app.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/app.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {FetchConfig} from 'aurelia-auth'; 3 | 4 | @inject(FetchConfig) 5 | export class App { 6 | constructor(fetchConfig){ 7 | this.fetchConfig = fetchConfig; 8 | } 9 | 10 | activate(){ 11 | this.fetchConfig.configure(); 12 | } 13 | 14 | configureRouter(config, router) { 15 | config.title = 'Aurelia'; 16 | config.map([ 17 | { route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }, 18 | { route: 'customer', moduleId: './customer', nav: true, title:'CRM', auth:true }, 19 | { route: 'identity', moduleId: './identity', nav: true, title:'IdentityInApi', auth:true }, 20 | { route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }, 21 | { route: 'login', moduleId: './login', nav: false, title:'Login' }, 22 | { route: 'logout', moduleId: './logout', nav: false, title:'Logout' } 23 | 24 | ]); 25 | 26 | this.router = router; 27 | } 28 | 29 | } 30 | 31 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/child-router.html: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/child-router.js: -------------------------------------------------------------------------------- 1 | export class ChildRouter { 2 | heading = 'Child Router'; 3 | 4 | configureRouter(config, router) { 5 | config.map([ 6 | { route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }, 7 | { route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }, 8 | { route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' } 9 | ]); 10 | 11 | 12 | this.router = router; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/customer.html: -------------------------------------------------------------------------------- 1 |  12 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/customer.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {HttpClient} from 'aurelia-fetch-client'; 3 | import 'isomorphic-fetch'; 4 | import config from './authConfig'; 5 | 6 | @inject(HttpClient) 7 | export class Customer{ 8 | heading = 'Customer management'; 9 | customer=[]; 10 | constructor(http){ 11 | this.http = http; 12 | } 13 | 14 | activate(){ 15 | let url = config.apiServerBaseAddress + ':57391/api/Customers'; 16 | return this.http.fetch(url) 17 | .then(response => { 18 | return response.json(); 19 | }) 20 | .then(c => { 21 | return this.customers = c; 22 | }); 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/identity.html: -------------------------------------------------------------------------------- 1 |  15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/identity.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {HttpClient} from 'aurelia-fetch-client'; 3 | import 'isomorphic-fetch'; 4 | import config from './authConfig'; 5 | @inject(HttpClient) 6 | export class Identity{ 7 | heading = 'Identity as known in the web api'; 8 | identityInApi="waiting for identity information"; 9 | constructor(http){ 10 | http.configure(config => { 11 | config 12 | .useStandardConfiguration(); 13 | }); 14 | 15 | this.http = http; 16 | } 17 | 18 | activate(){ 19 | let url = config.apiServerBaseAddress + ':57391/api/Identity'; 20 | 21 | return this.http.fetch(url) 22 | .then(response => { 23 | return response.json(); 24 | }) 25 | .then(c => { 26 | return this.identityInApi = c; 27 | }); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/login.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/login.js: -------------------------------------------------------------------------------- 1 | import {AuthService} from 'aurelia-auth'; 2 | import {inject} from 'aurelia-framework'; 3 | @inject(AuthService ) 4 | 5 | export class Login{ 6 | constructor(auth){ 7 | this.auth = auth; 8 | }; 9 | 10 | heading = 'Login'; 11 | 12 | authenticate(name){ 13 | return this.auth.authenticate(name, false, null) 14 | .then((response)=>{ 15 | console.log("auth response " + response); 16 | }); 17 | 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/logout.html: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/logout.js: -------------------------------------------------------------------------------- 1 | import {AuthService} from 'aurelia-auth'; 2 | import {inject} from 'aurelia-framework'; 3 | 4 | 5 | @inject(AuthService ) 6 | 7 | export class Logout{ 8 | constructor(authService){ 9 | this.authService = authService; 10 | }; 11 | 12 | activate(){ 13 | this.authService.logout("#/login") 14 | .then(response=>{ 15 | console.log("ok logged out on logout.js"); 16 | }) 17 | .catch(err=>{ 18 | console.log("error logged out logout.js"); 19 | 20 | }); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/main.js: -------------------------------------------------------------------------------- 1 | import {bootstrap} from 'aurelia-bootstrapper-webpack'; 2 | 3 | import '../node_modules/bootstrap/dist/css/bootstrap.css'; 4 | import '../node_modules/font-awesome/css/font-awesome.css'; 5 | import config from './authConfig'; 6 | bootstrap(function(aurelia) { 7 | 8 | aurelia.use 9 | .standardConfiguration() 10 | .developmentLogging() 11 | .plugin('aurelia-auth', (baseConfig)=>{ //the name of plugin becomes 'paulvanbladel/aurelia-auth' 12 | baseConfig.configure(config); 13 | }); 14 | 15 | aurelia.start().then(() => aurelia.setRoot('app', document.body)); 16 | }); 17 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/nav-bar.js: -------------------------------------------------------------------------------- 1 | import {bindable } from 'aurelia-framework'; 2 | import {inject} from 'aurelia-framework'; 3 | import {AuthService} from 'aurelia-auth'; 4 | import {BindingEngine} from 'aurelia-framework'; 5 | 6 | @inject(AuthService, BindingEngine) 7 | export class NavBar { 8 | _isAuthenticated = false; 9 | displayName = ""; 10 | @bindable router = null; 11 | subscription = {}; 12 | constructor(auth, bindingEngine) { 13 | this.auth = auth; 14 | this.bindingEngine = bindingEngine; 15 | this._isAuthenticated = this.auth.isAuthenticated(); 16 | this.subscription = bindingEngine.propertyObserver(this, 'isAuthenticated') 17 | .subscribe((newValue, oldValue) => { 18 | if (this.isAuthenticated) { 19 | this.auth.getMe().then(data => { 20 | return this.displayName = data.name; 21 | }); 22 | } 23 | }); 24 | } 25 | 26 | get isAuthenticated() { 27 | return this.auth.isAuthenticated(); 28 | } 29 | 30 | deactivate() { 31 | this.subscription.dispose(); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/welcome.html: -------------------------------------------------------------------------------- 1 | 21 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/src/welcome.js: -------------------------------------------------------------------------------- 1 | //import {computedFrom} from 'aurelia-framework'; 2 | 3 | export class Welcome { 4 | heading = 'Welcome to the Aurelia Navigation App!'; 5 | firstName = 'John'; 6 | lastName = 'Doe'; 7 | previousValue = this.fullName; 8 | 9 | //Getters can't be directly observed, so they must be dirty checked. 10 | //However, if you tell Aurelia the dependencies, it no longer needs to dirty check the property. 11 | //To optimize by declaring the properties that this getter is computed from, uncomment the line below 12 | //as well as the corresponding import above. 13 | //@computedFrom('firstName', 'lastName') 14 | get fullName() { 15 | return `${this.firstName} ${this.lastName}`; 16 | } 17 | 18 | submit() { 19 | this.previousValue = this.fullName; 20 | alert(`Welcome, ${this.fullName}!`); 21 | } 22 | 23 | canDeactivate() { 24 | if (this.fullName !== this.previousValue) { 25 | return confirm('Are you sure you want to leave?'); 26 | } 27 | } 28 | } 29 | 30 | export class UpperValueConverter { 31 | toView(value) { 32 | return value && value.toUpperCase(); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/e2e/src/demo.spec.js: -------------------------------------------------------------------------------- 1 | import {PageObjectWelcome} from './welcome.po.js'; 2 | import {PageObjectSkeleton} from './skeleton.po.js'; 3 | 4 | describe('aurelia skeleton app', function() { 5 | let poWelcome; 6 | let poSkeleton; 7 | 8 | beforeEach(() => { 9 | poSkeleton = new PageObjectSkeleton(); 10 | poWelcome = new PageObjectWelcome(); 11 | 12 | browser.loadAndWaitForAureliaPage('http://localhost:9000'); 13 | }); 14 | 15 | it('should load the page and display the initial page title', () => { 16 | expect(poSkeleton.getCurrentPageTitle()).toBe('Welcome | Aurelia'); 17 | }); 18 | 19 | it('should display greeting', () => { 20 | expect(poWelcome.getGreeting()).toBe('Welcome to the Aurelia Navigation App!'); 21 | }); 22 | 23 | it('should automatically write down the fullname', () => { 24 | poWelcome.setFirstname('Rob'); 25 | poWelcome.setLastname('Eisenberg'); 26 | 27 | // For now there is a timing issue with the binding. 28 | // Until resolved we will use a short sleep to overcome the issue. 29 | browser.sleep(200); 30 | expect(poWelcome.getFullname()).toBe('ROB EISENBERG'); 31 | }); 32 | 33 | it('should show alert message when clicking submit button', () => { 34 | expect(poWelcome.openAlertDialog()).toBe(true); 35 | }); 36 | 37 | it('should navigate to users page', () => { 38 | poSkeleton.navigateTo('#/users'); 39 | expect(poSkeleton.getCurrentPageTitle()).toBe('Github Users | Aurelia'); 40 | }); 41 | }); 42 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/e2e/src/skeleton.po.js: -------------------------------------------------------------------------------- 1 | export class PageObjectSkeleton { 2 | 3 | constructor() { 4 | 5 | } 6 | 7 | getCurrentPageTitle() { 8 | return browser.getTitle(); 9 | } 10 | 11 | navigateTo(href) { 12 | element(by.css('a[href="' + href + '"]')).click(); 13 | return browser.waitForRouterComplete(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/e2e/src/welcome.po.js: -------------------------------------------------------------------------------- 1 | export class PageObjectWelcome { 2 | 3 | constructor() { 4 | 5 | } 6 | 7 | getGreeting() { 8 | return element(by.tagName('h2')).getText(); 9 | } 10 | 11 | setFirstname(value) { 12 | return element(by.valueBind('firstName')).clear().sendKeys(value); 13 | } 14 | 15 | setLastname(value) { 16 | return element(by.valueBind('lastName')).clear().sendKeys(value); 17 | } 18 | 19 | getFullname() { 20 | return element(by.css('.help-block')).getText(); 21 | } 22 | 23 | pressSubmitButton() { 24 | return element(by.css('button[type="submit"]')).click(); 25 | } 26 | 27 | openAlertDialog() { 28 | return browser.wait(() => { 29 | this.pressSubmitButton(); 30 | 31 | return browser.switchTo().alert().then( 32 | // use alert.accept instead of alert.dismiss which results in a browser crash 33 | function(alert) { alert.accept(); return true; }, 34 | function() { return false; } 35 | ); 36 | }); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/unit/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-var": 0 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/unit/app.spec.js: -------------------------------------------------------------------------------- 1 | import {App} from '../../src/app'; 2 | 3 | class RouterStub { 4 | configure(handler) { 5 | handler(this); 6 | } 7 | 8 | map(routes) { 9 | this.routes = routes; 10 | } 11 | } 12 | 13 | describe('the App module', () => { 14 | var sut; 15 | var mockedRouter; 16 | 17 | beforeEach(() => { 18 | mockedRouter = new RouterStub(); 19 | sut = new App(); 20 | sut.configureRouter(mockedRouter, mockedRouter); 21 | }); 22 | 23 | it('contains a router property', () => { 24 | expect(sut.router).toBeDefined(); 25 | }); 26 | 27 | it('configures the router title', () => { 28 | expect(sut.router.title).toEqual('Aurelia'); 29 | }); 30 | 31 | it('should have a welcome route', () => { 32 | expect(sut.router.routes).toContain({ route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }); 33 | }); 34 | 35 | it('should have a users route', () => { 36 | expect(sut.router.routes).toContain({ route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }); 37 | }); 38 | 39 | it('should have a child router route', () => { 40 | expect(sut.router.routes).toContain({ route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }); 41 | }); 42 | }); 43 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/unit/child-router.spec.js: -------------------------------------------------------------------------------- 1 | import {ChildRouter} from '../../src/child-router'; 2 | 3 | class RouterStub { 4 | configure(handler) { 5 | handler(this); 6 | } 7 | 8 | map(routes) { 9 | this.routes = routes; 10 | } 11 | } 12 | 13 | describe('the Child Router module', () => { 14 | var sut; 15 | var mockedRouter; 16 | 17 | beforeEach(() => { 18 | mockedRouter = new RouterStub(); 19 | sut = new ChildRouter(); 20 | sut.configureRouter(mockedRouter, mockedRouter); 21 | }); 22 | 23 | it('contains a router property', () => { 24 | expect(sut.router).toBeDefined(); 25 | }); 26 | 27 | it('configures the heading', () => { 28 | expect(sut.heading).toEqual('Child Router'); 29 | }); 30 | 31 | it('should have a welcome route', () => { 32 | expect(sut.router.routes).toContain({ route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }); 33 | }); 34 | 35 | it('should have a users route', () => { 36 | expect(sut.router.routes).toContain({ route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }); 37 | }); 38 | 39 | it('should have a child router route', () => { 40 | expect(sut.router.routes).toContain({ route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }); 41 | }); 42 | }); 43 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/test/unit/users.spec.js: -------------------------------------------------------------------------------- 1 | import {Users} from '../../src/users'; 2 | 3 | class HttpStub { 4 | fetch(url) { 5 | var response = this.itemStub; 6 | this.url = url; 7 | return new Promise((resolve) => { 8 | resolve({ json: () => response }); 9 | }); 10 | } 11 | 12 | configure(func) { 13 | } 14 | } 15 | 16 | describe('the Users module', () => { 17 | it('sets fetch response to users', (done) => { 18 | var http = new HttpStub(); 19 | var sut = new Users(http); 20 | var itemStubs = [1]; 21 | var itemFake = [2]; 22 | 23 | http.itemStub = itemStubs; 24 | sut.activate().then(() => { 25 | expect(sut.users).toBe(itemStubs); 26 | expect(sut.users).not.toBe(itemFake); 27 | done(); 28 | }); 29 | }); 30 | }); 31 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wallaby.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-var, no-shadow, dot-notation */ 2 | 3 | var babel = require('babel'); 4 | 5 | module.exports = function(wallaby) { 6 | return { 7 | files: [ 8 | 9 | {pattern: 'jspm_packages/system.js', instrument: false}, 10 | {pattern: 'config.js', instrument: false}, 11 | 12 | {pattern: 'src/**/*.js', load: false} 13 | 14 | ], 15 | 16 | tests: [ 17 | {pattern: 'test/unit/**/*.spec.js', load: false} 18 | ], 19 | 20 | compilers: { 21 | '**/*.js': wallaby.compilers.babel({ 22 | babel: babel, 23 | optional: [ 24 | 'es7.decorators', 25 | 'es7.classProperties' 26 | ] 27 | }) 28 | }, 29 | 30 | middleware: (app, express) => { 31 | app.use('/jspm_packages', express.static(require('path').join(__dirname, 'jspm_packages'))); 32 | }, 33 | 34 | bootstrap: function(wallaby) { 35 | var promises = []; 36 | var i = 0; 37 | var len = wallaby.tests.length; 38 | 39 | wallaby.delayStart(); 40 | 41 | System.config({ 42 | paths: { 43 | '*': '*.js' 44 | } 45 | }); 46 | for (; i < len; i++) { 47 | promises.push(System['import'](wallaby.tests[i].replace(/\.js$/, ''))); 48 | } 49 | 50 | Promise.all(promises).then(function() { 51 | wallaby.start(); 52 | }); 53 | }, 54 | 55 | debug: false 56 | }; 57 | }; 58 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/webpack.config.js: -------------------------------------------------------------------------------- 1 | /*eslint-disable no-var*/ 2 | 3 | var path = require('path'); 4 | var AureliaWebpackPlugin = require('aurelia-webpack-plugin'); 5 | 6 | module.exports = { 7 | devServer: { 8 | host: 'localhost', 9 | port: 3000 10 | }, 11 | entry: { 12 | main: [ 13 | './src/main' 14 | ] 15 | }, 16 | output: { 17 | path: path.join(__dirname, 'wwwroot', 'dist'), 18 | publicPath:'dist/', 19 | filename: 'bundle.js' 20 | }, 21 | plugins: [ 22 | new AureliaWebpackPlugin({ 23 | includeSubModules: [ 24 | { moduleId: 'aurelia-auth' } 25 | ] 26 | }) 27 | ], 28 | module: { 29 | loaders: [ 30 | { test: /\.js$/, loader: 'babel', exclude: /node_modules/, query: { presets: ['es2015-loose', 'stage-1'], plugins: ['transform-decorators-legacy'] } }, 31 | { test: /\.css?$/, loader: 'style!css' }, 32 | { test: /\.html$/, loader: 'raw' }, 33 | { test: /\.(png|gif|jpg)$/, loader: 'url-loader?limit=8192' }, 34 | { test: /\.woff2(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'url-loader?limit=10000&minetype=application/font-woff2' }, 35 | { test: /\.woff(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'url-loader?limit=10000&minetype=application/font-woff' }, 36 | { test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'file-loader' } 37 | ] 38 | } 39 | }; 40 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaAspNetApp/wwwroot/favicon.ico -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap", 3 | "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", 4 | "keywords": [ 5 | "css", 6 | "js", 7 | "less", 8 | "mobile-first", 9 | "responsive", 10 | "front-end", 11 | "framework", 12 | "web" 13 | ], 14 | "homepage": "http://getbootstrap.com", 15 | "license": "MIT", 16 | "moduleType": "globals", 17 | "main": [ 18 | "less/bootstrap.less", 19 | "dist/js/bootstrap.js" 20 | ], 21 | "ignore": [ 22 | "/.*", 23 | "_config.yml", 24 | "CNAME", 25 | "composer.json", 26 | "CONTRIBUTING.md", 27 | "docs", 28 | "js/tests", 29 | "test-infra" 30 | ], 31 | "dependencies": { 32 | "jquery": ">= 1.9.1" 33 | }, 34 | "version": "3.3.5", 35 | "_release": "3.3.5", 36 | "_resolution": { 37 | "type": "version", 38 | "tag": "v3.3.5", 39 | "commit": "16b48259a62f576e52c903c476bd42b90ab22482" 40 | }, 41 | "_source": "git://github.com/twbs/bootstrap.git", 42 | "_target": "3.3.5", 43 | "_originalSource": "bootstrap" 44 | } -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2011-2015 Twitter, Inc 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/bootstrap/dist/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation-unobtrusive/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation-unobtrusive", 3 | "version": "3.2.4", 4 | "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", 5 | "description": "Add-on to jQuery Validation to enable unobtrusive validation options in data-* attributes.", 6 | "main": [ 7 | "jquery.validate.unobtrusive.js" 8 | ], 9 | "ignore": [ 10 | "**/.*", 11 | "*.json", 12 | "*.md", 13 | "*.txt", 14 | "gulpfile.js" 15 | ], 16 | "keywords": [ 17 | "jquery", 18 | "asp.net", 19 | "mvc", 20 | "validation", 21 | "unobtrusive" 22 | ], 23 | "authors": [ 24 | "Microsoft" 25 | ], 26 | "license": "http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm", 27 | "repository": { 28 | "type": "git", 29 | "url": "git://github.com/aspnet/jquery-validation-unobtrusive.git" 30 | }, 31 | "dependencies": { 32 | "jquery-validation": ">=1.8", 33 | "jquery": ">=1.8" 34 | }, 35 | "_release": "3.2.4", 36 | "_resolution": { 37 | "type": "version", 38 | "tag": "v3.2.4", 39 | "commit": "13386cd1b5947d8a5d23a12b531ce3960be1eba7" 40 | }, 41 | "_source": "git://github.com/aspnet/jquery-validation-unobtrusive.git", 42 | "_target": "3.2.4", 43 | "_originalSource": "jquery-validation-unobtrusive" 44 | } -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation-unobtrusive/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation-unobtrusive", 3 | "version": "3.2.4", 4 | "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", 5 | "description": "Add-on to jQuery Validation to enable unobtrusive validation options in data-* attributes.", 6 | "main": [ 7 | "jquery.validate.unobtrusive.js" 8 | ], 9 | "ignore": [ 10 | "**/.*", 11 | "*.json", 12 | "*.md", 13 | "*.txt", 14 | "gulpfile.js" 15 | ], 16 | "keywords": [ 17 | "jquery", 18 | "asp.net", 19 | "mvc", 20 | "validation", 21 | "unobtrusive" 22 | ], 23 | "authors": [ 24 | "Microsoft" 25 | ], 26 | "license": "http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm", 27 | "repository": { 28 | "type": "git", 29 | "url": "git://github.com/aspnet/jquery-validation-unobtrusive.git" 30 | }, 31 | "dependencies": { 32 | "jquery-validation": ">=1.8", 33 | "jquery": ">=1.8" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation", 3 | "homepage": "http://jqueryvalidation.org/", 4 | "repository": { 5 | "type": "git", 6 | "url": "git://github.com/jzaefferer/jquery-validation.git" 7 | }, 8 | "authors": [ 9 | "Jörn Zaefferer " 10 | ], 11 | "description": "Form validation made easy", 12 | "main": "dist/jquery.validate.js", 13 | "keywords": [ 14 | "forms", 15 | "validation", 16 | "validate" 17 | ], 18 | "license": "MIT", 19 | "ignore": [ 20 | "**/.*", 21 | "node_modules", 22 | "bower_components", 23 | "test", 24 | "demo", 25 | "lib" 26 | ], 27 | "dependencies": { 28 | "jquery": ">= 1.7.2" 29 | }, 30 | "version": "1.14.0", 31 | "_release": "1.14.0", 32 | "_resolution": { 33 | "type": "version", 34 | "tag": "1.14.0", 35 | "commit": "c1343fb9823392aa9acbe1c3ffd337b8c92fed48" 36 | }, 37 | "_source": "git://github.com/jzaefferer/jquery-validation.git", 38 | "_target": "1.14.0", 39 | "_originalSource": "jquery-validation" 40 | } -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | ===================== 3 | 4 | Copyright Jörn Zaefferer 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation", 3 | "homepage": "http://jqueryvalidation.org/", 4 | "repository": { 5 | "type": "git", 6 | "url": "git://github.com/jzaefferer/jquery-validation.git" 7 | }, 8 | "authors": [ 9 | "Jörn Zaefferer " 10 | ], 11 | "description": "Form validation made easy", 12 | "main": "dist/jquery.validate.js", 13 | "keywords": [ 14 | "forms", 15 | "validation", 16 | "validate" 17 | ], 18 | "license": "MIT", 19 | "ignore": [ 20 | "**/.*", 21 | "node_modules", 22 | "bower_components", 23 | "test", 24 | "demo", 25 | "lib" 26 | ], 27 | "dependencies": { 28 | "jquery": ">= 1.7.2" 29 | }, 30 | "version": "1.14.0" 31 | } 32 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/build/release.js: -------------------------------------------------------------------------------- 1 | /* Release checklist 2 | - Run `git changelog` and edit to match previous output (this should make use of jquey-release instead) 3 | - pull latest https://github.com/jquery/jquery-release 4 | - run 5 | node release.js --remote=jzaefferer/jquery-validation 6 | - Wait a while, verify and confirm each step 7 | - 8 | */ 9 | 10 | /*jshint node:true */ 11 | module.exports = function( Release ) { 12 | 13 | function today() { 14 | return new Date().toISOString().replace(/T.+/, ""); 15 | } 16 | 17 | // also add version property to this 18 | Release._jsonFiles.push( "validation.jquery.json" ); 19 | 20 | Release.define({ 21 | issueTracker: "github", 22 | changelogShell: function() { 23 | return Release.newVersion + " / " + today() + "\n==================\n\n"; 24 | }, 25 | 26 | generateArtifacts: function( done ) { 27 | Release.exec( "grunt release", "Grunt command failed" ); 28 | done([ 29 | "dist/additional-methods.js", 30 | "dist/additional-methods.min.js", 31 | "dist/jquery.validate.js", 32 | "dist/jquery.validate.min.js" 33 | ]); 34 | }, 35 | 36 | // disable CDN publishing 37 | cdnPublish: false, 38 | 39 | // disable authors check 40 | _checkAuthorsTxt: function() {} 41 | }); 42 | 43 | }; 44 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation", 3 | "title": "jQuery Validation Plugin", 4 | "description": "Client-side form validation made easy", 5 | "version": "1.14.0", 6 | "homepage": "http://jqueryvalidation.org/", 7 | "license": "MIT", 8 | "author": { 9 | "name": "Jörn Zaefferer", 10 | "email": "joern.zaefferer@gmail.com", 11 | "url": "http://bassistance.de" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "git://github.com/jzaefferer/jquery-validation.git" 16 | }, 17 | "bugs": { 18 | "url": "https://github.com/jzaefferer/jquery-validation/issues" 19 | }, 20 | "licenses": [ 21 | { 22 | "type": "MIT", 23 | "url": "http://www.opensource.org/licenses/MIT" 24 | } 25 | ], 26 | "scripts": { 27 | "test": "grunt", 28 | "prepublish": "grunt" 29 | }, 30 | "files": [ 31 | "dist/localization/", 32 | "dist/additional-methods.js", 33 | "dist/jquery.validate.js" 34 | ], 35 | "main": "dist/jquery.validate.js", 36 | "dependencies": {}, 37 | "devDependencies": { 38 | "commitplease": "2.0.0", 39 | "grunt": "0.4.4", 40 | "grunt-contrib-compress": "0.7.0", 41 | "grunt-contrib-concat": "0.3.0", 42 | "grunt-contrib-copy": "0.5.0", 43 | "grunt-contrib-jshint": "^0.10.0", 44 | "grunt-contrib-qunit": "0.4.0", 45 | "grunt-contrib-uglify": "0.4.0", 46 | "grunt-contrib-watch": "0.6.0", 47 | "grunt-jscs": "1.0.0", 48 | "grunt-text-replace": "0.3.11" 49 | }, 50 | "keywords": [ 51 | "jquery", 52 | "jquery-plugin", 53 | "forms", 54 | "validation", 55 | "validate" 56 | ] 57 | } 58 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/accept.js: -------------------------------------------------------------------------------- 1 | // Accept a value from a file input based on a required mimetype 2 | $.validator.addMethod("accept", function(value, element, param) { 3 | // Split mime on commas in case we have multiple types we can accept 4 | var typeParam = typeof param === "string" ? param.replace(/\s/g, "").replace(/,/g, "|") : "image/*", 5 | optionalValue = this.optional(element), 6 | i, file; 7 | 8 | // Element is optional 9 | if (optionalValue) { 10 | return optionalValue; 11 | } 12 | 13 | if ($(element).attr("type") === "file") { 14 | // If we are using a wildcard, make it regex friendly 15 | typeParam = typeParam.replace(/\*/g, ".*"); 16 | 17 | // Check if the element has a FileList before checking each file 18 | if (element.files && element.files.length) { 19 | for (i = 0; i < element.files.length; i++) { 20 | file = element.files[i]; 21 | 22 | // Grab the mimetype from the loaded file, verify it matches 23 | if (!file.type.match(new RegExp( "\\.?(" + typeParam + ")$", "i"))) { 24 | return false; 25 | } 26 | } 27 | } 28 | } 29 | 30 | // Either return true because we've validated each file, or because the 31 | // browser does not support element.files and the FileList feature 32 | return true; 33 | }, $.validator.format("Please enter a value with a valid mimetype.")); 34 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/additional.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | 3 | function stripHtml(value) { 4 | // remove html tags and space chars 5 | return value.replace(/<.[^<>]*?>/g, " ").replace(/ | /gi, " ") 6 | // remove punctuation 7 | .replace(/[.(),;:!?%#$'\"_+=\/\-“”’]*/g, ""); 8 | } 9 | 10 | $.validator.addMethod("maxWords", function(value, element, params) { 11 | return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length <= params; 12 | }, $.validator.format("Please enter {0} words or less.")); 13 | 14 | $.validator.addMethod("minWords", function(value, element, params) { 15 | return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params; 16 | }, $.validator.format("Please enter at least {0} words.")); 17 | 18 | $.validator.addMethod("rangeWords", function(value, element, params) { 19 | var valueStripped = stripHtml(value), 20 | regex = /\b\w+\b/g; 21 | return this.optional(element) || valueStripped.match(regex).length >= params[0] && valueStripped.match(regex).length <= params[1]; 22 | }, $.validator.format("Please enter between {0} and {1} words.")); 23 | 24 | }()); 25 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/alphanumeric.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("alphanumeric", function(value, element) { 2 | return this.optional(element) || /^\w+$/i.test(value); 3 | }, "Letters, numbers, and underscores only please"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/bankaccountNL.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Dutch bank account numbers (not 'giro' numbers) have 9 digits 3 | * and pass the '11 check'. 4 | * We accept the notation with spaces, as that is common. 5 | * acceptable: 123456789 or 12 34 56 789 6 | */ 7 | $.validator.addMethod("bankaccountNL", function(value, element) { 8 | if (this.optional(element)) { 9 | return true; 10 | } 11 | if (!(/^[0-9]{9}|([0-9]{2} ){3}[0-9]{3}$/.test(value))) { 12 | return false; 13 | } 14 | // now '11 check' 15 | var account = value.replace(/ /g, ""), // remove spaces 16 | sum = 0, 17 | len = account.length, 18 | pos, factor, digit; 19 | for ( pos = 0; pos < len; pos++ ) { 20 | factor = len - pos; 21 | digit = account.substring(pos, pos + 1); 22 | sum = sum + factor * digit; 23 | } 24 | return sum % 11 === 0; 25 | }, "Please specify a valid bank account number"); 26 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/bankorgiroaccountNL.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("bankorgiroaccountNL", function(value, element) { 2 | return this.optional(element) || 3 | ($.validator.methods.bankaccountNL.call(this, value, element)) || 4 | ($.validator.methods.giroaccountNL.call(this, value, element)); 5 | }, "Please specify a valid bank or giro account number"); 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/bic.js: -------------------------------------------------------------------------------- 1 | /** 2 | * BIC is the business identifier code (ISO 9362). This BIC check is not a guarantee for authenticity. 3 | * 4 | * BIC pattern: BBBBCCLLbbb (8 or 11 characters long; bbb is optional) 5 | * 6 | * BIC definition in detail: 7 | * - First 4 characters - bank code (only letters) 8 | * - Next 2 characters - ISO 3166-1 alpha-2 country code (only letters) 9 | * - Next 2 characters - location code (letters and digits) 10 | * a. shall not start with '0' or '1' 11 | * b. second character must be a letter ('O' is not allowed) or one of the following digits ('0' for test (therefore not allowed), '1' for passive participant and '2' for active participant) 12 | * - Last 3 characters - branch code, optional (shall not start with 'X' except in case of 'XXX' for primary office) (letters and digits) 13 | */ 14 | $.validator.addMethod("bic", function(value, element) { 15 | return this.optional( element ) || /^([A-Z]{6}[A-Z2-9][A-NP-Z1-2])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test( value ); 16 | }, "Please specify a valid BIC code"); 17 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/currency.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Validates currencies with any given symbols by @jameslouiz 3 | * Symbols can be optional or required. Symbols required by default 4 | * 5 | * Usage examples: 6 | * currency: ["£", false] - Use false for soft currency validation 7 | * currency: ["$", false] 8 | * currency: ["RM", false] - also works with text based symbols such as "RM" - Malaysia Ringgit etc 9 | * 10 | * 11 | * 12 | * Soft symbol checking 13 | * currencyInput: { 14 | * currency: ["$", false] 15 | * } 16 | * 17 | * Strict symbol checking (default) 18 | * currencyInput: { 19 | * currency: "$" 20 | * //OR 21 | * currency: ["$", true] 22 | * } 23 | * 24 | * Multiple Symbols 25 | * currencyInput: { 26 | * currency: "$,£,¢" 27 | * } 28 | */ 29 | $.validator.addMethod("currency", function(value, element, param) { 30 | var isParamString = typeof param === "string", 31 | symbol = isParamString ? param : param[0], 32 | soft = isParamString ? true : param[1], 33 | regex; 34 | 35 | symbol = symbol.replace(/,/g, ""); 36 | symbol = soft ? symbol + "]" : symbol + "]?"; 37 | regex = "^[" + symbol + "([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$"; 38 | regex = new RegExp(regex); 39 | return this.optional(element) || regex.test(value); 40 | 41 | }, "Please specify a valid currency"); 42 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/dateFA.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("dateFA", function(value, element) { 2 | return this.optional(element) || /^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test(value); 3 | }, $.validator.messages.date); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/dateITA.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Return true, if the value is a valid date, also making this formal check dd/mm/yyyy. 3 | * 4 | * @example $.validator.methods.date("01/01/1900") 5 | * @result true 6 | * 7 | * @example $.validator.methods.date("01/13/1990") 8 | * @result false 9 | * 10 | * @example $.validator.methods.date("01.01.1900") 11 | * @result false 12 | * 13 | * @example 14 | * @desc Declares an optional input element whose value must be a valid date. 15 | * 16 | * @name $.validator.methods.dateITA 17 | * @type Boolean 18 | * @cat Plugins/Validate/Methods 19 | */ 20 | $.validator.addMethod("dateITA", function(value, element) { 21 | var check = false, 22 | re = /^\d{1,2}\/\d{1,2}\/\d{4}$/, 23 | adata, gg, mm, aaaa, xdata; 24 | if ( re.test(value)) { 25 | adata = value.split("/"); 26 | gg = parseInt(adata[0], 10); 27 | mm = parseInt(adata[1], 10); 28 | aaaa = parseInt(adata[2], 10); 29 | xdata = new Date(Date.UTC(aaaa, mm - 1, gg, 12, 0, 0, 0)); 30 | if ( ( xdata.getUTCFullYear() === aaaa ) && ( xdata.getUTCMonth () === mm - 1 ) && ( xdata.getUTCDate() === gg ) ) { 31 | check = true; 32 | } else { 33 | check = false; 34 | } 35 | } else { 36 | check = false; 37 | } 38 | return this.optional(element) || check; 39 | }, $.validator.messages.date); 40 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/dateNL.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("dateNL", function(value, element) { 2 | return this.optional(element) || /^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test(value); 3 | }, $.validator.messages.date); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/extension.js: -------------------------------------------------------------------------------- 1 | // Older "accept" file extension method. Old docs: http://docs.jquery.com/Plugins/Validation/Methods/accept 2 | $.validator.addMethod("extension", function(value, element, param) { 3 | param = typeof param === "string" ? param.replace(/,/g, "|") : "png|jpe?g|gif"; 4 | return this.optional(element) || value.match(new RegExp("\\.(" + param + ")$", "i")); 5 | }, $.validator.format("Please enter a value with a valid extension.")); 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/giroaccountNL.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Dutch giro account numbers (not bank numbers) have max 7 digits 3 | */ 4 | $.validator.addMethod("giroaccountNL", function(value, element) { 5 | return this.optional(element) || /^[0-9]{1,7}$/.test(value); 6 | }, "Please specify a valid giro account number"); 7 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/integer.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("integer", function(value, element) { 2 | return this.optional(element) || /^-?\d+$/.test(value); 3 | }, "A positive or negative non-decimal number please"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/ipv4.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("ipv4", function(value, element) { 2 | return this.optional(element) || /^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(value); 3 | }, "Please enter a valid IP v4 address."); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/ipv6.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("ipv6", function(value, element) { 2 | return this.optional(element) || /^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(value); 3 | }, "Please enter a valid IP v6 address."); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/lettersonly.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("lettersonly", function(value, element) { 2 | return this.optional(element) || /^[a-z]+$/i.test(value); 3 | }, "Letters only please"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/letterswithbasicpunc.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("letterswithbasicpunc", function(value, element) { 2 | return this.optional(element) || /^[a-z\-.,()'"\s]+$/i.test(value); 3 | }, "Letters or punctuation only please"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/mobileNL.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("mobileNL", function(value, element) { 2 | return this.optional(element) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)6((\s|\s?\-\s?)?[0-9]){8}$/.test(value); 3 | }, "Please specify a valid mobile number"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/mobileUK.js: -------------------------------------------------------------------------------- 1 | /* For UK phone functions, do the following server side processing: 2 | * Compare original input with this RegEx pattern: 3 | * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 4 | * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' 5 | * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 6 | * A number of very detailed GB telephone number RegEx patterns can also be found at: 7 | * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 8 | */ 9 | $.validator.addMethod("mobileUK", function(phone_number, element) { 10 | phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); 11 | return this.optional(element) || phone_number.length > 9 && 12 | phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/); 13 | }, "Please specify a valid mobile number"); 14 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/nieES.js: -------------------------------------------------------------------------------- 1 | /* 2 | * The número de identidad de extranjero ( NIE )is a code used to identify the non-nationals in Spain 3 | */ 4 | $.validator.addMethod( "nieES", function( value ) { 5 | "use strict"; 6 | 7 | value = value.toUpperCase(); 8 | 9 | // Basic format test 10 | if ( !value.match( "((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)" ) ) { 11 | return false; 12 | } 13 | 14 | // Test NIE 15 | //T 16 | if ( /^[T]{1}/.test( value ) ) { 17 | return ( value[ 8 ] === /^[T]{1}[A-Z0-9]{8}$/.test( value ) ); 18 | } 19 | 20 | //XYZ 21 | if ( /^[XYZ]{1}/.test( value ) ) { 22 | return ( 23 | value[ 8 ] === "TRWAGMYFPDXBNJZSQVHLCKE".charAt( 24 | value.replace( "X", "0" ) 25 | .replace( "Y", "1" ) 26 | .replace( "Z", "2" ) 27 | .substring( 0, 8 ) % 23 28 | ) 29 | ); 30 | } 31 | 32 | return false; 33 | 34 | }, "Please specify a valid NIE number." ); 35 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/nifES.js: -------------------------------------------------------------------------------- 1 | /* 2 | * The Número de Identificación Fiscal ( NIF ) is the way tax identification used in Spain for individuals 3 | */ 4 | $.validator.addMethod( "nifES", function( value ) { 5 | "use strict"; 6 | 7 | value = value.toUpperCase(); 8 | 9 | // Basic format test 10 | if ( !value.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)") ) { 11 | return false; 12 | } 13 | 14 | // Test NIF 15 | if ( /^[0-9]{8}[A-Z]{1}$/.test( value ) ) { 16 | return ( "TRWAGMYFPDXBNJZSQVHLCKE".charAt( value.substring( 8, 0 ) % 23 ) === value.charAt( 8 ) ); 17 | } 18 | // Test specials NIF (starts with K, L or M) 19 | if ( /^[KLM]{1}/.test( value ) ) { 20 | return ( value[ 8 ] === String.fromCharCode( 64 ) ); 21 | } 22 | 23 | return false; 24 | 25 | }, "Please specify a valid NIF number." ); 26 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/notEqualTo.js: -------------------------------------------------------------------------------- 1 | jQuery.validator.addMethod( "notEqualTo", function( value, element, param ) { 2 | return this.optional(element) || !$.validator.methods.equalTo.call( this, value, element, param ); 3 | }, "Please enter a different value, values must not be the same." ); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/nowhitespace.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("nowhitespace", function(value, element) { 2 | return this.optional(element) || /^\S+$/i.test(value); 3 | }, "No white space please"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/pattern.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Return true if the field value matches the given format RegExp 3 | * 4 | * @example $.validator.methods.pattern("AR1004",element,/^AR\d{4}$/) 5 | * @result true 6 | * 7 | * @example $.validator.methods.pattern("BR1004",element,/^AR\d{4}$/) 8 | * @result false 9 | * 10 | * @name $.validator.methods.pattern 11 | * @type Boolean 12 | * @cat Plugins/Validate/Methods 13 | */ 14 | $.validator.addMethod("pattern", function(value, element, param) { 15 | if (this.optional(element)) { 16 | return true; 17 | } 18 | if (typeof param === "string") { 19 | param = new RegExp("^(?:" + param + ")$"); 20 | } 21 | return param.test(value); 22 | }, "Invalid format."); 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/phoneNL.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Dutch phone numbers have 10 digits (or 11 and start with +31). 3 | */ 4 | $.validator.addMethod("phoneNL", function(value, element) { 5 | return this.optional(element) || /^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test(value); 6 | }, "Please specify a valid phone number."); 7 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/phoneUK.js: -------------------------------------------------------------------------------- 1 | /* For UK phone functions, do the following server side processing: 2 | * Compare original input with this RegEx pattern: 3 | * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 4 | * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' 5 | * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 6 | * A number of very detailed GB telephone number RegEx patterns can also be found at: 7 | * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 8 | */ 9 | $.validator.addMethod("phoneUK", function(phone_number, element) { 10 | phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); 11 | return this.optional(element) || phone_number.length > 9 && 12 | phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/); 13 | }, "Please specify a valid phone number"); 14 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/phoneUS.js: -------------------------------------------------------------------------------- 1 | /** 2 | * matches US phone number format 3 | * 4 | * where the area code may not start with 1 and the prefix may not start with 1 5 | * allows '-' or ' ' as a separator and allows parens around area code 6 | * some people may want to put a '1' in front of their number 7 | * 8 | * 1(212)-999-2345 or 9 | * 212 999 2344 or 10 | * 212-999-0983 11 | * 12 | * but not 13 | * 111-123-5434 14 | * and not 15 | * 212 123 4567 16 | */ 17 | $.validator.addMethod("phoneUS", function(phone_number, element) { 18 | phone_number = phone_number.replace(/\s+/g, ""); 19 | return this.optional(element) || phone_number.length > 9 && 20 | phone_number.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]([02-9]\d|1[02-9])-?\d{4}$/); 21 | }, "Please specify a valid phone number"); 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/phonesUK.js: -------------------------------------------------------------------------------- 1 | /* For UK phone functions, do the following server side processing: 2 | * Compare original input with this RegEx pattern: 3 | * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 4 | * Extract $1 and set $prefix to '+44' if $1 is '44', otherwise set $prefix to '0' 5 | * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 6 | * A number of very detailed GB telephone number RegEx patterns can also be found at: 7 | * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 8 | */ 9 | //Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers 10 | $.validator.addMethod("phonesUK", function(phone_number, element) { 11 | phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); 12 | return this.optional(element) || phone_number.length > 9 && 13 | phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/); 14 | }, "Please specify a valid uk phone number"); 15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/postalCodeCA.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Matches a valid Canadian Postal Code 3 | * 4 | * @example jQuery.validator.methods.postalCodeCA( "H0H 0H0", element ) 5 | * @result true 6 | * 7 | * @example jQuery.validator.methods.postalCodeCA( "H0H0H0", element ) 8 | * @result false 9 | * 10 | * @name jQuery.validator.methods.postalCodeCA 11 | * @type Boolean 12 | * @cat Plugins/Validate/Methods 13 | */ 14 | $.validator.addMethod( "postalCodeCA", function( value, element ) { 15 | return this.optional( element ) || /^[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d$/.test( value ); 16 | }, "Please specify a valid postal code" ); 17 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/postalcodeBR.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Valida CEPs do brasileiros: 3 | * 4 | * Formatos aceitos: 5 | * 99999-999 6 | * 99.999-999 7 | * 99999999 8 | */ 9 | $.validator.addMethod("postalcodeBR", function(cep_value, element) { 10 | return this.optional(element) || /^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test( cep_value ); 11 | }, "Informe um CEP válido."); 12 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/postalcodeIT.js: -------------------------------------------------------------------------------- 1 | /* Matches Italian postcode (CAP) */ 2 | $.validator.addMethod("postalcodeIT", function(value, element) { 3 | return this.optional(element) || /^\d{5}$/.test(value); 4 | }, "Please specify a valid postal code"); 5 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/postalcodeNL.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("postalcodeNL", function(value, element) { 2 | return this.optional(element) || /^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test(value); 3 | }, "Please specify a valid postal code"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/postcodeUK.js: -------------------------------------------------------------------------------- 1 | // Matches UK postcode. Does not match to UK Channel Islands that have their own postcodes (non standard UK) 2 | $.validator.addMethod("postcodeUK", function(value, element) { 3 | return this.optional(element) || /^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test(value); 4 | }, "Please specify a valid UK postcode"); 5 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/strippedminlength.js: -------------------------------------------------------------------------------- 1 | // TODO check if value starts with <, otherwise don't try stripping anything 2 | $.validator.addMethod("strippedminlength", function(value, element, param) { 3 | return $(value).text().length >= param; 4 | }, $.validator.format("Please enter at least {0} characters")); 5 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/time.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("time", function(value, element) { 2 | return this.optional(element) || /^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test(value); 3 | }, "Please enter a valid time, between 00:00 and 23:59"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/time12h.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("time12h", function(value, element) { 2 | return this.optional(element) || /^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test(value); 3 | }, "Please enter a valid time in 12-hour am/pm format"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/url2.js: -------------------------------------------------------------------------------- 1 | // same as url, but TLD is optional 2 | $.validator.addMethod("url2", function(value, element) { 3 | return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value); 4 | }, $.validator.messages.url); 5 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/vinUS.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Return true, if the value is a valid vehicle identification number (VIN). 3 | * 4 | * Works with all kind of text inputs. 5 | * 6 | * @example 7 | * @desc Declares a required input element whose value must be a valid vehicle identification number. 8 | * 9 | * @name $.validator.methods.vinUS 10 | * @type Boolean 11 | * @cat Plugins/Validate/Methods 12 | */ 13 | $.validator.addMethod("vinUS", function(v) { 14 | if (v.length !== 17) { 15 | return false; 16 | } 17 | 18 | var LL = [ "A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" ], 19 | VL = [ 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 7, 9, 2, 3, 4, 5, 6, 7, 8, 9 ], 20 | FL = [ 8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2 ], 21 | rs = 0, 22 | i, n, d, f, cd, cdv; 23 | 24 | for (i = 0; i < 17; i++) { 25 | f = FL[i]; 26 | d = v.slice(i, i + 1); 27 | if (i === 8) { 28 | cdv = d; 29 | } 30 | if (!isNaN(d)) { 31 | d *= f; 32 | } else { 33 | for (n = 0; n < LL.length; n++) { 34 | if (d.toUpperCase() === LL[n]) { 35 | d = VL[n]; 36 | d *= f; 37 | if (isNaN(cdv) && n === 8) { 38 | cdv = LL[n]; 39 | } 40 | break; 41 | } 42 | } 43 | } 44 | rs += d; 45 | } 46 | cd = rs % 11; 47 | if (cd === 10) { 48 | cd = "X"; 49 | } 50 | if (cd === cdv) { 51 | return true; 52 | } 53 | return false; 54 | }, "The specified vehicle identification number (VIN) is invalid."); 55 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/zipcodeUS.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("zipcodeUS", function(value, element) { 2 | return this.optional(element) || /^\d{5}(-\d{4})?$/.test(value); 3 | }, "The specified US ZIP Code is invalid"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/additional/ziprange.js: -------------------------------------------------------------------------------- 1 | $.validator.addMethod("ziprange", function(value, element) { 2 | return this.optional(element) || /^90[2-5]\d\{2\}-\d{4}$/.test(value); 3 | }, "Your ZIP-code must be in the range 902xx-xxxx to 905xx-xxxx"); 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/ajax.js: -------------------------------------------------------------------------------- 1 | // ajax mode: abort 2 | // usage: $.ajax({ mode: "abort"[, port: "uniqueport"]}); 3 | // if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort() 4 | 5 | var pendingRequests = {}, 6 | ajax; 7 | // Use a prefilter if available (1.5+) 8 | if ( $.ajaxPrefilter ) { 9 | $.ajaxPrefilter(function( settings, _, xhr ) { 10 | var port = settings.port; 11 | if ( settings.mode === "abort" ) { 12 | if ( pendingRequests[port] ) { 13 | pendingRequests[port].abort(); 14 | } 15 | pendingRequests[port] = xhr; 16 | } 17 | }); 18 | } else { 19 | // Proxy ajax 20 | ajax = $.ajax; 21 | $.ajax = function( settings ) { 22 | var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode, 23 | port = ( "port" in settings ? settings : $.ajaxSettings ).port; 24 | if ( mode === "abort" ) { 25 | if ( pendingRequests[port] ) { 26 | pendingRequests[port].abort(); 27 | } 28 | pendingRequests[port] = ajax.apply(this, arguments); 29 | return pendingRequests[port]; 30 | } 31 | return ajax.apply(this, arguments); 32 | }; 33 | } 34 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ar.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: AR (Arabic; العربية) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "هذا الحقل إلزامي", 7 | remote: "يرجى تصحيح هذا الحقل للمتابعة", 8 | email: "رجاء إدخال عنوان بريد إلكتروني صحيح", 9 | url: "رجاء إدخال عنوان موقع إلكتروني صحيح", 10 | date: "رجاء إدخال تاريخ صحيح", 11 | dateISO: "رجاء إدخال تاريخ صحيح (ISO)", 12 | number: "رجاء إدخال عدد بطريقة صحيحة", 13 | digits: "رجاء إدخال أرقام فقط", 14 | creditcard: "رجاء إدخال رقم بطاقة ائتمان صحيح", 15 | equalTo: "رجاء إدخال نفس القيمة", 16 | extension: "رجاء إدخال ملف بامتداد موافق عليه", 17 | maxlength: $.validator.format("الحد الأقصى لعدد الحروف هو {0}"), 18 | minlength: $.validator.format("الحد الأدنى لعدد الحروف هو {0}"), 19 | rangelength: $.validator.format("عدد الحروف يجب أن يكون بين {0} و {1}"), 20 | range: $.validator.format("رجاء إدخال عدد قيمته بين {0} و {1}"), 21 | max: $.validator.format("رجاء إدخال عدد أقل من أو يساوي (0}"), 22 | min: $.validator.format("رجاء إدخال عدد أكبر من أو يساوي (0}") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_bg.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: BG (Bulgarian; български език) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Полето е задължително.", 7 | remote: "Моля, въведете правилната стойност.", 8 | email: "Моля, въведете валиден email.", 9 | url: "Моля, въведете валидно URL.", 10 | date: "Моля, въведете валидна дата.", 11 | dateISO: "Моля, въведете валидна дата (ISO).", 12 | number: "Моля, въведете валиден номер.", 13 | digits: "Моля, въведете само цифри.", 14 | creditcard: "Моля, въведете валиден номер на кредитна карта.", 15 | equalTo: "Моля, въведете същата стойност отново.", 16 | extension: "Моля, въведете стойност с валидно разширение.", 17 | maxlength: $.validator.format("Моля, въведете повече от {0} символа."), 18 | minlength: $.validator.format("Моля, въведете поне {0} символа."), 19 | rangelength: $.validator.format("Моля, въведете стойност с дължина между {0} и {1} символа."), 20 | range: $.validator.format("Моля, въведете стойност между {0} и {1}."), 21 | max: $.validator.format("Моля, въведете стойност по-малка или равна на {0}."), 22 | min: $.validator.format("Моля, въведете стойност по-голяма или равна на {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_bn_BD.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: bn_BD (Bengali, Bangladesh) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "এই তথ্যটি আবশ্যক।", 7 | remote: "এই তথ্যটি ঠিক করুন।", 8 | email: "অনুগ্রহ করে একটি সঠিক মেইল ঠিকানা লিখুন।", 9 | url: "অনুগ্রহ করে একটি সঠিক লিঙ্ক দিন।", 10 | date: "তারিখ সঠিক নয়।", 11 | dateISO: "অনুগ্রহ করে একটি সঠিক (ISO) তারিখ লিখুন।", 12 | number: "অনুগ্রহ করে একটি সঠিক নম্বর লিখুন।", 13 | digits: "এখানে শুধু সংখ্যা ব্যবহার করা যাবে।", 14 | creditcard: "অনুগ্রহ করে একটি ক্রেডিট কার্ডের সঠিক নম্বর লিখুন।", 15 | equalTo: "একই মান আবার লিখুন।", 16 | extension: "সঠিক ধরনের ফাইল আপলোড করুন।", 17 | maxlength: $.validator.format("{0}টির বেশি অক্ষর লেখা যাবে না।"), 18 | minlength: $.validator.format("{0}টির কম অক্ষর লেখা যাবে না।"), 19 | rangelength: $.validator.format("{0} থেকে {1} টি অক্ষর সম্বলিত মান লিখুন।"), 20 | range: $.validator.format("{0} থেকে {1} এর মধ্যে একটি মান ব্যবহার করুন।"), 21 | max: $.validator.format("অনুগ্রহ করে {0} বা তার চাইতে কম মান ব্যবহার করুন।"), 22 | min: $.validator.format("অনুগ্রহ করে {0} বা তার চাইতে বেশি মান ব্যবহার করুন।") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ca.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: CA (Catalan; català) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Aquest camp és obligatori.", 7 | remote: "Si us plau, omple aquest camp.", 8 | email: "Si us plau, escriu una adreça de correu-e vàlida", 9 | url: "Si us plau, escriu una URL vàlida.", 10 | date: "Si us plau, escriu una data vàlida.", 11 | dateISO: "Si us plau, escriu una data (ISO) vàlida.", 12 | number: "Si us plau, escriu un número enter vàlid.", 13 | digits: "Si us plau, escriu només dígits.", 14 | creditcard: "Si us plau, escriu un número de tarjeta vàlid.", 15 | equalTo: "Si us plau, escriu el mateix valor de nou.", 16 | extension: "Si us plau, escriu un valor amb una extensió acceptada.", 17 | maxlength: $.validator.format("Si us plau, no escriguis més de {0} caracters."), 18 | minlength: $.validator.format("Si us plau, no escriguis menys de {0} caracters."), 19 | rangelength: $.validator.format("Si us plau, escriu un valor entre {0} i {1} caracters."), 20 | range: $.validator.format("Si us plau, escriu un valor entre {0} i {1}."), 21 | max: $.validator.format("Si us plau, escriu un valor menor o igual a {0}."), 22 | min: $.validator.format("Si us plau, escriu un valor major o igual a {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_cs.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: CS (Czech; čeština, český jazyk) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Tento údaj je povinný.", 7 | remote: "Prosím, opravte tento údaj.", 8 | email: "Prosím, zadejte platný e-mail.", 9 | url: "Prosím, zadejte platné URL.", 10 | date: "Prosím, zadejte platné datum.", 11 | dateISO: "Prosím, zadejte platné datum (ISO).", 12 | number: "Prosím, zadejte číslo.", 13 | digits: "Prosím, zadávejte pouze číslice.", 14 | creditcard: "Prosím, zadejte číslo kreditní karty.", 15 | equalTo: "Prosím, zadejte znovu stejnou hodnotu.", 16 | extension: "Prosím, zadejte soubor se správnou příponou.", 17 | maxlength: $.validator.format("Prosím, zadejte nejvíce {0} znaků."), 18 | minlength: $.validator.format("Prosím, zadejte nejméně {0} znaků."), 19 | rangelength: $.validator.format("Prosím, zadejte od {0} do {1} znaků."), 20 | range: $.validator.format("Prosím, zadejte hodnotu od {0} do {1}."), 21 | max: $.validator.format("Prosím, zadejte hodnotu menší nebo rovnu {0}."), 22 | min: $.validator.format("Prosím, zadejte hodnotu větší nebo rovnu {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_da.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: DA (Danish; dansk) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Dette felt er påkrævet.", 7 | maxlength: $.validator.format("Indtast højst {0} tegn."), 8 | minlength: $.validator.format("Indtast mindst {0} tegn."), 9 | rangelength: $.validator.format("Indtast mindst {0} og højst {1} tegn."), 10 | email: "Indtast en gyldig email-adresse.", 11 | url: "Indtast en gyldig URL.", 12 | date: "Indtast en gyldig dato.", 13 | number: "Indtast et tal.", 14 | digits: "Indtast kun cifre.", 15 | equalTo: "Indtast den samme værdi igen.", 16 | range: $.validator.format("Angiv en værdi mellem {0} og {1}."), 17 | max: $.validator.format("Angiv en værdi der højst er {0}."), 18 | min: $.validator.format("Angiv en værdi der mindst er {0}."), 19 | creditcard: "Indtast et gyldigt kreditkortnummer." 20 | }); 21 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_de.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: DE (German, Deutsch) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Dieses Feld ist ein Pflichtfeld.", 7 | maxlength: $.validator.format("Geben Sie bitte maximal {0} Zeichen ein."), 8 | minlength: $.validator.format("Geben Sie bitte mindestens {0} Zeichen ein."), 9 | rangelength: $.validator.format("Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein."), 10 | email: "Geben Sie bitte eine gültige E-Mail Adresse ein.", 11 | url: "Geben Sie bitte eine gültige URL ein.", 12 | date: "Bitte geben Sie ein gültiges Datum ein.", 13 | number: "Geben Sie bitte eine Nummer ein.", 14 | digits: "Geben Sie bitte nur Ziffern ein.", 15 | equalTo: "Bitte denselben Wert wiederholen.", 16 | range: $.validator.format("Geben Sie bitte einen Wert zwischen {0} und {1} ein."), 17 | max: $.validator.format("Geben Sie bitte einen Wert kleiner oder gleich {0} ein."), 18 | min: $.validator.format("Geben Sie bitte einen Wert größer oder gleich {0} ein."), 19 | creditcard: "Geben Sie bitte eine gültige Kreditkarten-Nummer ein." 20 | }); 21 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_el.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: EL (Greek; ελληνικά) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Αυτό το πεδίο είναι υποχρεωτικό.", 7 | remote: "Παρακαλώ διορθώστε αυτό το πεδίο.", 8 | email: "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email.", 9 | url: "Παρακαλώ εισάγετε ένα έγκυρο URL.", 10 | date: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία.", 11 | dateISO: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία (ISO).", 12 | number: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό.", 13 | digits: "Παρακαλώ εισάγετε μόνο αριθμητικά ψηφία.", 14 | creditcard: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό πιστωτικής κάρτας.", 15 | equalTo: "Παρακαλώ εισάγετε την ίδια τιμή ξανά.", 16 | extension: "Παρακαλώ εισάγετε μια τιμή με έγκυρη επέκταση αρχείου.", 17 | maxlength: $.validator.format("Παρακαλώ εισάγετε μέχρι και {0} χαρακτήρες."), 18 | minlength: $.validator.format("Παρακαλώ εισάγετε τουλάχιστον {0} χαρακτήρες."), 19 | rangelength: $.validator.format("Παρακαλώ εισάγετε μια τιμή με μήκος μεταξύ {0} και {1} χαρακτήρων."), 20 | range: $.validator.format("Παρακαλώ εισάγετε μια τιμή μεταξύ {0} και {1}."), 21 | max: $.validator.format("Παρακαλώ εισάγετε μια τιμή μικρότερη ή ίση του {0}."), 22 | min: $.validator.format("Παρακαλώ εισάγετε μια τιμή μεγαλύτερη ή ίση του {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_es.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ES (Spanish; Español) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Este campo es obligatorio.", 7 | remote: "Por favor, rellena este campo.", 8 | email: "Por favor, escribe una dirección de correo válida.", 9 | url: "Por favor, escribe una URL válida.", 10 | date: "Por favor, escribe una fecha válida.", 11 | dateISO: "Por favor, escribe una fecha (ISO) válida.", 12 | number: "Por favor, escribe un número válido.", 13 | digits: "Por favor, escribe sólo dígitos.", 14 | creditcard: "Por favor, escribe un número de tarjeta válido.", 15 | equalTo: "Por favor, escribe el mismo valor de nuevo.", 16 | extension: "Por favor, escribe un valor con una extensión aceptada.", 17 | maxlength: $.validator.format("Por favor, no escribas más de {0} caracteres."), 18 | minlength: $.validator.format("Por favor, no escribas menos de {0} caracteres."), 19 | rangelength: $.validator.format("Por favor, escribe un valor entre {0} y {1} caracteres."), 20 | range: $.validator.format("Por favor, escribe un valor entre {0} y {1}."), 21 | max: $.validator.format("Por favor, escribe un valor menor o igual a {0}."), 22 | min: $.validator.format("Por favor, escribe un valor mayor o igual a {0}."), 23 | nifES: "Por favor, escribe un NIF válido.", 24 | nieES: "Por favor, escribe un NIE válido.", 25 | cifES: "Por favor, escribe un CIF válido." 26 | }); 27 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_es_AR.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ES (Spanish; Español) 4 | * Region: AR (Argentina) 5 | */ 6 | $.extend($.validator.messages, { 7 | required: "Este campo es obligatorio.", 8 | remote: "Por favor, completá este campo.", 9 | email: "Por favor, escribí una dirección de correo válida.", 10 | url: "Por favor, escribí una URL válida.", 11 | date: "Por favor, escribí una fecha válida.", 12 | dateISO: "Por favor, escribí una fecha (ISO) válida.", 13 | number: "Por favor, escribí un número entero válido.", 14 | digits: "Por favor, escribí sólo dígitos.", 15 | creditcard: "Por favor, escribí un número de tarjeta válido.", 16 | equalTo: "Por favor, escribí el mismo valor de nuevo.", 17 | extension: "Por favor, escribí un valor con una extensión aceptada.", 18 | maxlength: $.validator.format("Por favor, no escribas más de {0} caracteres."), 19 | minlength: $.validator.format("Por favor, no escribas menos de {0} caracteres."), 20 | rangelength: $.validator.format("Por favor, escribí un valor entre {0} y {1} caracteres."), 21 | range: $.validator.format("Por favor, escribí un valor entre {0} y {1}."), 22 | max: $.validator.format("Por favor, escribí un valor menor o igual a {0}."), 23 | min: $.validator.format("Por favor, escribí un valor mayor o igual a {0}."), 24 | nifES: "Por favor, escribí un NIF válido.", 25 | nieES: "Por favor, escribí un NIE válido.", 26 | cifES: "Por favor, escribí un CIF válido." 27 | }); 28 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_es_PE.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ES (Spanish; Español) 4 | * Region: PE (Perú) 5 | */ 6 | $.extend($.validator.messages, { 7 | required: "Este campo es obligatorio.", 8 | remote: "Por favor, llene este campo.", 9 | email: "Por favor, escriba un correo electrónico válido.", 10 | url: "Por favor, escriba una URL válida.", 11 | date: "Por favor, escriba una fecha válida.", 12 | dateISO: "Por favor, escriba una fecha (ISO) válida.", 13 | number: "Por favor, escriba un número válido.", 14 | digits: "Por favor, escriba sólo dígitos.", 15 | creditcard: "Por favor, escriba un número de tarjeta válido.", 16 | equalTo: "Por favor, escriba el mismo valor de nuevo.", 17 | extension: "Por favor, escriba un valor con una extensión permitida.", 18 | maxlength: $.validator.format("Por favor, no escriba más de {0} caracteres."), 19 | minlength: $.validator.format("Por favor, no escriba menos de {0} caracteres."), 20 | rangelength: $.validator.format("Por favor, escriba un valor entre {0} y {1} caracteres."), 21 | range: $.validator.format("Por favor, escriba un valor entre {0} y {1}."), 22 | max: $.validator.format("Por favor, escriba un valor menor o igual a {0}."), 23 | min: $.validator.format("Por favor, escriba un valor mayor o igual a {0}."), 24 | nifES: "Por favor, escriba un NIF válido.", 25 | nieES: "Por favor, escriba un NIE válido.", 26 | cifES: "Por favor, escriba un CIF válido." 27 | }); 28 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_et.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ET (Estonian; eesti, eesti keel) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "See väli peab olema täidetud.", 7 | maxlength: $.validator.format("Palun sisestage vähem kui {0} tähemärki."), 8 | minlength: $.validator.format("Palun sisestage vähemalt {0} tähemärki."), 9 | rangelength: $.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1} tähemärki."), 10 | email: "Palun sisestage korrektne e-maili aadress.", 11 | url: "Palun sisestage korrektne URL.", 12 | date: "Palun sisestage korrektne kuupäev.", 13 | dateISO: "Palun sisestage korrektne kuupäev (YYYY-MM-DD).", 14 | number: "Palun sisestage korrektne number.", 15 | digits: "Palun sisestage ainult numbreid.", 16 | equalTo: "Palun sisestage sama väärtus uuesti.", 17 | range: $.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1}."), 18 | max: $.validator.format("Palun sisestage väärtus, mis on väiksem või võrdne arvuga {0}."), 19 | min: $.validator.format("Palun sisestage väärtus, mis on suurem või võrdne arvuga {0}."), 20 | creditcard: "Palun sisestage korrektne krediitkaardi number." 21 | }); 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_eu.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: EU (Basque; euskara, euskera) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Eremu hau beharrezkoa da.", 7 | remote: "Mesedez, bete eremu hau.", 8 | email: "Mesedez, idatzi baliozko posta helbide bat.", 9 | url: "Mesedez, idatzi baliozko URL bat.", 10 | date: "Mesedez, idatzi baliozko data bat.", 11 | dateISO: "Mesedez, idatzi baliozko (ISO) data bat.", 12 | number: "Mesedez, idatzi baliozko zenbaki oso bat.", 13 | digits: "Mesedez, idatzi digituak soilik.", 14 | creditcard: "Mesedez, idatzi baliozko txartel zenbaki bat.", 15 | equalTo: "Mesedez, idatzi berdina berriro ere.", 16 | extension: "Mesedez, idatzi onartutako luzapena duen balio bat.", 17 | maxlength: $.validator.format("Mesedez, ez idatzi {0} karaktere baino gehiago."), 18 | minlength: $.validator.format("Mesedez, ez idatzi {0} karaktere baino gutxiago."), 19 | rangelength: $.validator.format("Mesedez, idatzi {0} eta {1} karaktere arteko balio bat."), 20 | range: $.validator.format("Mesedez, idatzi {0} eta {1} arteko balio bat."), 21 | max: $.validator.format("Mesedez, idatzi {0} edo txikiagoa den balio bat."), 22 | min: $.validator.format("Mesedez, idatzi {0} edo handiagoa den balio bat.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_fa.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: FA (Persian; فارسی) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "تکمیل این فیلد اجباری است.", 7 | remote: "لطفا این فیلد را تصحیح کنید.", 8 | email: ".لطفا یک ایمیل صحیح وارد کنید", 9 | url: "لطفا آدرس صحیح وارد کنید.", 10 | date: "لطفا یک تاریخ صحیح وارد کنید", 11 | dateFA: "لطفا یک تاریخ صحیح وارد کنید", 12 | dateISO: "لطفا تاریخ صحیح وارد کنید (ISO).", 13 | number: "لطفا عدد صحیح وارد کنید.", 14 | digits: "لطفا تنها رقم وارد کنید", 15 | creditcard: "لطفا کریدیت کارت صحیح وارد کنید.", 16 | equalTo: "لطفا مقدار برابری وارد کنید", 17 | extension: "لطفا مقداری وارد کنید که ", 18 | maxlength: $.validator.format("لطفا بیشتر از {0} حرف وارد نکنید."), 19 | minlength: $.validator.format("لطفا کمتر از {0} حرف وارد نکنید."), 20 | rangelength: $.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."), 21 | range: $.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."), 22 | max: $.validator.format("لطفا مقداری کمتر از {0} حرف وارد کنید."), 23 | min: $.validator.format("لطفا مقداری بیشتر از {0} حرف وارد کنید."), 24 | minWords: $.validator.format("لطفا حداقل {0} کلمه وارد کنید."), 25 | maxWords: $.validator.format("لطفا حداکثر {0} کلمه وارد کنید.") 26 | }); 27 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_fi.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: FI (Finnish; suomi, suomen kieli) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Tämä kenttä on pakollinen.", 7 | email: "Syötä oikea sähköpostiosoite.", 8 | url: "Syötä oikea URL-osoite.", 9 | date: "Syötä oikea päivämäärä.", 10 | dateISO: "Syötä oikea päivämäärä muodossa VVVV-KK-PP.", 11 | number: "Syötä luku.", 12 | creditcard: "Syötä voimassa oleva luottokorttinumero.", 13 | digits: "Syötä pelkästään numeroita.", 14 | equalTo: "Syötä sama arvo uudestaan.", 15 | maxlength: $.validator.format("Voit syöttää enintään {0} merkkiä."), 16 | minlength: $.validator.format("Vähintään {0} merkkiä."), 17 | rangelength: $.validator.format("Syötä vähintään {0} ja enintään {1} merkkiä."), 18 | range: $.validator.format("Syötä arvo väliltä {0}–{1}."), 19 | max: $.validator.format("Syötä arvo, joka on enintään {0}."), 20 | min: $.validator.format("Syötä arvo, joka on vähintään {0}.") 21 | }); 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ge.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @author @tatocaster 3 | * Translated default messages for the jQuery validation plugin. 4 | * Locale: GE (Georgian; ქართული) 5 | */ 6 | $.extend($.validator.messages, { 7 | required: "ეს ველი სავალდებულოა", 8 | remote: "გთხოვთ შეასწოროთ.", 9 | email: "გთხოვთ შეიყვანოთ სწორი ფორმატით.", 10 | url: "გთხოვთ შეიყვანოთ სწორი ფორმატით.", 11 | date: "გთხოვთ შეიყვანოთ სწორი თარიღი.", 12 | dateISO: "გთხოვთ შეიყვანოთ სწორი ფორმატით ( ISO ).", 13 | number: "გთხოვთ შეიყვანოთ რიცხვი.", 14 | digits: "დაშვებულია მხოლოდ ციფრები.", 15 | creditcard: "გთხოვთ შეიყვანოთ სწორი ფორმატის ბარათის კოდი.", 16 | equalTo: "გთხოვთ შეიყვანოთ იგივე მნიშვნელობა.", 17 | maxlength: $.validator.format( "გთხოვთ შეიყვანოთ არა უმეტეს {0} სიმბოლოსი." ), 18 | minlength: $.validator.format( "შეიყვანეთ მინიმუმ {0} სიმბოლო." ), 19 | rangelength: $.validator.format( "გთხოვთ შეიყვანოთ {0} -დან {1} -მდე რაოდენობის სიმბოლოები." ), 20 | range: $.validator.format( "შეიყვანეთ {0} -სა {1} -ს შორის." ), 21 | max: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა ნაკლები ან ტოლი {0} -ს." ), 22 | min: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა მეტი ან ტოლი {0} -ს." ) 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_gl.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: GL (Galician; Galego) 4 | */ 5 | (function($) { 6 | $.extend($.validator.messages, { 7 | required: "Este campo é obrigatorio.", 8 | remote: "Por favor, cubre este campo.", 9 | email: "Por favor, escribe unha dirección de correo válida.", 10 | url: "Por favor, escribe unha URL válida.", 11 | date: "Por favor, escribe unha data válida.", 12 | dateISO: "Por favor, escribe unha data (ISO) válida.", 13 | number: "Por favor, escribe un número válido.", 14 | digits: "Por favor, escribe só díxitos.", 15 | creditcard: "Por favor, escribe un número de tarxeta válido.", 16 | equalTo: "Por favor, escribe o mesmo valor de novo.", 17 | extension: "Por favor, escribe un valor cunha extensión aceptada.", 18 | maxlength: $.validator.format("Por favor, non escribas máis de {0} caracteres."), 19 | minlength: $.validator.format("Por favor, non escribas menos de {0} caracteres."), 20 | rangelength: $.validator.format("Por favor, escribe un valor entre {0} e {1} caracteres."), 21 | range: $.validator.format("Por favor, escribe un valor entre {0} e {1}."), 22 | max: $.validator.format("Por favor, escribe un valor menor ou igual a {0}."), 23 | min: $.validator.format("Por favor, escribe un valor maior ou igual a {0}."), 24 | nifES: "Por favor, escribe un NIF válido.", 25 | nieES: "Por favor, escribe un NIE válido.", 26 | cifES: "Por favor, escribe un CIF válido." 27 | }); 28 | }(jQuery)); 29 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_he.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: HE (Hebrew; עברית) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "השדה הזה הינו שדה חובה", 7 | remote: "נא לתקן שדה זה", 8 | email: "נא למלא כתובת דוא\"ל חוקית", 9 | url: "נא למלא כתובת אינטרנט חוקית", 10 | date: "נא למלא תאריך חוקי", 11 | dateISO: "נא למלא תאריך חוקי (ISO)", 12 | number: "נא למלא מספר", 13 | digits: "נא למלא רק מספרים", 14 | creditcard: "נא למלא מספר כרטיס אשראי חוקי", 15 | equalTo: "נא למלא את אותו ערך שוב", 16 | extension: "נא למלא ערך עם סיומת חוקית", 17 | maxlength: $.validator.format(".נא לא למלא יותר מ- {0} תווים"), 18 | minlength: $.validator.format("נא למלא לפחות {0} תווים"), 19 | rangelength: $.validator.format("נא למלא ערך בין {0} ל- {1} תווים"), 20 | range: $.validator.format("נא למלא ערך בין {0} ל- {1}"), 21 | max: $.validator.format("נא למלא ערך קטן או שווה ל- {0}"), 22 | min: $.validator.format("נא למלא ערך גדול או שווה ל- {0}") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_hr.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: HR (Croatia; hrvatski jezik) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Ovo polje je obavezno.", 7 | remote: "Ovo polje treba popraviti.", 8 | email: "Unesite ispravnu e-mail adresu.", 9 | url: "Unesite ispravan URL.", 10 | date: "Unesite ispravan datum.", 11 | dateISO: "Unesite ispravan datum (ISO).", 12 | number: "Unesite ispravan broj.", 13 | digits: "Unesite samo brojeve.", 14 | creditcard: "Unesite ispravan broj kreditne kartice.", 15 | equalTo: "Unesite ponovo istu vrijednost.", 16 | extension: "Unesite vrijednost sa ispravnom ekstenzijom.", 17 | maxlength: $.validator.format("Maksimalni broj znakova je {0} ."), 18 | minlength: $.validator.format("Minimalni broj znakova je {0} ."), 19 | rangelength: $.validator.format("Unesite vrijednost između {0} i {1} znakova."), 20 | range: $.validator.format("Unesite vrijednost između {0} i {1}."), 21 | max: $.validator.format("Unesite vrijednost manju ili jednaku {0}."), 22 | min: $.validator.format("Unesite vrijednost veću ili jednaku {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_hu.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: HU (Hungarian; Magyar) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Kötelező megadni.", 7 | maxlength: $.validator.format("Legfeljebb {0} karakter hosszú legyen."), 8 | minlength: $.validator.format("Legalább {0} karakter hosszú legyen."), 9 | rangelength: $.validator.format("Legalább {0} és legfeljebb {1} karakter hosszú legyen."), 10 | email: "Érvényes e-mail címnek kell lennie.", 11 | url: "Érvényes URL-nek kell lennie.", 12 | date: "Dátumnak kell lennie.", 13 | number: "Számnak kell lennie.", 14 | digits: "Csak számjegyek lehetnek.", 15 | equalTo: "Meg kell egyeznie a két értéknek.", 16 | range: $.validator.format("{0} és {1} közé kell esnie."), 17 | max: $.validator.format("Nem lehet nagyobb, mint {0}."), 18 | min: $.validator.format("Nem lehet kisebb, mint {0}."), 19 | creditcard: "Érvényes hitelkártyaszámnak kell lennie.", 20 | remote: "Kérem javítsa ki ezt a mezőt.", 21 | dateISO: "Kérem írjon be egy érvényes dátumot (ISO)." 22 | }); 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_hy_AM.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: HY_AM (Armenian; հայերեն լեզու) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Պարտադիր լրացման դաշտ", 7 | remote: "Ներմուծեք ճիշտ արժեքը", 8 | email: "Ներմուծեք վավեր էլեկտրոնային փոստի հասցե", 9 | url: "Ներմուծեք վավեր URL", 10 | date: "Ներմուծեք վավեր ամսաթիվ", 11 | dateISO: "Ներմուծեք ISO ֆորմատով վավեր ամսաթիվ։", 12 | number: "Ներմուծեք թիվ", 13 | digits: "Ներմուծեք միայն թվեր", 14 | creditcard: "Ներմուծեք ճիշտ բանկային քարտի համար", 15 | equalTo: "Ներմուծեք միևնուն արժեքը ևս մեկ անգամ", 16 | extension: "Ընտրեք ճիշտ ընդլանումով ֆայլ", 17 | maxlength: $.validator.format("Ներմուծեք ոչ ավել քան {0} նիշ"), 18 | minlength: $.validator.format("Ներմուծեք ոչ պակաս քան {0} նիշ"), 19 | rangelength: $.validator.format("Ներմուծեք {0}֊ից {1} երկարությամբ արժեք"), 20 | range: $.validator.format("Ներմուծեք թիվ {0}֊ից {1} միջակայքում"), 21 | max: $.validator.format("Ներմուծեք թիվ, որը փոքր կամ հավասար է {0}֊ին"), 22 | min: $.validator.format("Ներմուծեք թիվ, որը մեծ կամ հավասար է {0}֊ին") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_id.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ID (Indonesia; Indonesian) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Kolom ini diperlukan.", 7 | remote: "Harap benarkan kolom ini.", 8 | email: "Silakan masukkan format email yang benar.", 9 | url: "Silakan masukkan format URL yang benar.", 10 | date: "Silakan masukkan format tanggal yang benar.", 11 | dateISO: "Silakan masukkan format tanggal(ISO) yang benar.", 12 | number: "Silakan masukkan angka yang benar.", 13 | digits: "Harap masukan angka saja.", 14 | creditcard: "Harap masukkan format kartu kredit yang benar.", 15 | equalTo: "Harap masukkan nilai yg sama dengan sebelumnya.", 16 | maxlength: $.validator.format("Input dibatasi hanya {0} karakter."), 17 | minlength: $.validator.format("Input tidak kurang dari {0} karakter."), 18 | rangelength: $.validator.format("Panjang karakter yg diizinkan antara {0} dan {1} karakter."), 19 | range: $.validator.format("Harap masukkan nilai antara {0} dan {1}."), 20 | max: $.validator.format("Harap masukkan nilai lebih kecil atau sama dengan {0}."), 21 | min: $.validator.format("Harap masukkan nilai lebih besar atau sama dengan {0}.") 22 | }); 23 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_is.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: IS (Icelandic; íslenska) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Þessi reitur er nauðsynlegur.", 7 | remote: "Lagaðu þennan reit.", 8 | maxlength: $.validator.format("Sláðu inn mest {0} stafi."), 9 | minlength: $.validator.format("Sláðu inn minnst {0} stafi."), 10 | rangelength: $.validator.format("Sláðu inn minnst {0} og mest {1} stafi."), 11 | email: "Sláðu inn gilt netfang.", 12 | url: "Sláðu inn gilda vefslóð.", 13 | date: "Sláðu inn gilda dagsetningu.", 14 | number: "Sláðu inn tölu.", 15 | digits: "Sláðu inn tölustafi eingöngu.", 16 | equalTo: "Sláðu sama gildi inn aftur.", 17 | range: $.validator.format("Sláðu inn gildi milli {0} og {1}."), 18 | max: $.validator.format("Sláðu inn gildi sem er minna en eða jafnt og {0}."), 19 | min: $.validator.format("Sláðu inn gildi sem er stærra en eða jafnt og {0}."), 20 | creditcard: "Sláðu inn gilt greiðslukortanúmer." 21 | }); 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_it.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: IT (Italian; Italiano) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Campo obbligatorio", 7 | remote: "Controlla questo campo", 8 | email: "Inserisci un indirizzo email valido", 9 | url: "Inserisci un indirizzo web valido", 10 | date: "Inserisci una data valida", 11 | dateISO: "Inserisci una data valida (ISO)", 12 | number: "Inserisci un numero valido", 13 | digits: "Inserisci solo numeri", 14 | creditcard: "Inserisci un numero di carta di credito valido", 15 | equalTo: "Il valore non corrisponde", 16 | extension: "Inserisci un valore con un'estensione valida", 17 | maxlength: $.validator.format("Non inserire più di {0} caratteri"), 18 | minlength: $.validator.format("Inserisci almeno {0} caratteri"), 19 | rangelength: $.validator.format("Inserisci un valore compreso tra {0} e {1} caratteri"), 20 | range: $.validator.format("Inserisci un valore compreso tra {0} e {1}"), 21 | max: $.validator.format("Inserisci un valore minore o uguale a {0}"), 22 | min: $.validator.format("Inserisci un valore maggiore o uguale a {0}"), 23 | nifES: "Inserisci un NIF valido", 24 | nieES: "Inserisci un NIE valido", 25 | cifES: "Inserisci un CIF valido", 26 | currency: "Inserisci una valuta valida" 27 | }); 28 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ja.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: JA (Japanese; 日本語) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "このフィールドは必須です。", 7 | remote: "このフィールドを修正してください。", 8 | email: "有効なEメールアドレスを入力してください。", 9 | url: "有効なURLを入力してください。", 10 | date: "有効な日付を入力してください。", 11 | dateISO: "有効な日付(ISO)を入力してください。", 12 | number: "有効な数字を入力してください。", 13 | digits: "数字のみを入力してください。", 14 | creditcard: "有効なクレジットカード番号を入力してください。", 15 | equalTo: "同じ値をもう一度入力してください。", 16 | extension: "有効な拡張子を含む値を入力してください。", 17 | maxlength: $.validator.format("{0} 文字以内で入力してください。"), 18 | minlength: $.validator.format("{0} 文字以上で入力してください。"), 19 | rangelength: $.validator.format("{0} 文字から {1} 文字までの値を入力してください。"), 20 | range: $.validator.format("{0} から {1} までの値を入力してください。"), 21 | max: $.validator.format("{0} 以下の値を入力してください。"), 22 | min: $.validator.format("{0} 以上の値を入力してください。") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ka.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: KA (Georgian; ქართული) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "ამ ველის შევსება აუცილებელია.", 7 | remote: "გთხოვთ მიუთითოთ სწორი მნიშვნელობა.", 8 | email: "გთხოვთ მიუთითოთ ელ-ფოსტის კორექტული მისამართი.", 9 | url: "გთხოვთ მიუთითოთ კორექტული URL.", 10 | date: "გთხოვთ მიუთითოთ კორექტული თარიღი.", 11 | dateISO: "გთხოვთ მიუთითოთ კორექტული თარიღი ISO ფორმატში.", 12 | number: "გთხოვთ მიუთითოთ ციფრი.", 13 | digits: "გთხოვთ მიუთითოთ მხოლოდ ციფრები.", 14 | creditcard: "გთხოვთ მიუთითოთ საკრედიტო ბარათის კორექტული ნომერი.", 15 | equalTo: "გთხოვთ მიუთითოთ ასეთივე მნიშვნელობა კიდევ ერთხელ.", 16 | extension: "გთხოვთ აირჩიოთ ფაილი კორექტული გაფართოებით.", 17 | maxlength: $.validator.format("დასაშვებია არაუმეტეს {0} სიმბოლო."), 18 | minlength: $.validator.format("აუცილებელია შეიყვანოთ მინიმუმ {0} სიმბოლო."), 19 | rangelength: $.validator.format("ტექსტში სიმბოლოების რაოდენობა უნდა იყოს {0}-დან {1}-მდე."), 20 | range: $.validator.format("გთხოვთ შეიყვანოთ ციფრი {0}-დან {1}-მდე."), 21 | max: $.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც ნაკლებია ან უდრის {0}-ს."), 22 | min: $.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც მეტია ან უდრის {0}-ს.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_kk.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: KK (Kazakh; қазақ тілі) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Бұл өрісті міндетті түрде толтырыңыз.", 7 | remote: "Дұрыс мағына енгізуіңізді сұраймыз.", 8 | email: "Нақты электронды поштаңызды енгізуіңізді сұраймыз.", 9 | url: "Нақты URL-ды енгізуіңізді сұраймыз.", 10 | date: "Нақты URL-ды енгізуіңізді сұраймыз.", 11 | dateISO: "Нақты ISO форматымен сәйкес датасын енгізуіңізді сұраймыз.", 12 | number: "Күнді енгізуіңізді сұраймыз.", 13 | digits: "Тек қана сандарды енгізуіңізді сұраймыз.", 14 | creditcard: "Несие картасының нөмірін дұрыс енгізуіңізді сұраймыз.", 15 | equalTo: "Осы мәнді қайта енгізуіңізді сұраймыз.", 16 | extension: "Файлдың кеңейтуін дұрыс таңдаңыз.", 17 | maxlength: $.validator.format("Ұзындығы {0} символдан көр болмасын."), 18 | minlength: $.validator.format("Ұзындығы {0} символдан аз болмасын."), 19 | rangelength: $.validator.format("Ұзындығы {0}-{1} дейін мән енгізуіңізді сұраймыз."), 20 | range: $.validator.format("Пожалуйста, введите число от {0} до {1}. - {0} - {1} санын енгізуіңізді сұраймыз."), 21 | max: $.validator.format("{0} аз немесе тең санын енгізуіңіді сұраймыз."), 22 | min: $.validator.format("{0} көп немесе тең санын енгізуіңізді сұраймыз.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ko.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: KO (Korean; 한국어) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "필수 항목입니다.", 7 | remote: "항목을 수정하세요.", 8 | email: "유효하지 않은 E-Mail주소입니다.", 9 | url: "유효하지 않은 URL입니다.", 10 | date: "올바른 날짜를 입력하세요.", 11 | dateISO: "올바른 날짜(ISO)를 입력하세요.", 12 | number: "유효한 숫자가 아닙니다.", 13 | digits: "숫자만 입력 가능합니다.", 14 | creditcard: "신용카드 번호가 바르지 않습니다.", 15 | equalTo: "같은 값을 다시 입력하세요.", 16 | extension: "올바른 확장자가 아닙니다.", 17 | maxlength: $.validator.format("{0}자를 넘을 수 없습니다. "), 18 | minlength: $.validator.format("{0}자 이상 입력하세요."), 19 | rangelength: $.validator.format("문자 길이가 {0} 에서 {1} 사이의 값을 입력하세요."), 20 | range: $.validator.format("{0} 에서 {1} 사이의 값을 입력하세요."), 21 | max: $.validator.format("{0} 이하의 값을 입력하세요."), 22 | min: $.validator.format("{0} 이상의 값을 입력하세요.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_lt.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: LT (Lithuanian; lietuvių kalba) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Šis laukas yra privalomas.", 7 | remote: "Prašau pataisyti šį lauką.", 8 | email: "Prašau įvesti teisingą elektroninio pašto adresą.", 9 | url: "Prašau įvesti teisingą URL.", 10 | date: "Prašau įvesti teisingą datą.", 11 | dateISO: "Prašau įvesti teisingą datą (ISO).", 12 | number: "Prašau įvesti teisingą skaičių.", 13 | digits: "Prašau naudoti tik skaitmenis.", 14 | creditcard: "Prašau įvesti teisingą kreditinės kortelės numerį.", 15 | equalTo: "Prašau įvestį tą pačią reikšmę dar kartą.", 16 | extension: "Prašau įvesti reikšmę su teisingu plėtiniu.", 17 | maxlength: $.validator.format("Prašau įvesti ne daugiau kaip {0} simbolių."), 18 | minlength: $.validator.format("Prašau įvesti bent {0} simbolius."), 19 | rangelength: $.validator.format("Prašau įvesti reikšmes, kurių ilgis nuo {0} iki {1} simbolių."), 20 | range: $.validator.format("Prašau įvesti reikšmę intervale nuo {0} iki {1}."), 21 | max: $.validator.format("Prašau įvesti reikšmę mažesnę arba lygią {0}."), 22 | min: $.validator.format("Prašau įvesti reikšmę didesnę arba lygią {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_lv.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: LV (Latvian; latviešu valoda) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Šis lauks ir obligāts.", 7 | remote: "Lūdzu, pārbaudiet šo lauku.", 8 | email: "Lūdzu, ievadiet derīgu e-pasta adresi.", 9 | url: "Lūdzu, ievadiet derīgu URL adresi.", 10 | date: "Lūdzu, ievadiet derīgu datumu.", 11 | dateISO: "Lūdzu, ievadiet derīgu datumu (ISO).", 12 | number: "Lūdzu, ievadiet derīgu numuru.", 13 | digits: "Lūdzu, ievadiet tikai ciparus.", 14 | creditcard: "Lūdzu, ievadiet derīgu kredītkartes numuru.", 15 | equalTo: "Lūdzu, ievadiet to pašu vēlreiz.", 16 | extension: "Lūdzu, ievadiet vērtību ar derīgu paplašinājumu.", 17 | maxlength: $.validator.format("Lūdzu, ievadiet ne vairāk kā {0} rakstzīmes."), 18 | minlength: $.validator.format("Lūdzu, ievadiet vismaz {0} rakstzīmes."), 19 | rangelength: $.validator.format("Lūdzu ievadiet {0} līdz {1} rakstzīmes."), 20 | range: $.validator.format("Lūdzu, ievadiet skaitli no {0} līdz {1}."), 21 | max: $.validator.format("Lūdzu, ievadiet skaitli, kurš ir mazāks vai vienāds ar {0}."), 22 | min: $.validator.format("Lūdzu, ievadiet skaitli, kurš ir lielāks vai vienāds ar {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_my.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: MY (Malay; Melayu) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Medan ini diperlukan.", 7 | remote: "Sila betulkan medan ini.", 8 | email: "Sila masukkan alamat emel yang betul.", 9 | url: "Sila masukkan URL yang betul.", 10 | date: "Sila masukkan tarikh yang betul.", 11 | dateISO: "Sila masukkan tarikh(ISO) yang betul.", 12 | number: "Sila masukkan nombor yang betul.", 13 | digits: "Sila masukkan nilai digit sahaja.", 14 | creditcard: "Sila masukkan nombor kredit kad yang betul.", 15 | equalTo: "Sila masukkan nilai yang sama semula.", 16 | extension: "Sila masukkan nilai yang telah diterima.", 17 | maxlength: $.validator.format("Sila masukkan nilai tidak lebih dari {0} aksara."), 18 | minlength: $.validator.format("Sila masukkan nilai sekurang-kurangnya {0} aksara."), 19 | rangelength: $.validator.format("Sila masukkan panjang nilai antara {0} dan {1} aksara."), 20 | range: $.validator.format("Sila masukkan nilai antara {0} dan {1} aksara."), 21 | max: $.validator.format("Sila masukkan nilai yang kurang atau sama dengan {0}."), 22 | min: $.validator.format("Sila masukkan nilai yang lebih atau sama dengan {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_no.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: NO (Norwegian; Norsk) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Dette feltet er obligatorisk.", 7 | maxlength: $.validator.format("Maksimalt {0} tegn."), 8 | minlength: $.validator.format("Minimum {0} tegn."), 9 | rangelength: $.validator.format("Angi minimum {0} og maksimum {1} tegn."), 10 | email: "Oppgi en gyldig epostadresse.", 11 | url: "Angi en gyldig URL.", 12 | date: "Angi en gyldig dato.", 13 | dateISO: "Angi en gyldig dato (&ARING;&ARING;&ARING;&ARING;-MM-DD).", 14 | dateSE: "Angi en gyldig dato.", 15 | number: "Angi et gyldig nummer.", 16 | numberSE: "Angi et gyldig nummer.", 17 | digits: "Skriv kun tall.", 18 | equalTo: "Skriv samme verdi igjen.", 19 | range: $.validator.format("Angi en verdi mellom {0} og {1}."), 20 | max: $.validator.format("Angi en verdi som er mindre eller lik {0}."), 21 | min: $.validator.format("Angi en verdi som er større eller lik {0}."), 22 | creditcard: "Angi et gyldig kredittkortnummer." 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_pl.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: PL (Polish; język polski, polszczyzna) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "To pole jest wymagane.", 7 | remote: "Proszę o wypełnienie tego pola.", 8 | email: "Proszę o podanie prawidłowego adresu email.", 9 | url: "Proszę o podanie prawidłowego URL.", 10 | date: "Proszę o podanie prawidłowej daty.", 11 | dateISO: "Proszę o podanie prawidłowej daty (ISO).", 12 | number: "Proszę o podanie prawidłowej liczby.", 13 | digits: "Proszę o podanie samych cyfr.", 14 | creditcard: "Proszę o podanie prawidłowej karty kredytowej.", 15 | equalTo: "Proszę o podanie tej samej wartości ponownie.", 16 | extension: "Proszę o podanie wartości z prawidłowym rozszerzeniem.", 17 | maxlength: $.validator.format("Proszę o podanie nie więcej niż {0} znaków."), 18 | minlength: $.validator.format("Proszę o podanie przynajmniej {0} znaków."), 19 | rangelength: $.validator.format("Proszę o podanie wartości o długości od {0} do {1} znaków."), 20 | range: $.validator.format("Proszę o podanie wartości z przedziału od {0} do {1}."), 21 | max: $.validator.format("Proszę o podanie wartości mniejszej bądź równej {0}."), 22 | min: $.validator.format("Proszę o podanie wartości większej bądź równej {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ro.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: RO (Romanian, limba română) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Acest câmp este obligatoriu.", 7 | remote: "Te rugăm să completezi acest câmp.", 8 | email: "Te rugăm să introduci o adresă de email validă", 9 | url: "Te rugăm sa introduci o adresă URL validă.", 10 | date: "Te rugăm să introduci o dată corectă.", 11 | dateISO: "Te rugăm să introduci o dată (ISO) corectă.", 12 | number: "Te rugăm să introduci un număr întreg valid.", 13 | digits: "Te rugăm să introduci doar cifre.", 14 | creditcard: "Te rugăm să introduci un numar de carte de credit valid.", 15 | equalTo: "Te rugăm să reintroduci valoarea.", 16 | extension: "Te rugăm să introduci o valoare cu o extensie validă.", 17 | maxlength: $.validator.format("Te rugăm să nu introduci mai mult de {0} caractere."), 18 | minlength: $.validator.format("Te rugăm să introduci cel puțin {0} caractere."), 19 | rangelength: $.validator.format("Te rugăm să introduci o valoare între {0} și {1} caractere."), 20 | range: $.validator.format("Te rugăm să introduci o valoare între {0} și {1}."), 21 | max: $.validator.format("Te rugăm să introduci o valoare egal sau mai mică decât {0}."), 22 | min: $.validator.format("Te rugăm să introduci o valoare egal sau mai mare decât {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_ru.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: RU (Russian; русский язык) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Это поле необходимо заполнить.", 7 | remote: "Пожалуйста, введите правильное значение.", 8 | email: "Пожалуйста, введите корректный адрес электронной почты.", 9 | url: "Пожалуйста, введите корректный URL.", 10 | date: "Пожалуйста, введите корректную дату.", 11 | dateISO: "Пожалуйста, введите корректную дату в формате ISO.", 12 | number: "Пожалуйста, введите число.", 13 | digits: "Пожалуйста, вводите только цифры.", 14 | creditcard: "Пожалуйста, введите правильный номер кредитной карты.", 15 | equalTo: "Пожалуйста, введите такое же значение ещё раз.", 16 | extension: "Пожалуйста, выберите файл с правильным расширением.", 17 | maxlength: $.validator.format("Пожалуйста, введите не больше {0} символов."), 18 | minlength: $.validator.format("Пожалуйста, введите не меньше {0} символов."), 19 | rangelength: $.validator.format("Пожалуйста, введите значение длиной от {0} до {1} символов."), 20 | range: $.validator.format("Пожалуйста, введите число от {0} до {1}."), 21 | max: $.validator.format("Пожалуйста, введите число, меньшее или равное {0}."), 22 | min: $.validator.format("Пожалуйста, введите число, большее или равное {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_si.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: SI (Slovenian) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "To polje je obvezno.", 7 | remote: "Vpis v tem polju ni v pravi obliki.", 8 | email: "Prosimo, vnesite pravi email naslov.", 9 | url: "Prosimo, vnesite pravi URL.", 10 | date: "Prosimo, vnesite pravi datum.", 11 | dateISO: "Prosimo, vnesite pravi datum (ISO).", 12 | number: "Prosimo, vnesite pravo številko.", 13 | digits: "Prosimo, vnesite samo številke.", 14 | creditcard: "Prosimo, vnesite pravo številko kreditne kartice.", 15 | equalTo: "Prosimo, ponovno vnesite enako vsebino.", 16 | extension: "Prosimo, vnesite vsebino z pravo končnico.", 17 | maxlength: $.validator.format("Prosimo, da ne vnašate več kot {0} znakov."), 18 | minlength: $.validator.format("Prosimo, vnesite vsaj {0} znakov."), 19 | rangelength: $.validator.format("Prosimo, vnesite od {0} do {1} znakov."), 20 | range: $.validator.format("Prosimo, vnesite vrednost med {0} in {1}."), 21 | max: $.validator.format("Prosimo, vnesite vrednost manjšo ali enako {0}."), 22 | min: $.validator.format("Prosimo, vnesite vrednost večjo ali enako {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_sk.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: SK (Slovak; slovenčina, slovenský jazyk) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Povinné zadať.", 7 | maxlength: $.validator.format("Maximálne {0} znakov."), 8 | minlength: $.validator.format("Minimálne {0} znakov."), 9 | rangelength: $.validator.format("Minimálne {0} a Maximálne {1} znakov."), 10 | email: "E-mailová adresa musí byť platná.", 11 | url: "URL musí byť platný.", 12 | date: "Musí byť dátum.", 13 | number: "Musí byť číslo.", 14 | digits: "Môže obsahovať iba číslice.", 15 | equalTo: "Dva hodnoty sa musia rovnať.", 16 | range: $.validator.format("Musí byť medzi {0} a {1}."), 17 | max: $.validator.format("Nemôže byť viac ako{0}."), 18 | min: $.validator.format("Nemôže byť menej ako{0}."), 19 | creditcard: "Číslo platobnej karty musí byť platné." 20 | }); 21 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_sl.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Language: SL (Slovenian; slovenski jezik) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "To polje je obvezno.", 7 | remote: "Prosimo popravite to polje.", 8 | email: "Prosimo vnesite veljaven email naslov.", 9 | url: "Prosimo vnesite veljaven URL naslov.", 10 | date: "Prosimo vnesite veljaven datum.", 11 | dateISO: "Prosimo vnesite veljaven ISO datum.", 12 | number: "Prosimo vnesite veljavno število.", 13 | digits: "Prosimo vnesite samo števila.", 14 | creditcard: "Prosimo vnesite veljavno številko kreditne kartice.", 15 | equalTo: "Prosimo ponovno vnesite vrednost.", 16 | extension: "Prosimo vnesite vrednost z veljavno končnico.", 17 | maxlength: $.validator.format("Prosimo vnesite največ {0} znakov."), 18 | minlength: $.validator.format("Prosimo vnesite najmanj {0} znakov."), 19 | rangelength: $.validator.format("Prosimo vnesite najmanj {0} in največ {1} znakov."), 20 | range: $.validator.format("Prosimo vnesite vrednost med {0} in {1}."), 21 | max: $.validator.format("Prosimo vnesite vrednost manjše ali enako {0}."), 22 | min: $.validator.format("Prosimo vnesite vrednost večje ali enako {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_sr.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: SR (Serbian; српски језик) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Поље је обавезно.", 7 | remote: "Средите ово поље.", 8 | email: "Унесите исправну и-мејл адресу.", 9 | url: "Унесите исправан URL.", 10 | date: "Унесите исправан датум.", 11 | dateISO: "Унесите исправан датум (ISO).", 12 | number: "Унесите исправан број.", 13 | digits: "Унесите само цифе.", 14 | creditcard: "Унесите исправан број кредитне картице.", 15 | equalTo: "Унесите исту вредност поново.", 16 | extension: "Унесите вредност са одговарајућом екстензијом.", 17 | maxlength: $.validator.format("Унесите мање од {0} карактера."), 18 | minlength: $.validator.format("Унесите барем {0} карактера."), 19 | rangelength: $.validator.format("Унесите вредност дугачку између {0} и {1} карактера."), 20 | range: $.validator.format("Унесите вредност између {0} и {1}."), 21 | max: $.validator.format("Унесите вредност мању или једнаку {0}."), 22 | min: $.validator.format("Унесите вредност већу или једнаку {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_sr_lat.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: SR (Serbian - Latin alphabet; srpski jezik - latinica) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Polje je obavezno.", 7 | remote: "Sredite ovo polje.", 8 | email: "Unesite ispravnu e-mail adresu", 9 | url: "Unesite ispravan URL.", 10 | date: "Unesite ispravan datum.", 11 | dateISO: "Unesite ispravan datum (ISO).", 12 | number: "Unesite ispravan broj.", 13 | digits: "Unesite samo cifre.", 14 | creditcard: "Unesite ispravan broj kreditne kartice.", 15 | equalTo: "Unesite istu vrednost ponovo.", 16 | extension: "Unesite vrednost sa odgovarajućom ekstenzijom.", 17 | maxlength: $.validator.format("Unesite manje od {0} karaktera."), 18 | minlength: $.validator.format("Unesite barem {0} karaktera."), 19 | rangelength: $.validator.format("Unesite vrednost dugačku između {0} i {1} karaktera."), 20 | range: $.validator.format("Unesite vrednost između {0} i {1}."), 21 | max: $.validator.format("Unesite vrednost manju ili jednaku {0}."), 22 | min: $.validator.format("Unesite vrednost veću ili jednaku {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_sv.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: SV (Swedish; Svenska) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Detta fält är obligatoriskt.", 7 | maxlength: $.validator.format("Du får ange högst {0} tecken."), 8 | minlength: $.validator.format("Du måste ange minst {0} tecken."), 9 | rangelength: $.validator.format("Ange minst {0} och max {1} tecken."), 10 | email: "Ange en korrekt e-postadress.", 11 | url: "Ange en korrekt URL.", 12 | date: "Ange ett korrekt datum.", 13 | dateISO: "Ange ett korrekt datum (ÅÅÅÅ-MM-DD).", 14 | number: "Ange ett korrekt nummer.", 15 | digits: "Ange endast siffror.", 16 | equalTo: "Ange samma värde igen.", 17 | range: $.validator.format("Ange ett värde mellan {0} och {1}."), 18 | max: $.validator.format("Ange ett värde som är mindre eller lika med {0}."), 19 | min: $.validator.format("Ange ett värde som är större eller lika med {0}."), 20 | creditcard: "Ange ett korrekt kreditkortsnummer." 21 | }); 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_th.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: TH (Thai; ไทย) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "โปรดระบุ", 7 | remote: "โปรดแก้ไขให้ถูกต้อง", 8 | email: "โปรดระบุที่อยู่อีเมล์ที่ถูกต้อง", 9 | url: "โปรดระบุ URL ที่ถูกต้อง", 10 | date: "โปรดระบุวันที่ ที่ถูกต้อง", 11 | dateISO: "โปรดระบุวันที่ ที่ถูกต้อง (ระบบ ISO).", 12 | number: "โปรดระบุทศนิยมที่ถูกต้อง", 13 | digits: "โปรดระบุจำนวนเต็มที่ถูกต้อง", 14 | creditcard: "โปรดระบุรหัสบัตรเครดิตที่ถูกต้อง", 15 | equalTo: "โปรดระบุค่าเดิมอีกครั้ง", 16 | extension: "โปรดระบุค่าที่มีส่วนขยายที่ถูกต้อง", 17 | maxlength: $.validator.format("โปรดอย่าระบุค่าที่ยาวกว่า {0} อักขระ"), 18 | minlength: $.validator.format("โปรดอย่าระบุค่าที่สั้นกว่า {0} อักขระ"), 19 | rangelength: $.validator.format("โปรดอย่าระบุค่าความยาวระหว่าง {0} ถึง {1} อักขระ"), 20 | range: $.validator.format("โปรดระบุค่าระหว่าง {0} และ {1}"), 21 | max: $.validator.format("โปรดระบุค่าน้อยกว่าหรือเท่ากับ {0}"), 22 | min: $.validator.format("โปรดระบุค่ามากกว่าหรือเท่ากับ {0}") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_tj.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: TJ (Tajikistan; Забони тоҷикӣ) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Ворид кардани ин филд маҷбури аст.", 7 | remote: "Илтимос, маълумоти саҳеҳ ворид кунед.", 8 | email: "Илтимос, почтаи электронии саҳеҳ ворид кунед.", 9 | url: "Илтимос, URL адреси саҳеҳ ворид кунед.", 10 | date: "Илтимос, таърихи саҳеҳ ворид кунед.", 11 | dateISO: "Илтимос, таърихи саҳеҳи (ISO)ӣ ворид кунед.", 12 | number: "Илтимос, рақамҳои саҳеҳ ворид кунед.", 13 | digits: "Илтимос, танҳо рақам ворид кунед.", 14 | creditcard: "Илтимос, кредит карди саҳеҳ ворид кунед.", 15 | equalTo: "Илтимос, миқдори баробар ворид кунед.", 16 | extension: "Илтимос, қофияи файлро дуруст интихоб кунед", 17 | maxlength: $.validator.format("Илтимос, бештар аз {0} рамз ворид накунед."), 18 | minlength: $.validator.format("Илтимос, камтар аз {0} рамз ворид накунед."), 19 | rangelength: $.validator.format("Илтимос, камтар аз {0} ва зиёда аз {1} рамз ворид кунед."), 20 | range: $.validator.format("Илтимос, аз {0} то {1} рақам зиёд ворид кунед."), 21 | max: $.validator.format("Илтимос, бештар аз {0} рақам ворид накунед."), 22 | min: $.validator.format("Илтимос, камтар аз {0} рақам ворид накунед.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_tr.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: TR (Turkish; Türkçe) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Bu alanın doldurulması zorunludur.", 7 | remote: "Lütfen bu alanı düzeltin.", 8 | email: "Lütfen geçerli bir e-posta adresi giriniz.", 9 | url: "Lütfen geçerli bir web adresi (URL) giriniz.", 10 | date: "Lütfen geçerli bir tarih giriniz.", 11 | dateISO: "Lütfen geçerli bir tarih giriniz(ISO formatında)", 12 | number: "Lütfen geçerli bir sayı giriniz.", 13 | digits: "Lütfen sadece sayısal karakterler giriniz.", 14 | creditcard: "Lütfen geçerli bir kredi kartı giriniz.", 15 | equalTo: "Lütfen aynı değeri tekrar giriniz.", 16 | extension: "Lütfen geçerli uzantıya sahip bir değer giriniz.", 17 | maxlength: $.validator.format("Lütfen en fazla {0} karakter uzunluğunda bir değer giriniz."), 18 | minlength: $.validator.format("Lütfen en az {0} karakter uzunluğunda bir değer giriniz."), 19 | rangelength: $.validator.format("Lütfen en az {0} ve en fazla {1} uzunluğunda bir değer giriniz."), 20 | range: $.validator.format("Lütfen {0} ile {1} arasında bir değer giriniz."), 21 | max: $.validator.format("Lütfen {0} değerine eşit ya da daha küçük bir değer giriniz."), 22 | min: $.validator.format("Lütfen {0} değerine eşit ya da daha büyük bir değer giriniz."), 23 | require_from_group: "Lütfen bu alanların en az {0} tanesini doldurunuz." 24 | }); 25 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_uk.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: UK (Ukrainian; українська мова) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Це поле необхідно заповнити.", 7 | remote: "Будь ласка, введіть правильне значення.", 8 | email: "Будь ласка, введіть коректну адресу електронної пошти.", 9 | url: "Будь ласка, введіть коректний URL.", 10 | date: "Будь ласка, введіть коректну дату.", 11 | dateISO: "Будь ласка, введіть коректну дату у форматі ISO.", 12 | number: "Будь ласка, введіть число.", 13 | digits: "Вводите потрібно лише цифри.", 14 | creditcard: "Будь ласка, введіть правильний номер кредитної карти.", 15 | equalTo: "Будь ласка, введіть таке ж значення ще раз.", 16 | extension: "Будь ласка, виберіть файл з правильним розширенням.", 17 | maxlength: $.validator.format("Будь ласка, введіть не більше {0} символів."), 18 | minlength: $.validator.format("Будь ласка, введіть не менше {0} символів."), 19 | rangelength: $.validator.format("Будь ласка, введіть значення довжиною від {0} до {1} символів."), 20 | range: $.validator.format("Будь ласка, введіть число від {0} до {1}."), 21 | max: $.validator.format("Будь ласка, введіть число, менше або рівно {0}."), 22 | min: $.validator.format("Будь ласка, введіть число, більше або рівно {0}.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_vi.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: VI (Vietnamese; Tiếng Việt) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "Hãy nhập.", 7 | remote: "Hãy sửa cho đúng.", 8 | email: "Hãy nhập email.", 9 | url: "Hãy nhập URL.", 10 | date: "Hãy nhập ngày.", 11 | dateISO: "Hãy nhập ngày (ISO).", 12 | number: "Hãy nhập số.", 13 | digits: "Hãy nhập chữ số.", 14 | creditcard: "Hãy nhập số thẻ tín dụng.", 15 | equalTo: "Hãy nhập thêm lần nữa.", 16 | extension: "Phần mở rộng không đúng.", 17 | maxlength: $.validator.format("Hãy nhập từ {0} kí tự trở xuống."), 18 | minlength: $.validator.format("Hãy nhập từ {0} kí tự trở lên."), 19 | rangelength: $.validator.format("Hãy nhập từ {0} đến {1} kí tự."), 20 | range: $.validator.format("Hãy nhập từ {0} đến {1}."), 21 | max: $.validator.format("Hãy nhập từ {0} trở xuống."), 22 | min: $.validator.format("Hãy nhập từ {1} trở lên.") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_zh.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ZH (Chinese, 中文 (Zhōngwén), 汉语, 漢語) 4 | */ 5 | $.extend($.validator.messages, { 6 | required: "这是必填字段", 7 | remote: "请修正此字段", 8 | email: "请输入有效的电子邮件地址", 9 | url: "请输入有效的网址", 10 | date: "请输入有效的日期", 11 | dateISO: "请输入有效的日期 (YYYY-MM-DD)", 12 | number: "请输入有效的数字", 13 | digits: "只能输入数字", 14 | creditcard: "请输入有效的信用卡号码", 15 | equalTo: "你的输入不相同", 16 | extension: "请输入有效的后缀", 17 | maxlength: $.validator.format("最多可以输入 {0} 个字符"), 18 | minlength: $.validator.format("最少要输入 {0} 个字符"), 19 | rangelength: $.validator.format("请输入长度在 {0} 到 {1} 之间的字符串"), 20 | range: $.validator.format("请输入范围在 {0} 到 {1} 之间的数值"), 21 | max: $.validator.format("请输入不大于 {0} 的数值"), 22 | min: $.validator.format("请输入不小于 {0} 的数值") 23 | }); 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/messages_zh_TW.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Translated default messages for the jQuery validation plugin. 3 | * Locale: ZH (Chinese; 中文 (Zhōngwén), 汉语, 漢語) 4 | * Region: TW (Taiwan) 5 | */ 6 | $.extend($.validator.messages, { 7 | required: "必須填寫", 8 | remote: "請修正此欄位", 9 | email: "請輸入有效的電子郵件", 10 | url: "請輸入有效的網址", 11 | date: "請輸入有效的日期", 12 | dateISO: "請輸入有效的日期 (YYYY-MM-DD)", 13 | number: "請輸入正確的數值", 14 | digits: "只可輸入數字", 15 | creditcard: "請輸入有效的信用卡號碼", 16 | equalTo: "請重複輸入一次", 17 | extension: "請輸入有效的後綴", 18 | maxlength: $.validator.format("最多 {0} 個字"), 19 | minlength: $.validator.format("最少 {0} 個字"), 20 | rangelength: $.validator.format("請輸入長度為 {0} 至 {1} 之間的字串"), 21 | range: $.validator.format("請輸入 {0} 至 {1} 之間的數值"), 22 | max: $.validator.format("請輸入不大於 {0} 的數值"), 23 | min: $.validator.format("請輸入不小於 {0} 的數值") 24 | }); 25 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/methods_de.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Localized default methods for the jQuery validation plugin. 3 | * Locale: DE 4 | */ 5 | $.extend($.validator.methods, { 6 | date: function(value, element) { 7 | return this.optional(element) || /^\d\d?\.\d\d?\.\d\d\d?\d?$/.test(value); 8 | }, 9 | number: function(value, element) { 10 | return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value); 11 | } 12 | }); 13 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/methods_es_CL.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Localized default methods for the jQuery validation plugin. 3 | * Locale: ES_CL 4 | */ 5 | $.extend($.validator.methods, { 6 | date: function(value, element) { 7 | return this.optional(element) || /^\d\d?\-\d\d?\-\d\d\d?\d?$/.test(value); 8 | }, 9 | number: function(value, element) { 10 | return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value); 11 | } 12 | }); 13 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/methods_fi.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Localized default methods for the jQuery validation plugin. 3 | * Locale: FI 4 | */ 5 | $.extend($.validator.methods, { 6 | date: function(value, element) { 7 | return this.optional(element) || /^\d{1,2}\.\d{1,2}\.\d{4}$/.test(value); 8 | }, 9 | number: function(value, element) { 10 | return this.optional(element) || /^-?(?:\d+)(?:,\d+)?$/.test(value); 11 | } 12 | }); 13 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/methods_nl.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Localized default methods for the jQuery validation plugin. 3 | * Locale: NL 4 | */ 5 | $.extend($.validator.methods, { 6 | date: function(value, element) { 7 | return this.optional(element) || /^\d\d?[\.\/\-]\d\d?[\.\/\-]\d\d\d?\d?$/.test(value); 8 | } 9 | }); 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/src/localization/methods_pt.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Localized default methods for the jQuery validation plugin. 3 | * Locale: PT_BR 4 | */ 5 | $.extend($.validator.methods, { 6 | date: function(value, element) { 7 | return this.optional(element) || /^\d\d?\/\d\d?\/\d\d\d?\d?$/.test(value); 8 | } 9 | }); 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery-validation/validation.jquery.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "validation", 3 | "title": "jQuery Validation", 4 | "description": "Form validation made easy. Validate a simple comment form with inline rules, or a complex signup form with powerful remote checks.", 5 | "keywords": [ 6 | "forms", 7 | "validation", 8 | "validate" 9 | ], 10 | "author": { 11 | "name": "Jörn Zaefferer", 12 | "email": "joern.zaefferer@gmail.com", 13 | "url": "http://bassistance.de" 14 | }, 15 | "licenses": [ 16 | { 17 | "type": "MIT", 18 | "url": "http://www.opensource.org/licenses/MIT" 19 | } 20 | ], 21 | "bugs": "https://github.com/jzaefferer/jquery-validation/issues", 22 | "homepage": "https://github.com/jzaefferer/jquery-validation", 23 | "docs": "http://jqueryvalidation.org/documentation/", 24 | "download": "https://github.com/jzaefferer/jquery-validation/releases", 25 | "dependencies": { 26 | "jquery": ">=1.4.4" 27 | }, 28 | "version": "1.14.0" 29 | } 30 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "version": "2.1.4", 4 | "main": "dist/jquery.js", 5 | "license": "MIT", 6 | "ignore": [ 7 | "**/.*", 8 | "build", 9 | "dist/cdn", 10 | "speed", 11 | "test", 12 | "*.md", 13 | "AUTHORS.txt", 14 | "Gruntfile.js", 15 | "package.json" 16 | ], 17 | "devDependencies": { 18 | "sizzle": "2.1.1-jquery.2.1.2", 19 | "requirejs": "2.1.10", 20 | "qunit": "1.14.0", 21 | "sinon": "1.8.1" 22 | }, 23 | "keywords": [ 24 | "jquery", 25 | "javascript", 26 | "library" 27 | ], 28 | "homepage": "https://github.com/jquery/jquery", 29 | "_release": "2.1.4", 30 | "_resolution": { 31 | "type": "version", 32 | "tag": "2.1.4", 33 | "commit": "7751e69b615c6eca6f783a81e292a55725af6b85" 34 | }, 35 | "_source": "git://github.com/jquery/jquery.git", 36 | "_target": "2.1.4", 37 | "_originalSource": "jquery" 38 | } -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/lib/jquery/MIT-LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2014 jQuery Foundation and other contributors 2 | http://jquery.com/ 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining 5 | a copy of this software and associated documentation files (the 6 | "Software"), to deal in the Software without restriction, including 7 | without limitation the rights to use, copy, modify, merge, publish, 8 | distribute, sublicense, and/or sell copies of the Software, and to 9 | permit persons to whom the Software is furnished to do so, subject to 10 | the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaAspNetApp/wwwroot/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: http://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # Unix-style newlines with a newline ending every file 7 | [*] 8 | end_of_line = lf 9 | insert_final_newline = true 10 | 11 | # 2 space indentation 12 | [**.*] 13 | indent_style = space 14 | indent_size = 2 -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/.eslintignore: -------------------------------------------------------------------------------- 1 | config.js 2 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./node_modules/aurelia-tools/.eslintrc" 3 | } 4 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | jspm_packages 3 | bower_components 4 | .idea 5 | .DS_STORE 6 | /dist 7 | build/reports 8 | coverage 9 | test/e2e/dist 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/.npmignore: -------------------------------------------------------------------------------- 1 | jspm_packages 2 | bower_components 3 | .idea -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/32400f4e08932a94d8bfd2422702c446.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/32400f4e08932a94d8bfd2422702c446.eot -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/448c34a56d699c29117adc64c43affeb.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/448c34a56d699c29117adc64c43affeb.woff2 -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/a35720c2fed2c7f043bc7e4ffb45e073.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/a35720c2fed2c7f043bc7e4ffb45e073.woff -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/a3de2170e4e9df77161ea5d3f31b2668.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/a3de2170e4e9df77161ea5d3f31b2668.ttf -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/db812d8a70a4e88e888744c1c9a27e89.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/db812d8a70a4e88e888744c1c9a27e89.woff2 -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/e18bbf611f2a2e43afc071aa2f4e1512.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/e18bbf611f2a2e43afc071aa2f4e1512.ttf -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/f4769f9bdb7466be65088239c12046d1.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/f4769f9bdb7466be65088239c12046d1.eot -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/build/fa2772327f55d8198301fdb8bcfc8158.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/build/fa2772327f55d8198301fdb8bcfc8158.woff -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/doc/api.json: -------------------------------------------------------------------------------- 1 | {"classes":[],"methods":[],"properties":[],"events":[]} -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/AureliaWebsite/favicon.ico -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Aurelia 5 | 6 | 7 | 8 |
9 |
Aurelia Navigation Skeleton
10 | 11 |
12 | 13 | 14 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/index.js: -------------------------------------------------------------------------------- 1 | //Note: This file is provided as an aid to help you get up and running with 2 | //Electron for desktop apps. See the readme file for more information. 3 | /* eslint-disable strict, no-var, no-console */ 4 | 5 | 'use strict'; 6 | 7 | var app = require('app'); 8 | var BrowserWindow = require('browser-window'); 9 | var mainWindow = null; 10 | 11 | require('crash-reporter').start(); 12 | 13 | app.on('window-all-closed', function() { 14 | if (process.platform !== 'darwin') { 15 | app.quit(); 16 | } 17 | }); 18 | 19 | app.on('ready', function() { 20 | mainWindow = new BrowserWindow({ 21 | width: 800, 22 | height: 600 23 | }); 24 | 25 | mainWindow.loadUrl('file://' + __dirname + '/index.html'); 26 | mainWindow.webContents.on('did-finish-load', function() { 27 | mainWindow.setTitle(app.getName()); 28 | }); 29 | mainWindow.on('closed', function() { 30 | mainWindow = null; 31 | }); 32 | }); 33 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/index.prod.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Aurelia 5 | 6 | 7 | 8 |
9 |
Aurelia Navigation Skeleton
10 | 11 |
12 | 13 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES6", 4 | "module": "system", 5 | "experimentalDecorators": true 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/protractor.conf.js: -------------------------------------------------------------------------------- 1 | // An example configuration file. 2 | exports.config = { 3 | directConnect: true, 4 | 5 | // Capabilities to be passed to the webdriver instance. 6 | capabilities: { 7 | 'browserName': 'chrome' 8 | }, 9 | 10 | //seleniumAddress: 'http://0.0.0.0:4444', 11 | specs: ['test/e2e/dist/**/*.js'], 12 | 13 | plugins: [{ 14 | path: 'aurelia.protractor.js' 15 | }], 16 | 17 | 18 | // Options to be passed to Jasmine-node. 19 | jasmineNodeOpts: { 20 | showColors: true, 21 | defaultTimeoutInterval: 30000 22 | } 23 | }; 24 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-alert": 0 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/app.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/app.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {FetchConfig} from 'aurelia-auth'; 3 | 4 | @inject(FetchConfig) 5 | export class App { 6 | constructor(fetchConfig){ 7 | this.fetchConfig = fetchConfig; 8 | } 9 | 10 | activate(){ 11 | this.fetchConfig.configure(); 12 | } 13 | 14 | configureRouter(config, router) { 15 | config.title = 'Aurelia'; 16 | config.map([ 17 | { route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }, 18 | { route: 'customer', moduleId: './customer', nav: true, title:'CRM', auth:true }, 19 | { route: 'identity', moduleId: './identity', nav: true, title:'IdentityInApi', auth:true }, 20 | { route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }, 21 | { route: 'login', moduleId: './login', nav: false, title:'Login' }, 22 | { route: 'logout', moduleId: './logout', nav: false, title:'Logout' } 23 | 24 | ]); 25 | 26 | this.router = router; 27 | } 28 | 29 | } 30 | 31 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/child-router.html: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/child-router.js: -------------------------------------------------------------------------------- 1 | export class ChildRouter { 2 | heading = 'Child Router'; 3 | 4 | configureRouter(config, router) { 5 | config.map([ 6 | { route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }, 7 | { route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }, 8 | { route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' } 9 | ]); 10 | 11 | 12 | this.router = router; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/customer.html: -------------------------------------------------------------------------------- 1 |  12 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/customer.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {HttpClient} from 'aurelia-fetch-client'; 3 | import 'isomorphic-fetch'; 4 | @inject(HttpClient) 5 | export class Customer{ 6 | heading = 'Customer management'; 7 | customer=[]; 8 | constructor(http){ 9 | http.configure(config => { 10 | config 11 | .useStandardConfiguration(); 12 | //.withBaseUrl('http://localhost:57391/api/'); 13 | }); 14 | 15 | this.http = http; 16 | } 17 | 18 | activate(){ 19 | return this.http.fetch("http://localhost:57391/api/Customers") 20 | .then(response => { 21 | return response.json(); 22 | }) 23 | .then(c => { 24 | return this.customers = c; 25 | }); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/identity.html: -------------------------------------------------------------------------------- 1 |  15 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/identity.js: -------------------------------------------------------------------------------- 1 | import {inject} from 'aurelia-framework'; 2 | import {HttpClient} from 'aurelia-fetch-client'; 3 | import 'isomorphic-fetch'; 4 | @inject(HttpClient) 5 | export class Identity{ 6 | heading = 'Identity as known in the web api'; 7 | identityInApi="waiting for identity information"; 8 | constructor(http){ 9 | http.configure(config => { 10 | config 11 | .useStandardConfiguration(); 12 | }); 13 | 14 | this.http = http; 15 | } 16 | 17 | activate(){ 18 | return this.http.fetch("http://localhost:57391/api/Identity") 19 | .then(response => { 20 | return response.json(); 21 | }) 22 | .then(c => { 23 | return this.identityInApi = c; 24 | }); 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/login.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/login.js: -------------------------------------------------------------------------------- 1 | import {AuthService} from 'aurelia-auth'; 2 | import {inject} from 'aurelia-framework'; 3 | @inject(AuthService ) 4 | 5 | export class Login{ 6 | constructor(auth){ 7 | this.auth = auth; 8 | }; 9 | 10 | heading = 'Login'; 11 | 12 | authenticate(name){ 13 | return this.auth.authenticate(name, false, null) 14 | .then((response)=>{ 15 | console.log("auth response " + response); 16 | }); 17 | 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/logout.html: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/logout.js: -------------------------------------------------------------------------------- 1 | import {AuthService} from 'aurelia-auth'; 2 | import {inject} from 'aurelia-framework'; 3 | import {HttpClient} from 'aurelia-fetch-client'; 4 | import 'isomorphic-fetch'; 5 | @inject(AuthService, HttpClient ) 6 | 7 | export class Logout{ 8 | constructor(authService, http){ 9 | this.authService = authService; 10 | this.http= http; 11 | }; 12 | 13 | activate(){ 14 | let endSessionUrl = 'http://localhost:22530/connect/endsession'; 15 | 16 | this.http.fetch(endSessionUrl).then(response=>{ 17 | this.authService.logout("#/login") 18 | .then(response=>{ 19 | console.log("ok logged out on logout.js"); 20 | }) 21 | .catch(err=>{ 22 | console.log("error logged out logout.js"); 23 | 24 | }); 25 | 26 | }).catch(err=>{ 27 | console.log(err); 28 | }); 29 | 30 | 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/main.js: -------------------------------------------------------------------------------- 1 | import {bootstrap} from 'aurelia-bootstrapper-webpack'; 2 | 3 | import '../node_modules/bootstrap/dist/css/bootstrap.css'; 4 | import '../node_modules/font-awesome/css/font-awesome.css'; 5 | import '../styles/styles.css'; 6 | import config from './authConfig'; 7 | bootstrap(function(aurelia) { 8 | 9 | aurelia.use 10 | .standardConfiguration() 11 | .developmentLogging() 12 | .plugin('aurelia-auth', (baseConfig)=>{ //the name of plugin becomes 'paulvanbladel/aurelia-auth' 13 | baseConfig.configure(config); 14 | }); 15 | 16 | aurelia.start().then(() => aurelia.setRoot('app', document.body)); 17 | }); 18 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/nav-bar.js: -------------------------------------------------------------------------------- 1 | import {bindable } from 'aurelia-framework'; 2 | import {inject} from 'aurelia-framework'; 3 | import {AuthService} from 'aurelia-auth'; 4 | import {BindingEngine} from 'aurelia-framework'; 5 | 6 | @inject(AuthService, BindingEngine) 7 | export class NavBar { 8 | _isAuthenticated = false; 9 | displayName = ""; 10 | @bindable router = null; 11 | subscription = {}; 12 | constructor(auth, bindingEngine) { 13 | this.auth = auth; 14 | this.bindingEngine = bindingEngine; 15 | this._isAuthenticated = this.auth.isAuthenticated(); 16 | this.subscription = bindingEngine.propertyObserver(this, 'isAuthenticated') 17 | .subscribe((newValue, oldValue) => { 18 | if (this.isAuthenticated) { 19 | this.auth.getMe().then(data => { 20 | return this.displayName = data.name; 21 | }); 22 | } 23 | }); 24 | } 25 | 26 | get isAuthenticated() { 27 | return this.auth.isAuthenticated(); 28 | } 29 | 30 | deactivate() { 31 | this.subscription.dispose(); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/welcome.html: -------------------------------------------------------------------------------- 1 | 21 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/src/welcome.js: -------------------------------------------------------------------------------- 1 | //import {computedFrom} from 'aurelia-framework'; 2 | 3 | export class Welcome { 4 | 5 | heading = 'Welcome to the Aurelia Navigation App!'; 6 | firstName = 'John'; 7 | lastName = 'Doe'; 8 | previousValue = this.fullName; 9 | 10 | //Getters can't be directly observed, so they must be dirty checked. 11 | //However, if you tell Aurelia the dependencies, it no longer needs to dirty check the property. 12 | //To optimize by declaring the properties that this getter is computed from, uncomment the line below 13 | //as well as the corresponding import above. 14 | //@computedFrom('firstName', 'lastName') 15 | get fullName() { 16 | return `${this.firstName} ${this.lastName}`; 17 | } 18 | 19 | submit() { 20 | this.previousValue = this.fullName; 21 | alert(`Welcome, ${this.fullName}!`); 22 | } 23 | 24 | canDeactivate() { 25 | if (this.fullName !== this.previousValue) { 26 | return confirm('Are you sure you want to leave?'); 27 | } 28 | } 29 | } 30 | 31 | export class UpperValueConverter { 32 | toView(value) { 33 | return value && value.toUpperCase(); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/e2e/src/demo.spec.js: -------------------------------------------------------------------------------- 1 | import {PageObjectWelcome} from './welcome.po.js'; 2 | import {PageObjectSkeleton} from './skeleton.po.js'; 3 | 4 | describe('aurelia skeleton app', function() { 5 | let poWelcome; 6 | let poSkeleton; 7 | 8 | beforeEach(() => { 9 | poSkeleton = new PageObjectSkeleton(); 10 | poWelcome = new PageObjectWelcome(); 11 | 12 | browser.loadAndWaitForAureliaPage('http://localhost:9000'); 13 | }); 14 | 15 | it('should load the page and display the initial page title', () => { 16 | expect(poSkeleton.getCurrentPageTitle()).toBe('Welcome | Aurelia'); 17 | }); 18 | 19 | it('should display greeting', () => { 20 | expect(poWelcome.getGreeting()).toBe('Welcome to the Aurelia Navigation App!'); 21 | }); 22 | 23 | it('should automatically write down the fullname', () => { 24 | poWelcome.setFirstname('Rob'); 25 | poWelcome.setLastname('Eisenberg'); 26 | 27 | // For now there is a timing issue with the binding. 28 | // Until resolved we will use a short sleep to overcome the issue. 29 | browser.sleep(200); 30 | expect(poWelcome.getFullname()).toBe('ROB EISENBERG'); 31 | }); 32 | 33 | it('should show alert message when clicking submit button', () => { 34 | expect(poWelcome.openAlertDialog()).toBe(true); 35 | }); 36 | 37 | it('should navigate to users page', () => { 38 | poSkeleton.navigateTo('#/users'); 39 | expect(poSkeleton.getCurrentPageTitle()).toBe('Github Users | Aurelia'); 40 | }); 41 | }); 42 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/e2e/src/skeleton.po.js: -------------------------------------------------------------------------------- 1 | export class PageObjectSkeleton { 2 | 3 | constructor() { 4 | 5 | } 6 | 7 | getCurrentPageTitle() { 8 | return browser.getTitle(); 9 | } 10 | 11 | navigateTo(href) { 12 | element(by.css('a[href="' + href + '"]')).click(); 13 | return browser.waitForRouterComplete(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/e2e/src/welcome.po.js: -------------------------------------------------------------------------------- 1 | export class PageObjectWelcome { 2 | 3 | constructor() { 4 | 5 | } 6 | 7 | getGreeting() { 8 | return element(by.tagName('h2')).getText(); 9 | } 10 | 11 | setFirstname(value) { 12 | return element(by.valueBind('firstName')).clear().sendKeys(value); 13 | } 14 | 15 | setLastname(value) { 16 | return element(by.valueBind('lastName')).clear().sendKeys(value); 17 | } 18 | 19 | getFullname() { 20 | return element(by.css('.help-block')).getText(); 21 | } 22 | 23 | pressSubmitButton() { 24 | return element(by.css('button[type="submit"]')).click(); 25 | } 26 | 27 | openAlertDialog() { 28 | return browser.wait(() => { 29 | this.pressSubmitButton(); 30 | 31 | return browser.switchTo().alert().then( 32 | // use alert.accept instead of alert.dismiss which results in a browser crash 33 | function(alert) { alert.accept(); return true; }, 34 | function() { return false; } 35 | ); 36 | }); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/unit/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-var": 0 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/unit/app.spec.js: -------------------------------------------------------------------------------- 1 | import {App} from '../../src/app'; 2 | 3 | class RouterStub { 4 | configure(handler) { 5 | handler(this); 6 | } 7 | 8 | map(routes) { 9 | this.routes = routes; 10 | } 11 | } 12 | 13 | describe('the App module', () => { 14 | var sut; 15 | var mockedRouter; 16 | 17 | beforeEach(() => { 18 | mockedRouter = new RouterStub(); 19 | sut = new App(); 20 | sut.configureRouter(mockedRouter, mockedRouter); 21 | }); 22 | 23 | it('contains a router property', () => { 24 | expect(sut.router).toBeDefined(); 25 | }); 26 | 27 | it('configures the router title', () => { 28 | expect(sut.router.title).toEqual('Aurelia'); 29 | }); 30 | 31 | it('should have a welcome route', () => { 32 | expect(sut.router.routes).toContain({ route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }); 33 | }); 34 | 35 | it('should have a users route', () => { 36 | expect(sut.router.routes).toContain({ route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }); 37 | }); 38 | 39 | it('should have a child router route', () => { 40 | expect(sut.router.routes).toContain({ route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }); 41 | }); 42 | }); 43 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/unit/child-router.spec.js: -------------------------------------------------------------------------------- 1 | import {ChildRouter} from '../../src/child-router'; 2 | 3 | class RouterStub { 4 | configure(handler) { 5 | handler(this); 6 | } 7 | 8 | map(routes) { 9 | this.routes = routes; 10 | } 11 | } 12 | 13 | describe('the Child Router module', () => { 14 | var sut; 15 | var mockedRouter; 16 | 17 | beforeEach(() => { 18 | mockedRouter = new RouterStub(); 19 | sut = new ChildRouter(); 20 | sut.configureRouter(mockedRouter, mockedRouter); 21 | }); 22 | 23 | it('contains a router property', () => { 24 | expect(sut.router).toBeDefined(); 25 | }); 26 | 27 | it('configures the heading', () => { 28 | expect(sut.heading).toEqual('Child Router'); 29 | }); 30 | 31 | it('should have a welcome route', () => { 32 | expect(sut.router.routes).toContain({ route: ['', 'welcome'], name: 'welcome', moduleId: 'welcome', nav: true, title: 'Welcome' }); 33 | }); 34 | 35 | it('should have a users route', () => { 36 | expect(sut.router.routes).toContain({ route: 'users', name: 'users', moduleId: 'users', nav: true, title: 'Github Users' }); 37 | }); 38 | 39 | it('should have a child router route', () => { 40 | expect(sut.router.routes).toContain({ route: 'child-router', name: 'child-router', moduleId: 'child-router', nav: true, title: 'Child Router' }); 41 | }); 42 | }); 43 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/test/unit/users.spec.js: -------------------------------------------------------------------------------- 1 | import {Users} from '../../src/users'; 2 | 3 | class HttpStub { 4 | fetch(url) { 5 | var response = this.itemStub; 6 | this.url = url; 7 | return new Promise((resolve) => { 8 | resolve({ json: () => response }); 9 | }); 10 | } 11 | 12 | configure(func) { 13 | } 14 | } 15 | 16 | describe('the Users module', () => { 17 | it('sets fetch response to users', (done) => { 18 | var http = new HttpStub(); 19 | var sut = new Users(http); 20 | var itemStubs = [1]; 21 | var itemFake = [2]; 22 | 23 | http.itemStub = itemStubs; 24 | sut.activate().then(() => { 25 | expect(sut.users).toBe(itemStubs); 26 | expect(sut.users).not.toBe(itemFake); 27 | done(); 28 | }); 29 | }); 30 | }); 31 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/wallaby.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-var, no-shadow, dot-notation */ 2 | 3 | var babel = require('babel'); 4 | 5 | module.exports = function(wallaby) { 6 | return { 7 | files: [ 8 | 9 | {pattern: 'jspm_packages/system.js', instrument: false}, 10 | {pattern: 'config.js', instrument: false}, 11 | 12 | {pattern: 'src/**/*.js', load: false} 13 | 14 | ], 15 | 16 | tests: [ 17 | {pattern: 'test/unit/**/*.spec.js', load: false} 18 | ], 19 | 20 | compilers: { 21 | '**/*.js': wallaby.compilers.babel({ 22 | babel: babel, 23 | optional: [ 24 | 'es7.decorators', 25 | 'es7.classProperties' 26 | ] 27 | }) 28 | }, 29 | 30 | middleware: (app, express) => { 31 | app.use('/jspm_packages', express.static(require('path').join(__dirname, 'jspm_packages'))); 32 | }, 33 | 34 | bootstrap: function(wallaby) { 35 | var promises = []; 36 | var i = 0; 37 | var len = wallaby.tests.length; 38 | 39 | wallaby.delayStart(); 40 | 41 | System.config({ 42 | paths: { 43 | '*': '*.js' 44 | } 45 | }); 46 | for (; i < len; i++) { 47 | promises.push(System['import'](wallaby.tests[i].replace(/\.js$/, ''))); 48 | } 49 | 50 | Promise.all(promises).then(function() { 51 | wallaby.start(); 52 | }); 53 | }, 54 | 55 | debug: false 56 | }; 57 | }; 58 | -------------------------------------------------------------------------------- /BasicSetup/src/AureliaWebsite/webpack.config.js: -------------------------------------------------------------------------------- 1 | /*eslint-disable no-var*/ 2 | 3 | var path = require('path'); 4 | var AureliaWebpackPlugin = require('aurelia-webpack-plugin'); 5 | 6 | module.exports = { 7 | devServer: { 8 | host: 'localhost', 9 | port: 9000 10 | }, 11 | entry: { 12 | main: [ 13 | './src/main' 14 | ] 15 | }, 16 | output: { 17 | path: path.join(__dirname, 'build'), 18 | filename: 'bundle.js' 19 | }, 20 | plugins: [ 21 | new AureliaWebpackPlugin({ 22 | includeSubModules: [ 23 | { moduleId: 'aurelia-auth' } 24 | ] 25 | }) 26 | ], 27 | module: { 28 | loaders: [ 29 | { test: /\.js$/, loader: 'babel', exclude: /node_modules/, query: { presets: ['es2015-loose', 'stage-1'], plugins: ['transform-decorators-legacy'] } }, 30 | { test: /\.css?$/, loader: 'style!css' }, 31 | { test: /\.html$/, loader: 'raw' }, 32 | { test: /\.(png|gif|jpg)$/, loader: 'url-loader?limit=8192' }, 33 | { test: /\.woff2(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'url-loader?limit=10000&minetype=application/font-woff2' }, 34 | { test: /\.woff(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'url-loader?limit=10000&minetype=application/font-woff' }, 35 | { test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'file-loader' } 36 | ] 37 | } 38 | }; 39 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/Configuration/Scopes.cs: -------------------------------------------------------------------------------- 1 |  2 | using IdentityServer4.Models; 3 | using System.Collections.Generic; 4 | 5 | namespace IdSvrHost.Configuration 6 | 7 | { 8 | public class Scopes 9 | { 10 | public static IEnumerable Get() 11 | { 12 | var scopes= new List 13 | { 14 | StandardScopes.OpenId, 15 | StandardScopes.ProfileAlwaysInclude, 16 | StandardScopes.EmailAlwaysInclude, 17 | StandardScopes.OfflineAccess, 18 | StandardScopes.RolesAlwaysInclude, 19 | 20 | new Scope 21 | { 22 | Name = "crm", 23 | DisplayName = "Crm", 24 | Description = "Access to CRM data", 25 | Type = ScopeType.Resource, 26 | 27 | //ScopeSecrets = new List 28 | //{ 29 | // new Secret("secret".Sha256()) 30 | //}, 31 | Claims = new List 32 | { 33 | new ScopeClaim("role") 34 | } 35 | } 36 | 37 | }; 38 | scopes.AddRange(StandardScopes.All); 39 | 40 | return scopes; 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM microsoft/dotnet:1.0.0-preview2-sdk 2 | RUN mkdir -p /IdSvrHost 3 | WORKDIR /IdSvrHost 4 | COPY . /IdSvrHost 5 | RUN ["dotnet", "restore"] 6 | EXPOSE 22530/tcp 7 | ENTRYPOINT ["dotnet", "run"] -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/IdSvrHost.xproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 14.0 5 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) 6 | 7 | 8 | 9 | 154ccedc-cfd5-4b7a-9000-fc454ea86362 10 | IdSvrHost 11 | ..\..\artifacts\obj\$(MSBuildProjectName) 12 | .\bin\ 13 | 14 | 15 | 2.0 16 | 17 | 18 | True 19 | 20 | 21 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "iisSettings": { 3 | "windowsAuthentication": false, 4 | "anonymousAuthentication": true, 5 | "iisExpress": { 6 | "applicationUrl": "http://localhost:22530/", 7 | "sslPort": 0 8 | } 9 | }, 10 | "profiles": { 11 | "IIS Express": { 12 | "commandName": "IISExpress", 13 | "launchBrowser": true, 14 | "commandLineArgs": "SERVER.URLS=http://localhost:22530/", 15 | "environmentVariables": { 16 | "Aurelia_Sample_BaseURI": "localhost", 17 | "ASPNETCORE_ENVIRONMENT": "Development", 18 | "ASPNETCORE_SERVER.URLS": "http://localhost:12345" 19 | } 20 | }, 21 | "IdSvrHost": { 22 | "commandName": "Project", 23 | "launchBrowser": true, 24 | "commandLineArgs": "SERVER.URLS=http://localhost:22530/", 25 | "launchUrl": "http://localhost:22530", 26 | "environmentVariables": { 27 | "Aurelia_Sample_BaseURI": "localhost", 28 | "ASPNETCORE_ENVIRONMENT": "Development", 29 | "ASPNETCORE_SERVER.URLS": "http://localhost:12345" 30 | } 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Consent/ConsentInputModel.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace IdSvrHost.UI.Consent 4 | { 5 | public class ConsentInputModel 6 | { 7 | public IEnumerable ScopesConsented { get; set; } 8 | public bool RememberConsent { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Consent/ConsentResult.cs: -------------------------------------------------------------------------------- 1 |  2 | using IdentityServer4.Models; 3 | using IdentityServer4.Services; 4 | using Microsoft.AspNetCore.Mvc; 5 | using Microsoft.Extensions.DependencyInjection; 6 | using System.Threading.Tasks; 7 | 8 | namespace IdSvrHost.UI.Consent 9 | { 10 | public class ConsentResult : IActionResult 11 | { 12 | private readonly string _requestId; 13 | private readonly ConsentResponse _response; 14 | 15 | public ConsentResult(string requestId, ConsentResponse response) 16 | { 17 | _requestId = requestId; 18 | _response = response; 19 | } 20 | 21 | public async Task ExecuteResultAsync(ActionContext context) 22 | { 23 | var interaction = context.HttpContext.RequestServices.GetRequiredService(); 24 | await interaction.ProcessResponseAsync(_requestId, _response); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Consent/Views/_ScopeListItem.cshtml: -------------------------------------------------------------------------------- 1 | @model IdSvrHost.UI.Consent.ScopeViewModel 2 | 3 |
  • 4 | 19 | (required) 20 | 23 |
  • -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/CustomViewLocationExpander.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.AspNetCore.Mvc.Razor; 2 | using System.Collections.Generic; 3 | 4 | namespace IdSvrHost.UI 5 | { 6 | public class CustomViewLocationExpander : IViewLocationExpander 7 | { 8 | public IEnumerable ExpandViewLocations( 9 | ViewLocationExpanderContext context, 10 | IEnumerable viewLocations) 11 | { 12 | yield return "~/UI/{1}/Views/{0}.cshtml"; 13 | yield return "~/UI/SharedViews/{0}.cshtml"; 14 | } 15 | 16 | public void PopulateValues(ViewLocationExpanderContext context) 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Error/ErrorController.cs: -------------------------------------------------------------------------------- 1 | using IdentityServer4; 2 | using IdentityServer4.Services; 3 | using Microsoft.AspNetCore.Mvc; 4 | using System.Threading.Tasks; 5 | 6 | namespace IdSvrHost.UI.Error 7 | { 8 | public class ErrorController : Controller 9 | { 10 | private readonly ErrorInteraction _errorInteraction; 11 | 12 | public ErrorController(ErrorInteraction errorInteraction) 13 | { 14 | _errorInteraction = errorInteraction; 15 | } 16 | 17 | [Route(Constants.RoutePaths.Error, Name ="Error")] 18 | public async Task Index(string id) 19 | { 20 | var vm = new ErrorViewModel(); 21 | 22 | if (id != null) 23 | { 24 | var message = await _errorInteraction.GetRequestAsync(id); 25 | if (message != null) 26 | { 27 | vm.Error = message; 28 | } 29 | } 30 | 31 | return View("Error", vm); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Error/ErrorViewModel.cs: -------------------------------------------------------------------------------- 1 |  2 | using IdentityServer4.Models; 3 | 4 | namespace IdSvrHost.UI.Error 5 | { 6 | public class ErrorViewModel 7 | { 8 | public ErrorMessage Error { get; set; } 9 | } 10 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Home/HomeController.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.AspNetCore.Mvc; 2 | 3 | namespace IdSvrHost.UI.Home 4 | { 5 | public class HomeController : Controller 6 | { 7 | [Route("/")] 8 | public IActionResult Index() 9 | { 10 | return View(); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Home/Views/Index.cshtml: -------------------------------------------------------------------------------- 1 |  2 |
    3 | 12 | 13 |
    14 |
    15 |

    16 | IdentityServer publishes a 17 | discovery document 18 | where you can find metadata and links to all the endpoints, key material, etc. 19 |

    20 |
    21 |
    22 |
    23 |
    24 |

    25 | Here are links to the 26 | source code repository, 27 | and ready to use samples. 28 |

    29 |
    30 |
    31 |
    32 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Login/LoginInputModel.cs: -------------------------------------------------------------------------------- 1 | using System.ComponentModel.DataAnnotations; 2 | 3 | namespace IdSvrHost.UI.Login 4 | { 5 | public class LoginInputModel 6 | { 7 | [Required] 8 | public string Username { get; set; } 9 | [Required] 10 | public string Password { get; set; } 11 | public bool RememberLogin { get; set; } 12 | public string SignInId { get; set; } 13 | } 14 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Login/LoginViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace IdSvrHost.UI.Login 2 | { 3 | public class LoginViewModel : LoginInputModel 4 | { 5 | public LoginViewModel() 6 | { 7 | } 8 | 9 | public LoginViewModel(LoginInputModel other) 10 | { 11 | Username = other.Username; 12 | Password = other.Password; 13 | RememberLogin = other.RememberLogin; 14 | SignInId = other.SignInId; 15 | } 16 | 17 | public string ErrorMessage { get; set; } 18 | } 19 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Login/SignInResult.cs: -------------------------------------------------------------------------------- 1 | using IdentityServer4.Models; 2 | using IdentityServer4.Services; 3 | using Microsoft.AspNetCore.Mvc; 4 | using Microsoft.Extensions.DependencyInjection; 5 | using System.Threading.Tasks; 6 | 7 | namespace IdSvrHost.UI.Login 8 | { 9 | public class SignInResult : IActionResult 10 | { 11 | private readonly string _requestId; 12 | 13 | public SignInResult(string requestId) 14 | { 15 | _requestId = requestId; 16 | } 17 | 18 | public async Task ExecuteResultAsync(ActionContext context) 19 | { 20 | var interaction = context.HttpContext.RequestServices.GetRequiredService(); 21 | await interaction.ProcessResponseAsync(_requestId, new SignInResponse()); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Logout/LoggedOutViewModel.cs: -------------------------------------------------------------------------------- 1 | using IdentityServer4.Models; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | namespace IdSvrHost.UI.Logout 6 | { 7 | public class LoggedOutViewModel 8 | { 9 | public LoggedOutViewModel() 10 | { 11 | SignOutIFrameUrls = Enumerable.Empty(); 12 | } 13 | 14 | public ClientReturnInfo ReturnInfo { get; set; } 15 | public string ClientName { get; set; } 16 | 17 | public IEnumerable SignOutIFrameUrls { get; set; } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Logout/LogoutController.cs: -------------------------------------------------------------------------------- 1 |  2 | using IdentityServer4; 3 | using IdentityServer4.Services; 4 | using Microsoft.AspNetCore.Mvc; 5 | using System.Security.Claims; 6 | using System.Threading.Tasks; 7 | 8 | namespace IdSvrHost.UI.Logout 9 | { 10 | public class LogoutController : Controller 11 | { 12 | private readonly SignOutInteraction _signOutInteraction; 13 | 14 | public LogoutController(SignOutInteraction signOutInteraction) 15 | { 16 | _signOutInteraction = signOutInteraction; 17 | } 18 | 19 | [HttpGet(Constants.RoutePaths.Logout, Name = "Logout")] 20 | public IActionResult Index(string id) 21 | { 22 | return View(new LogoutViewModel { SignOutId = id }); 23 | } 24 | 25 | [HttpPost(Constants.RoutePaths.Logout)] 26 | [ValidateAntiForgeryToken] 27 | public async Task Submit(string signOutId) 28 | { 29 | await HttpContext.Authentication.SignOutAsync(Constants.PrimaryAuthenticationType); 30 | 31 | // set this so UI rendering sees an anonymous user 32 | HttpContext.User = new ClaimsPrincipal(new ClaimsIdentity()); 33 | 34 | var vm = new LoggedOutViewModel(); 35 | return View("LoggedOut", vm); 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Logout/LogoutViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace IdSvrHost.UI.Logout 2 | { 3 | public class LogoutViewModel 4 | { 5 | public string SignOutId { get; set; } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Logout/Views/Index.cshtml: -------------------------------------------------------------------------------- 1 | @model IdSvrHost.UI.Logout.LogoutViewModel 2 | 3 |
    4 | 7 | 8 |
    9 |
    10 |

    Would you like to logout of IdentityServer?

    11 |
    12 | 13 |
    14 |
    15 | 16 |
    17 |
    18 |
    19 |
    20 |
    21 |
    -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/Logout/Views/LoggedOut.cshtml: -------------------------------------------------------------------------------- 1 | @model IdSvrHost.UI.Logout.LoggedOutViewModel 2 | 3 | 19 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/SharedViews/Error.cshtml: -------------------------------------------------------------------------------- 1 | @model IdSvrHost.UI.Error.ErrorViewModel 2 | 3 | @{ 4 | var error_description = Model?.Error?.ErrorDescription ?? "Sorry, there was an unexpected error."; 5 | var error_code = Model?.Error?.ErrorCode; 6 | var request_id = Model?.Error?.RequestId; 7 | } 8 | 9 |
    10 | 13 | 14 |
    15 |
    16 |
    17 | 18 | 19 | @Model.Error.ErrorCode 20 | 21 | 22 | 23 | @error_description 24 |
    25 | 26 |
    Request Id: @request_id
    27 |
    28 |
    29 |
    30 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/SharedViews/_ValidationSummary.cshtml: -------------------------------------------------------------------------------- 1 | 
    2 | Error 3 |
    4 |
    5 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/_ViewImports.cshtml: -------------------------------------------------------------------------------- 1 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 2 | @addTagHelper *, IdSvrHost 3 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/UI/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/idsrv4test.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/idsrv4test.pfx -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/css/site.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin-top: 65px; 3 | } 4 | .navbar-header { 5 | position: relative; 6 | top: -4px; 7 | } 8 | .navbar-brand > .icon-banner { 9 | position: relative; 10 | top: -2px; 11 | display: inline; 12 | } 13 | .icon { 14 | position: relative; 15 | top: -10px; 16 | } 17 | .page-consent .client-logo { 18 | float: left; 19 | } 20 | .page-consent .client-logo img { 21 | width: 80px; 22 | height: 80px; 23 | } 24 | .page-consent .consent-buttons { 25 | margin-top: 25px; 26 | } 27 | .page-consent .consent-form .consent-scopecheck { 28 | display: inline-block; 29 | margin-right: 5px; 30 | } 31 | .page-consent .consent-form .consent-description { 32 | margin-left: 25px; 33 | } 34 | .page-consent .consent-form .consent-description label { 35 | font-weight: normal; 36 | } 37 | .page-consent .consent-form .consent-remember { 38 | padding-left: 16px; 39 | } -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/css/site.less: -------------------------------------------------------------------------------- 1 | body { 2 | margin-top: 65px; 3 | } 4 | 5 | .navbar-header { 6 | position:relative; 7 | top:-4px; 8 | } 9 | 10 | .navbar-brand > .icon-banner { 11 | position:relative; 12 | top:-2px; 13 | display:inline; 14 | } 15 | 16 | .icon { 17 | position:relative; 18 | top:-10px; 19 | } 20 | 21 | .page-consent { 22 | .client-logo { 23 | float: left; 24 | 25 | img { 26 | width: 80px; 27 | height: 80px; 28 | } 29 | } 30 | 31 | .consent-buttons { 32 | margin-top: 25px; 33 | } 34 | 35 | .consent-form { 36 | .consent-scopecheck { 37 | display: inline-block; 38 | margin-right: 5px; 39 | } 40 | 41 | .consent-scopecheck[disabled] { 42 | //visibility:hidden; 43 | } 44 | 45 | .consent-description { 46 | margin-left: 25px; 47 | 48 | label { 49 | font-weight: normal; 50 | } 51 | } 52 | 53 | .consent-remember { 54 | padding-left: 16px; 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/css/site.min.css: -------------------------------------------------------------------------------- 1 | body{margin-top:65px;}.navbar-header{position:relative;top:-4px;}.navbar-brand>.icon-banner{position:relative;top:-2px;display:inline;}.icon{position:relative;top:-10px;}.page-consent .client-logo{float:left;}.page-consent .client-logo img{width:80px;height:80px;}.page-consent .consent-buttons{margin-top:25px;}.page-consent .consent-form .consent-scopecheck{display:inline-block;margin-right:5px;}.page-consent .consent-form .consent-description{margin-left:25px;}.page-consent .consent-form .consent-description label{font-weight:normal;}.page-consent .consent-form .consent-remember{padding-left:16px;} -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/favicon.ico -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/icon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/icon.jpg -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/icon.png -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulvanbladel/aurelia-identityserver-aspnetcore/0a5d76defd00f6c037fc1d63405de5eb253a6ccb/BasicSetup/src/IdSvrHost/wwwroot/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /BasicSetup/src/IdSvrHost/wwwroot/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/AuthorizationHandlers/CrmAuthorizationHandler.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.AspNetCore.Authorization; 2 | using Microsoft.AspNetCore.Authorization.Infrastructure; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Threading.Tasks; 7 | using WebApi.Models; 8 | 9 | namespace WebApi.AuthorizationHandlers 10 | { 11 | //WORK IN PROGRESS 12 | //public class CrmAuthorizationHandler : AuthorizationHandler 13 | //{ 14 | 15 | // protected override void Handle(AuthorizationContext context, OperationAuthorizationRequirement requirement, Customer resource) 16 | // { 17 | // if (requirement.Name=="read") 18 | // { 19 | // if (context.User.HasClaim( "role", "Geek")) 20 | // { 21 | // context.Succeed(requirement); 22 | // } 23 | // else 24 | // { 25 | // context.Fail(); 26 | // } 27 | 28 | // } 29 | // } 30 | //} 31 | } 32 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/Controllers/CustomersController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Mvc; 6 | using Microsoft.AspNetCore.Authorization; 7 | using WebApi.Models; 8 | using Microsoft.AspNetCore.Authentication.JwtBearer; 9 | 10 | namespace WebApi.Controllers 11 | { 12 | [Route("api/[controller]")] 13 | [Authorize] 14 | public class CustomersController : Controller 15 | { 16 | 17 | // GET: api/values 18 | [HttpGet] 19 | public IEnumerable Get() 20 | { 21 | var c1 = new Customer { FirstName = "paul", LastName = "van bladel" }; 22 | var c2 = new Customer { FirstName = "isabelle", LastName = "Robesyn" }; 23 | 24 | return new List { c1, c2 }; 25 | 26 | 27 | } 28 | } 29 | 30 | 31 | 32 | } 33 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/Controllers/IdentityController.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.AspNetCore.Authentication.JwtBearer; 2 | using Microsoft.AspNetCore.Authorization; 3 | using Microsoft.AspNetCore.Mvc; 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Linq; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebApi.Controllers 10 | { 11 | [Route("api/[controller]")] 12 | [Authorize] 13 | public class IdentityController: Controller 14 | { 15 | [HttpGet] 16 | public ActionResult Get() 17 | { 18 | return Json(User.Claims.Select(c => new { c.Type, c.Value })); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM microsoft/dotnet:1.0.0-preview2-sdk 2 | RUN mkdir -p /WebApi 3 | WORKDIR /WebApi 4 | COPY . /WebApi 5 | RUN ["dotnet", "restore"] 6 | EXPOSE 57391/tcp 7 | ENTRYPOINT ["dotnet", "run"] -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/Models/Customer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | 6 | namespace WebApi.Models 7 | { 8 | public class Customer 9 | { 10 | public string FirstName { get; set; } 11 | public string LastName { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | 2 | { 3 | "iisSettings": { 4 | "windowsAuthentication": false, 5 | "anonymousAuthentication": true, 6 | "iisExpress": { 7 | "applicationUrl": "http://localhost:57391/", 8 | "sslPort": 0 9 | } 10 | }, 11 | "profiles": { 12 | "IIS Express": { 13 | "commandName": "IISExpress", 14 | "launchBrowser": true, 15 | "launchUrl": "api/Customers", 16 | "environmentVariables": { 17 | "Aurelia_Sample_BaseURI": "localhost", 18 | "ASPNETCORE_ENVIRONMENT": "Development" 19 | } 20 | }, 21 | "WebApi": { 22 | "commandName": "Project", 23 | "environmentVariables": { 24 | "Aurelia_Sample_BaseURI": "localhost", 25 | "ASPNETCORE_ENVIRONMENT": "Development" 26 | } 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/WebApi.xproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 14.0 5 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) 6 | 7 | 8 | 9 | d9cc91fa-28f6-45c4-9378-3d22b0408b33 10 | WebApi 11 | ..\..\artifacts\obj\$(MSBuildProjectName) 12 | .\bin\ 13 | 14 | 15 | 2.0 16 | 17 | 18 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "IncludeScopes": false, 4 | "LogLevel": { 5 | "Default": "Verbose", 6 | "System": "Information", 7 | "Microsoft": "Information" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /BasicSetup/src/WebApi/wwwroot/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /BasicSetup/src/build-docker-compose.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # get ip address from this docker host 4 | HOSTIP=$(ip -f inet -o addr show eth0|cut -d\ -f 7 | cut -d/ -f 1) 5 | # run docker-compose with patched docker-compose file containing the docker host ip address instead of the placeholder 6 | sed -e "s/REPLACE_WITH_DOCKERHOSTIP/$HOSTIP/g" docker-compose.yml | docker-compose --file - build -------------------------------------------------------------------------------- /BasicSetup/src/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | services: 3 | aureliaaspnetapp: 4 | build: 5 | context: ./AureliaAspNetApp 6 | args: 7 | hostip: REPLACE_WITH_DOCKERHOSTIP 8 | ports: 9 | - "49849:49849" 10 | depends_on: 11 | - idsvrhost 12 | - webapi 13 | environment: 14 | - Aurelia_Sample_BaseURI=REPLACE_WITH_DOCKERHOSTIP 15 | - Aurelia_Sample_MVC_URL=http://0.0.0.0:49849 16 | idsvrhost: 17 | build: 18 | context: ./IdSvrHost 19 | ports: 20 | - "22530:22530" 21 | environment: 22 | - Aurelia_Sample_BaseURI=REPLACE_WITH_DOCKERHOSTIP 23 | - Aurelia_Sample_STS_URL=http://0.0.0.0:22530 24 | webapi: 25 | build: 26 | context: ./WebApi 27 | ports: 28 | - "57391:57391" 29 | environment: 30 | - Aurelia_Sample_BaseURI=REPLACE_WITH_DOCKERHOSTIP 31 | - Aurelia_Sample_API_URL=http://0.0.0.0:57391 -------------------------------------------------------------------------------- /BasicSetup/src/start-docker-compose.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # get ip address from this docker host 4 | HOSTIP=$(ip -f inet -o addr show eth0|cut -d\ -f 7 | cut -d/ -f 1) 5 | # run docker-compose with patched docker-compose file containing the docker host ip address instead of the placeholder 6 | sed -e "s/REPLACE_WITH_DOCKERHOSTIP/$HOSTIP/g" docker-compose.yml | docker-compose --file - up -d -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 paul van bladel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | --------------------------------------------------------------------------------