├── .all-contributorsrc ├── .devcontainer ├── Dockerfile ├── devcontainer.json └── library-scripts │ └── node-debian.sh ├── .editorconfig ├── .github ├── CODEOWNERS ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── config.yml │ └── feature_request.md ├── codeql │ └── codeql-config.yml ├── labeler.yml └── workflows │ ├── azuresdkdrop.yml │ ├── ci.yml │ ├── codeql-analysis.yml │ ├── deploy-docs.yml │ ├── detection-e2e-tests.yml │ ├── dockerhub.yml │ ├── e2e.yml │ └── labeler.yml ├── .gitignore ├── .npmignore ├── .nvmrc ├── .prettierrc ├── .vscode ├── extensions.json ├── launch.json ├── settings.json └── tasks.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── SECURITY.md ├── cypress.json ├── cypress ├── fixtures │ ├── blazor-starter │ │ ├── Api │ │ │ ├── Api.csproj │ │ │ ├── WeatherForecastFunction.cs │ │ │ └── host.json │ │ ├── ApiIsolated │ │ │ ├── ApiIsolated.csproj │ │ │ ├── Program.cs │ │ │ ├── WeatherForecastFunction.cs │ │ │ └── host.json │ │ ├── BlazorStaticWebApps.sln │ │ ├── Client │ │ │ ├── App.razor │ │ │ ├── Client.csproj │ │ │ ├── Pages │ │ │ │ ├── Counter.razor │ │ │ │ ├── FetchData.razor │ │ │ │ └── Index.razor │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Shared │ │ │ │ ├── MainLayout.razor │ │ │ │ ├── MainLayout.razor.css │ │ │ │ ├── NavMenu.razor │ │ │ │ ├── NavMenu.razor.css │ │ │ │ └── SurveyPrompt.razor │ │ │ ├── _Imports.razor │ │ │ ├── staticwebapp.config.json │ │ │ └── wwwroot │ │ │ │ ├── appsettings.Development.json │ │ │ │ ├── css │ │ │ │ ├── app.css │ │ │ │ ├── bootstrap │ │ │ │ │ ├── bootstrap.min.css │ │ │ │ │ └── bootstrap.min.css.map │ │ │ │ └── open-iconic │ │ │ │ │ ├── FONT-LICENSE │ │ │ │ │ ├── ICON-LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ └── font │ │ │ │ │ ├── css │ │ │ │ │ └── open-iconic-bootstrap.min.css │ │ │ │ │ └── fonts │ │ │ │ │ ├── open-iconic.eot │ │ │ │ │ ├── open-iconic.otf │ │ │ │ │ ├── open-iconic.svg │ │ │ │ │ ├── open-iconic.ttf │ │ │ │ │ └── open-iconic.woff │ │ │ │ ├── favicon.ico │ │ │ │ ├── icon-192.png │ │ │ │ └── index.html │ │ ├── Shared │ │ │ ├── Shared.csproj │ │ │ └── WeatherForecast.cs │ │ ├── custom-401.html │ │ ├── custom-403.html │ │ ├── custom-404.html │ │ └── swa-cli.config.json │ └── static │ │ ├── .github │ │ └── workflows │ │ │ └── azure-static-web-apps-NON-CONFORM.yml │ │ ├── .gitignore │ │ ├── api │ │ ├── echo │ │ │ ├── function.json │ │ │ └── index.js │ │ ├── headers │ │ │ ├── function.json │ │ │ └── index.js │ │ ├── host.json │ │ ├── info │ │ │ ├── function.json │ │ │ └── index.js │ │ ├── package-lock.json │ │ ├── package.json │ │ └── status │ │ │ ├── function.json │ │ │ └── index.js │ │ ├── app │ │ ├── another folder │ │ │ └── index.html │ │ ├── custom-401.html │ │ ├── custom-403.html │ │ ├── custom-404.html │ │ ├── folder │ │ │ └── index.html │ │ ├── foo.bar │ │ ├── foo.html │ │ ├── index.html │ │ ├── index2.html │ │ ├── staticwebapp.config.json │ │ ├── test.swaconfig │ │ └── with space.html │ │ └── swa-cli.config.json ├── integration │ ├── authentication.js │ ├── authorization.js │ ├── error-pages.js │ ├── functions.js │ ├── mime-type.js │ └── route-rules.js ├── plugins │ └── index.js └── support │ ├── commands.js │ └── index.js ├── docs ├── DEVELOPER.md ├── swa-cli-architecture.png ├── swa-cli-logo.svg ├── swa-cli.config.json └── www │ ├── .gitignore │ ├── README.md │ ├── babel.config.js │ ├── docs │ ├── cli │ │ ├── _category_.json │ │ ├── docker.md │ │ ├── env-vars.md │ │ ├── local-auth.md │ │ ├── swa-build.md │ │ ├── swa-config.md │ │ ├── swa-deploy.md │ │ ├── swa-init.md │ │ ├── swa-login.md │ │ ├── swa-start.md │ │ └── swa.md │ ├── contribute │ │ ├── 1-intro.md │ │ ├── 2-developer.md │ │ ├── 3-contributors.md │ │ ├── 99-troubleshooting.md │ │ └── _category_.json │ ├── intro.md │ └── use │ │ ├── 1-install.md │ │ ├── 2-emulator.md │ │ ├── 3-api-server.md │ │ ├── 4-deploy.md │ │ ├── 5-config.md │ │ └── _category_.json │ ├── docusaurus.config.js │ ├── package-lock.json │ ├── package.json │ ├── sidebars.js │ ├── src │ ├── components │ │ └── HomepageFeatures │ │ │ ├── index.js │ │ │ └── styles.module.css │ ├── css │ │ └── custom.css │ └── pages │ │ ├── index.js │ │ └── index.module.css │ └── static │ ├── .nojekyll │ └── img │ ├── favicon.ico │ ├── install-cli.svg │ ├── landing-configure-icon.svg │ ├── landing-configure.svg │ ├── landing-deploy-icon.svg │ ├── landing-deploy.svg │ ├── landing-init-icon.svg │ ├── landing-init.svg │ ├── landing-install-icon.svg │ ├── landing-install.svg │ ├── landing-login-icon.svg │ ├── landing-login.svg │ ├── landing-start-icon.svg │ ├── landing-start.svg │ ├── read-docs.svg │ ├── swa-404.png │ ├── swa-arch.png │ ├── swa-cli-arch.png │ ├── swa-cli-local-auth.png │ ├── swa-cli-logos │ ├── swa-cli-logo-black.svg │ ├── swa-cli-logo-grad.svg │ ├── swa-cli-logo-outline-3dbdcf.svg │ ├── swa-cli-logo-outline-black.svg │ ├── swa-cli-logo-outline-cc4fc2.svg │ ├── swa-cli-logo-outline-e1325a.svg │ ├── swa-cli-logo-outline-eb5281.svg │ ├── swa-cli-logo-outline-ef87aa.svg │ ├── swa-cli-logo-outline-grad.svg │ ├── swa-cli-logo-outline.svg │ ├── swa-cli-logo-white.svg │ └── swa-cli-logo.svg │ └── whats-new.svg ├── e2e ├── .gitignore ├── __snapshots__ │ └── detect.spec.js.snap ├── detect.js ├── detect.spec.js ├── fixtures │ ├── astro-node │ │ ├── astro preact │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── Counter.css │ │ │ │ │ └── Counter.tsx │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ └── node │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ └── extensions.json │ │ │ ├── get-hello │ │ │ ├── function.json │ │ │ └── index.js │ │ │ ├── host.json │ │ │ └── package.json │ └── static-node-ts │ │ ├── .nojekyll │ │ ├── README.md │ │ ├── index.html │ │ └── node-ts │ │ ├── .funcignore │ │ ├── .gitignore │ │ ├── .vscode │ │ └── extensions.json │ │ ├── get-hello │ │ ├── function.json │ │ └── index.ts │ │ ├── host.json │ │ ├── package.json │ │ └── tsconfig.json ├── samples │ ├── .gitignore │ ├── api │ │ ├── dotnet-csx │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── dotnet-csx.csproj │ │ │ ├── hello │ │ │ │ ├── function.json │ │ │ │ ├── readme.md │ │ │ │ └── run.csx │ │ │ └── host.json │ │ ├── dotnet-isolated │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── Program.cs │ │ │ ├── dotnet-isolated.csproj │ │ │ ├── hello.cs │ │ │ └── host.json │ │ ├── dotnet │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── dotnet.csproj │ │ │ ├── hello.cs │ │ │ └── host.json │ │ ├── node-ts │ │ │ ├── .funcignore │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── hello │ │ │ │ ├── function.json │ │ │ │ └── index.ts │ │ │ ├── host.json │ │ │ ├── package.json │ │ │ └── tsconfig.json │ │ ├── node │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── hello │ │ │ │ ├── function.json │ │ │ │ └── index.js │ │ │ ├── host.json │ │ │ └── package.json │ │ └── python │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ └── extensions.json │ │ │ ├── getting_started.md │ │ │ ├── hello │ │ │ ├── __init__.py │ │ │ └── function.json │ │ │ ├── host.json │ │ │ └── requirements.txt │ ├── app │ │ ├── angular-scully │ │ │ ├── .browserslistrc │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── extensions.json │ │ │ │ ├── launch.json │ │ │ │ └── tasks.json │ │ │ ├── README.md │ │ │ ├── angular.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── app │ │ │ │ │ ├── app.component.ts │ │ │ │ │ └── app.module.ts │ │ │ │ ├── assets │ │ │ │ │ └── .gitkeep │ │ │ │ ├── environments │ │ │ │ │ ├── environment.prod.ts │ │ │ │ │ └── environment.ts │ │ │ │ ├── favicon.ico │ │ │ │ ├── index.html │ │ │ │ ├── main.ts │ │ │ │ ├── polyfills.ts │ │ │ │ └── styles.css │ │ │ ├── tsconfig.app.json │ │ │ └── tsconfig.json │ │ ├── angular │ │ │ ├── .browserslistrc │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ ├── extensions.json │ │ │ │ ├── launch.json │ │ │ │ └── tasks.json │ │ │ ├── README.md │ │ │ ├── angular.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── app │ │ │ │ │ ├── app.component.ts │ │ │ │ │ └── app.module.ts │ │ │ │ ├── assets │ │ │ │ │ └── .gitkeep │ │ │ │ ├── environments │ │ │ │ │ ├── environment.prod.ts │ │ │ │ │ └── environment.ts │ │ │ │ ├── favicon.ico │ │ │ │ ├── index.html │ │ │ │ ├── main.ts │ │ │ │ ├── polyfills.ts │ │ │ │ └── styles.css │ │ │ ├── tsconfig.app.json │ │ │ └── tsconfig.json │ │ ├── astro-alpine │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── Counter.astro │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-lit │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── assets │ │ │ │ │ └── logo.svg │ │ │ │ ├── favicon.ico │ │ │ │ └── robots.txt │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── Counter.js │ │ │ │ │ ├── Lorem.astro │ │ │ │ │ └── Test.js │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-multiple │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── A.astro │ │ │ │ │ ├── B.astro │ │ │ │ │ ├── LitCounter.js │ │ │ │ │ ├── PreactCounter.tsx │ │ │ │ │ ├── PreactSFC.tsx │ │ │ │ │ ├── ReactCounter.jsx │ │ │ │ │ ├── SolidCounter.tsx │ │ │ │ │ ├── SvelteCounter.svelte │ │ │ │ │ ├── VueCounter.vue │ │ │ │ │ └── index.ts │ │ │ │ ├── pages │ │ │ │ │ └── index.astro │ │ │ │ └── styles │ │ │ │ │ └── global.css │ │ │ └── tsconfig.json │ │ ├── astro-preact │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── Counter.css │ │ │ │ │ └── Counter.tsx │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-react │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── Counter.css │ │ │ │ │ └── Counter.jsx │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-solid │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── Counter.css │ │ │ │ │ └── Counter.jsx │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-svelte │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── Counter.svelte │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro-vue │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── Counter.vue │ │ │ │ └── pages │ │ │ │ │ └── index.astro │ │ │ └── tsconfig.json │ │ ├── astro │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── .stackblitzrc │ │ │ ├── .vscode │ │ │ │ ├── extensions.json │ │ │ │ └── launch.json │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── favicon.ico │ │ │ │ └── logo.svg │ │ │ ├── sandbox.config.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── Logo.astro │ │ │ │ ├── content │ │ │ │ │ └── Tour.md │ │ │ │ ├── pages │ │ │ │ │ └── index.astro │ │ │ │ └── styles │ │ │ │ │ ├── global.css │ │ │ │ │ └── home.css │ │ │ └── tsconfig.json │ │ ├── aurelia │ │ │ ├── .editorconfig │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── README.md │ │ │ ├── aurelia_project │ │ │ │ ├── aurelia.json │ │ │ │ ├── generators │ │ │ │ │ ├── attribute.js │ │ │ │ │ ├── attribute.json │ │ │ │ │ ├── binding-behavior.js │ │ │ │ │ ├── binding-behavior.json │ │ │ │ │ ├── component.js │ │ │ │ │ ├── component.json │ │ │ │ │ ├── element.js │ │ │ │ │ ├── element.json │ │ │ │ │ ├── generator.js │ │ │ │ │ ├── generator.json │ │ │ │ │ ├── task.js │ │ │ │ │ ├── task.json │ │ │ │ │ ├── value-converter.js │ │ │ │ │ └── value-converter.json │ │ │ │ └── tasks │ │ │ │ │ ├── build.js │ │ │ │ │ ├── build.json │ │ │ │ │ ├── run.js │ │ │ │ │ └── run.json │ │ │ ├── babel.config.json │ │ │ ├── config │ │ │ │ ├── environment.json │ │ │ │ └── environment.production.json │ │ │ ├── index.ejs │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── app.html │ │ │ │ ├── app.js │ │ │ │ ├── main.js │ │ │ │ └── resources │ │ │ │ │ └── index.js │ │ │ ├── static │ │ │ │ └── favicon.ico │ │ │ └── webpack.config.js │ │ ├── blazor-wasm │ │ │ ├── App.razor │ │ │ ├── Pages │ │ │ │ ├── Counter.razor │ │ │ │ ├── FetchData.razor │ │ │ │ └── Index.razor │ │ │ ├── Program.cs │ │ │ ├── Properties │ │ │ │ └── launchSettings.json │ │ │ ├── Shared │ │ │ │ ├── MainLayout.razor │ │ │ │ ├── MainLayout.razor.css │ │ │ │ ├── NavMenu.razor │ │ │ │ ├── NavMenu.razor.css │ │ │ │ └── SurveyPrompt.razor │ │ │ ├── _Imports.razor │ │ │ ├── blazor-wasm.csproj │ │ │ └── wwwroot │ │ │ │ ├── css │ │ │ │ ├── app.css │ │ │ │ ├── bootstrap │ │ │ │ │ ├── bootstrap.min.css │ │ │ │ │ └── bootstrap.min.css.map │ │ │ │ └── open-iconic │ │ │ │ │ ├── FONT-LICENSE │ │ │ │ │ ├── ICON-LICENSE │ │ │ │ │ ├── README.md │ │ │ │ │ └── font │ │ │ │ │ ├── css │ │ │ │ │ └── open-iconic-bootstrap.min.css │ │ │ │ │ └── fonts │ │ │ │ │ ├── open-iconic.eot │ │ │ │ │ ├── open-iconic.otf │ │ │ │ │ ├── open-iconic.svg │ │ │ │ │ ├── open-iconic.ttf │ │ │ │ │ └── open-iconic.woff │ │ │ │ ├── favicon.ico │ │ │ │ ├── icon-192.png │ │ │ │ ├── index.html │ │ │ │ └── sample-data │ │ │ │ └── weather.json │ │ ├── brunch │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── app │ │ │ │ ├── assets │ │ │ │ │ └── index.html │ │ │ │ ├── initialize.js │ │ │ │ └── styles.css │ │ │ ├── brunch-config.js │ │ │ └── package.json │ │ ├── capacitor │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── capacitor.config.json │ │ │ ├── package.json │ │ │ └── www │ │ │ │ ├── css │ │ │ │ └── style.css │ │ │ │ ├── index.html │ │ │ │ ├── js │ │ │ │ └── capacitor-welcome.js │ │ │ │ └── manifest.json │ │ ├── docsify │ │ │ ├── .nojekyll │ │ │ ├── README.md │ │ │ └── index.html │ │ ├── docusaurus │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── babel.config.js │ │ │ ├── blog │ │ │ │ ├── 2019-05-28-first-blog-post.md │ │ │ │ ├── 2019-05-29-long-blog-post.md │ │ │ │ ├── 2021-08-01-mdx-blog-post.mdx │ │ │ │ ├── 2021-08-26-welcome │ │ │ │ │ ├── docusaurus-plushie-banner.jpeg │ │ │ │ │ └── index.md │ │ │ │ └── authors.yml │ │ │ ├── docs │ │ │ │ ├── intro.md │ │ │ │ ├── tutorial-basics │ │ │ │ │ ├── _category_.json │ │ │ │ │ ├── congratulations.md │ │ │ │ │ ├── create-a-blog-post.md │ │ │ │ │ ├── create-a-document.md │ │ │ │ │ ├── create-a-page.md │ │ │ │ │ ├── deploy-your-site.md │ │ │ │ │ └── markdown-features.mdx │ │ │ │ └── tutorial-extras │ │ │ │ │ ├── _category_.json │ │ │ │ │ ├── img │ │ │ │ │ ├── docsVersionDropdown.png │ │ │ │ │ └── localeDropdown.png │ │ │ │ │ ├── manage-docs-versions.md │ │ │ │ │ └── translate-your-site.md │ │ │ ├── docusaurus.config.js │ │ │ ├── package.json │ │ │ ├── sidebars.js │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── HomepageFeatures │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── styles.module.css │ │ │ │ ├── css │ │ │ │ │ └── custom.css │ │ │ │ └── pages │ │ │ │ │ ├── index.js │ │ │ │ │ ├── index.module.css │ │ │ │ │ └── markdown-page.md │ │ │ └── static │ │ │ │ ├── .nojekyll │ │ │ │ └── img │ │ │ │ ├── docusaurus.png │ │ │ │ ├── favicon.ico │ │ │ │ ├── logo.svg │ │ │ │ ├── undraw_docusaurus_mountain.svg │ │ │ │ ├── undraw_docusaurus_react.svg │ │ │ │ └── undraw_docusaurus_tree.svg │ │ ├── eleventy │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ └── package.json │ │ ├── elm │ │ │ ├── elm.json │ │ │ └── src │ │ │ │ └── Main.elm │ │ ├── ember │ │ │ ├── .editorconfig │ │ │ ├── .ember-cli │ │ │ ├── .eslintignore │ │ │ ├── .eslintrc.js │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ └── ci.yml │ │ │ ├── .gitignore │ │ │ ├── .prettierignore │ │ │ ├── .prettierrc.js │ │ │ ├── .template-lintrc.js │ │ │ ├── .watchmanconfig │ │ │ ├── README.md │ │ │ ├── app │ │ │ │ ├── app.js │ │ │ │ ├── components │ │ │ │ │ └── .gitkeep │ │ │ │ ├── controllers │ │ │ │ │ └── .gitkeep │ │ │ │ ├── helpers │ │ │ │ │ └── .gitkeep │ │ │ │ ├── index.html │ │ │ │ ├── models │ │ │ │ │ └── .gitkeep │ │ │ │ ├── router.js │ │ │ │ ├── routes │ │ │ │ │ └── .gitkeep │ │ │ │ ├── styles │ │ │ │ │ └── app.css │ │ │ │ └── templates │ │ │ │ │ └── application.hbs │ │ │ ├── config │ │ │ │ ├── ember-cli-update.json │ │ │ │ ├── environment.js │ │ │ │ ├── optional-features.json │ │ │ │ └── targets.js │ │ │ ├── ember-cli-build.js │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── robots.txt │ │ │ ├── testem.js │ │ │ ├── tests │ │ │ │ ├── helpers │ │ │ │ │ └── index.js │ │ │ │ ├── index.html │ │ │ │ ├── integration │ │ │ │ │ └── .gitkeep │ │ │ │ ├── test-helper.js │ │ │ │ └── unit │ │ │ │ │ └── .gitkeep │ │ │ └── vendor │ │ │ │ └── .gitkeep │ │ ├── flutter │ │ │ ├── .gitignore │ │ │ ├── .metadata │ │ │ ├── README.md │ │ │ ├── analysis_options.yaml │ │ │ ├── android │ │ │ │ ├── .gitignore │ │ │ │ ├── app │ │ │ │ │ ├── build.gradle │ │ │ │ │ └── src │ │ │ │ │ │ ├── main │ │ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ │ │ ├── kotlin │ │ │ │ │ │ │ └── com │ │ │ │ │ │ │ │ └── example │ │ │ │ │ │ │ │ └── flutterapp │ │ │ │ │ │ │ │ └── MainActivity.kt │ │ │ │ │ │ └── res │ │ │ │ │ │ │ ├── drawable-v21 │ │ │ │ │ │ │ └── launch_background.xml │ │ │ │ │ │ │ ├── drawable │ │ │ │ │ │ │ └── launch_background.xml │ │ │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ │ │ ├── values-night │ │ │ │ │ │ │ └── styles.xml │ │ │ │ │ │ │ └── values │ │ │ │ │ │ │ └── styles.xml │ │ │ │ │ │ └── profile │ │ │ │ │ │ └── AndroidManifest.xml │ │ │ │ ├── build.gradle │ │ │ │ ├── gradle.properties │ │ │ │ ├── gradle │ │ │ │ │ └── wrapper │ │ │ │ │ │ └── gradle-wrapper.properties │ │ │ │ └── settings.gradle │ │ │ ├── ios │ │ │ │ ├── .gitignore │ │ │ │ ├── Flutter │ │ │ │ │ ├── AppFrameworkInfo.plist │ │ │ │ │ ├── Debug.xcconfig │ │ │ │ │ └── Release.xcconfig │ │ │ │ ├── Runner.xcodeproj │ │ │ │ │ ├── project.pbxproj │ │ │ │ │ ├── project.xcworkspace │ │ │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ │ │ └── xcshareddata │ │ │ │ │ │ │ ├── IDEWorkspaceChecks.plist │ │ │ │ │ │ │ └── WorkspaceSettings.xcsettings │ │ │ │ │ └── xcshareddata │ │ │ │ │ │ └── xcschemes │ │ │ │ │ │ └── Runner.xcscheme │ │ │ │ ├── Runner.xcworkspace │ │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ │ └── xcshareddata │ │ │ │ │ │ ├── IDEWorkspaceChecks.plist │ │ │ │ │ │ └── WorkspaceSettings.xcsettings │ │ │ │ └── Runner │ │ │ │ │ ├── AppDelegate.swift │ │ │ │ │ ├── Assets.xcassets │ │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ ├── Icon-App-1024x1024@1x.png │ │ │ │ │ │ ├── Icon-App-20x20@1x.png │ │ │ │ │ │ ├── Icon-App-20x20@2x.png │ │ │ │ │ │ ├── Icon-App-20x20@3x.png │ │ │ │ │ │ ├── Icon-App-29x29@1x.png │ │ │ │ │ │ ├── Icon-App-29x29@2x.png │ │ │ │ │ │ ├── Icon-App-29x29@3x.png │ │ │ │ │ │ ├── Icon-App-40x40@1x.png │ │ │ │ │ │ ├── Icon-App-40x40@2x.png │ │ │ │ │ │ ├── Icon-App-40x40@3x.png │ │ │ │ │ │ ├── Icon-App-60x60@2x.png │ │ │ │ │ │ ├── Icon-App-60x60@3x.png │ │ │ │ │ │ ├── Icon-App-76x76@1x.png │ │ │ │ │ │ ├── Icon-App-76x76@2x.png │ │ │ │ │ │ └── Icon-App-83.5x83.5@2x.png │ │ │ │ │ └── LaunchImage.imageset │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ ├── LaunchImage.png │ │ │ │ │ │ ├── LaunchImage@2x.png │ │ │ │ │ │ ├── LaunchImage@3x.png │ │ │ │ │ │ └── README.md │ │ │ │ │ ├── Base.lproj │ │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ │ └── Main.storyboard │ │ │ │ │ ├── Info.plist │ │ │ │ │ └── Runner-Bridging-Header.h │ │ │ ├── lib │ │ │ │ └── main.dart │ │ │ ├── pubspec.lock │ │ │ ├── pubspec.yaml │ │ │ ├── test │ │ │ │ └── widget_test.dart │ │ │ ├── web │ │ │ │ ├── favicon.png │ │ │ │ ├── icons │ │ │ │ │ ├── Icon-192.png │ │ │ │ │ ├── Icon-512.png │ │ │ │ │ ├── Icon-maskable-192.png │ │ │ │ │ └── Icon-maskable-512.png │ │ │ │ ├── index.html │ │ │ │ └── manifest.json │ │ │ └── windows │ │ │ │ ├── .gitignore │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── flutter │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── generated_plugin_registrant.cc │ │ │ │ ├── generated_plugin_registrant.h │ │ │ │ └── generated_plugins.cmake │ │ │ │ └── runner │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── Runner.rc │ │ │ │ ├── flutter_window.cpp │ │ │ │ ├── flutter_window.h │ │ │ │ ├── main.cpp │ │ │ │ ├── resource.h │ │ │ │ ├── resources │ │ │ │ └── app_icon.ico │ │ │ │ ├── runner.exe.manifest │ │ │ │ ├── utils.cpp │ │ │ │ ├── utils.h │ │ │ │ ├── win32_window.cpp │ │ │ │ └── win32_window.h │ │ ├── gridsome │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── gridsome.config.js │ │ │ ├── gridsome.server.js │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ └── README.md │ │ │ │ ├── favicon.png │ │ │ │ ├── layouts │ │ │ │ │ ├── Default.vue │ │ │ │ │ └── README.md │ │ │ │ ├── main.js │ │ │ │ ├── pages │ │ │ │ │ ├── About.vue │ │ │ │ │ ├── Index.vue │ │ │ │ │ └── README.md │ │ │ │ └── templates │ │ │ │ │ └── README.md │ │ │ ├── static │ │ │ │ └── README.md │ │ │ └── yarn.lock │ │ ├── hexo │ │ │ ├── .github │ │ │ │ └── dependabot.yml │ │ │ ├── .gitignore │ │ │ ├── _config.landscape.yml │ │ │ ├── _config.yml │ │ │ ├── package.json │ │ │ ├── scaffolds │ │ │ │ ├── draft.md │ │ │ │ ├── page.md │ │ │ │ └── post.md │ │ │ ├── source │ │ │ │ └── _posts │ │ │ │ │ └── hello-world.md │ │ │ ├── themes │ │ │ │ └── .gitkeep │ │ │ └── yarn.lock │ │ ├── hugo │ │ │ ├── archetypes │ │ │ │ └── default.md │ │ │ ├── config.toml │ │ │ ├── content │ │ │ │ └── posts │ │ │ │ │ └── my-first-post.md │ │ │ └── themes │ │ │ │ └── ananke │ │ │ │ ├── .gitignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.md │ │ │ │ ├── README.md │ │ │ │ ├── archetypes │ │ │ │ └── default.md │ │ │ │ ├── assets │ │ │ │ └── ananke │ │ │ │ │ ├── css │ │ │ │ │ ├── _code.css │ │ │ │ │ ├── _hugo-internal-templates.css │ │ │ │ │ ├── _social-icons.css │ │ │ │ │ ├── _styles.css │ │ │ │ │ └── _tachyons.css │ │ │ │ │ └── socials │ │ │ │ │ ├── facebook.svg │ │ │ │ │ ├── github.svg │ │ │ │ │ ├── gitlab.svg │ │ │ │ │ ├── instagram.svg │ │ │ │ │ ├── keybase.svg │ │ │ │ │ ├── linkedin.svg │ │ │ │ │ ├── mastodon.svg │ │ │ │ │ ├── medium.svg │ │ │ │ │ ├── rss.svg │ │ │ │ │ ├── slack.svg │ │ │ │ │ ├── stackoverflow.svg │ │ │ │ │ ├── tiktok.svg │ │ │ │ │ ├── twitter.svg │ │ │ │ │ └── youtube.svg │ │ │ │ ├── config.yaml │ │ │ │ ├── exampleSite │ │ │ │ ├── config.toml │ │ │ │ ├── content │ │ │ │ │ ├── en │ │ │ │ │ │ ├── _index.md │ │ │ │ │ │ ├── about │ │ │ │ │ │ │ └── index.md │ │ │ │ │ │ ├── contact.md │ │ │ │ │ │ └── post │ │ │ │ │ │ │ ├── _index.md │ │ │ │ │ │ │ ├── chapter-1.md │ │ │ │ │ │ │ ├── chapter-2.md │ │ │ │ │ │ │ ├── chapter-3.md │ │ │ │ │ │ │ ├── chapter-4.md │ │ │ │ │ │ │ ├── chapter-5.md │ │ │ │ │ │ │ └── chapter-6.md │ │ │ │ │ └── fr │ │ │ │ │ │ ├── _index.md │ │ │ │ │ │ ├── contact.md │ │ │ │ │ │ └── post │ │ │ │ │ │ ├── _index.md │ │ │ │ │ │ └── chapter-1.md │ │ │ │ ├── go.mod │ │ │ │ ├── go.sum │ │ │ │ └── static │ │ │ │ │ └── images │ │ │ │ │ ├── Pope-Edouard-de-Beaumont-1844.jpg │ │ │ │ │ ├── Victor_Hugo-Hunchback.jpg │ │ │ │ │ ├── esmeralda.jpg │ │ │ │ │ └── notebook.jpg │ │ │ │ ├── go.mod │ │ │ │ ├── i18n │ │ │ │ ├── bg.toml │ │ │ │ ├── de.toml │ │ │ │ ├── en.toml │ │ │ │ ├── es.toml │ │ │ │ ├── fi.toml │ │ │ │ ├── fr.toml │ │ │ │ ├── hi.toml │ │ │ │ ├── hu.toml │ │ │ │ ├── it.toml │ │ │ │ ├── ja.toml │ │ │ │ ├── nl.toml │ │ │ │ ├── no.toml │ │ │ │ ├── pt.toml │ │ │ │ ├── ru.toml │ │ │ │ ├── sv.toml │ │ │ │ ├── tr.toml │ │ │ │ ├── uk.toml │ │ │ │ ├── zh-tw.toml │ │ │ │ └── zh.toml │ │ │ │ ├── images │ │ │ │ ├── screenshot.png │ │ │ │ └── tn.png │ │ │ │ ├── layouts │ │ │ │ ├── 404.html │ │ │ │ ├── _default │ │ │ │ │ ├── baseof.html │ │ │ │ │ ├── by.html │ │ │ │ │ ├── list.html │ │ │ │ │ ├── single.html │ │ │ │ │ ├── summary-with-image.html │ │ │ │ │ ├── summary.html │ │ │ │ │ ├── taxonomy.html │ │ │ │ │ └── terms.html │ │ │ │ ├── index.html │ │ │ │ ├── page │ │ │ │ │ └── single.html │ │ │ │ ├── partials │ │ │ │ │ ├── commento.html │ │ │ │ │ ├── func │ │ │ │ │ │ ├── GetFeaturedImage.html │ │ │ │ │ │ ├── GetLanguageDirection.html │ │ │ │ │ │ ├── socials │ │ │ │ │ │ │ ├── Get.html │ │ │ │ │ │ │ ├── GetBuiltInServicesDefaults.html │ │ │ │ │ │ │ ├── GetRegisteredServices.html │ │ │ │ │ │ │ ├── GetServiceData.html │ │ │ │ │ │ │ └── GetServiceIcon.html │ │ │ │ │ │ ├── style │ │ │ │ │ │ │ ├── GetMainCSS.html │ │ │ │ │ │ │ └── GetResource.html │ │ │ │ │ │ └── warn.html │ │ │ │ │ ├── head-additions.html │ │ │ │ │ ├── i18nlist.html │ │ │ │ │ ├── menu-contextual.html │ │ │ │ │ ├── new-window-icon.html │ │ │ │ │ ├── page-header.html │ │ │ │ │ ├── site-favicon.html │ │ │ │ │ ├── site-footer.html │ │ │ │ │ ├── site-header.html │ │ │ │ │ ├── site-navigation.html │ │ │ │ │ ├── site-scripts.html │ │ │ │ │ ├── site-style.html │ │ │ │ │ ├── social-follow.html │ │ │ │ │ ├── social-share.html │ │ │ │ │ ├── summary-with-image.html │ │ │ │ │ ├── summary.html │ │ │ │ │ ├── svg │ │ │ │ │ │ ├── new-window.svg │ │ │ │ │ │ └── tiktok.svg │ │ │ │ │ └── tags.html │ │ │ │ ├── post │ │ │ │ │ ├── list.html │ │ │ │ │ └── summary.html │ │ │ │ ├── robots.txt │ │ │ │ └── shortcodes │ │ │ │ │ └── form-contact.html │ │ │ │ ├── package.hugo.json │ │ │ │ ├── package.json │ │ │ │ ├── resources │ │ │ │ └── _gen │ │ │ │ │ └── assets │ │ │ │ │ └── css │ │ │ │ │ └── ananke │ │ │ │ │ └── css │ │ │ │ │ ├── main.css_5c99d70a7725bacd4c701e995b969fea.content │ │ │ │ │ ├── main.css_5c99d70a7725bacd4c701e995b969fea.json │ │ │ │ │ ├── main.css_bb5467e0521bbea6b1e66429f6ec028e.content │ │ │ │ │ └── main.css_bb5467e0521bbea6b1e66429f6ec028e.json │ │ │ │ ├── stackbit.yaml │ │ │ │ ├── static │ │ │ │ └── images │ │ │ │ │ └── gohugo-default-sample-hero-image.jpg │ │ │ │ └── theme.toml │ │ ├── ionic-angular │ │ │ ├── .browserslistrc │ │ │ ├── .editorconfig │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── angular.json │ │ │ ├── e2e │ │ │ │ ├── protractor.conf.js │ │ │ │ ├── src │ │ │ │ │ ├── app.e2e-spec.ts │ │ │ │ │ └── app.po.ts │ │ │ │ └── tsconfig.json │ │ │ ├── ionic.config.json │ │ │ ├── karma.conf.js │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── app │ │ │ │ │ ├── app-routing.module.ts │ │ │ │ │ ├── app.component.html │ │ │ │ │ ├── app.component.scss │ │ │ │ │ ├── app.component.spec.ts │ │ │ │ │ ├── app.component.ts │ │ │ │ │ ├── app.module.ts │ │ │ │ │ └── home │ │ │ │ │ │ ├── home-routing.module.ts │ │ │ │ │ │ ├── home.module.ts │ │ │ │ │ │ ├── home.page.html │ │ │ │ │ │ ├── home.page.scss │ │ │ │ │ │ ├── home.page.spec.ts │ │ │ │ │ │ └── home.page.ts │ │ │ │ ├── assets │ │ │ │ │ ├── icon │ │ │ │ │ │ └── favicon.png │ │ │ │ │ └── shapes.svg │ │ │ │ ├── environments │ │ │ │ │ ├── environment.prod.ts │ │ │ │ │ └── environment.ts │ │ │ │ ├── global.scss │ │ │ │ ├── index.html │ │ │ │ ├── main.ts │ │ │ │ ├── polyfills.ts │ │ │ │ ├── test.ts │ │ │ │ ├── theme │ │ │ │ │ └── variables.scss │ │ │ │ └── zone-flags.ts │ │ │ ├── tsconfig.app.json │ │ │ ├── tsconfig.json │ │ │ └── tsconfig.spec.json │ │ ├── ionic-react │ │ │ ├── .gitignore │ │ │ ├── ionic.config.json │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── assets │ │ │ │ │ ├── icon │ │ │ │ │ │ ├── favicon.png │ │ │ │ │ │ └── icon.png │ │ │ │ │ └── shapes.svg │ │ │ │ ├── index.html │ │ │ │ └── manifest.json │ │ │ ├── src │ │ │ │ ├── App.test.tsx │ │ │ │ ├── App.tsx │ │ │ │ ├── components │ │ │ │ │ ├── ExploreContainer.css │ │ │ │ │ └── ExploreContainer.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── pages │ │ │ │ │ ├── Home.css │ │ │ │ │ └── Home.tsx │ │ │ │ ├── react-app-env.d.ts │ │ │ │ ├── reportWebVitals.ts │ │ │ │ ├── service-worker.ts │ │ │ │ ├── serviceWorkerRegistration.ts │ │ │ │ ├── setupTests.ts │ │ │ │ └── theme │ │ │ │ │ └── variables.css │ │ │ └── tsconfig.json │ │ ├── ionic-vue │ │ │ ├── .browserslistrc │ │ │ ├── .eslintrc.js │ │ │ ├── .gitignore │ │ │ ├── babel.config.js │ │ │ ├── cypress.json │ │ │ ├── ionic.config.json │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── assets │ │ │ │ │ ├── icon │ │ │ │ │ │ ├── favicon.png │ │ │ │ │ │ └── icon.png │ │ │ │ │ └── shapes.svg │ │ │ │ └── index.html │ │ │ ├── src │ │ │ │ ├── App.vue │ │ │ │ ├── main.ts │ │ │ │ ├── router │ │ │ │ │ └── index.ts │ │ │ │ ├── shims-vue.d.ts │ │ │ │ ├── theme │ │ │ │ │ └── variables.css │ │ │ │ └── views │ │ │ │ │ └── HomePage.vue │ │ │ ├── tests │ │ │ │ ├── e2e │ │ │ │ │ ├── .eslintrc.js │ │ │ │ │ ├── plugins │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── specs │ │ │ │ │ │ └── test.js │ │ │ │ │ └── support │ │ │ │ │ │ ├── commands.js │ │ │ │ │ │ └── index.js │ │ │ │ └── unit │ │ │ │ │ └── example.spec.ts │ │ │ └── tsconfig.json │ │ ├── jekyll │ │ │ ├── .gitignore │ │ │ ├── 404.html │ │ │ ├── Gemfile │ │ │ ├── Gemfile.lock │ │ │ ├── _config.yml │ │ │ ├── _posts │ │ │ │ └── 2022-05-06-welcome-to-jekyll.markdown │ │ │ ├── about.markdown │ │ │ └── index.markdown │ │ ├── lektor │ │ │ ├── assets │ │ │ │ └── static │ │ │ │ │ └── style.css │ │ │ ├── content │ │ │ │ ├── about │ │ │ │ │ └── contents.lr │ │ │ │ ├── blog │ │ │ │ │ ├── contents.lr │ │ │ │ │ └── first-post │ │ │ │ │ │ └── contents.lr │ │ │ │ ├── contents.lr │ │ │ │ └── projects │ │ │ │ │ └── contents.lr │ │ │ ├── lektor.lektorproject │ │ │ ├── models │ │ │ │ ├── blog-post.ini │ │ │ │ ├── blog.ini │ │ │ │ └── page.ini │ │ │ └── templates │ │ │ │ ├── blog-post.html │ │ │ │ ├── blog.html │ │ │ │ ├── layout.html │ │ │ │ ├── macros │ │ │ │ ├── blog.html │ │ │ │ └── pagination.html │ │ │ │ └── page.html │ │ ├── lit │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── assets │ │ │ │ └── open-wc-logo.svg │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── LitApp.ts │ │ │ │ └── lit-app.ts │ │ │ ├── tsconfig.json │ │ │ └── web-dev-server.config.mjs │ │ ├── mdbook │ │ │ ├── .gitignore │ │ │ ├── book.toml │ │ │ ├── src │ │ │ │ ├── SUMMARY.md │ │ │ │ └── chapter_1.md │ │ │ └── theme │ │ │ │ ├── book.js │ │ │ │ ├── css │ │ │ │ ├── chrome.css │ │ │ │ ├── general.css │ │ │ │ ├── print.css │ │ │ │ └── variables.css │ │ │ │ ├── favicon.png │ │ │ │ ├── favicon.svg │ │ │ │ ├── highlight.css │ │ │ │ ├── highlight.js │ │ │ │ └── index.hbs │ │ ├── metalsmith │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── layouts │ │ │ │ ├── layout.hbs │ │ │ │ └── post.hbs │ │ │ ├── package.json │ │ │ └── src │ │ │ │ ├── about.md │ │ │ │ ├── css │ │ │ │ └── style.css │ │ │ │ ├── index.md │ │ │ │ └── posts │ │ │ │ ├── first-post.md │ │ │ │ ├── fourth-post.md │ │ │ │ ├── second-post.md │ │ │ │ └── third-post.md │ │ ├── middleman │ │ │ ├── .gitignore │ │ │ ├── Gemfile │ │ │ ├── Gemfile.lock │ │ │ ├── config.rb │ │ │ └── source │ │ │ │ ├── images │ │ │ │ └── .keep │ │ │ │ ├── index.html.erb │ │ │ │ ├── javascripts │ │ │ │ └── site.js │ │ │ │ ├── layouts │ │ │ │ └── layout.erb │ │ │ │ └── stylesheets │ │ │ │ └── site.css.scss │ │ ├── mkdocs │ │ │ ├── docs │ │ │ │ └── index.md │ │ │ └── mkdocs.yml │ │ ├── nuxtjs │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── components │ │ │ │ ├── NuxtLogo.vue │ │ │ │ └── Tutorial.vue │ │ │ ├── nuxt.config.js │ │ │ ├── package.json │ │ │ ├── pages │ │ │ │ └── index.vue │ │ │ ├── static │ │ │ │ └── favicon.ico │ │ │ ├── store │ │ │ │ └── README.md │ │ │ └── tsconfig.json │ │ ├── pelican │ │ │ ├── Makefile │ │ │ ├── content │ │ │ │ └── my-post.md │ │ │ ├── pelicanconf.py │ │ │ ├── publishconf.py │ │ │ └── tasks.py │ │ ├── polymer │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── demo │ │ │ │ ├── demo-element.js │ │ │ │ └── index.html │ │ │ ├── icon-toggle-finished │ │ │ │ ├── demo │ │ │ │ │ ├── demo-element.js │ │ │ │ │ └── index.html │ │ │ │ ├── icon-toggle.js │ │ │ │ ├── package.json │ │ │ │ └── polymer.json │ │ │ ├── icon-toggle.js │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ └── polymer.json │ │ ├── preact │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── assets │ │ │ │ │ ├── favicon.ico │ │ │ │ │ └── icons │ │ │ │ │ │ ├── android-chrome-192x192.png │ │ │ │ │ │ ├── android-chrome-512x512.png │ │ │ │ │ │ ├── apple-touch-icon.png │ │ │ │ │ │ ├── favicon-16x16.png │ │ │ │ │ │ ├── favicon-32x32.png │ │ │ │ │ │ └── mstile-150x150.png │ │ │ │ ├── components │ │ │ │ │ ├── app.js │ │ │ │ │ └── header │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── style.css │ │ │ │ ├── index.js │ │ │ │ ├── manifest.json │ │ │ │ ├── routes │ │ │ │ │ ├── home │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── style.css │ │ │ │ │ └── profile │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── style.css │ │ │ │ ├── style │ │ │ │ │ └── index.css │ │ │ │ ├── sw.js │ │ │ │ └── template.html │ │ │ └── tests │ │ │ │ ├── __mocks__ │ │ │ │ ├── browserMocks.js │ │ │ │ ├── fileMocks.js │ │ │ │ └── setupTests.js │ │ │ │ └── header.test.js │ │ ├── react-static │ │ │ ├── .babelrc │ │ │ ├── .eslintrc │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── robots.txt │ │ │ ├── src │ │ │ │ ├── App.js │ │ │ │ ├── app.css │ │ │ │ ├── components │ │ │ │ │ └── Router.js │ │ │ │ ├── containers │ │ │ │ │ ├── Dynamic.js │ │ │ │ │ └── Post.js │ │ │ │ ├── index.js │ │ │ │ └── pages │ │ │ │ │ ├── 404.js │ │ │ │ │ ├── about.js │ │ │ │ │ ├── blog.js │ │ │ │ │ └── index.js │ │ │ ├── static.config.js │ │ │ └── yarn.lock │ │ ├── react │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── favicon.ico │ │ │ │ ├── index.html │ │ │ │ ├── logo192.png │ │ │ │ ├── logo512.png │ │ │ │ ├── manifest.json │ │ │ │ └── robots.txt │ │ │ └── src │ │ │ │ ├── App.css │ │ │ │ ├── App.js │ │ │ │ ├── App.test.js │ │ │ │ ├── index.css │ │ │ │ ├── index.js │ │ │ │ ├── logo.svg │ │ │ │ ├── reportWebVitals.js │ │ │ │ └── setupTests.js │ │ ├── riot │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── package.json │ │ │ ├── readme.md │ │ │ ├── src │ │ │ │ ├── components │ │ │ │ │ ├── global │ │ │ │ │ │ ├── my-component │ │ │ │ │ │ │ ├── my-component.riot │ │ │ │ │ │ │ └── my-component.spec.js │ │ │ │ │ │ └── sidebar │ │ │ │ │ │ │ ├── sidebar.riot │ │ │ │ │ │ │ └── sidebar.spec.js │ │ │ │ │ └── includes │ │ │ │ │ │ └── user │ │ │ │ │ │ ├── user.riot │ │ │ │ │ │ └── user.spec.js │ │ │ │ ├── index.html │ │ │ │ ├── index.js │ │ │ │ ├── register-global-components.js │ │ │ │ └── style.css │ │ │ └── webpack.config.js │ │ ├── sapper │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── rollup.config.js │ │ │ ├── scripts │ │ │ │ └── setupTypeScript.js │ │ │ ├── src │ │ │ │ ├── ambient.d.ts │ │ │ │ ├── client.js │ │ │ │ ├── components │ │ │ │ │ └── Nav.svelte │ │ │ │ ├── routes │ │ │ │ │ ├── _error.svelte │ │ │ │ │ ├── _layout.svelte │ │ │ │ │ ├── about.svelte │ │ │ │ │ ├── blog │ │ │ │ │ │ ├── [slug].json.js │ │ │ │ │ │ ├── [slug].svelte │ │ │ │ │ │ ├── _posts.js │ │ │ │ │ │ ├── index.json.js │ │ │ │ │ │ └── index.svelte │ │ │ │ │ └── index.svelte │ │ │ │ ├── server.js │ │ │ │ ├── service-worker.js │ │ │ │ └── template.html │ │ │ └── static │ │ │ │ ├── favicon.png │ │ │ │ ├── global.css │ │ │ │ ├── logo-192.png │ │ │ │ ├── logo-512.png │ │ │ │ └── manifest.json │ │ ├── slate │ │ │ ├── .dockerignore │ │ │ ├── .editorconfig │ │ │ ├── .gitattributes │ │ │ ├── .github │ │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ │ ├── bug.md │ │ │ │ │ └── config.yml │ │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ │ ├── dependabot.yml │ │ │ │ └── workflows │ │ │ │ │ ├── build.yml │ │ │ │ │ ├── deploy.yml │ │ │ │ │ ├── dev_deploy.yml │ │ │ │ │ └── publish.yml │ │ │ ├── .gitignore │ │ │ ├── CHANGELOG.md │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ ├── Dockerfile │ │ │ ├── Gemfile │ │ │ ├── Gemfile.lock │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── Vagrantfile │ │ │ ├── config.rb │ │ │ ├── deploy.sh │ │ │ ├── font-selection.json │ │ │ ├── lib │ │ │ │ ├── monokai_sublime_slate.rb │ │ │ │ ├── multilang.rb │ │ │ │ ├── nesting_unique_head.rb │ │ │ │ ├── toc_data.rb │ │ │ │ └── unique_head.rb │ │ │ ├── slate.sh │ │ │ └── source │ │ │ │ ├── fonts │ │ │ │ ├── slate.eot │ │ │ │ ├── slate.svg │ │ │ │ ├── slate.ttf │ │ │ │ ├── slate.woff │ │ │ │ └── slate.woff2 │ │ │ │ ├── images │ │ │ │ ├── logo.png │ │ │ │ └── navbar.png │ │ │ │ ├── includes │ │ │ │ └── _errors.md │ │ │ │ ├── index.html.md │ │ │ │ ├── javascripts │ │ │ │ ├── all.js │ │ │ │ ├── all_nosearch.js │ │ │ │ ├── app │ │ │ │ │ ├── _copy.js │ │ │ │ │ ├── _lang.js │ │ │ │ │ ├── _search.js │ │ │ │ │ └── _toc.js │ │ │ │ └── lib │ │ │ │ │ ├── _energize.js │ │ │ │ │ ├── _imagesloaded.min.js │ │ │ │ │ ├── _jquery.highlight.js │ │ │ │ │ ├── _jquery.js │ │ │ │ │ └── _lunr.js │ │ │ │ ├── layouts │ │ │ │ └── layout.erb │ │ │ │ └── stylesheets │ │ │ │ ├── _icon-font.scss │ │ │ │ ├── _normalize.scss │ │ │ │ ├── _rtl.scss │ │ │ │ ├── _variables.scss │ │ │ │ ├── print.css.scss │ │ │ │ └── screen.css.scss │ │ ├── solid │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── pnpm-lock.yaml │ │ │ ├── src │ │ │ │ ├── App.module.css │ │ │ │ ├── App.tsx │ │ │ │ ├── assets │ │ │ │ │ └── favicon.ico │ │ │ │ ├── index.css │ │ │ │ ├── index.tsx │ │ │ │ └── logo.svg │ │ │ ├── tsconfig.json │ │ │ └── vite.config.ts │ │ ├── static │ │ │ └── index.html │ │ ├── stencil │ │ │ ├── .editorconfig │ │ │ ├── .gitignore │ │ │ ├── .prettierrc.json │ │ │ ├── LICENSE │ │ │ ├── package.json │ │ │ ├── readme.md │ │ │ ├── src │ │ │ │ ├── assets │ │ │ │ │ └── icon │ │ │ │ │ │ ├── favicon.ico │ │ │ │ │ │ └── icon.png │ │ │ │ ├── components.d.ts │ │ │ │ ├── components │ │ │ │ │ ├── app-home │ │ │ │ │ │ ├── app-home.css │ │ │ │ │ │ ├── app-home.e2e.ts │ │ │ │ │ │ └── app-home.tsx │ │ │ │ │ ├── app-profile │ │ │ │ │ │ ├── app-profile.css │ │ │ │ │ │ ├── app-profile.e2e.ts │ │ │ │ │ │ ├── app-profile.spec.ts │ │ │ │ │ │ └── app-profile.tsx │ │ │ │ │ └── app-root │ │ │ │ │ │ ├── app-root.css │ │ │ │ │ │ ├── app-root.e2e.ts │ │ │ │ │ │ └── app-root.tsx │ │ │ │ ├── global │ │ │ │ │ ├── app.css │ │ │ │ │ └── app.ts │ │ │ │ ├── index.html │ │ │ │ ├── index.ts │ │ │ │ └── manifest.json │ │ │ ├── stencil.config.ts │ │ │ └── tsconfig.json │ │ ├── svelte-kit │ │ │ ├── .gitignore │ │ │ ├── .npmrc │ │ │ ├── CHANGELOG.md │ │ │ ├── README.md │ │ │ ├── jsconfig.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── app.css │ │ │ │ ├── app.d.ts │ │ │ │ ├── app.html │ │ │ │ ├── hooks.js │ │ │ │ ├── lib │ │ │ │ │ ├── Counter.svelte │ │ │ │ │ ├── form.js │ │ │ │ │ └── header │ │ │ │ │ │ ├── Header.svelte │ │ │ │ │ │ └── svelte-logo.svg │ │ │ │ └── routes │ │ │ │ │ ├── __layout.svelte │ │ │ │ │ ├── about.svelte │ │ │ │ │ ├── index.svelte │ │ │ │ │ └── todos │ │ │ │ │ ├── _api.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── index.svelte │ │ │ ├── static │ │ │ │ ├── favicon.png │ │ │ │ ├── robots.txt │ │ │ │ ├── svelte-welcome.png │ │ │ │ └── svelte-welcome.webp │ │ │ └── svelte.config.js │ │ ├── svelte │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── favicon.png │ │ │ │ ├── global.css │ │ │ │ └── index.html │ │ │ ├── rollup.config.js │ │ │ ├── scripts │ │ │ │ └── setupTypeScript.js │ │ │ └── src │ │ │ │ ├── App.svelte │ │ │ │ └── main.js │ │ ├── vite-lit │ │ │ ├── .gitignore │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ ├── src │ │ │ │ ├── assets │ │ │ │ │ └── lit.svg │ │ │ │ ├── index.css │ │ │ │ └── my-element.js │ │ │ └── vite.config.js │ │ ├── vite-preact │ │ │ ├── .gitignore │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ ├── src │ │ │ │ ├── app.css │ │ │ │ ├── app.jsx │ │ │ │ ├── assets │ │ │ │ │ └── preact.svg │ │ │ │ ├── index.css │ │ │ │ └── main.jsx │ │ │ └── vite.config.js │ │ ├── vite-react │ │ │ ├── .gitignore │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ ├── src │ │ │ │ ├── App.css │ │ │ │ ├── App.tsx │ │ │ │ ├── assets │ │ │ │ │ └── react.svg │ │ │ │ ├── index.css │ │ │ │ ├── main.tsx │ │ │ │ └── vite-env.d.ts │ │ │ ├── tsconfig.json │ │ │ ├── tsconfig.node.json │ │ │ └── vite.config.ts │ │ ├── vite-svelte │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── jsconfig.json │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ ├── src │ │ │ │ ├── App.svelte │ │ │ │ ├── app.css │ │ │ │ ├── assets │ │ │ │ │ └── svelte.svg │ │ │ │ ├── lib │ │ │ │ │ └── Counter.svelte │ │ │ │ ├── main.js │ │ │ │ └── vite-env.d.ts │ │ │ └── vite.config.js │ │ ├── vite-vanilla │ │ │ ├── .gitignore │ │ │ ├── counter.js │ │ │ ├── index.html │ │ │ ├── javascript.svg │ │ │ ├── main.js │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ └── style.css │ │ ├── vite-vue │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── vite.svg │ │ │ ├── src │ │ │ │ ├── App.vue │ │ │ │ ├── assets │ │ │ │ │ └── vue.svg │ │ │ │ ├── components │ │ │ │ │ └── HelloWorld.vue │ │ │ │ ├── main.js │ │ │ │ └── style.css │ │ │ └── vite.config.js │ │ ├── vitepress │ │ │ ├── docs │ │ │ │ └── index.md │ │ │ └── package.json │ │ ├── vue │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ │ └── extensions.json │ │ │ ├── README.md │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ └── favicon.ico │ │ │ ├── src │ │ │ │ ├── App.vue │ │ │ │ ├── assets │ │ │ │ │ ├── base.css │ │ │ │ │ └── logo.svg │ │ │ │ ├── components │ │ │ │ │ ├── HelloWorld.vue │ │ │ │ │ ├── TheWelcome.vue │ │ │ │ │ ├── WelcomeItem.vue │ │ │ │ │ └── icons │ │ │ │ │ │ ├── IconCommunity.vue │ │ │ │ │ │ ├── IconDocumentation.vue │ │ │ │ │ │ ├── IconEcosystem.vue │ │ │ │ │ │ ├── IconSupport.vue │ │ │ │ │ │ └── IconTooling.vue │ │ │ │ └── main.js │ │ │ └── vite.config.js │ │ ├── vuepress │ │ │ └── docs │ │ │ │ ├── .npmignore │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ ├── .vuepress │ │ │ │ ├── components │ │ │ │ │ ├── Foo │ │ │ │ │ │ └── Bar.vue │ │ │ │ │ ├── OtherComponent.vue │ │ │ │ │ └── demo-component.vue │ │ │ │ ├── config.js │ │ │ │ ├── enhanceApp.js │ │ │ │ └── styles │ │ │ │ │ ├── index.styl │ │ │ │ │ └── palette.styl │ │ │ │ ├── config │ │ │ │ └── README.md │ │ │ │ ├── guide │ │ │ │ ├── README.md │ │ │ │ └── using-vue.md │ │ │ │ └── index.md │ │ ├── wintersmith │ │ │ ├── config.json │ │ │ ├── contents │ │ │ │ ├── about.md │ │ │ │ ├── archive.json │ │ │ │ ├── articles │ │ │ │ │ ├── another-test │ │ │ │ │ │ └── index.md │ │ │ │ │ ├── bamboo-cutter │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ └── taketori_monogatari.jpg │ │ │ │ │ ├── hello-world │ │ │ │ │ │ └── index.md │ │ │ │ │ ├── markdown-syntax │ │ │ │ │ │ └── index.md │ │ │ │ │ └── red-herring │ │ │ │ │ │ ├── banana.png │ │ │ │ │ │ └── index.md │ │ │ │ ├── authors │ │ │ │ │ ├── baker.json │ │ │ │ │ └── the-wintersmith.json │ │ │ │ ├── css │ │ │ │ │ └── main.css │ │ │ │ └── feed.json │ │ │ ├── package.json │ │ │ ├── plugins │ │ │ │ └── paginator.coffee │ │ │ ├── readme.md │ │ │ └── templates │ │ │ │ ├── archive.pug │ │ │ │ ├── article.pug │ │ │ │ ├── author.pug │ │ │ │ ├── feed.pug │ │ │ │ ├── index.pug │ │ │ │ └── layout.pug │ │ └── zola │ │ │ ├── config.toml │ │ │ └── content │ │ │ └── blog │ │ │ └── _index.md │ ├── db │ │ └── static-mssql │ │ │ ├── .gitignore │ │ │ ├── .vscode │ │ │ ├── extensions.json │ │ │ ├── launch.json │ │ │ ├── settings.json │ │ │ └── tasks.json │ │ │ ├── package.json │ │ │ ├── readme.md │ │ │ ├── src │ │ │ └── index.html │ │ │ └── swa-db-connections │ │ │ └── staticwebapp.database.config.json │ └── ssr │ │ ├── angular-universal │ │ ├── .browserslistrc │ │ ├── .gitignore │ │ ├── .vscode │ │ │ ├── extensions.json │ │ │ ├── launch.json │ │ │ └── tasks.json │ │ ├── README.md │ │ ├── angular.json │ │ ├── package.json │ │ ├── server.ts │ │ ├── src │ │ │ ├── app │ │ │ │ ├── app.component.ts │ │ │ │ ├── app.module.ts │ │ │ │ └── app.server.module.ts │ │ │ ├── assets │ │ │ │ └── .gitkeep │ │ │ ├── environments │ │ │ │ ├── environment.prod.ts │ │ │ │ └── environment.ts │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── main.server.ts │ │ │ ├── main.ts │ │ │ ├── polyfills.ts │ │ │ └── styles.css │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ └── tsconfig.server.json │ │ ├── blazor-server │ │ ├── App.razor │ │ ├── Data │ │ │ ├── WeatherForecast.cs │ │ │ └── WeatherForecastService.cs │ │ ├── Pages │ │ │ ├── Counter.razor │ │ │ ├── Error.cshtml │ │ │ ├── Error.cshtml.cs │ │ │ ├── FetchData.razor │ │ │ ├── Index.razor │ │ │ ├── _Host.cshtml │ │ │ └── _Layout.cshtml │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── launchSettings.json │ │ ├── Shared │ │ │ ├── MainLayout.razor │ │ │ ├── MainLayout.razor.css │ │ │ ├── NavMenu.razor │ │ │ ├── NavMenu.razor.css │ │ │ └── SurveyPrompt.razor │ │ ├── _Imports.razor │ │ ├── appsettings.Development.json │ │ ├── appsettings.json │ │ ├── blazor-server.csproj │ │ └── wwwroot │ │ │ ├── css │ │ │ ├── bootstrap │ │ │ │ ├── bootstrap.min.css │ │ │ │ └── bootstrap.min.css.map │ │ │ ├── open-iconic │ │ │ │ ├── FONT-LICENSE │ │ │ │ ├── ICON-LICENSE │ │ │ │ ├── README.md │ │ │ │ └── font │ │ │ │ │ ├── css │ │ │ │ │ └── open-iconic-bootstrap.min.css │ │ │ │ │ └── fonts │ │ │ │ │ ├── open-iconic.eot │ │ │ │ │ ├── open-iconic.otf │ │ │ │ │ ├── open-iconic.svg │ │ │ │ │ ├── open-iconic.ttf │ │ │ │ │ └── open-iconic.woff │ │ │ └── site.css │ │ │ └── favicon.ico │ │ ├── marko │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ └── src │ │ │ ├── components │ │ │ ├── app-layout.marko │ │ │ └── mouse-mask.marko │ │ │ └── pages │ │ │ └── index │ │ │ ├── index.marko │ │ │ └── logo.svg │ │ ├── meteor │ │ ├── .gitignore │ │ ├── .meteor │ │ │ ├── .finished-upgraders │ │ │ ├── .gitignore │ │ │ ├── .id │ │ │ ├── packages │ │ │ ├── platforms │ │ │ ├── release │ │ │ └── versions │ │ ├── client │ │ │ ├── main.css │ │ │ ├── main.html │ │ │ └── main.js │ │ ├── package.json │ │ ├── server │ │ │ └── main.js │ │ └── tests │ │ │ └── main.js │ │ ├── nextjs │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── api │ │ │ │ └── hello.js │ │ │ └── index.js │ │ ├── public │ │ │ ├── favicon.ico │ │ │ └── vercel.svg │ │ └── styles │ │ │ ├── Home.module.css │ │ │ └── globals.css │ │ └── remix │ │ ├── .dockerignore │ │ ├── .env.example │ │ ├── .eslintrc.js │ │ ├── .github │ │ ├── ISSUE_TEMPLATE │ │ │ ├── bug_report.yml │ │ │ └── config.yml │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ └── workflows │ │ │ └── deploy.yml │ │ ├── .gitignore │ │ ├── .prettierignore │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── app │ │ ├── db.server.ts │ │ ├── entry.client.tsx │ │ ├── entry.server.tsx │ │ ├── models │ │ │ ├── note.server.ts │ │ │ └── user.server.ts │ │ ├── root.tsx │ │ ├── routes │ │ │ ├── healthcheck.tsx │ │ │ ├── index.tsx │ │ │ ├── join.tsx │ │ │ ├── login.tsx │ │ │ ├── logout.tsx │ │ │ ├── notes.tsx │ │ │ └── notes │ │ │ │ ├── $noteId.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── new.tsx │ │ ├── session.server.ts │ │ ├── utils.test.ts │ │ └── utils.ts │ │ ├── cypress.json │ │ ├── cypress │ │ ├── .eslintrc.js │ │ ├── e2e │ │ │ └── smoke.ts │ │ ├── fixtures │ │ │ └── example.json │ │ ├── plugins │ │ │ └── index.ts │ │ ├── support │ │ │ ├── commands.ts │ │ │ ├── create-user.ts │ │ │ ├── delete-user.ts │ │ │ └── index.ts │ │ └── tsconfig.json │ │ ├── docker-compose.yml │ │ ├── fly.toml │ │ ├── mocks │ │ ├── README.md │ │ ├── index.js │ │ └── start.ts │ │ ├── package.json │ │ ├── prisma │ │ ├── migrations │ │ │ ├── 20220224172159_init │ │ │ │ └── migration.sql │ │ │ └── migration_lock.toml │ │ ├── schema.prisma │ │ └── seed.ts │ │ ├── public │ │ └── favicon.ico │ │ ├── remix.config.js │ │ ├── remix.env.d.ts │ │ ├── remix.init │ │ ├── index.js │ │ └── package.json │ │ ├── server.ts │ │ ├── tailwind.config.js │ │ ├── test │ │ └── setup-test-env.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts └── vitest.config.e2e.ts ├── package-lock.json ├── package.json ├── readme.md ├── schema ├── staticwebapp.config.json └── swa-cli.config.schema.json ├── scripts ├── copy-assets.js └── publish_docker.sh ├── src ├── cli │ ├── bin.js │ ├── commands │ │ ├── build │ │ │ ├── build.spec.ts │ │ │ ├── build.ts │ │ │ └── register.ts │ │ ├── db │ │ │ └── init │ │ │ │ ├── init.spec.ts │ │ │ │ ├── init.ts │ │ │ │ └── register.ts │ │ ├── deploy │ │ │ ├── deploy.spec.ts │ │ │ ├── deploy.ts │ │ │ └── register.ts │ │ ├── docs.ts │ │ ├── init │ │ │ ├── init.spec.ts │ │ │ ├── init.ts │ │ │ └── register.ts │ │ ├── login │ │ │ ├── login.ts │ │ │ └── register.ts │ │ └── start │ │ │ ├── register.ts │ │ │ └── start.ts │ ├── index.spec.ts │ └── index.ts ├── config.ts ├── core │ ├── account.ts │ ├── constants.ts │ ├── dataApiBuilder │ │ ├── dab.spec.ts │ │ ├── dab.ts │ │ └── index.ts │ ├── deploy-client.spec.ts │ ├── deploy-client.ts │ ├── download-binary-helper.ts │ ├── env.spec.ts │ ├── env.ts │ ├── frameworks │ │ ├── detect.spec.ts │ │ ├── detect.ts │ │ ├── frameworks.ts │ │ └── types.d.ts │ ├── func-core-tools.spec.ts │ ├── func-core-tools.ts │ ├── functions-versions.ts │ ├── git.spec.ts │ ├── git.ts │ ├── prompts.ts │ ├── ssl.ts │ ├── swa-cli-persistence-plugin │ │ ├── impl │ │ │ ├── azure-environment.ts │ │ │ ├── credentials-store.ts │ │ │ ├── crypto.ts │ │ │ ├── machine-identifier.ts │ │ │ └── secret-storage.ts │ │ ├── index.ts │ │ └── persistence-cache-plugin.ts │ └── utils │ │ ├── auth.ts │ │ ├── cli-config.spec.ts │ │ ├── cli-config.ts │ │ ├── cli.spec.ts │ │ ├── cli.ts │ │ ├── command.ts │ │ ├── cookie.spec.ts │ │ ├── cookie.ts │ │ ├── docker.ts │ │ ├── fetch-proxy.ts │ │ ├── file.spec.ts │ │ ├── file.ts │ │ ├── glob.spec.ts │ │ ├── glob.ts │ │ ├── json.spec.ts │ │ ├── json.ts │ │ ├── logger.ts │ │ ├── net.spec.ts │ │ ├── net.ts │ │ ├── options.spec.ts │ │ ├── options.ts │ │ ├── platform.spec.ts │ │ ├── platform.ts │ │ ├── strings.spec.ts │ │ ├── strings.ts │ │ ├── update-notifier.ts │ │ ├── user-config.spec.ts │ │ ├── user-config.ts │ │ ├── workflow-config.spec.ts │ │ └── workflow-config.ts ├── msha │ ├── auth │ │ ├── index.ts │ │ └── routes │ │ │ ├── auth-login-provider-callback.ts │ │ │ ├── auth-login-provider-custom.ts │ │ │ ├── auth-login-provider.ts │ │ │ ├── auth-logout-https.spec.ts │ │ │ ├── auth-logout.spec.ts │ │ │ ├── auth-logout.ts │ │ │ └── auth-me.ts │ ├── handlers │ │ ├── auth.handler.ts │ │ ├── dab.handler.spec.ts │ │ ├── dab.handler.ts │ │ ├── error-page.handler.ts │ │ └── function.handler.ts │ ├── middlewares │ │ ├── request.middleware.ts │ │ └── response.middleware.ts │ ├── routes-engine │ │ ├── route-processor.spec.ts │ │ ├── route-processor.ts │ │ └── rules │ │ │ ├── headers.spec.ts │ │ │ ├── headers.ts │ │ │ ├── mime-types.spec.ts │ │ │ ├── mime-types.ts │ │ │ ├── navigation-fallback.spec.ts │ │ │ ├── navigation-fallback.ts │ │ │ ├── response-overrides.spec.ts │ │ │ ├── response-overrides.ts │ │ │ ├── routes.spec.ts │ │ │ └── routes.ts │ └── server.ts ├── public │ ├── 401.html │ ├── 403.html │ ├── 404.html │ └── auth.html ├── swa.d.ts └── test.helpers.ts ├── swa-db-connections └── staticwebapp.database.schema.gql ├── tests └── _mocks │ ├── fetch.js │ └── fs.js ├── tsconfig.json ├── vitest.config.unit.ts └── vitest.workspace.ts /.editorconfig: -------------------------------------------------------------------------------- 1 | # Editor configuration, see http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | max_line_length = off 13 | trim_trailing_whitespace = false -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | # These owners will be the default owners for everything in the repo 2 | * @cjk7989 @jessieyyt @LongOddCode 3 | -------------------------------------------------------------------------------- /.github/codeql/codeql-config.yml: -------------------------------------------------------------------------------- 1 | name: "CodeQL config" 2 | 3 | paths-ignore: 4 | - e2e/samples 5 | - e2e/fixtures 6 | - cypress/fixtures 7 | -------------------------------------------------------------------------------- /.github/labeler.yml: -------------------------------------------------------------------------------- 1 | "scope: core": 2 | - src/core/* 3 | 4 | "scope: cli": 5 | - src/cli/* 6 | 7 | "scope: auth": 8 | - src/msha/auth/* 9 | 10 | "scope: rules engine": 11 | - src/msha/routes-engine/* 12 | 13 | "scope: msha": 14 | - src/msha/* 15 | 16 | "status: need internal approval": 17 | - src/msha/* 18 | -------------------------------------------------------------------------------- /.github/workflows/labeler.yml: -------------------------------------------------------------------------------- 1 | name: "Pull Request Labeler" 2 | on: 3 | - pull_request_target 4 | 5 | permissions: write-all 6 | 7 | jobs: 8 | triage: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/labeler@v4 12 | with: 13 | repo-token: "${{ secrets.GITHUB_TOKEN }}" 14 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | .github 3 | .release-it.json 4 | .editorconfig 5 | *tsconfig* 6 | .nvmrc 7 | .devcontainer 8 | .prettierrc 9 | *.config.js 10 | *.tar.gz 11 | *.tgz 12 | src 13 | scripts 14 | cypress* 15 | *.spec.* 16 | jest.helpers.* 17 | /docs 18 | /e2e 19 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 18 2 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 150, 3 | "semi": true 4 | } 5 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["dbaeumer.vscode-eslint", "editorconfig.editorconfig", "esbenp.prettier-vscode", "visualstudioexptteam.vscodeintellicode"] 3 | } 4 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "configurations": [] 3 | } 4 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "typescript.tsdk": "node_modules\\typescript\\lib" 3 | } 4 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0.0", 3 | "tasks": [ 4 | { 5 | "type": "npm", 6 | "script": "build", 7 | "group": { 8 | "kind": "build", 9 | "isDefault": true 10 | }, 11 | "problemMatcher": ["$tsc"], 12 | "label": "build", 13 | "detail": "tsc" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /cypress.json: -------------------------------------------------------------------------------- 1 | { 2 | "viewportWidth": 1300, 3 | "viewportHeight": 900, 4 | "projectId": "jctfne" 5 | } 6 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Api/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/ApiIsolated/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 | Index 4 | 5 |

