vike-react 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,12 +1,13 @@
1
1
  <!-- WARNING: keep links absolute in this file so they work on NPM too -->
2
2
 
3
- [<img src="https://avatars.githubusercontent.com/u/86403530?s=200&v=4" align="right" width="64" height="64">](https://vite-plugin-ssr.com)
3
+ [<img src="https://avatars.githubusercontent.com/u/86403530?s=200&v=4" align="right" width="64" height="64">](https://vike.dev)
4
4
  [![npm version](https://img.shields.io/npm/v/vike-react)](https://www.npmjs.com/package/vike-react)
5
5
 
6
6
  # `vike-react`
7
7
 
8
- React integration for [Vike](https://github.com/brillout/vite-plugin-ssr/issues/736).
8
+ React integration for [Vike](https://github.com/vikejs/vike/issues/736) (using the
9
+ [V1 design](https://vike.dev/migration/v1-design)).
9
10
 
10
- > For integrations with Vue and Solid, see the other [`vike-*` packages](https://vite-plugin-ssr.com/vike-packages).
11
+ > For integrations with Vue and Solid, see the other [`vike-*` packages](https://vike.dev/vike-packages).
11
12
 
12
13
  See [examples/](https://github.com/vikejs/vike-react/tree/main/examples).
@@ -1,4 +1,4 @@
1
- import type { ConfigEffect } from 'vite-plugin-ssr/types';
1
+ import type { ConfigEffect } from 'vike/types';
2
2
  declare const _default: {
3
3
  onRenderHtml: "import:vike-react/renderer/onRenderHtml";
4
4
  onRenderClient: "import:vike-react/renderer/onRenderClient";
@@ -35,6 +35,8 @@ import type { Component } from './types';
35
35
  declare global {
36
36
  namespace VikePackages {
37
37
  interface ConfigVikeReact {
38
+ /** The page's root React component */
39
+ Page?: Component;
38
40
  /** React element rendered and appended into &lt;head>&lt;/head> */
39
41
  Head?: Component;
40
42
  /** A component, usually common to several pages, that wraps the root component `Page` */
@@ -57,7 +59,7 @@ declare global {
57
59
  * If false, render mode is SPA. In other words, the page will only be
58
60
  * rendered in the browser.
59
61
  *
60
- * See https://vite-plugin-ssr.com/render-modes
62
+ * See https://vike.dev/render-modes
61
63
  *
62
64
  * @default true
63
65
  *
@@ -1,6 +1,6 @@
1
1
  // Depending on the value of `config.meta.ssr`, set other config options' `env`
2
2
  // accordingly.
3
- // See https://vite-plugin-ssr.com/meta#modify-existing-configurations
3
+ // See https://vike.dev/meta#modify-existing-configurations
4
4
  const toggleSsrRelatedConfig = ({ configDefinedAt, configValue }) => {
5
5
  if (typeof configValue !== 'boolean') {
6
6
  throw new Error(`${configDefinedAt} should be a boolean`);
@@ -1,10 +1,43 @@
1
1
  export { PageContextProvider };
2
2
  export { usePageContext };
3
3
  import React from 'react';
4
- import { PageContext } from './types';
4
+ import type { PageContext } from 'vike/types';
5
5
  declare function PageContextProvider({ pageContext, children }: {
6
6
  pageContext: PageContext;
7
7
  children: React.ReactNode;
8
- }): JSX.Element;
8
+ }): React.JSX.Element;
9
9
  /** Access the pageContext from any React component */
10
- declare function usePageContext(): PageContext;
10
+ declare function usePageContext(): (Partial<{
11
+ Page: unknown;
12
+ routeParams: Record<string, string>;
13
+ config: import("vike/dist/esm/shared/page-configs/Config/PageContextConfig.js").PageContextConfig;
14
+ configEntries: import("vike/dist/esm/shared/getPageFiles/getExports.js").ConfigEntries;
15
+ exports: Record<string, unknown>;
16
+ exportsAll: import("vike/dist/esm/shared/getPageFiles/getExports.js").ExportsAll;
17
+ urlOriginal: string;
18
+ is404: boolean | null;
19
+ isClientSideNavigation: boolean;
20
+ abortReason?: unknown;
21
+ abortStatusCode?: undefined;
22
+ errorWhileRendering?: unknown;
23
+ url: string;
24
+ pageExports: Record<string, unknown>;
25
+ }> & Pick<{
26
+ Page: unknown;
27
+ routeParams: Record<string, string>;
28
+ config: import("vike/dist/esm/shared/page-configs/Config/PageContextConfig.js").PageContextConfig;
29
+ configEntries: import("vike/dist/esm/shared/getPageFiles/getExports.js").ConfigEntries;
30
+ exports: Record<string, unknown>;
31
+ exportsAll: import("vike/dist/esm/shared/getPageFiles/getExports.js").ExportsAll;
32
+ urlOriginal: string;
33
+ is404: boolean | null;
34
+ isClientSideNavigation: boolean;
35
+ abortReason?: unknown;
36
+ abortStatusCode?: undefined;
37
+ errorWhileRendering?: unknown;
38
+ url: string;
39
+ pageExports: Record<string, unknown>;
40
+ }, "Page" | "pageExports" | "config" | "configEntries" | "exports" | "exportsAll" | "abortReason"> & {
41
+ isHydration: boolean;
42
+ isBackwardNavigation: boolean | null;
43
+ } & import("vike/dist/esm/shared/addUrlComputedProps.js").PageContextUrlComputedPropsClient & Vike.PageContext) | import("vike/dist/esm/shared/types.js").PageContextServer;
@@ -1,3 +1,3 @@
1
1
  export { getPageElement };
2
- import type { PageContext } from './types';
2
+ import type { PageContext } from 'vike/types';
3
3
  declare function getPageElement(pageContext: PageContext): JSX.Element;
@@ -1,5 +1,5 @@
1
1
  export { getTitle };
2
- import type { ConfigEntries } from 'vite-plugin-ssr/types';
2
+ import type { ConfigEntries } from 'vike/types';
3
3
  declare function getTitle(pageContext: {
4
4
  title?: unknown;
5
5
  configEntries: ConfigEntries;
@@ -1,3 +1,3 @@
1
1
  export default onRenderClient;
2
- import type { PageContextClient } from './types';
2
+ import type { PageContextClient } from 'vike/types';
3
3
  declare function onRenderClient(pageContext: PageContextClient): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  export default onRenderHtml;
2
- import type { PageContextServer } from './types';
3
- declare function onRenderHtml(pageContext: PageContextServer): Promise<{
4
- documentHtml: import("vite-plugin-ssr/dist/esm/node/runtime/html/renderHtml.js").TemplateWrapped;
2
+ import type { PageContext } from 'vike/types';
3
+ declare function onRenderHtml(pageContext: PageContext): Promise<{
4
+ documentHtml: import("vike/dist/esm/node/runtime/html/renderHtml.js").TemplateWrapped;
5
5
  }>;
@@ -1,6 +1,6 @@
1
1
  export default onRenderHtml;
2
2
  import { renderToString } from 'react-dom/server';
3
- import { escapeInject, dangerouslySkipEscape } from 'vite-plugin-ssr/server';
3
+ import { escapeInject, dangerouslySkipEscape } from 'vike/server';
4
4
  import { getTitle } from './getTitle.js';
5
5
  import { getPageElement } from './getPageElement.js';
6
6
  import { PageContextProvider } from './PageContextProvider.js';
@@ -1,18 +1,11 @@
1
- export type { PageContextServer };
2
- export type { PageContextClient };
3
- export type { PageContext };
4
- export type { PageProps };
5
- export type { Page };
6
1
  export type { Component };
7
- import type { PageContextBuiltInServer, PageContextBuiltInClientWithClientRouting as PageContextBuiltInClient } from 'vite-plugin-ssr/types';
8
2
  import type { ReactElement } from 'react';
9
3
  type Component = (props: any) => ReactElement;
10
- type Page = (pageProps: PageProps) => ReactElement;
11
- type PageProps = Record<string, unknown>;
12
- export type PageContextCommon = {
13
- Page: Page;
14
- pageProps?: PageProps;
15
- };
16
- type PageContextServer = PageContextBuiltInServer<Page> & PageContextCommon;
17
- type PageContextClient = PageContextBuiltInClient<Page> & PageContextCommon;
18
- type PageContext = PageContextClient | PageContextServer;
4
+ declare global {
5
+ namespace Vike {
6
+ interface PageContext {
7
+ Page: Component;
8
+ pageProps: Record<string, unknown>;
9
+ }
10
+ }
11
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vike-react",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "main": "./dist/renderer/+config.js",
6
6
  "types": "./dist/renderer/+config.d.ts",
@@ -10,26 +10,27 @@
10
10
  "./renderer/onRenderClient": "./dist/renderer/onRenderClient.js",
11
11
  "./usePageContext": "./dist/components/usePageContext.js"
12
12
  },
13
- "dependencies": {},
14
13
  "scripts": {
15
14
  "dev": "tsc --watch",
16
15
  "build": "rm -rf dist/ && tsc",
17
- "release": "release-me patch"
16
+ "release": "release-me patch",
17
+ "release:commit": "release-me commit"
18
18
  },
19
19
  "peerDependencies": {
20
20
  "react": "18.x.x",
21
21
  "react-dom": "18.x.x",
22
- "vite": "^4.3.8",
23
- "vite-plugin-ssr": "^0.4.141"
22
+ "vike": "^0.4.142",
23
+ "vite": "^4.3.8"
24
24
  },
25
25
  "devDependencies": {
26
- "@brillout/release-me": "^0.1.3",
27
- "@types/node": "^18.15.3",
28
- "@types/react": "^18.0.8",
29
- "@types/react-dom": "^18.0.3",
30
- "react": "^18.0.0",
31
- "react-dom": "^18.0.0",
32
- "typescript": "^5.0.2"
26
+ "@brillout/release-me": "^0.1.7",
27
+ "@types/node": "^18.17.18",
28
+ "@types/react": "^18.2.22",
29
+ "@types/react-dom": "^18.2.7",
30
+ "react": "^18.2.0",
31
+ "react-dom": "^18.2.0",
32
+ "typescript": "^5.2.2",
33
+ "vike": "^0.4.142"
33
34
  },
34
35
  "typesVersions": {
35
36
  "*": {