Skip to content

Commit

Permalink
feat: upgrade dependencies to the latest Angular v16.0.0-next.7 relea…
Browse files Browse the repository at this point in the history
…se (analogjs#322)
  • Loading branch information
brandonroberts authored and Villanuevand committed Sep 12, 2023
1 parent df66916 commit ff22b5e
Show file tree
Hide file tree
Showing 23 changed files with 1,859 additions and 1,793 deletions.
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,4 @@ stats.html

# Nitro
.nitro
/migrations.json
11 changes: 11 additions & 0 deletions apps/analog-app/src/main.providers.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/**
* Common providers shared with client and server-side.
*/
import { Provider } from '@angular/core';
import { provideHttpClient } from '@angular/common/http';
import { provideFileRouter } from '@analogjs/router';

export const mainProviders: Provider = [
provideFileRouter(),
provideHttpClient(),
];
24 changes: 15 additions & 9 deletions apps/analog-app/src/main.server.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,34 @@
import 'zone.js/node';
import {
provideServerRendering,
renderApplication,
ɵSERVER_CONTEXT as SERVER_CONTEXT,
} from '@angular/platform-server';
import { provideFileRouter } from '@analogjs/router';
import { withEnabledBlockingInitialNavigation } from '@angular/router';
import { enableProdMode } from '@angular/core';
import { bootstrapApplication } from '@angular/platform-browser';

import { AppComponent } from './app/app.component';
import { enableProdMode } from '@angular/core';
import { mainProviders } from './main.providers';

if (import.meta.env.PROD) {
enableProdMode();
}

export default async function render(url: string, document: string) {
const html = await renderApplication(AppComponent, {
appId: 'analog-app',
document,
url,
export function bootstrap() {
return bootstrapApplication(AppComponent, {
providers: [
provideFileRouter(withEnabledBlockingInitialNavigation()),
mainProviders,
provideServerRendering(),
{ provide: SERVER_CONTEXT, useValue: 'ssr-analog' },
],
});
}

export default async function render(url: string, document: string) {
const html = await renderApplication(bootstrap, {
document,
url,
});

return html;
}
5 changes: 2 additions & 3 deletions apps/analog-app/src/main.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import 'zone.js';
import { bootstrapApplication } from '@angular/platform-browser';
import { provideHttpClient } from '@angular/common/http';
import { provideFileRouter } from '@analogjs/router';

import { AppComponent } from './app/app.component';
import { mainProviders } from './main.providers';

bootstrapApplication(AppComponent, {
providers: [provideFileRouter(), provideHttpClient()],
providers: [mainProviders],
}).catch((err) => console.error(err));
3 changes: 2 additions & 1 deletion apps/astro-app/tsconfig.app.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
"target": "es2020",
"module": "es2020",
"lib": ["es2020", "dom"],
"skipLibCheck": true
"skipLibCheck": true,
"ignoreDeprecations": "5.0"
},
"angularCompilerOptions": {
"enableI18nLegacyMessageIdFormat": false,
Expand Down
14 changes: 14 additions & 0 deletions apps/blog-app/src/main.providers.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/**
* Common providers shared with client and server-side.
*/
import { Provider } from '@angular/core';
import { provideHttpClient } from '@angular/common/http';
import { withInMemoryScrolling } from '@angular/router';
import { provideFileRouter } from '@analogjs/router';
import { provideContent, withMarkdownRenderer } from '@analogjs/content';

export const mainProviders: Provider = [
provideFileRouter(withInMemoryScrolling({ anchorScrolling: 'enabled' })),
provideContent(withMarkdownRenderer()),
provideHttpClient(),
];
28 changes: 18 additions & 10 deletions apps/blog-app/src/main.server.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,33 @@
import 'zone.js/node';
import {
provideServerRendering,
renderApplication,
ɵSERVER_CONTEXT as SERVER_CONTEXT,
} from '@angular/platform-server';
import { enableProdMode } from '@angular/core';
import { renderApplication } from '@angular/platform-server';
import { provideContent, withMarkdownRenderer } from '@analogjs/content';
import { provideFileRouter } from '@analogjs/router';
import { withEnabledBlockingInitialNavigation } from '@angular/router';
import { bootstrapApplication } from '@angular/platform-browser';

import { AppComponent } from './app/app.component';
import { mainProviders } from './main.providers';

if (import.meta.env.PROD) {
enableProdMode();
}

export function bootstrap() {
return bootstrapApplication(AppComponent, {
providers: [
mainProviders,
provideServerRendering(),
{ provide: SERVER_CONTEXT, useValue: 'ssg-analog' },
],
});
}

export default async function render(url: string, document: string) {
const html = await renderApplication(AppComponent, {
appId: 'blog-app',
const html = await renderApplication(bootstrap, {
document,
url,
providers: [
provideFileRouter(withEnabledBlockingInitialNavigation()),
provideContent(withMarkdownRenderer()),
],
});

return html;
Expand Down
10 changes: 3 additions & 7 deletions apps/blog-app/src/main.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
import 'zone.js';
import { bootstrapApplication } from '@angular/platform-browser';
import { withInMemoryScrolling } from '@angular/router';
import { provideFileRouter } from '@analogjs/router';
import { provideContent, withMarkdownRenderer } from '@analogjs/content';

import { AppComponent } from './app/app.component';
import { mainProviders } from './main.providers';

bootstrapApplication(AppComponent, {
providers: [
provideFileRouter(withInMemoryScrolling({ anchorScrolling: 'enabled' })),
provideContent(withMarkdownRenderer()),
],
providers: [mainProviders],
}).catch((err) => console.error(err));
14 changes: 13 additions & 1 deletion jest.preset.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
const nxPreset = require('@nrwl/jest/preset').default;

module.exports = { ...nxPreset };
module.exports = {
...nxPreset,
/* TODO: Update to latest Jest snapshotFormat
* By default Nx has kept the older style of Jest Snapshot formats
* to prevent breaking of any existing tests with snapshots.
* It's recommend you update to the latest format.
* You can do this by removing snapshotFormat property
* and running tests with --update-snapshot flag.
* Example: "nx affected --targets= --update-snapshot"
* More info: https://jestjs.io/docs/upgrading-to-jest29#snapshot-format
*/
snapshotFormat: { escapeString: true, printBasicPrototype: true },
};
80 changes: 40 additions & 40 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
"scripts": {
"dev": "nx serve",
"ng": "nx",
"postinstall": "node ./decorate-angular-cli.js && ngcc --properties es2020 browser module main",
"prepare": "git config core.hookspath .githooks",
"start": "nx serve",
"build": "nx run-many --target build --all",
Expand Down Expand Up @@ -36,60 +35,61 @@
"apps/docs-app"
],
"dependencies": {
"@analogjs/content": "*",
"@angular/animations": "15.1.2",
"@angular/common": "15.1.2",
"@angular/compiler": "15.1.2",
"@angular/core": "15.1.2",
"@angular/forms": "15.1.2",
"@angular/platform-browser": "15.1.2",
"@angular/platform-browser-dynamic": "15.1.2",
"@angular/platform-server": "15.1.2",
"@angular/router": "15.1.2",
"@analogjs/content": "latest",
"@angular/animations": "^16.0.0-next.7",
"@angular/common": "^16.0.0-next.7",
"@angular/compiler": "^16.0.0-next.7",
"@angular/core": "^16.0.0-next.7",
"@angular/forms": "^16.0.0-next.7",
"@angular/platform-browser": "^16.0.0-next.7",
"@angular/platform-browser-dynamic": "^16.0.0-next.7",
"@angular/platform-server": "^16.0.0-next.7",
"@angular/router": "^16.0.0-next.7",
"@astrojs/react": "^2.0.2",
"@nrwl/angular": "15.7.0",
"@nrwl/angular": "15.9.2",
"@types/react": "^18.0.21",
"@types/react-dom": "^18.0.6",
"ajv-formats": "^2.1.1",
"front-matter": "^4.0.2",
"marked": "^4.2.12",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"rxjs": "7.5.7",
"rxjs": "7.8.0",
"tslib": "^2.4.0",
"zone.js": "~0.11.8"
"zone.js": "0.13.0"
},
"devDependencies": {
"@angular-devkit/build-angular": "15.1.3",
"@angular-devkit/core": "~15.1.3",
"@angular-devkit/schematics": "~15.1.3",
"@angular-devkit/build-angular": "^16.0.0-next.7",
"@angular-devkit/core": "^16.0.0-next.7",
"@angular-devkit/schematics": "^16.0.0-next.7",
"@angular-eslint/eslint-plugin": "15.2.0",
"@angular-eslint/eslint-plugin-template": "15.2.0",
"@angular-eslint/template-parser": "15.2.0",
"@angular/cli": "~15.1.3",
"@angular/compiler-cli": "15.1.2",
"@angular/language-service": "15.1.2",
"@angular/cli": "^16.0.0-next.7",
"@angular/compiler-cli": "^16.0.0-next.7",
"@angular/language-service": "^16.0.0-next.7",
"@astrojs/markdown-component": "^1.0.2",
"@commitlint/cli": "^17.4.2",
"@commitlint/config-conventional": "^17.4.2",
"@ngtools/webpack": "~15.1.3",
"@nrwl/cli": "15.7.0",
"@nrwl/cypress": "15.7.0",
"@nrwl/devkit": "15.7.0",
"@nrwl/eslint-plugin-nx": "15.7.0",
"@nrwl/jest": "15.7.0",
"@nrwl/js": "15.7.0",
"@nrwl/linter": "15.7.0",
"@nrwl/nx-plugin": "15.7.0",
"@nrwl/vite": "15.7.0",
"@nrwl/web": "15.7.0",
"@nrwl/workspace": "15.7.0",
"@ngtools/webpack": "^16.0.0-next.7",
"@nrwl/cli": "15.9.2",
"@nrwl/cypress": "15.9.2",
"@nrwl/devkit": "15.9.2",
"@nrwl/eslint-plugin-nx": "15.9.2",
"@nrwl/jest": "15.9.2",
"@nrwl/js": "15.9.2",
"@nrwl/linter": "15.9.2",
"@nrwl/nx-plugin": "15.9.2",
"@nrwl/vite": "15.9.2",
"@nrwl/web": "15.9.2",
"@nrwl/workspace": "15.9.2",
"@nx-plus/docusaurus": "15.0.0-rc.0",
"@schematics/angular": "~15.1.3",
"@schematics/angular": "^16.0.0-next.7",
"@swc-node/register": "^1.4.2",
"@swc/cli": "~0.1.55",
"@swc/core": "^1.2.173",
"@swc/helpers": "^0.4.14",
"@types/jest": "29.4.0",
"@types/jest": "29.4.4",
"@types/marked": "^4.0.8",
"@types/node": "18.11.18",
"@types/prismjs": "^1.26.0",
Expand All @@ -104,16 +104,16 @@
"eslint": "~8.33.0",
"eslint-config-prettier": "8.6.0",
"eslint-plugin-cypress": "^2.12.1",
"jest": "29.4.1",
"jest-environment-jsdom": "28.1.1",
"jest": "29.4.3",
"jest-environment-jsdom": "29.4.3",
"jsdom": "^21.1.0",
"jsonc-eslint-parser": "^2.1.0",
"kolorist": "^1.6.0",
"lint-staged": "^13.1.0",
"minimist": "^1.2.7",
"ng-packagr": "~15.1.1",
"ng-packagr": "^16.0.0-next.0",
"nitropack": "^1.0.0",
"nx": "15.7.0",
"nx": "15.9.2",
"playwright": "^1.30.0",
"postcss": "^8.4.21",
"postcss-import": "~15.1.0",
Expand All @@ -126,8 +126,8 @@
"start-server-and-test": "^1.15.3",
"ts-jest": "29.0.5",
"ts-node": "10.9.1",
"typescript": "4.9.4",
"vite": "4.0.4",
"typescript": "5.0.3",
"vite": "4.2.1",
"vite-tsconfig-paths": "4.0.5",
"vitest": "0.25.8",
"webpack-bundle-analyzer": "^4.7.0"
Expand Down
24 changes: 12 additions & 12 deletions packages/astro-angular/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@analogjs/astro-angular",
"version": "0.1.0-beta.7",
"description": "An Angular integration for Astro",
"description": "Use Angular components within Astro",
"type": "module",
"author": "Brandon Roberts <[email protected]>",
"exports": {
Expand Down Expand Up @@ -30,18 +30,18 @@
"@analogjs/vite-plugin-angular": "latest"
},
"peerDependencies": {
"@angular-devkit/build-angular": "^15.0.0 || ^16.0.0-next.0",
"@angular/animations": "^15.0.0 || ^16.0.0-next.0",
"@angular/common": "^15.0.0 || ^16.0.0-next.0",
"@angular/compiler-cli": "^15.0.0 || ^16.0.0-next.0",
"@angular/compiler": "^15.0.0 || ^16.0.0-next.0",
"@angular/core": "^15.0.0 || ^16.0.0-next.0",
"@angular/language-service": "^15.0.0 || ^16.0.0-next.0",
"@angular/platform-browser": "^15.0.0 || ^16.0.0-next.0",
"@angular/platform-browser-dynamic": "^15.0.0 || ^16.0.0-next.0",
"@angular/platform-server": "^15.0.0 || ^16.0.0-next.0",
"@angular-devkit/build-angular": "^16.0.0-next.0",
"@angular/animations": "^16.0.0-next.0",
"@angular/common": "^16.0.0-next.0",
"@angular/compiler-cli": "^16.0.0-next.0",
"@angular/compiler": "^16.0.0-next.0",
"@angular/core": "^16.0.0-next.0",
"@angular/language-service": "^16.0.0-next.0",
"@angular/platform-browser": "^16.0.0-next.0",
"@angular/platform-browser-dynamic": "^16.0.0-next.0",
"@angular/platform-server": "^16.0.0-next.0",
"rxjs": "^7.5.6",
"zone.js": "^0.11.0",
"zone.js": "^0.13.0",
"tslib": "^2.4.0"
}
}
23 changes: 14 additions & 9 deletions packages/astro-angular/src/server.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@ import {
} from '@angular/core';
import {
BEFORE_APP_SERIALIZED,
provideServerRendering,
renderApplication,
} from '@angular/platform-server';
import { bootstrapApplication } from '@angular/platform-browser';

const ANALOG_ASTRO_STATIC_PROPS = new InjectionToken<{
props: Record<string, unknown>;
Expand Down Expand Up @@ -77,17 +79,20 @@ async function renderToStaticMarkup(
const mirror = reflectComponentType(Component);
const appId = mirror?.selector || Component.name.toString().toLowerCase();
const document = `<${appId}></${appId}>`;
const bootstrap = () =>
bootstrapApplication(Component, {
providers: [
{
provide: ANALOG_ASTRO_STATIC_PROPS,
useValue: { props, mirror },
},
STATIC_PROPS_HOOK_PROVIDER,
provideServerRendering(),
],
});

const html = await renderApplication(Component, {
appId,
const html = await renderApplication(bootstrap, {
document,
providers: [
{
provide: ANALOG_ASTRO_STATIC_PROPS,
useValue: { props, mirror },
},
STATIC_PROPS_HOOK_PROVIDER,
],
});

return { html };
Expand Down
Loading

0 comments on commit ff22b5e

Please sign in to comment.