Hello, world!

6 | 7 | Welcome to your new app. 8 | 9 | 10 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "API_Prefix": "http://localhost:7071" 3 | } 4 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/favicon.ico -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Client/wwwroot/icon-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/blazor-starter/Client/wwwroot/icon-192.png -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Shared/Shared.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.0 5 | BlazorApp.Shared 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/Shared/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace BlazorApp.Shared 4 | { 5 | public class WeatherForecast 6 | { 7 | public DateTime Date { get; set; } 8 | 9 | public int TemperatureC { get; set; } 10 | 11 | public string Summary { get; set; } 12 | 13 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/custom-401.html: -------------------------------------------------------------------------------- 1 |

custom 401

2 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/custom-403.html: -------------------------------------------------------------------------------- 1 |

custom 403

2 | -------------------------------------------------------------------------------- /cypress/fixtures/blazor-starter/custom-404.html: -------------------------------------------------------------------------------- 1 |

custom 404

2 | -------------------------------------------------------------------------------- /cypress/fixtures/static/.gitignore: -------------------------------------------------------------------------------- 1 | .env -------------------------------------------------------------------------------- /cypress/fixtures/static/api/echo/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/echo/index.js: -------------------------------------------------------------------------------- 1 | module.exports = async function (context, req) { 2 | context.res = { 3 | status: "200", 4 | body: req, 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/headers/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/headers/index.js: -------------------------------------------------------------------------------- 1 | module.exports = async function (context, req) { 2 | req.headers["x-swa-custom"] = "/api/headers"; 3 | context.res.json(req.headers); 4 | }; 5 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/info/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/info/index.js: -------------------------------------------------------------------------------- 1 | module.exports = async function (context, req) { 2 | context.res = { 3 | status: req.query.statuscode || "200", 4 | body: "authorized", 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "lockfileVersion": 1 3 | } 4 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "", 3 | "version": "", 4 | "description": "", 5 | "scripts": { 6 | "test": "echo \"No tests yet...\"" 7 | }, 8 | "author": "" 9 | } 10 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/status/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /cypress/fixtures/static/api/status/index.js: -------------------------------------------------------------------------------- 1 | module.exports = async function (context, req) { 2 | context.res = { 3 | status: req.query.statuscode || "200", 4 | body: "/api/status", 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/custom-401.html: -------------------------------------------------------------------------------- 1 |

custom 401

2 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/custom-403.html: -------------------------------------------------------------------------------- 1 |

custom 403

2 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/custom-404.html: -------------------------------------------------------------------------------- 1 |

custom 404

2 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/folder/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | /folder/index.html 7 | 8 | 9 | /folder/index.html 10 | 11 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/foo.bar: -------------------------------------------------------------------------------- 1 | application/octet-stream 2 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/foo.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/cypress/fixtures/static/app/foo.html -------------------------------------------------------------------------------- /cypress/fixtures/static/app/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | /index.html 6 | 7 | 8 | /index.html 9 | 10 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/index2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | /index2.html 7 | 8 | 9 | /index2.html 10 | 11 | -------------------------------------------------------------------------------- /cypress/fixtures/static/app/test.swaconfig: -------------------------------------------------------------------------------- 1 | /test.swaconfig -------------------------------------------------------------------------------- /cypress/fixtures/static/app/with space.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | /with space.html 6 | 7 | 8 | /with space.html 9 | 10 | 11 | -------------------------------------------------------------------------------- /docs/swa-cli-architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/swa-cli-architecture.png -------------------------------------------------------------------------------- /docs/swa-cli.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://aka.ms/azure/static-web-apps-cli/schema", 3 | "configurations": { 4 | "docs": { 5 | "appLocation": "www", 6 | "outputLocation": "build", 7 | "appBuildCommand": "npm run build", 8 | "run": "npm start", 9 | "devServerUrl": "http://localhost:3000" 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /docs/www/.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | /node_modules 3 | 4 | # Production 5 | /build 6 | 7 | # Generated files 8 | .docusaurus 9 | .cache-loader 10 | 11 | # Misc 12 | .DS_Store 13 | .env.local 14 | .env.development.local 15 | .env.test.local 16 | .env.production.local 17 | 18 | npm-debug.log* 19 | yarn-debug.log* 20 | yarn-error.log* 21 | -------------------------------------------------------------------------------- /docs/www/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [require.resolve('@docusaurus/core/lib/babel/preset')], 3 | }; 4 | -------------------------------------------------------------------------------- /docs/www/docs/cli/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "CLI", 3 | "position": 3 4 | } 5 | -------------------------------------------------------------------------------- /docs/www/docs/contribute/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Contribute", 3 | "position": 4 4 | } -------------------------------------------------------------------------------- /docs/www/docs/use/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Get Started", 3 | "position": 2 4 | } -------------------------------------------------------------------------------- /docs/www/src/components/HomepageFeatures/styles.module.css: -------------------------------------------------------------------------------- 1 | .features { 2 | display: flex; 3 | align-items: center; 4 | padding: 2rem 0; 5 | width: 100%; 6 | } 7 | 8 | .featureSvg { 9 | height: 100px; 10 | width: 100px; 11 | fill: #FF4081; 12 | } 13 | 14 | a { 15 | color: #FF4081; 16 | } 17 | -------------------------------------------------------------------------------- /docs/www/static/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/.nojekyll -------------------------------------------------------------------------------- /docs/www/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/img/favicon.ico -------------------------------------------------------------------------------- /docs/www/static/img/landing-configure-icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/www/static/img/swa-404.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/img/swa-404.png -------------------------------------------------------------------------------- /docs/www/static/img/swa-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/img/swa-arch.png -------------------------------------------------------------------------------- /docs/www/static/img/swa-cli-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/img/swa-cli-arch.png -------------------------------------------------------------------------------- /docs/www/static/img/swa-cli-local-auth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/docs/www/static/img/swa-cli-local-auth.png -------------------------------------------------------------------------------- /e2e/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | dist/ 3 | package-lock.json 4 | swa-cli.config.json 5 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import preact from '@astrojs/preact'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Preact to support Preact JSX components. 7 | integrations: [preact()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/fixtures/astro-node/astro preact/public/favicon.ico -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/src/components/Counter.css: -------------------------------------------------------------------------------- 1 | .counter { 2 | display: grid; 3 | font-size: 2em; 4 | grid-template-columns: repeat(3, minmax(0, 1fr)); 5 | margin-top: 2em; 6 | place-items: center; 7 | } 8 | 9 | .counter-message { 10 | text-align: center; 11 | } 12 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/astro preact/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "moduleResolution": "node" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/node/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "ms-azuretools.vscode-azurefunctions" 4 | ] 5 | } -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/node/get-hello/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "Anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": [ 9 | "get", 10 | "post" 11 | ] 12 | }, 13 | { 14 | "type": "http", 15 | "direction": "out", 16 | "name": "res" 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/node/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } -------------------------------------------------------------------------------- /e2e/fixtures/astro-node/node/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "", 3 | "version": "", 4 | "description": "", 5 | "scripts" : { 6 | "test": "echo \"No tests yet...\"" 7 | }, 8 | "author": "" 9 | } -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/fixtures/static-node-ts/.nojekyll -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/README.md: -------------------------------------------------------------------------------- 1 | # Headline 2 | 3 | > An awesome project. 4 | -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/node-ts/.funcignore: -------------------------------------------------------------------------------- 1 | *.js.map 2 | *.ts 3 | .git* 4 | .vscode 5 | local.settings.json 6 | test 7 | getting_started.md -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/node-ts/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "ms-azuretools.vscode-azurefunctions" 4 | ] 5 | } -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/node-ts/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } -------------------------------------------------------------------------------- /e2e/fixtures/static-node-ts/node-ts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "target": "es6", 5 | "outDir": "dist", 6 | "rootDir": ".", 7 | "sourceMap": true, 8 | "strict": false 9 | } 10 | } -------------------------------------------------------------------------------- /e2e/samples/api/dotnet-csx/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet-csx/hello/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "Anonymous", 5 | "name": "req", 6 | "type": "httpTrigger", 7 | "direction": "in", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "name": "$return", 12 | "type": "http", 13 | "direction": "out" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet-csx/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet-isolated/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet-isolated/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/dotnet/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/api/node-ts/.funcignore: -------------------------------------------------------------------------------- 1 | *.js.map 2 | *.ts 3 | .git* 4 | .vscode 5 | local.settings.json 6 | test 7 | getting_started.md -------------------------------------------------------------------------------- /e2e/samples/api/node-ts/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/node-ts/hello/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "Anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/api/node-ts/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/api/node-ts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "target": "es6", 5 | "outDir": "dist", 6 | "rootDir": ".", 7 | "sourceMap": true, 8 | "strict": false 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/api/node/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/node/hello/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "bindings": [ 3 | { 4 | "authLevel": "Anonymous", 5 | "type": "httpTrigger", 6 | "direction": "in", 7 | "name": "req", 8 | "methods": ["get", "post"] 9 | }, 10 | { 11 | "type": "http", 12 | "direction": "out", 13 | "name": "res" 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/api/node/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/api/node/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "", 3 | "version": "", 4 | "description": "", 5 | "scripts": { 6 | "test": "echo \"No tests yet...\"" 7 | }, 8 | "author": "" 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/api/python/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/api/python/hello/function.json: -------------------------------------------------------------------------------- 1 | { 2 | "scriptFile": "__init__.py", 3 | "bindings": [ 4 | { 5 | "authLevel": "Anonymous", 6 | "type": "httpTrigger", 7 | "direction": "in", 8 | "name": "req", 9 | "methods": ["get", "post"] 10 | }, 11 | { 12 | "type": "http", 13 | "direction": "out", 14 | "name": "$return" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /e2e/samples/api/python/host.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0", 3 | "logging": { 4 | "applicationInsights": { 5 | "samplingSettings": { 6 | "isEnabled": true, 7 | "excludedTypes": "Request" 8 | } 9 | } 10 | }, 11 | "extensionBundle": { 12 | "id": "Microsoft.Azure.Functions.ExtensionBundle", 13 | "version": "[2.*, 3.0.0)" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/api/python/requirements.txt: -------------------------------------------------------------------------------- 1 | # Do not include azure-functions-worker as it may conflict with the Azure Functions platform 2 | 3 | azure-functions -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 3 | "recommendations": ["angular.ng-template"] 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/angular-scully/src/assets/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true, 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/angular-scully/src/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | AngularScully 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/src/styles.css: -------------------------------------------------------------------------------- 1 | /* You can add global styles to this file, and also import other style files */ 2 | -------------------------------------------------------------------------------- /e2e/samples/app/angular-scully/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */ 2 | { 3 | "extends": "./tsconfig.json", 4 | "compilerOptions": { 5 | "outDir": "./out-tsc/app", 6 | "types": [] 7 | }, 8 | "files": ["src/main.ts", "src/polyfills.ts"], 9 | "include": ["src/**/*.d.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 3 | "recommendations": ["angular.ng-template"] 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/app/app.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from "@angular/core"; 2 | import { BrowserModule } from "@angular/platform-browser"; 3 | 4 | import { AppComponent } from "./app.component"; 5 | 6 | @NgModule({ 7 | declarations: [AppComponent], 8 | imports: [BrowserModule], 9 | providers: [], 10 | bootstrap: [AppComponent], 11 | }) 12 | export class AppModule {} 13 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/angular/src/assets/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true, 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/angular/src/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Angular 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/src/styles.css: -------------------------------------------------------------------------------- 1 | /* You can add global styles to this file, and also import other style files */ 2 | -------------------------------------------------------------------------------- /e2e/samples/app/angular/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */ 2 | { 3 | "extends": "./tsconfig.json", 4 | "compilerOptions": { 5 | "outDir": "./out-tsc/app", 6 | "types": [] 7 | }, 8 | "files": ["src/main.ts", "src/polyfills.ts"], 9 | "include": ["src/**/*.d.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/README.md: -------------------------------------------------------------------------------- 1 | # Astro + AlpineJS Example 2 | 3 | ``` 4 | npm init astro -- --template framework-alpine 5 | ``` 6 | 7 | [![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/framework-alpine) 8 | 9 | This example showcases Astro working with [AlpineJS](https://alpinejs.dev/). 10 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | 3 | // https://astro.build/config 4 | export default defineConfig({ 5 | // No integrations are needed for AlpineJS support, just use Astro components! 6 | integrations: [], 7 | }); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-alpine/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-alpine/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/README.md: -------------------------------------------------------------------------------- 1 | # Astro + Lit Example 2 | 3 | ``` 4 | npm init astro -- --template framework-lit 5 | ``` 6 | 7 | [![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/framework-lit) 8 | 9 | This example showcases Astro working with [Lit](https://lit.dev/). 10 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import lit from '@astrojs/lit'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Lit to support LitHTML components and templates. 7 | integrations: [lit()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-lit/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: / 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-lit/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-multiple/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/src/components/A.astro: -------------------------------------------------------------------------------- 1 |
2 |

Hello Astro (A)

3 |
4 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/src/components/B.astro: -------------------------------------------------------------------------------- 1 |
2 |

Hello Astro (B)

3 |
4 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/src/components/PreactSFC.tsx: -------------------------------------------------------------------------------- 1 | /** @jsxImportSource preact */ 2 | 3 | /** a counter written in Preact */ 4 | export default function PreactSFC({ children }) { 5 | return ( 6 | <> 7 |
Hello from Preact!
8 | 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export { default as A } from "./A.astro"; 2 | export { default as B } from "./B.astro"; 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-multiple/src/styles/global.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | font-family: system-ui; 4 | margin: 0; 5 | } 6 | 7 | body { 8 | padding: 2rem; 9 | } 10 | 11 | .counter { 12 | display: grid; 13 | font-size: 2em; 14 | grid-template-columns: repeat(3, minmax(0, 1fr)); 15 | margin-top: 2em; 16 | place-items: center; 17 | } 18 | 19 | .counter-message { 20 | text-align: center; 21 | } 22 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import preact from '@astrojs/preact'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Preact to support Preact JSX components. 7 | integrations: [preact()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-preact/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-preact/src/components/Counter.css: -------------------------------------------------------------------------------- 1 | .counter { 2 | display: grid; 3 | font-size: 2em; 4 | grid-template-columns: repeat(3, minmax(0, 1fr)); 5 | margin-top: 2em; 6 | place-items: center; 7 | } 8 | 9 | .counter-message { 10 | text-align: center; 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import react from '@astrojs/react'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable React to support React JSX components. 7 | integrations: [react()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-react/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-react/src/components/Counter.css: -------------------------------------------------------------------------------- 1 | .counter { 2 | display: grid; 3 | font-size: 2em; 4 | grid-template-columns: repeat(3, minmax(0, 1fr)); 5 | margin-top: 2em; 6 | place-items: center; 7 | } 8 | 9 | .counter-message { 10 | text-align: center; 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import solid from '@astrojs/solid-js'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Solid to support Solid JSX components. 7 | integrations: [solid()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-solid/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-solid/src/components/Counter.css: -------------------------------------------------------------------------------- 1 | .counter { 2 | display: grid; 3 | font-size: 2em; 4 | grid-template-columns: repeat(3, minmax(0, 1fr)); 5 | margin-top: 3em; 6 | place-items: center; 7 | } 8 | 9 | .counter-message { 10 | text-align: center; 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/README.md: -------------------------------------------------------------------------------- 1 | # Astro + Svelte Example 2 | 3 | ``` 4 | npm init astro -- --template framework-svelte 5 | ``` 6 | 7 | [![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/framework-svelte) 8 | 9 | This example showcases Astro working with [Svelte](https://svelte.dev/). 10 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import svelte from '@astrojs/svelte'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Svelte to support Svelte components. 7 | integrations: [svelte()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-svelte/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-svelte/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/README.md: -------------------------------------------------------------------------------- 1 | # Astro + Vue Example 2 | 3 | ``` 4 | npm init astro -- --template framework-vue 5 | ``` 6 | 7 | [![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/framework-vue) 8 | 9 | This example showcases Astro working with [Vue](https://v3.vuejs.org/). 10 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import vue from '@astrojs/vue'; 3 | 4 | // https://astro.build/config 5 | export default defineConfig({ 6 | // Enable Vue to support Vue components. 7 | integrations: [vue()], 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro-vue/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro-vue/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | .output/ 4 | 5 | # dependencies 6 | node_modules/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | pnpm-debug.log* 13 | 14 | 15 | # environment variables 16 | .env 17 | .env.production 18 | 19 | # macOS-specific files 20 | .DS_Store 21 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/.npmrc: -------------------------------------------------------------------------------- 1 | # Expose Astro dependencies for `pnpm` users 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/astro/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["astro-build.astro-vscode"], 3 | "unwantedRecommendations": [] 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "command": "./node_modules/.bin/astro dev", 6 | "name": "Development server", 7 | "request": "launch", 8 | "type": "node-terminal" 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | 3 | // https://astro.build/config 4 | export default defineConfig({}); 5 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@example/starter", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "dev": "astro dev", 7 | "start": "astro dev", 8 | "build": "astro build", 9 | "preview": "astro preview" 10 | }, 11 | "devDependencies": { 12 | "astro": "^1.0.0-beta.20" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/astro/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/astro/sandbox.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "infiniteLoopProtection": true, 3 | "hardReloadOnChange": false, 4 | "view": "browser", 5 | "template": "node", 6 | "container": { 7 | "port": 3000, 8 | "startScript": "start", 9 | "node": "14" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/astro/src/components/Logo.astro: -------------------------------------------------------------------------------- 1 | --- 2 | // Export a "Props" interface to . 3 | export interface Props { 4 | height?: number, 5 | width?: number, 6 | } 7 | const {height = 80, width = 60 } = Astro.props as Props; 8 | --- 9 | Astro logo 10 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/.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 | # 2 space indentation 11 | indent_style = space 12 | indent_size = 2 13 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/.npmrc: -------------------------------------------------------------------------------- 1 | # for pnpm, use flat node_modules 2 | shamefully-hoist=true 3 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/attribute.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "attribute", 3 | "description": "Creates a custom attribute class and places it in the project resources." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/binding-behavior.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "binding-behavior", 3 | "description": "Creates a binding behavior class and places it in the project resources." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "component", 3 | "description": "Creates a custom component class and template (view model and view), placing them in the project source folder (or optionally in sub folders)." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/element.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "element", 3 | "description": "Creates a custom element class and template, placing them in the project resources." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/generator.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "generator", 3 | "description": "Creates a generator class and places it in the project generators folder." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/task.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "task", 3 | "description": "Creates a task and places it in the project tasks folder." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/aurelia_project/generators/value-converter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "value-converter", 3 | "description": "Creates a value converter class and places it in the project resources." 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/config/environment.json: -------------------------------------------------------------------------------- 1 | { 2 | "debug": true, 3 | "testing": true 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/config/environment.production.json: -------------------------------------------------------------------------------- 1 | { 2 | "debug": false, 3 | "testing": false 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/src/app.html: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/src/app.js: -------------------------------------------------------------------------------- 1 | export class App { 2 | message = "Hello World!"; 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/src/resources/index.js: -------------------------------------------------------------------------------- 1 | export function configure(config) { 2 | //config.globalResources([]); 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/aurelia/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/aurelia/static/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 | Index 4 | 5 |

Hello, world!

6 | 7 | Welcome to your new app. 8 | 9 | 10 | -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/blazor-wasm/wwwroot/icon-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/blazor-wasm/wwwroot/icon-192.png -------------------------------------------------------------------------------- /e2e/samples/app/brunch/.gitignore: -------------------------------------------------------------------------------- 1 | # Numerous always-ignore extensions 2 | *.diff 3 | *.err 4 | *.orig 5 | *.log 6 | *.rej 7 | *.swo 8 | *.swp 9 | *.vi 10 | *~ 11 | *.sass-cache 12 | 13 | # OS or Editor folders 14 | .DS_Store 15 | .cache 16 | .project 17 | .settings 18 | .tmproj 19 | nbproject 20 | Thumbs.db 21 | 22 | # NPM packages folder. 23 | node_modules/ 24 | 25 | # Brunch output folder. 26 | public/ 27 | -------------------------------------------------------------------------------- /e2e/samples/app/brunch/app/initialize.js: -------------------------------------------------------------------------------- 1 | document.addEventListener("DOMContentLoaded", () => { 2 | // do your setup here 3 | console.log("Initialized app"); 4 | }); 5 | -------------------------------------------------------------------------------- /e2e/samples/app/brunch/app/styles.css: -------------------------------------------------------------------------------- 1 | .brunch { 2 | font-family: -apple-system, Sans-Serif; 3 | text-align: center; 4 | font-size: 24pt; 5 | color: #3f894a; 6 | } 7 | -------------------------------------------------------------------------------- /e2e/samples/app/brunch/brunch-config.js: -------------------------------------------------------------------------------- 1 | // See http://brunch.io for documentation. 2 | exports.files = { 3 | javascripts: { 4 | joinTo: { 5 | "vendor.js": /^(?!app)/, // Files that are not in `app` dir. 6 | "app.js": /^app/, 7 | }, 8 | }, 9 | stylesheets: { joinTo: "app.css" }, 10 | }; 11 | 12 | exports.plugins = { 13 | babel: { presets: ["latest"] }, 14 | }; 15 | -------------------------------------------------------------------------------- /e2e/samples/app/capacitor/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | node_modules/ 3 | .vscode/ 4 | *.map 5 | .DS_Store 6 | .sourcemaps 7 | -------------------------------------------------------------------------------- /e2e/samples/app/capacitor/capacitor.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "appId": "com.fw.playground", 3 | "appName": "capacitor", 4 | "bundledWebRuntime": true, 5 | "webDir": "www", 6 | "plugins": { 7 | "SplashScreen": { 8 | "launchShowDuration": 0 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/capacitor/www/css/style.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | padding: 0; 4 | margin: 0; 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/capacitor/www/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "App", 3 | "short_name": "App", 4 | "start_url": "index.html", 5 | "display": "standalone", 6 | "icons": [ 7 | { 8 | "src": "assets/imgs/logo.png", 9 | "sizes": "512x512", 10 | "type": "image/png" 11 | } 12 | ], 13 | "background_color": "#31d53d", 14 | "theme_color": "#31d53d" 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/app/docsify/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docsify/.nojekyll -------------------------------------------------------------------------------- /e2e/samples/app/docsify/README.md: -------------------------------------------------------------------------------- 1 | # Headline 2 | 3 | > An awesome project. 4 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | /node_modules 3 | 4 | # Production 5 | /build 6 | 7 | # Generated files 8 | .docusaurus 9 | .cache-loader 10 | 11 | # Misc 12 | .DS_Store 13 | .env.local 14 | .env.development.local 15 | .env.test.local 16 | .env.production.local 17 | 18 | npm-debug.log* 19 | yarn-debug.log* 20 | yarn-error.log* 21 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [require.resolve("@docusaurus/core/lib/babel/preset")], 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/docs/tutorial-basics/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Tutorial - Basics", 3 | "position": 2, 4 | "link": { 5 | "type": "generated-index", 6 | "description": "5 minutes to learn the most important Docusaurus concepts." 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/docs/tutorial-extras/_category_.json: -------------------------------------------------------------------------------- 1 | { 2 | "label": "Tutorial - Extras", 3 | "position": 3, 4 | "link": { 5 | "type": "generated-index" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/docs/tutorial-extras/img/docsVersionDropdown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/docs/tutorial-extras/img/docsVersionDropdown.png -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/docs/tutorial-extras/img/localeDropdown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/docs/tutorial-extras/img/localeDropdown.png -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/src/components/HomepageFeatures/styles.module.css: -------------------------------------------------------------------------------- 1 | .features { 2 | display: flex; 3 | align-items: center; 4 | padding: 2rem 0; 5 | width: 100%; 6 | } 7 | 8 | .featureSvg { 9 | height: 200px; 10 | width: 200px; 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/src/pages/markdown-page.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Markdown page example 3 | --- 4 | 5 | # Markdown page example 6 | 7 | You don't need React to write simple standalone pages. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/static/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/static/.nojekyll -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/static/img/docusaurus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/static/img/docusaurus.png -------------------------------------------------------------------------------- /e2e/samples/app/docusaurus/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/docusaurus/static/img/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/eleventy/README.md: -------------------------------------------------------------------------------- 1 | # Page header 2 | -------------------------------------------------------------------------------- /e2e/samples/app/eleventy/index.html: -------------------------------------------------------------------------------- 1 | Page title

Hi

2 | -------------------------------------------------------------------------------- /e2e/samples/app/eleventy/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eleventy", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [], 10 | "author": "", 11 | "license": "ISC", 12 | "devDependencies": { 13 | "@11ty/eleventy": "^1.0.1" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/.prettierrc.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | singleQuote: true, 5 | }; 6 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/.template-lintrc.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | extends: 'recommended', 5 | }; 6 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/.watchmanconfig: -------------------------------------------------------------------------------- 1 | { 2 | "ignore_dirs": ["tmp", "dist"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/components/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/components/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/controllers/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/controllers/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/helpers/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/helpers/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/models/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/models/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/router.js: -------------------------------------------------------------------------------- 1 | import EmberRouter from '@ember/routing/router'; 2 | import config from 'ember-app/config/environment'; 3 | 4 | export default class Router extends EmberRouter { 5 | location = config.locationType; 6 | rootURL = config.rootURL; 7 | } 8 | 9 | Router.map(function () {}); 10 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/routes/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/routes/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/styles/app.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/app/styles/app.css -------------------------------------------------------------------------------- /e2e/samples/app/ember/app/templates/application.hbs: -------------------------------------------------------------------------------- 1 | {{page-title "EmberApp"}} 2 | 3 | {{!-- The following component displays Ember's default welcome message. --}} 4 | 5 | {{!-- Feel free to remove this! --}} 6 | 7 | {{outlet}} -------------------------------------------------------------------------------- /e2e/samples/app/ember/config/optional-features.json: -------------------------------------------------------------------------------- 1 | { 2 | "application-template-wrapper": false, 3 | "default-async-observers": true, 4 | "jquery-integration": false, 5 | "template-only-glimmer-components": true 6 | } 7 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/config/targets.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const browsers = [ 4 | 'last 1 Chrome versions', 5 | 'last 1 Firefox versions', 6 | 'last 1 Safari versions', 7 | ]; 8 | 9 | module.exports = { 10 | browsers, 11 | }; 12 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/public/robots.txt: -------------------------------------------------------------------------------- 1 | # http://www.robotstxt.org 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ember/tests/integration/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/tests/integration/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/tests/unit/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/tests/unit/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/ember/vendor/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ember/vendor/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/flutter/.metadata: -------------------------------------------------------------------------------- 1 | # This file tracks properties of this Flutter project. 2 | # Used by Flutter tool to assess capabilities and perform upgrades etc. 3 | # 4 | # This file should be version controlled and should not be manually edited. 5 | 6 | version: 7 | revision: 5464c5bac742001448fe4fc0597be939379f88ea 8 | channel: stable 9 | 10 | project_type: app 11 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/.gitignore: -------------------------------------------------------------------------------- 1 | gradle-wrapper.jar 2 | /.gradle 3 | /captures/ 4 | /gradlew 5 | /gradlew.bat 6 | /local.properties 7 | GeneratedPluginRegistrant.java 8 | 9 | # Remember to never publicly share your keystore. 10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app 11 | key.properties 12 | **/*.keystore 13 | **/*.jks 14 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/kotlin/com/example/flutterapp/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.flutterapp 2 | 3 | import io.flutter.embedding.android.FlutterActivity 4 | 5 | class MainActivity: FlutterActivity() { 6 | } 7 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/app/src/profile/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx1536M 2 | android.useAndroidX=true 3 | android.enableJetifier=true 4 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Jun 23 08:50:38 CEST 2017 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip 7 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Flutter/Debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Generated.xcconfig" 2 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Flutter/Release.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Generated.xcconfig" 2 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/ios/Runner/Runner-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | #import "GeneratedPluginRegistrant.h" 2 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/web/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/web/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/web/icons/Icon-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/web/icons/Icon-192.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/web/icons/Icon-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/web/icons/Icon-512.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/web/icons/Icon-maskable-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/web/icons/Icon-maskable-192.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/web/icons/Icon-maskable-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/web/icons/Icon-maskable-512.png -------------------------------------------------------------------------------- /e2e/samples/app/flutter/windows/.gitignore: -------------------------------------------------------------------------------- 1 | flutter/ephemeral/ 2 | 3 | # Visual Studio user-specific files. 4 | *.suo 5 | *.user 6 | *.userosscache 7 | *.sln.docstates 8 | 9 | # Visual Studio build-related files. 10 | x64/ 11 | x86/ 12 | 13 | # Visual Studio cache files 14 | # files ending in .cache can be ignored 15 | *.[Cc]ache 16 | # but keep track of directories ending in .cache 17 | !*.[Cc]ache/ 18 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/windows/flutter/generated_plugin_registrant.cc: -------------------------------------------------------------------------------- 1 | // 2 | // Generated file. Do not edit. 3 | // 4 | 5 | // clang-format off 6 | 7 | #include "generated_plugin_registrant.h" 8 | 9 | 10 | void RegisterPlugins(flutter::PluginRegistry* registry) { 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/flutter/windows/runner/resources/app_icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/flutter/windows/runner/resources/app_icon.ico -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/.gitignore: -------------------------------------------------------------------------------- 1 | *.log 2 | .cache 3 | .DS_Store 4 | src/.temp 5 | node_modules 6 | dist 7 | .env 8 | .env.* 9 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/gridsome.config.js: -------------------------------------------------------------------------------- 1 | // This is where project configuration and plugin options are located. 2 | // Learn more: https://gridsome.org/docs/config 3 | 4 | // Changes here require a server restart. 5 | // To restart press CTRL + C in terminal and run `gridsome develop` 6 | 7 | module.exports = { 8 | siteName: "Gridsome", 9 | plugins: [], 10 | }; 11 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gridsome", 3 | "private": true, 4 | "scripts": { 5 | "build": "gridsome build", 6 | "develop": "gridsome develop", 7 | "explore": "gridsome explore" 8 | }, 9 | "dependencies": { 10 | "gridsome": "^0.7.0" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/components/README.md: -------------------------------------------------------------------------------- 1 | Add components that will be imported to Pages and Layouts to this folder. 2 | Learn more about components here: https://gridsome.org/docs/components/ 3 | 4 | You can delete this file. 5 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/gridsome/src/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/layouts/README.md: -------------------------------------------------------------------------------- 1 | Layout components are used to wrap pages and templates. Layouts should contain components like headers, footers or sidebars that will be used across the site. 2 | 3 | Learn more about Layouts: https://gridsome.org/docs/layouts/ 4 | 5 | You can delete this file. 6 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/main.js: -------------------------------------------------------------------------------- 1 | // This is the main.js file. Import global CSS and scripts here. 2 | // The Client API can be used here. Learn more: gridsome.org/docs/client-api 3 | 4 | import DefaultLayout from "~/layouts/Default.vue"; 5 | 6 | export default function (Vue, { router, head, isClient }) { 7 | // Set default layout as a global component 8 | Vue.component("Layout", DefaultLayout); 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/pages/README.md: -------------------------------------------------------------------------------- 1 | Pages are usually used for normal pages or for listing items from a GraphQL collection. 2 | Add .vue files here to create pages. For example **About.vue** will be **site.com/about**. 3 | Learn more about pages: https://gridsome.org/docs/pages/ 4 | 5 | You can delete this file. 6 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/src/templates/README.md: -------------------------------------------------------------------------------- 1 | Templates for **GraphQL collections** should be added here. 2 | To create a template for a collection called `WordPressPost` 3 | create a file named `WordPressPost.vue` in this folder. 4 | 5 | Learn more: https://gridsome.org/docs/templates/ 6 | 7 | You can delete this file. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/gridsome/static/README.md: -------------------------------------------------------------------------------- 1 | Add static files here. Files in this directory will be copied directly to `dist` folder during build. For example, /static/robots.txt will be located at https://yoursite.com/robots.txt. 2 | 3 | This file should be deleted. 4 | -------------------------------------------------------------------------------- /e2e/samples/app/hexo/.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: npm 4 | directory: "/" 5 | schedule: 6 | interval: daily 7 | open-pull-requests-limit: 20 8 | -------------------------------------------------------------------------------- /e2e/samples/app/hexo/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | Thumbs.db 3 | db.json 4 | *.log 5 | node_modules/ 6 | public/ 7 | .deploy*/ 8 | _multiconfig.yml -------------------------------------------------------------------------------- /e2e/samples/app/hexo/_config.landscape.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hexo/_config.landscape.yml -------------------------------------------------------------------------------- /e2e/samples/app/hexo/scaffolds/draft.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: { { title } } 3 | tags: 4 | --- 5 | -------------------------------------------------------------------------------- /e2e/samples/app/hexo/scaffolds/page.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: { { title } } 3 | date: { { date } } 4 | --- 5 | -------------------------------------------------------------------------------- /e2e/samples/app/hexo/scaffolds/post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: { { title } } 3 | date: { { date } } 4 | tags: 5 | --- 6 | -------------------------------------------------------------------------------- /e2e/samples/app/hexo/themes/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hexo/themes/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/app/hugo/archetypes/default.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "{{ replace .Name "-" " " | title }}" 3 | date: {{ .Date }} 4 | draft: true 5 | --- 6 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/config.toml: -------------------------------------------------------------------------------- 1 | baseURL = "http://example.org/" 2 | languageCode = "en-us" 3 | title = "My New Hugo Site" 4 | theme = "ananke" 5 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/content/posts/my-first-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "My First Post" 3 | date: 2022-05-06T11:48:53Z 4 | draft: true 5 | --- 6 | 7 | Hello world 8 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/archetypes/default.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "{{ replace .File.ContentBaseName "-" " " | title }}" 3 | date: {{ .Date }} 4 | tags: [] 5 | featured_image: "" 6 | description: "" 7 | --- 8 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/assets/ananke/socials/rss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/config.yaml: -------------------------------------------------------------------------------- 1 | module: 2 | hugoVersion: 3 | min: "0.84.0" -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/content/en/post/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Articles" 3 | date: 2017-03-02T12:00:00-05:00 4 | --- 5 | 6 | Articles are paginated with only three posts here for example. You can set the number of entries to show on this page with the "pagination" setting in the config file. 7 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/content/fr/post/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Articles" 3 | date: 2017-03-02T12:00:00-05:00 4 | --- 5 | 6 | Exemple de liste d'article français. 7 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/theNewDynamic/gohugo-theme-ananke/exampleSite 2 | 3 | go 1.14 4 | 5 | replace github.com/theNewDynamic/gohugo-theme-ananke => ../ 6 | 7 | require github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829 // indirect 8 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/go.sum: -------------------------------------------------------------------------------- 1 | github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829 h1:dxXpDsAqswhvn8pPOC993d217NX/ZbIUSkWz1/awi4s= 2 | github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829/go.mod h1:bgj7bjD98mZSR/KOYKuF5lcIgEmTnJ763rZH4EseLv4= 3 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/Pope-Edouard-de-Beaumont-1844.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/Pope-Edouard-de-Beaumont-1844.jpg -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/Victor_Hugo-Hunchback.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/Victor_Hugo-Hunchback.jpg -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/esmeralda.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/esmeralda.jpg -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/notebook.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/exampleSite/static/images/notebook.jpg -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/theNewDynamic/gohugo-theme-ananke 2 | 3 | go 1.14 4 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/images/screenshot.png -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/images/tn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/images/tn.png -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/404.html: -------------------------------------------------------------------------------- 1 | {{ define "header" }}{{ partial "page-header.html" . }}{{ end }} 2 | {{ define "main" }} 3 |
4 |

5 | This is not the page you were looking for 6 |

7 |
8 | {{ end }} 9 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/_default/by.html: -------------------------------------------------------------------------------- 1 | {{- if eq .Lang "de" "en" "es" "fr" "it" "no" "pt" -}} 2 | {{- i18n "by" -}} 3 | {{ end -}} -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/commento.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/func/GetLanguageDirection.html: -------------------------------------------------------------------------------- 1 | {{ $dir := "" }} 2 | {{ if ge hugo.Version "0.67.1" }} 3 | {{ with site.Language.LanguageDirection }} 4 | {{ $dir = . }} 5 | {{ end }} 6 | {{ end }} 7 | {{ return $dir }} 8 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/func/warn.html: -------------------------------------------------------------------------------- 1 | {{/* 2 | warn 3 | Emits a warning using the theme's Header. 4 | 5 | @author @regisphilibert 6 | 7 | @context String 8 | 9 | @access private 10 | 11 | @example - Go Template 12 | {{ partial "func/warn" $message }} 13 | */}} 14 | {{ $header := "Ananke Theme Warning" }} 15 | {{ warnf "\n%s:\n%s" $header . }} -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/head-additions.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/layouts/partials/head-additions.html -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/new-window-icon.html: -------------------------------------------------------------------------------- 1 | {{ $new_window_icon_size := "8px" }} 2 | {{ partial "svg/new-window.svg" (dict "size" $new_window_icon_size) }} -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/site-favicon.html: -------------------------------------------------------------------------------- 1 | {{ if .Site.Params.favicon }} 2 | 3 | {{ end }} 4 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/site-scripts.html: -------------------------------------------------------------------------------- 1 | {{/* For Users's overwrite */}} -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/site-style.html: -------------------------------------------------------------------------------- 1 | {{ with partialCached "func/style/GetMainCSS" "style/GetMainCSS" }} 2 | 3 | {{ end }} 4 | 5 | {{ range site.Params.custom_css }} 6 | {{ with partialCached "func/style/GetResource" . . }}{{ else }} 7 | 8 | {{ end }} 9 | {{ end }} -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/partials/tags.html: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/layouts/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | # robotstxt.org - if ENV production variable is false robots will be disallowed. 3 | {{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }} 4 | Allow: / 5 | Sitemap: {{.Site.BaseURL}}/sitemap.xml 6 | {{ else }} 7 | Disallow: / 8 | {{ end }} 9 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/resources/_gen/assets/css/ananke/css/main.css_5c99d70a7725bacd4c701e995b969fea.json: -------------------------------------------------------------------------------- 1 | { "Target": "ananke/css/main.min.css", "MediaType": "text/css", "Data": {} } 2 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/resources/_gen/assets/css/ananke/css/main.css_bb5467e0521bbea6b1e66429f6ec028e.json: -------------------------------------------------------------------------------- 1 | { "Target": "ananke/css/main.min.css", "MediaType": "text/css", "Data": {} } 2 | -------------------------------------------------------------------------------- /e2e/samples/app/hugo/themes/ananke/static/images/gohugo-default-sample-hero-image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/hugo/themes/ananke/static/images/gohugo-default-sample-hero-image.jpg -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/.editorconfig: -------------------------------------------------------------------------------- 1 | # Editor configuration, see https://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.ts] 12 | quote_type = single 13 | 14 | [*.md] 15 | max_line_length = off 16 | trim_trailing_whitespace = false 17 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/e2e/src/app.e2e-spec.ts: -------------------------------------------------------------------------------- 1 | import { AppPage } from './app.po'; 2 | 3 | describe('new App', () => { 4 | let page: AppPage; 5 | 6 | beforeEach(() => { 7 | page = new AppPage(); 8 | }); 9 | 10 | it('should be blank', () => { 11 | page.navigateTo(); 12 | expect(page.getParagraphText()).toContain('Start with Ionic UI Components'); 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/e2e/src/app.po.ts: -------------------------------------------------------------------------------- 1 | import { browser, by, element } from 'protractor'; 2 | 3 | export class AppPage { 4 | navigateTo() { 5 | return browser.get('/'); 6 | } 7 | 8 | getParagraphText() { 9 | return element(by.deepCss('app-root ion-content')).getText(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/e2e/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/e2e", 5 | "module": "commonjs", 6 | "target": "es2018", 7 | "types": ["jasmine", "node"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ionic-angular", 3 | "integrations": {}, 4 | "type": "angular" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/app/app.component.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/app/app.component.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-angular/src/app/app.component.scss -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-root', 5 | templateUrl: 'app.component.html', 6 | styleUrls: ['app.component.scss'], 7 | }) 8 | export class AppComponent { 9 | constructor() {} 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/app/home/home.page.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-home', 5 | templateUrl: 'home.page.html', 6 | styleUrls: ['home.page.scss'], 7 | }) 8 | export class HomePage { 9 | constructor() {} 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/assets/icon/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-angular/src/assets/icon/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true, 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/src/zone-flags.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Prevents Angular change detection from 3 | * running with certain Web Component callbacks 4 | */ 5 | // eslint-disable-next-line no-underscore-dangle 6 | (window as any).__Zone_disable_customElements = true; 7 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */ 2 | { 3 | "extends": "./tsconfig.json", 4 | "compilerOptions": { 5 | "outDir": "./out-tsc/app", 6 | "types": [] 7 | }, 8 | "files": ["src/main.ts", "src/polyfills.ts"], 9 | "include": ["src/**/*.d.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-angular/tsconfig.spec.json: -------------------------------------------------------------------------------- 1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */ 2 | { 3 | "extends": "./tsconfig.json", 4 | "compilerOptions": { 5 | "outDir": "./out-tsc/spec", 6 | "types": ["jasmine"] 7 | }, 8 | "files": ["src/test.ts", "src/polyfills.ts"], 9 | "include": ["src/**/*.spec.ts", "src/**/*.d.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ionic-react", 3 | "integrations": {}, 4 | "type": "react" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/public/assets/icon/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-react/public/assets/icon/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/public/assets/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-react/public/assets/icon/icon.png -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/src/App.test.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { render } from '@testing-library/react'; 3 | import App from './App'; 4 | 5 | test('renders without crashing', () => { 6 | const { baseElement } = render(); 7 | expect(baseElement).toBeDefined(); 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/src/pages/Home.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-react/src/pages/Home.css -------------------------------------------------------------------------------- /e2e/samples/app/ionic-react/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/.browserslistrc: -------------------------------------------------------------------------------- 1 | > 1% 2 | last 2 versions 3 | not dead 4 | not ie 11 -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ["@vue/cli-plugin-babel/preset"], 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/cypress.json: -------------------------------------------------------------------------------- 1 | { 2 | "pluginsFile": "tests/e2e/plugins/index.js" 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ionic-vue", 3 | "integrations": {}, 4 | "type": "vue" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: "@vue/cli-plugin-unit-jest/presets/typescript-and-babel", 3 | transformIgnorePatterns: ["/node_modules/(?!@ionic/vue|@ionic/vue-router|@ionic/core|@stencil/core|ionicons)"], 4 | }; 5 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/public/assets/icon/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-vue/public/assets/icon/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/public/assets/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/ionic-vue/public/assets/icon/icon.png -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/src/App.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/src/shims-vue.d.ts: -------------------------------------------------------------------------------- 1 | /* eslint-disable */ 2 | declare module "*.vue" { 3 | import type { DefineComponent } from "vue"; 4 | const component: DefineComponent<{}, {}, any>; 5 | export default component; 6 | } 7 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/tests/e2e/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: ["cypress"], 3 | env: { 4 | mocha: true, 5 | "cypress/globals": true, 6 | }, 7 | rules: { 8 | strict: "off", 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/tests/e2e/specs/test.js: -------------------------------------------------------------------------------- 1 | // https://docs.cypress.io/api/introduction/api.html 2 | 3 | describe("My First Test", () => { 4 | it("Visits the app root url", () => { 5 | cy.visit("/"); 6 | cy.contains("#container", "Ready to create an app?"); 7 | }); 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/ionic-vue/tests/unit/example.spec.ts: -------------------------------------------------------------------------------- 1 | import { mount } from "@vue/test-utils"; 2 | import HomePage from "@/views/HomePage.vue"; 3 | 4 | describe("HomePage.vue", () => { 5 | it("renders home vue", () => { 6 | const wrapper = mount(HomePage); 7 | expect(wrapper.text()).toMatch("Ready to create an app?"); 8 | }); 9 | }); 10 | -------------------------------------------------------------------------------- /e2e/samples/app/jekyll/.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .sass-cache 3 | .jekyll-cache 4 | .jekyll-metadata 5 | vendor 6 | -------------------------------------------------------------------------------- /e2e/samples/app/jekyll/index.markdown: -------------------------------------------------------------------------------- 1 | --- 2 | # Feel free to add content and custom Front Matter to this file. 3 | # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults 4 | 5 | layout: home 6 | --- 7 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/content/about/contents.lr: -------------------------------------------------------------------------------- 1 | title: About this Website 2 | --- 3 | body: 4 | 5 | This is a website that was made with the Lektor quickstart. 6 | 7 | And it does not contain a lot of information. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/content/blog/contents.lr: -------------------------------------------------------------------------------- 1 | _model: blog 2 | --- 3 | title: Blog 4 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/content/blog/first-post/contents.lr: -------------------------------------------------------------------------------- 1 | title: Hello Website 2 | --- 3 | pub_date: 2022-05-06 4 | --- 5 | author: root 6 | --- 7 | body: 8 | 9 | This is an example blog post. Not much here but that's not the point :) 10 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/content/contents.lr: -------------------------------------------------------------------------------- 1 | title: Welcome to lektor! 2 | --- 3 | body: 4 | 5 | This is a basic demo website that shows how to use Lektor for a basic 6 | website with some pages and a blog. 7 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/content/projects/contents.lr: -------------------------------------------------------------------------------- 1 | title: Projects 2 | --- 3 | body: 4 | 5 | This is a list of the projects: 6 | 7 | * Project 1 8 | * Project 2 9 | * Project 3 10 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/lektor.lektorproject: -------------------------------------------------------------------------------- 1 | [project] 2 | name = lektor 3 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/models/blog.ini: -------------------------------------------------------------------------------- 1 | [model] 2 | name = Blog 3 | label = Blog 4 | hidden = yes 5 | 6 | [fields.title] 7 | label = Title 8 | type = string 9 | 10 | [children] 11 | model = blog-post 12 | order_by = -pub_date, title 13 | 14 | [pagination] 15 | enabled = yes 16 | per_page = 10 17 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/models/page.ini: -------------------------------------------------------------------------------- 1 | [model] 2 | name = Page 3 | label = {{ this.title }} 4 | 5 | [fields.title] 6 | label = Title 7 | type = string 8 | 9 | [fields.body] 10 | label = Body 11 | type = markdown 12 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/templates/blog-post.html: -------------------------------------------------------------------------------- 1 | {% extends "layout.html" %} 2 | {% from "macros/blog.html" import render_blog_post %} 3 | {% block title %}{{ this.title }}{% endblock %} 4 | {% block body %} 5 | {{ render_blog_post(this) }} 6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /e2e/samples/app/lektor/templates/page.html: -------------------------------------------------------------------------------- 1 | {% extends "layout.html" %} 2 | {% block title %}{{ this.title }}{% endblock %} 3 | {% block body %} 4 |

{{ this.title }}

5 | {{ this.body }} 6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /e2e/samples/app/lit/.gitignore: -------------------------------------------------------------------------------- 1 | ## editors 2 | /.idea 3 | /.vscode 4 | 5 | ## system files 6 | .DS_Store 7 | 8 | ## npm 9 | /node_modules/ 10 | /npm-debug.log 11 | 12 | ## testing 13 | /coverage/ 14 | 15 | ## temp folders 16 | /.tmp/ 17 | 18 | # build 19 | /_site/ 20 | /dist/ 21 | /out-tsc/ 22 | 23 | storybook-static 24 | custom-elements.json 25 | -------------------------------------------------------------------------------- /e2e/samples/app/lit/src/lit-app.ts: -------------------------------------------------------------------------------- 1 | import { LitApp } from "./LitApp.js"; 2 | 3 | customElements.define("lit-app", LitApp); 4 | -------------------------------------------------------------------------------- /e2e/samples/app/mdbook/.gitignore: -------------------------------------------------------------------------------- 1 | book 2 | -------------------------------------------------------------------------------- /e2e/samples/app/mdbook/book.toml: -------------------------------------------------------------------------------- 1 | [book] 2 | authors = [] 3 | language = "en" 4 | multilingual = false 5 | src = "src" 6 | -------------------------------------------------------------------------------- /e2e/samples/app/mdbook/src/SUMMARY.md: -------------------------------------------------------------------------------- 1 | # Summary 2 | 3 | - [Chapter 1](./chapter_1.md) 4 | -------------------------------------------------------------------------------- /e2e/samples/app/mdbook/src/chapter_1.md: -------------------------------------------------------------------------------- 1 | # Chapter 1 2 | -------------------------------------------------------------------------------- /e2e/samples/app/mdbook/theme/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/mdbook/theme/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/README.md: -------------------------------------------------------------------------------- 1 | # static-site 2 | 3 | This example uses Metalsmith to make a static site. To test it out yourself just run: 4 | 5 | ```bash 6 | npm install 7 | npm start 8 | ``` 9 | 10 | View it in your browser with: 11 | 12 | ```bash 13 | npm run serve 14 | ``` 15 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/about.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: layout.hbs 3 | title: About 4 | description: "" 5 | --- 6 | 7 | # About this site 8 | 9 | This is only a very simple example site. 10 | 11 | It is not responsive and it only contains a very basic styling. It also makes use of the default bootstrap 4 CSS. 12 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Hello World 3 | layout: layout.hbs 4 | postlist: true 5 | --- 6 | 7 | This site is about saying »Hello« to the world. 8 | 9 | # Blog 10 | 11 | Read what else I have to say. Here are all my blog posts. Enjoy reading! 12 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/posts/first-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: My First Post 3 | date: 2012-08-20 4 | layout: post.hbs 5 | --- 6 | 7 | An interesting post about how it's going to be different this time around. I'm going to write a lot more nowadays and use this blog to improve my writing. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/posts/fourth-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: My Fourth Post 3 | date: 2012-12-07 4 | layout: post.hbs 5 | --- 6 | 7 | A really short, rushed-feeling string of words. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/posts/second-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: My Second Post 3 | date: 2012-08-23 4 | layout: post.hbs 5 | --- 6 | 7 | A super-interesting piece of prose I have already written weeks ago. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/metalsmith/src/posts/third-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: My Third Post 3 | date: 2012-09-28 4 | layout: post.hbs 5 | --- 6 | 7 | A slightly late, less interesting piece of prose. 8 | -------------------------------------------------------------------------------- /e2e/samples/app/middleman/.gitignore: -------------------------------------------------------------------------------- 1 | .bundle 2 | .cache 3 | .DS_Store 4 | .sass-cache 5 | build/ 6 | -------------------------------------------------------------------------------- /e2e/samples/app/middleman/Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | gem 'middleman', '~> 4.2' 4 | gem 'middleman-autoprefixer', '~> 2.7' 5 | gem 'tzinfo-data', platforms: [:mswin, :mingw, :jruby, :x64_mingw] 6 | gem 'wdm', '~> 0.1', platforms: [:mswin, :mingw, :x64_mingw] 7 | -------------------------------------------------------------------------------- /e2e/samples/app/middleman/source/images/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/middleman/source/images/.keep -------------------------------------------------------------------------------- /e2e/samples/app/middleman/source/javascripts/site.js: -------------------------------------------------------------------------------- 1 | // This is where it all goes :) 2 | -------------------------------------------------------------------------------- /e2e/samples/app/mkdocs/mkdocs.yml: -------------------------------------------------------------------------------- 1 | site_name: My Docs 2 | -------------------------------------------------------------------------------- /e2e/samples/app/nuxtjs/.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /e2e/samples/app/nuxtjs/pages/index.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 12 | -------------------------------------------------------------------------------- /e2e/samples/app/nuxtjs/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/nuxtjs/static/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/pelican/content/my-post.md: -------------------------------------------------------------------------------- 1 | Title: My First Post 2 | Date: 2022-04-20 12:20 3 | Category: Blog 4 | 5 | Hello world 6 | -------------------------------------------------------------------------------- /e2e/samples/app/polymer/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | yarn.lock 3 | package-lock.json 4 | .firebaserc 5 | -------------------------------------------------------------------------------- /e2e/samples/app/polymer/demo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /e2e/samples/app/polymer/icon-toggle-finished/polymer.json: -------------------------------------------------------------------------------- 1 | { 2 | "npm": true, 3 | "moduleResolution": "node" 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/polymer/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /e2e/samples/app/polymer/polymer.json: -------------------------------------------------------------------------------- 1 | { 2 | "npm": true, 3 | "moduleResolution": "node" 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | /build 3 | /*.log 4 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/android-chrome-192x192.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/android-chrome-512x512.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/apple-touch-icon.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/favicon-16x16.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/favicon-32x32.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/assets/icons/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/preact/src/assets/icons/mstile-150x150.png -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/index.js: -------------------------------------------------------------------------------- 1 | import "./style"; 2 | import App from "./components/app"; 3 | 4 | export default App; 5 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/routes/home/index.js: -------------------------------------------------------------------------------- 1 | import { h } from "preact"; 2 | import style from "./style.css"; 3 | 4 | const Home = () => ( 5 |
6 |

Home

7 |

This is the Home component.

8 |
9 | ); 10 | 11 | export default Home; 12 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/routes/home/style.css: -------------------------------------------------------------------------------- 1 | .home { 2 | padding: 56px 20px; 3 | min-height: 100%; 4 | width: 100%; 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/routes/profile/style.css: -------------------------------------------------------------------------------- 1 | .profile { 2 | padding: 56px 20px; 3 | min-height: 100%; 4 | width: 100%; 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/src/sw.js: -------------------------------------------------------------------------------- 1 | import { getFiles, setupPrecaching, setupRouting } from "preact-cli/sw/"; 2 | 3 | setupRouting(); 4 | setupPrecaching(getFiles()); 5 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/tests/__mocks__/fileMocks.js: -------------------------------------------------------------------------------- 1 | // This fixed an error related to the CSS and loading gif breaking my Jest test 2 | // See https://facebook.github.io/jest/docs/en/webpack.html#handling-static-assets 3 | module.exports = "test-file-stub"; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/preact/tests/__mocks__/setupTests.js: -------------------------------------------------------------------------------- 1 | import { configure } from "enzyme"; 2 | import Adapter from "enzyme-adapter-preact-pure"; 3 | 4 | configure({ 5 | adapter: new Adapter(), 6 | }); 7 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react-static/babel-preset.js"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "react-app" 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/README.md: -------------------------------------------------------------------------------- 1 | # React-Static - Basic Template 2 | 3 | To use this template, run `react-static create` and use the `basic` template. 4 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/src/components/Router.js: -------------------------------------------------------------------------------- 1 | export { Link, Router } from "@reach/router"; 2 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/src/containers/Dynamic.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | export default () =>
This is a dynamic page! It will not be statically exported, but is available at runtime
; 4 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/src/pages/404.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | export default () => ( 4 |
5 |

404 - Oh no's! We couldn't find that page :(

6 |
7 | ); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/src/pages/about.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | export default () => ( 4 |
5 |

React Static is a progressive static site generator for React.

6 |
7 | ); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/react-static/src/pages/index.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | export default () => ( 4 |
5 |

Welcome to React-Static

6 |
7 | ); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/react/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/react/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/react/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/react/public/logo192.png -------------------------------------------------------------------------------- /e2e/samples/app/react/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/react/public/logo512.png -------------------------------------------------------------------------------- /e2e/samples/app/react/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /e2e/samples/app/react/src/App.test.js: -------------------------------------------------------------------------------- 1 | import { render, screen } from "@testing-library/react"; 2 | import App from "./App"; 3 | 4 | test("renders learn react link", () => { 5 | render(); 6 | const linkElement = screen.getByText(/learn react/i); 7 | expect(linkElement).toBeInTheDocument(); 8 | }); 9 | -------------------------------------------------------------------------------- /e2e/samples/app/react/src/setupTests.js: -------------------------------------------------------------------------------- 1 | // jest-dom adds custom jest matchers for asserting on DOM nodes. 2 | // allows you to do things like: 3 | // expect(element).toHaveTextContent(/react/i) 4 | // learn more: https://github.com/testing-library/jest-dom 5 | import "@testing-library/jest-dom"; 6 | -------------------------------------------------------------------------------- /e2e/samples/app/riot/readme.md: -------------------------------------------------------------------------------- 1 | # riot 2 | 3 | ## Start 4 | 5 | ``` 6 | npm start 7 | ``` 8 | 9 | ## Test 10 | 11 | ``` 12 | npm test 13 | ``` 14 | 15 | ## Build 16 | 17 | ``` 18 | npm run build 19 | ``` 20 | -------------------------------------------------------------------------------- /e2e/samples/app/riot/src/components/global/my-component/my-component.riot: -------------------------------------------------------------------------------- 1 | 2 |

{ props.message }

3 |
4 | -------------------------------------------------------------------------------- /e2e/samples/app/riot/src/components/includes/user/user.riot: -------------------------------------------------------------------------------- 1 | 2 |

My username is: { props.name }

3 |
-------------------------------------------------------------------------------- /e2e/samples/app/riot/src/index.js: -------------------------------------------------------------------------------- 1 | import "./style.css"; 2 | import "@riotjs/hot-reload"; 3 | import { mount } from "riot"; 4 | import registerGlobalComponents from "./register-global-components"; 5 | 6 | // register 7 | registerGlobalComponents(); 8 | 9 | // mount all the global components found in this page 10 | mount("[data-riot-component]"); 11 | -------------------------------------------------------------------------------- /e2e/samples/app/riot/src/style.css: -------------------------------------------------------------------------------- 1 | .container { 2 | display: flex; 3 | justify-content: center; 4 | align-items: center; 5 | min-height: 100vh; 6 | } -------------------------------------------------------------------------------- /e2e/samples/app/sapper/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | /node_modules/ 3 | /src/node_modules/@sapper/ 4 | yarn-error.log 5 | /__sapper__/ 6 | -------------------------------------------------------------------------------- /e2e/samples/app/sapper/src/client.js: -------------------------------------------------------------------------------- 1 | import * as sapper from "@sapper/app"; 2 | 3 | sapper.start({ 4 | target: document.querySelector("#sapper"), 5 | }); 6 | -------------------------------------------------------------------------------- /e2e/samples/app/sapper/src/routes/about.svelte: -------------------------------------------------------------------------------- 1 | 2 | About 3 | 4 | 5 |

About this site

6 | 7 |

This is the 'about' page. There's not much here.

-------------------------------------------------------------------------------- /e2e/samples/app/sapper/static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/sapper/static/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/sapper/static/logo-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/sapper/static/logo-192.png -------------------------------------------------------------------------------- /e2e/samples/app/sapper/static/logo-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/sapper/static/logo-512.png -------------------------------------------------------------------------------- /e2e/samples/app/slate/.dockerignore: -------------------------------------------------------------------------------- 1 | .git/ 2 | .github/ 3 | build/ 4 | .editorconfig 5 | .gitattributes 6 | .gitignore 7 | CHANGELOG.md 8 | CODE_OF_CONDUCT.md 9 | deploy.sh 10 | font-selection.json 11 | README.md 12 | Vagrantfile -------------------------------------------------------------------------------- /e2e/samples/app/slate/.gitattributes: -------------------------------------------------------------------------------- 1 | source/javascripts/lib/* linguist-vendored 2 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Questions, Ideas, Discussions 4 | url: https://github.com/slatedocs/slate/discussions 5 | about: Ask and answer questions, and propose new features. 6 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: bundler 4 | directory: "/" 5 | schedule: 6 | interval: daily 7 | open-pull-requests-limit: 10 8 | target-branch: dev 9 | versioning-strategy: increase-if-necessary 10 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/.gitignore: -------------------------------------------------------------------------------- 1 | *.gem 2 | *.rbc 3 | .bundle 4 | .config 5 | coverage 6 | InstalledFiles 7 | lib/bundler/man 8 | pkg 9 | rdoc 10 | spec/reports 11 | test/tmp 12 | test/version_tmp 13 | tmp 14 | *.DS_STORE 15 | build/ 16 | .cache 17 | .vagrant 18 | .sass-cache 19 | 20 | # YARD artifacts 21 | .yardoc 22 | _yardoc 23 | doc/ 24 | .idea/ 25 | 26 | # Vagrant artifacts 27 | ubuntu-*-console.log 28 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/Gemfile: -------------------------------------------------------------------------------- 1 | ruby '>= 2.6' 2 | source 'https://rubygems.org' 3 | 4 | # Middleman 5 | gem 'middleman', '~> 4.4' 6 | gem 'middleman-syntax', '~> 3.2' 7 | gem 'middleman-autoprefixer', '~> 3.0' 8 | gem 'middleman-sprockets', '~> 4.1' 9 | gem 'rouge', '~> 3.21' 10 | gem 'redcarpet', '~> 3.5.0' 11 | gem 'nokogiri', '~> 1.13.3' 12 | gem 'sass' 13 | gem 'webrick' 14 | -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/fonts/slate.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/fonts/slate.eot -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/fonts/slate.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/fonts/slate.ttf -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/fonts/slate.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/fonts/slate.woff -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/fonts/slate.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/fonts/slate.woff2 -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/images/logo.png -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/images/navbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/slate/source/images/navbar.png -------------------------------------------------------------------------------- /e2e/samples/app/slate/source/javascripts/all.js: -------------------------------------------------------------------------------- 1 | //= require ./all_nosearch 2 | //= require ./app/_search 3 | -------------------------------------------------------------------------------- /e2e/samples/app/solid/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /e2e/samples/app/solid/src/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/solid/src/assets/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/solid/src/index.tsx: -------------------------------------------------------------------------------- 1 | /* @refresh reload */ 2 | import { render } from 'solid-js/web'; 3 | 4 | import './index.css'; 5 | import App from './App'; 6 | 7 | render(() => , document.getElementById('root') as HTMLElement); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/solid/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import solidPlugin from "vite-plugin-solid"; 3 | 4 | export default defineConfig({ 5 | plugins: [solidPlugin()], 6 | build: { 7 | target: "esnext", 8 | polyfillDynamicImport: false, 9 | }, 10 | }); 11 | -------------------------------------------------------------------------------- /e2e/samples/app/static/index.html: -------------------------------------------------------------------------------- 1 | Hello world 2 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | charset = utf-8 7 | indent_style = space 8 | indent_size = 2 9 | end_of_line = lf 10 | insert_final_newline = true 11 | trim_trailing_whitespace = true 12 | 13 | [*.md] 14 | insert_final_newline = false 15 | trim_trailing_whitespace = false 16 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/.gitignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | !www/favicon.ico 3 | www/ 4 | 5 | *~ 6 | *.sw[mnpcod] 7 | *.log 8 | *.lock 9 | *.tmp 10 | *.tmp.* 11 | log.txt 12 | *.sublime-project 13 | *.sublime-workspace 14 | 15 | .stencil/ 16 | .idea/ 17 | .vscode/ 18 | .sass-cache/ 19 | .versions/ 20 | node_modules/ 21 | $RECYCLE.BIN/ 22 | 23 | .DS_Store 24 | Thumbs.db 25 | UserInterfaceState.xcuserstate 26 | .env 27 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/.prettierrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "arrowParens": "avoid", 3 | "bracketSpacing": true, 4 | "jsxBracketSameLine": false, 5 | "jsxSingleQuote": false, 6 | "quoteProps": "consistent", 7 | "printWidth": 180, 8 | "semi": true, 9 | "singleQuote": true, 10 | "tabWidth": 2, 11 | "trailingComma": "all", 12 | "useTabs": false 13 | } 14 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/assets/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/stencil/src/assets/icon/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/assets/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/stencil/src/assets/icon/icon.png -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/components/app-profile/app-profile.css: -------------------------------------------------------------------------------- 1 | .app-profile { 2 | padding: 10px; 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/components/app-root/app-root.css: -------------------------------------------------------------------------------- 1 | header { 2 | background: #5851ff; 3 | color: white; 4 | height: 56px; 5 | display: flex; 6 | align-items: center; 7 | box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); 8 | } 9 | 10 | h1 { 11 | font-size: 1.4rem; 12 | font-weight: 500; 13 | color: #fff; 14 | padding: 0 12px; 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/global/app.ts: -------------------------------------------------------------------------------- 1 | export default async () => { 2 | /** 3 | * The code to be executed should be placed within a default function that is 4 | * exported by the global script. Ensure all of the code in the global script 5 | * is wrapped in the function() that is exported. 6 | */ 7 | }; 8 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/index.ts: -------------------------------------------------------------------------------- 1 | export { Components, JSX } from './components'; 2 | import '@stencil/router'; 3 | -------------------------------------------------------------------------------- /e2e/samples/app/stencil/src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Stencil Starter", 3 | "short_name": "Stencil", 4 | "start_url": "/", 5 | "display": "standalone", 6 | "icons": [ 7 | { 8 | "src": "assets/icon/icon.png", 9 | "sizes": "512x512", 10 | "type": "image/png" 11 | } 12 | ], 13 | "background_color": "#16161d", 14 | "theme_color": "#16161d" 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | .vercel 10 | .output 11 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # default-template 2 | 3 | ## 0.0.2-next.0 4 | 5 | ### Patch Changes 6 | 7 | - [chore] upgrade cookie library ([#4592](https://github.com/sveltejs/kit/pull/4592)) 8 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/src/app.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | 3 | // See https://kit.svelte.dev/docs/types#app 4 | // for information about these interfaces 5 | declare namespace App { 6 | interface Locals { 7 | userid: string; 8 | } 9 | 10 | // interface Platform {} 11 | 12 | // interface Session {} 13 | 14 | // interface Stuff {} 15 | } 16 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %svelte.head% 8 | 9 | 10 |
%svelte.body%
11 | 12 | 13 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/svelte-kit/static/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/static/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/static/svelte-welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/svelte-kit/static/svelte-welcome.png -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/static/svelte-welcome.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/svelte-kit/static/svelte-welcome.webp -------------------------------------------------------------------------------- /e2e/samples/app/svelte-kit/svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from "@sveltejs/adapter-static"; 2 | 3 | /** @type {import('@sveltejs/kit').Config} */ 4 | const config = { 5 | kit: { 6 | adapter: adapter(), 7 | 8 | // Override http methods in the Todo forms 9 | methodOverride: { 10 | allowed: ["PATCH", "DELETE"], 11 | }, 12 | }, 13 | }; 14 | 15 | export default config; 16 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules/ 2 | /public/build/ 3 | 4 | .DS_Store 5 | -------------------------------------------------------------------------------- /e2e/samples/app/svelte/public/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/svelte/public/favicon.png -------------------------------------------------------------------------------- /e2e/samples/app/svelte/src/main.js: -------------------------------------------------------------------------------- 1 | import App from "./App.svelte"; 2 | 3 | const app = new App({ 4 | target: document.body, 5 | props: { 6 | name: "world", 7 | }, 8 | }); 9 | 10 | export default app; 11 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-lit/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-lit/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | 3 | // https://vitejs.dev/config/ 4 | export default defineConfig({ 5 | build: { 6 | lib: { 7 | entry: "src/my-element.js", 8 | formats: ["es"], 9 | }, 10 | rollupOptions: { 11 | external: /^lit/, 12 | }, 13 | }, 14 | }); 15 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-preact/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-preact/src/main.jsx: -------------------------------------------------------------------------------- 1 | import { render } from 'preact' 2 | import { App } from './app' 3 | import './index.css' 4 | 5 | render(, document.getElementById('app')) 6 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-preact/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import preact from "@preact/preset-vite"; 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [preact()], 7 | }); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-react/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-react/src/main.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import ReactDOM from 'react-dom/client' 3 | import App from './App' 4 | import './index.css' 5 | 6 | ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( 7 | 8 | 9 | , 10 | ) 11 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-react/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-react/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": true, 4 | "module": "ESNext", 5 | "moduleResolution": "Node", 6 | "allowSyntheticDefaultImports": true 7 | }, 8 | "include": ["vite.config.ts"] 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-react/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import react from "@vitejs/plugin-react"; 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [react()], 7 | }); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["svelte.svelte-vscode"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-svelte", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "devDependencies": { 12 | "@sveltejs/vite-plugin-svelte": "^2.0.0", 13 | "svelte": "^3.54.0", 14 | "vite": "^4.0.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/src/lib/Counter.svelte: -------------------------------------------------------------------------------- 1 | 7 | 8 | 11 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/src/main.js: -------------------------------------------------------------------------------- 1 | import "./app.css"; 2 | import App from "./App.svelte"; 3 | 4 | const app = new App({ 5 | target: document.getElementById("app"), 6 | }); 7 | 8 | export default app; 9 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-svelte/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import { svelte } from "@sveltejs/vite-plugin-svelte"; 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [svelte()], 7 | }); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vanilla/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vanilla/counter.js: -------------------------------------------------------------------------------- 1 | export function setupCounter(element) { 2 | let counter = 0; 3 | const setCounter = (count) => { 4 | counter = count; 5 | element.innerHTML = `count is ${counter}`; 6 | }; 7 | element.addEventListener("click", () => setCounter(counter + 1)); 8 | setCounter(0); 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vanilla/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-vanilla", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "devDependencies": { 12 | "vite": "^4.0.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vue/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vue/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vue/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from "vue"; 2 | import "./style.css"; 3 | import App from "./App.vue"; 4 | 5 | createApp(App).mount("#app"); 6 | -------------------------------------------------------------------------------- /e2e/samples/app/vite-vue/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import vue from "@vitejs/plugin-vue"; 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [vue()], 7 | }); 8 | -------------------------------------------------------------------------------- /e2e/samples/app/vitepress/docs/index.md: -------------------------------------------------------------------------------- 1 | # Hello VitePress 2 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["johnsoncodehk.volar", "johnsoncodehk.vscode-typescript-vue-plugin"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue", 3 | "version": "0.0.0", 4 | "scripts": { 5 | "dev": "vite", 6 | "build": "vite build", 7 | "preview": "vite preview --port 5050" 8 | }, 9 | "dependencies": { 10 | "vue": "^3.2.33" 11 | }, 12 | "devDependencies": { 13 | "@vitejs/plugin-vue": "^2.3.1", 14 | "vite": "^2.9.5" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/vue/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/app/vue/src/assets/logo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/src/components/icons/IconSupport.vue: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from "vue"; 2 | import App from "./App.vue"; 3 | 4 | createApp(App).mount("#app"); 5 | -------------------------------------------------------------------------------- /e2e/samples/app/vue/vite.config.js: -------------------------------------------------------------------------------- 1 | import { fileURLToPath, URL } from "url"; 2 | 3 | import { defineConfig } from "vite"; 4 | import vue from "@vitejs/plugin-vue"; 5 | 6 | // https://vitejs.dev/config/ 7 | export default defineConfig({ 8 | plugins: [vue()], 9 | resolve: { 10 | alias: { 11 | "@": fileURLToPath(new URL("./src", import.meta.url)), 12 | }, 13 | }, 14 | }); 15 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/.npmignore: -------------------------------------------------------------------------------- 1 | pids 2 | logs 3 | node_modules 4 | npm-debug.log 5 | coverage/ 6 | run 7 | dist 8 | .DS_Store 9 | .nyc_output 10 | .basement 11 | config.local.js 12 | basement_dist 13 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/.vuepress/components/Foo/Bar.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/.vuepress/components/OtherComponent.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/.vuepress/components/demo-component.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 16 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/.vuepress/styles/index.styl: -------------------------------------------------------------------------------- 1 | /** 2 | * Custom Styles here. 3 | * 4 | * ref:https://v1.vuepress.vuejs.org/config/#index-styl 5 | */ 6 | 7 | .home .hero img 8 | max-width 450px!important 9 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/.vuepress/styles/palette.styl: -------------------------------------------------------------------------------- 1 | /** 2 | * Custom palette here. 3 | * 4 | * ref:https://v1.vuepress.vuejs.org/zh/config/#palette-styl 5 | */ 6 | 7 | $accentColor = #3eaf7c 8 | $textColor = #2c3e50 9 | $borderColor = #eaecef 10 | $codeBgColor = #282c34 11 | -------------------------------------------------------------------------------- /e2e/samples/app/vuepress/docs/src/config/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | sidebar: auto 3 | --- 4 | 5 | # Config 6 | 7 | ## foo 8 | 9 | - Type: `string` 10 | - Default: `/` 11 | 12 | ## bar 13 | 14 | - Type: `string` 15 | - Default: `/` 16 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/archive.json: -------------------------------------------------------------------------------- 1 | { 2 | "template": "archive.pug" 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/articles/bamboo-cutter/taketori_monogatari.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/wintersmith/contents/articles/bamboo-cutter/taketori_monogatari.jpg -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/articles/red-herring/banana.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/app/wintersmith/contents/articles/red-herring/banana.png -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/authors/baker.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Miss Baker", 3 | "email": "baker@nasa.gov", 4 | "bio": "Space monkey" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/authors/the-wintersmith.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "The Wintersmith", 3 | "email": "the@wintersmith.eu", 4 | "bio": "I am the anthropomorphic personification of winter and i like turtles" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/contents/feed.json: -------------------------------------------------------------------------------- 1 | { 2 | "template": "feed.pug", 3 | "filename": "feed.xml" 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "moment": "^2.22.2", 4 | "typogr": "0.6.x", 5 | "underscore": "^1.9.1" 6 | }, 7 | "private": true 8 | } 9 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/readme.md: -------------------------------------------------------------------------------- 1 | # Blog 2 | 3 | The default [wintersmith](https://github.com/jnordberg/wintersmith) template 4 | -------------------------------------------------------------------------------- /e2e/samples/app/wintersmith/templates/author.pug: -------------------------------------------------------------------------------- 1 | 2 | mixin author(authorName) 3 | - var author = contents.authors[authorName + '.json']; 4 | span.author 5 | if author 6 | a(href='mailto:' + author.metadata.email)= author.metadata.name 7 | else 8 | = authorName 9 | -------------------------------------------------------------------------------- /e2e/samples/app/zola/content/blog/_index.md: -------------------------------------------------------------------------------- 1 | +++ 2 | title = "Hello" 3 | +++ 4 | 5 | # Hello Zola 6 | -------------------------------------------------------------------------------- /e2e/samples/db/static-mssql/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | /test-results/ 3 | -------------------------------------------------------------------------------- /e2e/samples/db/static-mssql/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-azuretools.vscode-azurefunctions"] 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/db/static-mssql/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "name": "Attach to Node Functions", 6 | "type": "node", 7 | "request": "attach", 8 | "port": 9229, 9 | "preLaunchTask": "func: host start" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /e2e/samples/db/static-mssql/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "azureFunctions.deploySubpath": "api", 3 | "azureFunctions.postDeployTask": "npm install (functions)", 4 | "azureFunctions.projectLanguage": "JavaScript", 5 | "azureFunctions.projectRuntime": "~4", 6 | "debug.internalConsoleOptions": "neverOpen", 7 | "azureFunctions.preDeployTask": "npm prune (functions)" 8 | } 9 | -------------------------------------------------------------------------------- /e2e/samples/db/static-mssql/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vanilla-basic", 3 | "version": "1.0.0", 4 | "scripts": { 5 | "start": "sirv ./src public --cors --single --no-clear --port 8000" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 3 | "recommendations": ["angular.ng-template"] 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/app/app.server.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from "@angular/core"; 2 | import { ServerModule } from "@angular/platform-server"; 3 | 4 | import { AppModule } from "./app.module"; 5 | import { AppComponent } from "./app.component"; 6 | 7 | @NgModule({ 8 | imports: [AppModule, ServerModule], 9 | bootstrap: [AppComponent], 10 | }) 11 | export class AppServerModule {} 12 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/angular-universal/src/assets/.gitkeep -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true, 3 | }; 4 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/angular-universal/src/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | AngularUniversal 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/src/styles.css: -------------------------------------------------------------------------------- 1 | /* You can add global styles to this file, and also import other style files */ 2 | -------------------------------------------------------------------------------- /e2e/samples/ssr/angular-universal/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */ 2 | { 3 | "extends": "./tsconfig.json", 4 | "compilerOptions": { 5 | "outDir": "./out-tsc/app", 6 | "types": [] 7 | }, 8 | "files": ["src/main.ts", "src/polyfills.ts"], 9 | "include": ["src/**/*.d.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/Data/WeatherForecast.cs: -------------------------------------------------------------------------------- 1 | namespace blazor_server.Data; 2 | 3 | public class WeatherForecast 4 | { 5 | public DateTime Date { get; set; } 6 | 7 | public int TemperatureC { get; set; } 8 | 9 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); 10 | 11 | public string? Summary { get; set; } 12 | } 13 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/Pages/Index.razor: -------------------------------------------------------------------------------- 1 | @page "/" 2 | 3 | Index 4 | 5 |

Hello, world!

6 | 7 | Welcome to your new app. 8 | 9 | 10 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/Pages/_Host.cshtml: -------------------------------------------------------------------------------- 1 | @page "/" 2 | @namespace blazor_server.Pages 3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 4 | @{ 5 | Layout = "_Layout"; 6 | } 7 | 8 | 9 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft.AspNetCore": "Warning" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft.AspNetCore": "Warning" 6 | } 7 | }, 8 | "AllowedHosts": "*" 9 | } 10 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/blazor-server.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net6.0 5 | enable 6 | enable 7 | blazor_server 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.eot -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.otf -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/blazor-server/wwwroot/css/open-iconic/font/fonts/open-iconic.woff -------------------------------------------------------------------------------- /e2e/samples/ssr/blazor-server/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/blazor-server/wwwroot/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/ssr/marko/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | build 3 | *.log 4 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/.meteor/.gitignore: -------------------------------------------------------------------------------- 1 | local 2 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/.meteor/.id: -------------------------------------------------------------------------------- 1 | # This file contains a token that is unique to your project. 2 | # Check it into your repository along with the rest of this directory. 3 | # It can be used for purposes such as: 4 | # - ensuring you don't accidentally deploy one app on top of another 5 | # - providing package authors with aggregated statistics 6 | 7 | wbksqqn4fnfb.l8y0oxa7w5zg 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/.meteor/platforms: -------------------------------------------------------------------------------- 1 | server 2 | browser 3 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/.meteor/release: -------------------------------------------------------------------------------- 1 | METEOR@2.7.1 2 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/client/main.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding: 10px; 3 | font-family: sans-serif; 4 | } 5 | -------------------------------------------------------------------------------- /e2e/samples/ssr/meteor/server/main.js: -------------------------------------------------------------------------------- 1 | import { Meteor } from "meteor/meteor"; 2 | 3 | Meteor.startup(() => { 4 | // code to run on server at startup 5 | }); 6 | -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = { 3 | reactStrictMode: true, 4 | }; 5 | 6 | module.exports = nextConfig; 7 | -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/pages/_app.js: -------------------------------------------------------------------------------- 1 | import "../styles/globals.css"; 2 | 3 | function MyApp({ Component, pageProps }) { 4 | return ; 5 | } 6 | 7 | export default MyApp; 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/pages/api/hello.js: -------------------------------------------------------------------------------- 1 | // Next.js API route support: https://nextjs.org/docs/api-routes/introduction 2 | 3 | export default function handler(req, res) { 4 | res.status(200).json({ name: "John Doe" }); 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/nextjs/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/ssr/nextjs/styles/globals.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | padding: 0; 4 | margin: 0; 5 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, 6 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif; 7 | } 8 | 9 | a { 10 | color: inherit; 11 | text-decoration: none; 12 | } 13 | 14 | * { 15 | box-sizing: border-box; 16 | } 17 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/.dockerignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | *.log 3 | .DS_Store 4 | .env 5 | /.cache 6 | /public/build 7 | /build 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/.env.example: -------------------------------------------------------------------------------- 1 | DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres" 2 | SESSION_SECRET="super-duper-s3cret" 3 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | 3 | /build 4 | /public/build 5 | .env 6 | 7 | /cypress/screenshots 8 | /cypress/videos 9 | /postgres-data 10 | 11 | /app/styles/tailwind.css 12 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | 3 | /build 4 | /public/build 5 | .env 6 | 7 | /cypress/screenshots 8 | /cypress/videos 9 | /postgres-data 10 | 11 | /app/styles/tailwind.css 12 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/app/entry.client.tsx: -------------------------------------------------------------------------------- 1 | import { RemixBrowser } from "@remix-run/react"; 2 | import { hydrate } from "react-dom"; 3 | 4 | hydrate(, document); 5 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/app/routes/notes/index.tsx: -------------------------------------------------------------------------------- 1 | import { Link } from "@remix-run/react"; 2 | 3 | export default function NoteIndexPage() { 4 | return ( 5 |

6 | No note selected. Select a note on the left, or{" "} 7 | 8 | create a new note. 9 | 10 |

11 | ); 12 | } 13 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/cypress.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/cypress/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | parserOptions: { 3 | tsconfigRootDir: __dirname, 4 | project: "./tsconfig.json", 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/cypress/fixtures/example.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Using fixtures to represent data", 3 | "email": "hello@cypress.io", 4 | "body": "Fixtures are a great way to mock data for responses to routes" 5 | } 6 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/cypress/support/index.ts: -------------------------------------------------------------------------------- 1 | import "@testing-library/cypress/add-commands"; 2 | import "./commands"; 3 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: "3.7" 2 | services: 3 | postgres: 4 | image: postgres:latest 5 | restart: always 6 | environment: 7 | - POSTGRES_USER=postgres 8 | - POSTGRES_PASSWORD=postgres 9 | - POSTGRES_DB=postgres 10 | ports: 11 | - "5432:5432" 12 | volumes: 13 | - ./postgres-data:/var/lib/postgresql/data 14 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/mocks/README.md: -------------------------------------------------------------------------------- 1 | # Mocks 2 | 3 | Use this to mock any third party HTTP resources that you don't have running locally and want to have mocked for local development as well as tests. 4 | 5 | Learn more about how to use this at [mswjs.io](https://mswjs.io/) 6 | 7 | For an extensive example, see the [source code for kentcdodds.com](https://github.com/kentcdodds/kentcdodds.com/blob/main/mocks/start.ts) 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/mocks/index.js: -------------------------------------------------------------------------------- 1 | require("tsconfig-paths/register"); 2 | require("ts-node").register({ transpileOnly: true }); 3 | require("./start"); 4 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/mocks/start.ts: -------------------------------------------------------------------------------- 1 | import { setupServer } from "msw/node"; 2 | 3 | const server = setupServer(); 4 | 5 | server.listen({ onUnhandledRequest: "bypass" }); 6 | console.info("🔶 Mock server running"); 7 | 8 | process.once("SIGINT", () => server.close()); 9 | process.once("SIGTERM", () => server.close()); 10 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/prisma/migrations/migration_lock.toml: -------------------------------------------------------------------------------- 1 | # Please do not edit this file manually 2 | # It should be added in your version-control system (i.e. Git) 3 | provider = "postgresql" -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Azure/static-web-apps-cli/11fe14dd05840626f97ccc0cf9faf6af79b1de45/e2e/samples/ssr/remix/public/favicon.ico -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/remix.config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @type {import('@remix-run/dev').AppConfig} 3 | */ 4 | module.exports = { 5 | cacheDirectory: "./node_modules/.cache/remix", 6 | ignoredRouteFiles: [".*", "**/*.css", "**/*.test.{js,jsx,ts,tsx}"], 7 | }; 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/remix.env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/remix.init/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "remix.init", 3 | "private": true, 4 | "main": "index.js", 5 | "license": "MIT", 6 | "dependencies": { 7 | "@iarna/toml": "^2.2.5", 8 | "sort-package-json": "^1.55.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/tailwind.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | content: ["./app/**/*.{ts,tsx,jsx,js}"], 3 | theme: { 4 | extend: {}, 5 | }, 6 | plugins: [], 7 | }; 8 | -------------------------------------------------------------------------------- /e2e/samples/ssr/remix/test/setup-test-env.ts: -------------------------------------------------------------------------------- 1 | import { installGlobals } from "@remix-run/node/globals"; 2 | import "@testing-library/jest-dom/extend-expect"; 3 | 4 | installGlobals(); 5 | -------------------------------------------------------------------------------- /e2e/vitest.config.e2e.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vitest/config"; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | include: ["*.spec.js"], 7 | mockReset: true, 8 | restoreMocks: true, 9 | server: { 10 | deps: { 11 | inline: ["to-vfile"], 12 | }, 13 | }, 14 | }, 15 | root: "e2e", 16 | }); 17 | -------------------------------------------------------------------------------- /src/cli/bin.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | import { run } from "./index.js"; 3 | 4 | const args = process.argv; 5 | run(args); 6 | process.title = ["swa", ...args.slice(2)].join(" "); 7 | -------------------------------------------------------------------------------- /src/cli/commands/docs.ts: -------------------------------------------------------------------------------- 1 | import { Command } from "commander"; 2 | import open from "open"; 3 | 4 | export function registerDocs(program: Command) { 5 | program 6 | .command("docs") 7 | .description("open Azure Static Web Apps CLI documentations") 8 | .action(async () => { 9 | await open("https://azure.github.io/static-web-apps-cli/"); 10 | }); 11 | } 12 | -------------------------------------------------------------------------------- /src/core/utils/json.spec.ts: -------------------------------------------------------------------------------- 1 | import { loadPackageJson } from "./json.js"; 2 | 3 | describe("json functions", () => { 4 | describe("loadPackageJson()", () => { 5 | it("loads package.json", () => { 6 | const pkg = loadPackageJson(); 7 | expect(pkg).toHaveProperty("name"); 8 | expect(pkg).toHaveProperty("version"); 9 | expect(pkg.type).toBe("module"); 10 | }); 11 | }); 12 | }); 13 | -------------------------------------------------------------------------------- /src/core/utils/update-notifier.ts: -------------------------------------------------------------------------------- 1 | import updateNotifier from "update-notifier"; 2 | import { loadPackageJson } from "./json.js"; 3 | 4 | const pkg = loadPackageJson(); 5 | 6 | export function notifyOnUpdate() { 7 | updateNotifier({ pkg }).notify(); 8 | } 9 | -------------------------------------------------------------------------------- /swa-db-connections/staticwebapp.database.schema.gql: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | Add your CosmosDB NoSQL database schema in this file 4 | 5 | For example: 6 | 7 | type Book @model { 8 | id: ID 9 | title: String 10 | } 11 | 12 | """ 13 | -------------------------------------------------------------------------------- /tests/_mocks/fetch.js: -------------------------------------------------------------------------------- 1 | // See https://stackoverflow.com/questions/75756917/how-to-mock-the-response-of-node-fetch-in-typescript-using-suoertest-and-vitest 2 | import { vi } from "vitest"; 3 | 4 | vi.mock("node-fetch", async () => { 5 | const actual = await vi.importActual("node-fetch"); 6 | return { 7 | ...actual, 8 | default: vi.fn(), 9 | }; 10 | }); 11 | -------------------------------------------------------------------------------- /tests/_mocks/fs.js: -------------------------------------------------------------------------------- 1 | import { vi } from "vitest"; 2 | 3 | import { fs as memFs } from "memfs"; 4 | 5 | vi.mock("fs", () => ({ ...memFs, default: memFs })); 6 | vi.mock("fs/promises", () => memFs.promises); 7 | vi.mock("node:fs", () => ({ ...memFs, default: memFs })); 8 | vi.mock("node:fs/promises", () => ({ promises: memFs.promises })); 9 | -------------------------------------------------------------------------------- /vitest.config.unit.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vitest/config"; 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | include: ["src/**/*.spec.ts"], 7 | mockReset: true, 8 | restoreMocks: true, 9 | server: { 10 | deps: { 11 | inline: ["to-vfile"], 12 | }, 13 | }, 14 | }, 15 | }); 16 | -------------------------------------------------------------------------------- /vitest.workspace.ts: -------------------------------------------------------------------------------- 1 | export default ["./vitest.config.unit.ts"]; 2 | --------------------------------------------------------------------------------