diff --git a/.storybook/test-runner.ts b/.storybook/test-runner.ts
index 99cb29be5..b2839fcca 100644
--- a/.storybook/test-runner.ts
+++ b/.storybook/test-runner.ts
@@ -1,11 +1,16 @@
import type { TestRunnerConfig } from '@storybook/test-runner';
+import { getStoryContext } from '@storybook/test-runner';
import { injectAxe, checkA11y } from 'axe-playwright';
const config: TestRunnerConfig = {
async preVisit(page) {
await injectAxe(page);
},
- async postVisit(page) {
+ async postVisit(page, context) {
+ const storyContext = await getStoryContext(page, context);
+ if (storyContext.parameters?.a11y?.disable) {
+ return;
+ }
await checkA11y(page, '#storybook-root', {
detailedReport: true,
detailedReportOptions: {
diff --git a/src/lib/holocene/accordion/accordion.stories.svelte b/src/lib/holocene/accordion/accordion.stories.svelte
index d85f386b4..5053ea0f0 100644
--- a/src/lib/holocene/accordion/accordion.stories.svelte
+++ b/src/lib/holocene/accordion/accordion.stories.svelte
@@ -34,6 +34,8 @@
import { action } from '@storybook/addon-actions';
import { Story, Template } from '@storybook/addon-svelte-csf';
+ import Link from '../link.svelte';
+
import AccordionGroup from './accordion-group.svelte';
@@ -63,3 +65,20 @@
+
+
+
+ Accordion Content
+
+ docs
+
+
+
diff --git a/src/lib/holocene/accordion/accordion.svelte b/src/lib/holocene/accordion/accordion.svelte
index fd9bd4657..181b7947c 100644
--- a/src/lib/holocene/accordion/accordion.svelte
+++ b/src/lib/holocene/accordion/accordion.svelte
@@ -69,11 +69,11 @@
role="none"
>
+
-
{#if error}
diff --git a/src/lib/pages/nexus-endpoints.svelte b/src/lib/pages/nexus-endpoints.svelte
index d24206ecb..e62760e0f 100644
--- a/src/lib/pages/nexus-endpoints.svelte
+++ b/src/lib/pages/nexus-endpoints.svelte
@@ -13,6 +13,7 @@
import { timeFormat } from '$lib/stores/time-format';
import type { NexusEndpoint } from '$lib/types/nexus';
import { formatDate } from '$lib/utilities/format-date';
+ import { pluralize } from '$lib/utilities/pluralize';
import {
routeForNexusEndpoint,
routeForNexusEndpointCreate,
@@ -90,7 +91,11 @@
{/if}
{#if endpoint.spec?.allowedCallerNamespaces}
{endpoint.spec?.allowedCallerNamespaces.length} Namespaces{endpoint.spec?.allowedCallerNamespaces.length}
+ {pluralize(
+ translate('namespaces.namespace'),
+ endpoint.spec?.allowedCallerNamespaces.length,
+ )}
{/if}
diff --git a/src/routes/(app)/+layout.svelte b/src/routes/(app)/+layout.svelte
index 1b2e29136..712ad73bb 100644
--- a/src/routes/(app)/+layout.svelte
+++ b/src/routes/(app)/+layout.svelte
@@ -69,13 +69,13 @@
href: workflowsRoute,
icon: 'workflow',
label: translate('common.workflows'),
- isActive: (path) => Boolean(path.includes(workflowsRoute)),
+ isActive: (path) => path.includes(workflowsRoute),
},
{
href: schedulesRoute,
icon: 'schedules',
label: translate('common.schedules'),
- isActive: (path) => Boolean(path.includes(schedulesRoute)),
+ isActive: (path) => path.includes(schedulesRoute),
},
{
href: batchOperationsRoute,
@@ -83,13 +83,13 @@
label: translate('batch.nav-title'),
tooltip: translate('batch.list-page-title'),
animate: inProgressBatch,
- isActive: (path) => Boolean(path.includes(batchOperationsRoute)),
+ isActive: (path) => path.includes(batchOperationsRoute),
},
{
href: archivalRoute,
icon: 'archives',
label: translate('common.archive'),
- isActive: (path) => Boolean(path.includes(archivalRoute)),
+ isActive: (path) => path.includes(archivalRoute),
},
{
href: namespacesRoute,
@@ -97,26 +97,24 @@
label: translate('common.namespaces'),
divider: true,
isActive: (path) =>
- Boolean(
- path.includes(namespacesRoute) &&
- !path.includes(workflowsRoute) &&
- !path.includes(schedulesRoute) &&
- !path.includes(batchOperationsRoute) &&
- !path.includes(archivalRoute),
- ),
+ path.includes(namespacesRoute) &&
+ !path.includes(workflowsRoute) &&
+ !path.includes(schedulesRoute) &&
+ !path.includes(batchOperationsRoute) &&
+ !path.includes(archivalRoute),
},
{
href: nexusRoute,
icon: 'nexus',
label: translate('nexus.nexus'),
hidden: !$page.data?.systemInfo?.capabilities?.nexus,
- isActive: (path) => Boolean(path.includes(nexusRoute)),
+ isActive: (path) => path.includes(nexusRoute),
},
{
href: historyImportRoute,
icon: 'import',
label: translate('common.import'),
- isActive: (path) => Boolean(path.includes(historyImportRoute)),
+ isActive: (path) => path.includes(historyImportRoute),
},
{
href: 'http://docs.temporal.io',