2.1.2 • Published 2 months ago

sham-ui-ssr v2.1.2

Weekly downloads
-
License
-
Repository
-
Last release
2 months ago

sham-ui-ssr

Build Status npm version MIT Licence

Server side rendering for sham-ui

Install

# npm
npm install --save-dev sham-ui-ssr
# yarn
yarn add -D sham-ui-ssr

API

Table of Contents

setup

Main function for setup hydrating components

Parameters

setup

Main function for rehydrating

Parameters
Examples
import { createDI, start } from 'sham-ui';
import setupUnsafe from 'sham-ui-unsafe';
import { setupRehydrator } from 'sham-ui-ssr/rehydrator';

const DI = createDI();
const data = JSON.parse( document.getElementById( 'data' ).innerText );
const disableRehydrating = setupRehydrator( DI, data );
mainInitializer( DI, root );
start( DI );
disableRehydrating();
setupUnsafe( DI );

Returns Function Restore function for disable rehydrating and switch to default behavior

hydrate

Hydrate all components

Parameters
Examples
import { createDI, start } from 'sham-ui';
import { setupHydrator, hydrate } from 'sham-ui-ssr/hydrator';

const DI = createDI();
const root = setupHydrator( DI );
mainInitializer( DI, root );
start( DI );
hydrate( DI ).then( storage => {
    const { html, data } = storage.hydrate();
} )

Returns Promise

hydrate

Hydrate node

Parameters

Returns string

makeRestore

Save hooks & dom services for restore after rehydrating

Parameters

Returns Function

makeRestore

Make restore function for hooks & dom

Parameters

Returns Function

Component

sham-ui component

SSRRenderResult

Result of server side renderer

Type: Object

Properties
  • component Component Rendered component instance
  • html string Rendered html
  • data string Data for component rehydrating
  • toJSON SSRToJSON Dump to JSON for jest's snapshot testing

SSRToJSON

Function for dump server side render result (using for jest-snapshots)

Type: Function

Returns SSRRenderResultSnapshot

SSRRenderResultSnapshot

Type: Object

Properties

ssr

Server side render for component

Parameters
  • componentClass Class<Component> Component class for rendering
  • componentOptions Object Options (optional, default {})
Examples
import Label from './Label.sht';
import { ssr } from 'sham-ui-ssr/testing';

it( 'renders correctly', () => {
    const meta = ssr( Label );

    expect( meta.component.ID ).toEqual( 'component' );
    expect( meta.toJSON() ).toMatchSnapshot();
} );

Returns SSRRenderResult

RenderResultSnapshot

Type: Object

Properties

RenderResult

Result of renderer

Type: Object

Properties
  • DI Object App DI container
  • component Component Rendered component instance
  • html string SSR html string
  • data string Data for rehydrating
  • toJSON ToJSON Dump to JSON for jest's snapshot testing

ToJSON

Function for dump render result (using for jest-snapshots)

Type: Function

Returns RenderResultSnapshot

ssrAndRehydrate

Render component with SSR & rehydrating

Parameters
  • componentClass Class<Component> Component class for rendering
  • componentOptions Object Options (optional, default {})
Examples
import Label from './Label.sht';
import { ssrAndRehydrate } from 'sham-ui-ssr/testing';

it( 'renders correctly', () => {
    const meta = ssrAndRehydrate( Label );

    expect( meta.component.ID ).toEqual( 'component' );
    expect( meta.toJSON() ).toMatchSnapshot();
} );

Returns RenderResult

2.1.2

2 months ago

2.1.1

2 months ago

2.1.0

2 months ago

2.0.0-alpha.4

7 months ago

2.0.0

6 months ago

2.0.0-alpha.3

8 months ago

2.0.0-alpha.1

2 years ago

2.0.0-alpha.2

1 year ago

1.0.0

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago