Socket
Socket
Sign inDemoInstall

@openfin/core

Package Overview
Dependencies
6
Maintainers
58
Versions
508
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @openfin/core

The core renderer entry point of OpenFin


Version published
Weekly downloads
1.7K
increased by20.64%
Maintainers
58
Install size
6.28 MB
Created
Weekly downloads
 

Readme

Source

ℹ️ Note: @openfin/core is changing the structure of its output. See v33 Bundling Changes

OpenFin Core

This package contains the type definitions and API entry points for the OpenFin Core API. Start here to develop OpenFin applications in TypeScript.

Libraries are also available for the following frameworks:

Installation

This package cannot be installed as a dev dependency because it is not types-only.

With npm:

$ npm i -S @openfin/core

With yarn:

$ yarn add @openfin/core

Usage

The fin export is the primary API entry point. Type definitions are defined in the package's default export.

The static fin.me object contains some information about the current runtime environment even if imported outside of an OpenFin setting. In this case, the isOpenFin property of fin.me will be false. Outside of OpenFin environments, OpenFin API calls will nullop and throw an error.

import OpenFin, { fin } from "@openfin/core"; 

const showWindow = async (identity: OpenFin.Identity) => {
   const win = await fin.Window.wrap(identity);
   await win.show();

   const isOpenFin = fin.me.isOpenFin; // false if not in OpenFin
}

Importing the type

To import the OpenFin namespace:

import OpenFin from "@openfin/core"; 

type OFWindow = OpenFin.Window;

TSConfig types array

To have the OpenFin available in your code automatically, just update your tsconfig types key:

{
  "compilerOptions": {
    "target": ...,
    "module": ...,
    ...,
    "types": ["@openfin/core/OpenFin"]
  }
}

For more information

Migrations

v33 Bundling Changes

@openfin/core is moving to a single entry file format. This means that there will be a stricter set of entry points included in the package. This differs from the previous unbundled format, in which output files were broken into many common JS modules.

These changes will allow for improved API and type discoverability via code suggestion and type inspection, and create a clearer, more dependable usage contract for consumers of the package.

Explicit imports from arbitrary files within the module directory (e.g. "@openfin/core/*") will no longer be supported in new versions of @openfin/core , for example:

import { fin } from '@openfin/core/src/mock';

Should be replaced with:

import { fin } from '@openfin/core';

Until further notice, older versions of the @openfin/core package will be compatible with newer versions of the runtime. However, new types and features will only be available in newer releases of @openfin/core

v30 Ambient type changes

Prior to v30, the OpenFin namespace was ambiently declared and always available. Starting with v30, you must import it directly or specify it in the tsconfig.

License

Copyright 2020-2023 OpenFin

The code in this package is distributed under the Apache License, Version 2.0.

However, if you run this code, it may call on the OpenFin RVM or OpenFin Runtime, which are covered by OpenFin's Developer, Community, and Enterprise licenses. You can learn more about OpenFin licensing at the links listed below or email us at support@openfin.co with questions.

FAQs

Last updated on 09 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc