@airspacelink/portal-types
v1.4.0
Published
AirHub Portal types
Downloads
67
Readme
@airspacelink/portal-types
Package name: Portal Types
Package author: Airspace Link
Installation:
npm install @airspacelink/portal-types
Summary
The Portal Types package is a collection of public TypeScript types intended to be used in conjunction with the Portal Apps SDK.
Types
Org
The Org
type represents a registered AirHub Portal Organization
PROPERTIES
| Property | Type | Description |
| -------- | -------- | ---------------------------------------------- |
| id
| string
| The unique ID associated with the organization |
| name
| string
| The organization's name suitable for display |
CODE
type Org = {
id: string;
name: string;
};
Jurisdiction
The Jurisdiction
type represents a specific geographical area within the Portal ecosystem.
PROPERTIES
| Property | Type | Description |
| -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ |
| geoId
| string
| The identifier associated with the jurisdiction. US jurisdictions use the FIPS code; international jurisdictions use ISO 3166. |
| name
| string
| The jurisdictions's name suitable for display |
CODE
type Jurisdiction = {
geoId: string;
name: string;
};
Session
The Session
type represents the context associated with the logged in user's account.
PROPERTIES
| Property | Type | Description |
| --------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| org
| Org
or null
| The organization through which the user has logged in. Value will be null
if user logged in to a Personal Account. |
| jurisdictions
| Jurisdiction
array | An array of jurisdictions available to the logged in user. |
CODE
type Session = {
org: Org | null;
jurisdictions: Jurisdiction[];
};
UserInfo
The UserInfo
type represents the logged in user's profile information.
PROPERTIES
| Property | Type | Description |
| ---------------------- | ----------------------- | ------------------------------------------ |
| email
| string
| The user's email address |
| firstName
| string
| The user's first name |
| lastName
| string
| The user's last name |
| phone
| string
| The user's phone number |
| certificateNumber
| string
or undefined
| The user's Pilot Certificate Number |
| certificateIssueDate
| string
or undefined
| The user's Pilot Certificate date of issue |
CODE
type UserInfo = {
email: string;
firstName: string;
lastName: string;
phone: string;
certificateNumber: string | undefined;
certificateIssueDate: string | undefined;
};
AppContext
The AppContext
type represents the execution context of the app.
PROPERTIES
| Property | Type | Description |
| ---------- | ----------------------------- | ----------------------------------------------------- |
| slot
| AppSlot
| The mounting slot of the app |
| viewport
| AppViewport
| The current Portal viewport |
| data
| JSON
| Data that Portal might decide to pass down to the app |
AppSlot
The AppSlot
type represents the mounting slot of the app. This can be one of the predefined locations within Airhub Portal.
PROPERTIES
| Slot | Type | Description |
| ----------------- | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| Default | { kind: 'default' }
| Represents the default mounting slot. |
| Operation details | { kind: 'operationDetails'; operationId: string; }
| Represents the operation details mounting slot. The operationId
field holds the id of the specific operation. |
| Flight log | { kind: 'flightLog'; flightId: string; }
| Represents the flight log mounting slot. The flightId
field holds the id of the specific flight. |
AppViewport
The AppViewport
type represents the current Airhub Portal viewport.
VALUES
| Value | Description |
| ----------- | ----------------------------------- |
| 'mobile'
| Portal considers the device mobile |
| 'desktop'
| Portal considers the device desktop |
CODE
type AppViewport = 'mobile' | 'desktop';
Copyright (c) 2023 Airspace Link