Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
144 changes: 142 additions & 2 deletions docs/appregistry.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,47 @@ To "stop" an application when a view should be destroyed, call `AppRegistry.unmo
static setWrapperComponentProvider(provider)
```

**Parameters:**

| Name | Type | Required |
| -------- | ----------------- | -------- |
| provider | ComponentProvider | yes |

---

### `enableArchitectureIndicator()`

```jsx
static enableArchitectureIndicator(enabled)
```

**Parameters:**

| Name | Type | Required |
| ------- | ------- | -------- |
| enabled | boolean | yes |

---

### `registerConfig()`

```jsx
static registerConfig(config)
static registerConfig([config])
```

**Parameters:**

| Name | Type | Required | Description |
| ------ | --------- | -------- | ----------- |
| config | AppConfig | yes | See below. |

Valid `AppConfig` keys are:

- 'appKey' (string)- Required.
- 'component' (ComponentProvider) - Optional.
- 'run' (Function) - Optional.
- 'section' (boolean) - Optional.

---

### `registerComponent()`
Expand All @@ -44,6 +77,14 @@ static registerConfig(config)
static registerComponent(appKey, componentProvider, section?)
```

**Parameters:**

| Name | Type | Required |
| ----------------- | ----------------- | -------- |
| appKey | string | yes |
| componentProvider | ComponentProvider | yes |
| section | boolean | no |

---

### `registerRunnable()`
Expand All @@ -52,6 +93,13 @@ static registerComponent(appKey, componentProvider, section?)
static registerRunnable(appKey, run)
```

**Parameters:**

| Name | Type | Required |
| ------ | -------- | -------- |
| appKey | string | yes |
| run | Function | yes |

---

### `registerSection()`
Expand All @@ -60,6 +108,13 @@ static registerRunnable(appKey, run)
static registerSection(appKey, component)
```

**Parameters:**

| Name | Type | Required |
| --------- | ----------------- | -------- |
| appKey | string | yes |
| component | ComponentProvider | yes |

---

### `getAppKeys()`
Expand All @@ -68,14 +123,16 @@ static registerSection(appKey, component)
static getAppKeys()
```

---
Returns an Array of AppKeys

### `getSectionKeys()`

```jsx
static getSectionKeys()
```

Returns an Array of SectionKeys

---

### `getSections()`
Expand All @@ -84,6 +141,11 @@ static getSectionKeys()
static getSections()
```

Returns all Runnables which is an object with key of `AppKeys` and value of type of `Runnable` which consist of:

- 'component' (ComponentProvider).
- 'run' (Function).

---

### `getRunnable()`
Expand All @@ -92,6 +154,11 @@ static getSections()
static getRunnable(appKey)
```

Returns a `Runnable` object which consist of:

- 'component' (ComponentProvider).
- 'run' (Function).

---

### `getRegistry()`
Expand All @@ -100,6 +167,11 @@ static getRunnable(appKey)
static getRegistry()
```

Returns a type `Registry` which consist of:

- 'sections' (Array of strings).
- 'runnables' (Runnables).

---

### `setComponentProviderInstrumentationHook()`
Expand All @@ -108,6 +180,19 @@ static getRegistry()
static setComponentProviderInstrumentationHook(hook)
```

**Parameters:**

| Name | Type | Required | Description |
| ---- | -------- | -------- | ----------- |
| hook | Function | yes | See below. |

A valid `hook` accepts the following as arguments:

- 'component' (ComponentProvider)- Required.
- 'scopedPerformanceLogger' (IPerformanceLogger)- Required.

The `hook` function returns a React Component

---

### `runApplication()`
Expand All @@ -116,6 +201,15 @@ static setComponentProviderInstrumentationHook(hook)
static runApplication(appKey, appParameters)
```

Loads the JavaScript bundle and runs the app.

**Parameters:**

| Name | Type | Required |
| ------------- | ------ | -------- |
| appKey | string | yes |
| appParameters | any | yes |

---

### `unmountApplicationComponentAtRootTag()`
Expand All @@ -124,6 +218,14 @@ static runApplication(appKey, appParameters)
static unmountApplicationComponentAtRootTag(rootTag)
```

Stops an application when a view should be destroyed.

**Parameters:**

| Name | Type | Required |
| ------- | ------ | -------- |
| rootTag | number | yes |

---

### `registerHeadlessTask()`
Expand All @@ -134,6 +236,16 @@ static registerHeadlessTask(taskKey, taskProvider)

Register a headless task. A headless task is a bit of code that runs without a UI. @param taskKey the key associated with this task @param taskProvider a promise returning function that takes some data passed from the native side as the only argument; when the promise is resolved or rejected the native side is notified of this event and it may decide to destroy the JS context.

**Parameters:**

| Name | Type | Required | Description |
| ------------ | ------------ | -------- | ----------- |
| taskKey | String | yes | See below. |
| taskProvider | TaskProvider | yes | See below. |

- A valid `TaskProvider` is a function that returns a `Task`.
- A `Task` is a function that accepts any data as argument and returns a Promise that resolves to undefined.

---

### `registerCancellableHeadlessTask()`
Expand All @@ -144,6 +256,19 @@ static registerCancellableHeadlessTask(taskKey, taskProvider, taskCancelProvider

Register a headless task which can be cancelled. A headless task is a bit of code that runs without a UI. @param taskKey the key associated with this task @param taskProvider a promise returning function that takes some data passed from the native side as the only argument; when the promise is resolved or rejected the native side is notified of this event and it may decide to destroy the JS context. @param taskCancelProvider a void returning function that takes no arguments; when a cancellation is requested, the function being executed by taskProvider should wrap up and return ASAP.

**Parameters:**

| Name | Type | Required | Description |
| ------------------ | ------------------ | -------- | ----------- |
| taskKey | String | yes | See below. |
| taskProvider | TaskProvider | yes | See below. |
| taskCancelProvider | TaskCancelProvider | yes | See below. |

- A valid `TaskProvider` is a function that returns a `Task`.
- A `Task` is a function that accepts any data as argument and returns a Promise that resolves to undefined.
- A valid `TaskCancelProvider` is a function that returns a `TaskCanceller`.
- A `TaskCanceller` is a function that accepts no argument and returns void.

---

### `startHeadlessTask()`
Expand All @@ -156,6 +281,14 @@ Only called from native code. Starts a headless task.

@param taskId the native id for this task instance to keep track of its execution @param taskKey the key for the task to start @param data the data to pass to the task

**Parameters:**

| Name | Type | Required |
| ------- | ------ | -------- |
| taskId | number | yes |
| taskKey | string | yes |
| data | any | yes |

---

### `cancelHeadlessTask()`
Expand All @@ -167,3 +300,10 @@ static cancelHeadlessTask(taskId, taskKey)
Only called from native code. Cancels a headless task.

@param taskId the native id for this task instance that was used when startHeadlessTask was called @param taskKey the key for the task that was used when startHeadlessTask was called

**Parameters:**

| Name | Type | Required |
| ------- | ------ | -------- |
| taskId | number | yes |
| taskKey | string | yes |