RNGS graphics server client.

Hierarchy

  • ServerClient

Constructors

  • Parameters

    Returns ServerClient

    Example

    import { ServerClient } from '@reuters-graphics/server-client';
    import type { Client } from '@reuters-graphics/server-client';

    const config: Client.Config = {
    username: '...',
    password: '...',
    apiKey: '...',
    };

    const client = new ServerClient(config);

    ... or to initialise a client to work with an existing graphic:

    const config: Client.Config = {
    username: '...',
    password: '...',
    apiKey: '...',
    graphic: 'XXXXXXXX-XXXX...', // Existing graphic UUID
    };

    const client = new ServerClient(config);

Properties

pack: PackStore

Example

client.pack

Methods

  • Parameters

    Returns Promise<void>

    Example

    import type { Graphic, RNGS } from '@reuters-graphics/server-client';

    const metadata: Graphic.GraphicMetadata = {
    title: '...',
    description: '...',
    language: 'en' as RNGS.Language,
    byline: 'Jane Doe, John Doe',
    contactEmail: 'jane.doe@thomsonreuters.com',
    desk: 'london' as Graphic.Desk,
    rootSlug: 'HEALTH-CORONAVIRUS',
    wildSlug: 'MAP',
    };

    await client.createGraphic(metadata);
  • Parameters

    Returns Promise<void>

    Example

    import type { Graphic, RNGS } from '@reuters-graphics/server-client';

    const metadata: Graphic.GraphicMetadata = {
    title: '...',
    description: '...',
    language: 'en' as RNGS.Language,
    byline: 'Jane Doe, John Doe',
    contactEmail: 'jane.doe@thomsonreuters.com',
    desk: 'london' as Graphic.Desk,
    rootSlug: 'HEALTH-CORONAVIRUS',
    wildSlug: 'MAP',
    };

    await client.updateGraphic(metadata);
  • Parameters

    Returns Promise<void>

    Example

    import type { Publishing } from '@reuters-graphics/server-client';

    // Publish all editions in the graphic ...
    await client.publishGraphic();

    // ... or publish only those editions made from particular archives
    await client.publishGraphic(['public-de.zip', 'media-de.zip']);

    // ... or pass additional publishing locations and revision type
    const publishToMedia: Publishing.PublishToMedia = true; // default false
    const publishToLynx: Publishing.PublishToLynx = false; // default false
    const revisionType: Publishing.PublishRevisionType = 'Refresh'; // default null, which will ask a user for revision type

    await client.publishGraphic([], publishToMedia, publishToLynx, revisionType);

    // ... or you can specify specific editions by name to publish to Media and Lynx
    await client.publishGraphic([], ['media-interactive'], ['interactive'], revisionType);

    // ... or you can pass arrays of archive file names and editions to target very specific editions
    await client.publishGraphic(
    [],
    [['media-en-page.zip', 'media-interactive'], ['media-en-page.zip', 'PNG']],
    [['public.zip', 'interactive']],
    revisionType
    );
  • Returns Promise<void>

    Example

    await client.deleteGraphic();
    
  • Parameters

    Returns Promise<EditionUrls>

    Example

    import type { Edition, RNGS } from '@reuters-graphics/server-client';

    const editionMetadata: Edition.EditionMetadata = {
    language: 'en' as RNGS.Language,
    title: '...',
    description: '...',
    embed: {
    declaration: '<div id="embed"></div>',
    dependencies: '<script></script>',
    },
    };

    const fileBuffer = fs.readFileSync('public.zip');

    const editions = await client.createEditions('public.zip', fileBuffer, editionMetadata);

    editions['public.zip']
    // {
    // interactive: {
    // id: '...',
    // url: 'https://...'
    // }
    // }
  • Parameters

    Returns Promise<EditionUrls>

    Example

    import type { Edition, RNGS } from '@reuters-graphics/server-client';

    const editionMetadata: Edition.EditionMetadata = {
    language: 'en' as RNGS.Language,
    title: '...',
    description: '...',
    embed: {
    declaration: '<div id="embed"></div>',
    dependencies: '<script></script>',
    },
    };

    const fileBuffer = fs.readFileSync('public.zip');

    const editions = await client.updateEditions('public.zip', fileBuffer, editionMetadata);

    editions['public.zip']
    // {
    // interactive: {
    // id: '...',
    // url: 'https://...'
    // }
    // }

Generated using TypeDoc