@equinor/fusion-framework-dev-portal 11.0.12 → 11.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/main.js +38687 -28433
- package/package.json +23 -21
package/README.md
CHANGED
|
@@ -13,6 +13,8 @@ Use this package when you need a portal host for local app development. For the
|
|
|
13
13
|
- **Portal shell**: A React application that renders the top bar, context selector, and an app mounting area.
|
|
14
14
|
- **Application loader**: Dynamically initializes and mounts a Fusion app by its `appKey`, handling manifest resolution, script loading, and teardown.
|
|
15
15
|
- **Framework modules**: The portal pre-configures telemetry, navigation, bookmarks, feature flags, analytics, AG Grid, Roles V2, and service integrations so loaded apps inherit a realistic environment.
|
|
16
|
+
- **Help side sheet**: Opens when an app calls `useHelpCenter()`. A production-shaped sidebar lists the current app's articles from the `help` service (typically local help docs served by `ffc mock-server`), with an article index for `openHelp()`, an FAQ page for `openFaqs()`, and a simple search over articles and FAQs for `openSearch()`. Release notes and other production-only pages show a "not supported in the dev portal" message. See [Test help articles locally](../utils/openapi-mock-server/docs/testing-help-articles.md).
|
|
17
|
+
- **Analytics in mock mode**: Registers the Fusion portal's `app-loaded`, `app-selected`, and `context-selected` collectors. With `--mock`, it also sends analytics — including an app's `useTrackFeature` events — to the `monitor` service of the local mock server, the same way the Fusion portal sends them in production (`portal.id` is `dev-portal`). Without `--mock`, no analytics leave the browser; the `fusionLogAnalytics` feature flag still logs them to the console.
|
|
16
18
|
- **Roles V2 integration**: The person side sheet uses the shared compact Roles view, and the application loader can recover when an app requires access roles during initialization.
|
|
17
19
|
- **Context navigation plugin**: The portal enables `enableContextNavigation` from `@equinor/fusion-framework-plugin-context-navigation` so context changes and app switches keep the URL in sync automatically.
|
|
18
20
|
|
|
@@ -96,11 +98,13 @@ The portal is composed of these internal parts:
|
|
|
96
98
|
|
|
97
99
|
- **`render`** — Entry point; creates a React root with theme, framework, and people-resolver providers.
|
|
98
100
|
- **`configure`** — Configures all framework modules (telemetry, navigation, context navigation, bookmarks, feature flags, analytics, AG Grid, services).
|
|
101
|
+
- **`analytics/`** — `configureAnalytics` registers the portal's collectors and adapters, and sends analytics to the mock Monitor service only when `resolveMockServerUrl()` finds the mock server origin the dev server sets on `window.FUSION_MOCK_SERVER_URL` for `--mock`.
|
|
99
102
|
- **Context configuration** — `enableContext` wires the context module's path generator and path extractor to the shared context-navigation URL utilities.
|
|
100
103
|
- **`Router`** — Sets up routes with `react-router` via the navigation module; routes `/apps/:appKey/*` to the app loader.
|
|
101
104
|
- **`AppLoader`** — Resolves, initializes, and mounts a Fusion app by key; handles loading states and errors.
|
|
102
105
|
- **Roles recovery** — Wraps the application loader in `AccessRoleBoundary` so a user can activate an eligible claimable role and retry an app blocked by `builder.requireAccessRoles`.
|
|
103
|
-
- **`Header`** — Top bar with the Fusion logo, context selector, bookmark toggle, and
|
|
106
|
+
- **`Header`** — Top bar with the Fusion logo, context selector, bookmark toggle, person settings, and the help side sheet.
|
|
107
|
+
- **Help side sheet** — Listens for `@Portal::FusionHelp::open`, lists `GET /apps/{appKey}/articles` in a collapsible sidebar, renders `GET /articles/{slug}` as markdown, lists `GET /apps/{appKey}/faqs` as expandable questions, and searches with `POST /search`. A labelled navigation landmark, `aria-current`, and stable `data-testid`s (`help-nav-article`, `help-article-title`, `help-search-result`, `help-not-found`, `help-unsupported`) support Playwright and synthetic agents.
|
|
104
108
|
- **Person side sheet** — Renders `<RolesView compact />` inside the React `RolesProvider` for active, claimable, and recently expired role assignments.
|
|
105
109
|
- **`ContextSelector`** — Wired to the current app's context module for searching and selecting context items.
|
|
106
110
|
- **`enableContextNavigation`** — Registers the portal-level context navigation plugin that reconciles the active context with the browser URL.
|