@amedia/brick-mcp 1.0.1 → 1.0.2
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/data/components/brick-alt-teaser.md +9 -4
- package/data/components/brick-button.md +3 -2
- package/data/components/brick-byline.md +138 -0
- package/data/components/brick-carousel.md +8 -6
- package/data/components/brick-classnames.md +19 -14
- package/data/components/brick-dialog.md +3 -3
- package/data/components/brick-expand.md +129 -0
- package/data/components/brick-illustrations.md +6 -5
- package/data/components/brick-pill.md +9 -7
- package/data/components/brick-player.md +6 -3
- package/data/components/brick-share.md +5 -2
- package/data/components/brick-skip-link.md +78 -0
- package/data/components/brick-stepper.md +2 -2
- package/data/components/brick-teaser.md +8 -7
- package/data/components/brick-tokens.md +12 -8
- package/data/components-metadata.json +41 -29
- package/dist/data/components/brick-alt-teaser.md +9 -4
- package/dist/data/components/brick-button.md +3 -2
- package/dist/data/components/brick-byline.md +138 -0
- package/dist/data/components/brick-carousel.md +8 -6
- package/dist/data/components/brick-classnames.md +19 -14
- package/dist/data/components/brick-dialog.md +3 -3
- package/dist/data/components/brick-expand.md +129 -0
- package/dist/data/components/brick-illustrations.md +6 -5
- package/dist/data/components/brick-pill.md +9 -7
- package/dist/data/components/brick-player.md +6 -3
- package/dist/data/components/brick-share.md +5 -2
- package/dist/data/components/brick-skip-link.md +78 -0
- package/dist/data/components/brick-stepper.md +2 -2
- package/dist/data/components/brick-teaser.md +8 -7
- package/dist/data/components/brick-tokens.md +12 -8
- package/dist/data/components-metadata.json +41 -29
- package/package.json +32 -32
- package/scripts/check-docs-versions.js +121 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-carousel
|
|
3
|
-
version: 2.
|
|
3
|
+
version: 2.3.5
|
|
4
4
|
selector: brick-carousel-v2
|
|
5
5
|
category: Layout
|
|
6
6
|
tags:
|
|
@@ -25,7 +25,7 @@ use_cases:
|
|
|
25
25
|
media-galleries,
|
|
26
26
|
responsive-layouts,
|
|
27
27
|
]
|
|
28
|
-
related: [brick-teaser, brick-image, brick-player]
|
|
28
|
+
related: [brick-teaser, brick-image, brick-player, brick-teaser-reels]
|
|
29
29
|
---
|
|
30
30
|
|
|
31
31
|
# Brick Carousel
|
|
@@ -35,7 +35,7 @@ A simple, accessible carousel component for displaying any type of content in a
|
|
|
35
35
|
## Key Capabilities
|
|
36
36
|
|
|
37
37
|
- Fully accessible with semantic markup, keyboard navigation, and ARIA support
|
|
38
|
-
- Supports
|
|
38
|
+
- Supports five layout types: carousel (default), gallery (full-width single items), compact (dense layout), wide (two wide slides on desktop), and reels (vertical short-form content)
|
|
39
39
|
- Responsive design that adapts to container width (1-3 items visible depending on space)
|
|
40
40
|
- Client-side and server-side rendering support
|
|
41
41
|
- Drag-to-scroll functionality on desktop
|
|
@@ -47,9 +47,11 @@ A simple, accessible carousel component for displaying any type of content in a
|
|
|
47
47
|
|
|
48
48
|
| Attribute | Type | Default | Required | Description |
|
|
49
49
|
| ------------------------- | -------------------------------------- | ------------ | ---------------- | ---------------------------------------------------------------------------------------------------------------------------- |
|
|
50
|
-
| `data-version` | `"carousel" \| "gallery" \| "compact"` | `"carousel"` | No | Layout type. "carousel" shows 1-3 items, "gallery" shows 1 full-width item, "compact" provides a denser layout
|
|
50
|
+
| `data-version` | `"carousel" \| "gallery" \| "compact" \| "wide" \| "reels"` | `"carousel"` | No | Layout type. "carousel" shows 1-3 items, "gallery" shows 1 full-width item, "compact" provides a denser layout, "wide" shows two wide slides on desktop, "reels" for vertical short-form content |
|
|
51
51
|
| `data-min-slides-to-show` | `string` (number) | `"1"` | No | Minimum number of slides to show. When set to "2" and only 2 children exist, shows both in a fraction grid without scrolling |
|
|
52
52
|
| `data-hide-btn-start-end` | `boolean` | `false` | No | Hides navigation buttons when at start/end of carousel. Not recommended for content wrapped in links to avoid misclicks |
|
|
53
|
+
| `data-padding-inline` | `boolean` | `false` | No | Adds inline padding to the carousel content grid |
|
|
54
|
+
| `data-slide-width` | `"fill" \| "hug"` | - | No | Controls whether slides fill the container ("fill") or hug their content ("hug") |
|
|
53
55
|
| `dataItems` | `string[]` | - | No (Yes for SSR) | Array of HTML content strings for server-side rendering. Each item is automatically wrapped with proper `<li>` markup |
|
|
54
56
|
|
|
55
57
|
## Examples
|
|
@@ -59,7 +61,7 @@ A simple, accessible carousel component for displaying any type of content in a
|
|
|
59
61
|
```html
|
|
60
62
|
<script
|
|
61
63
|
type="module"
|
|
62
|
-
src="https://assets.acdn.no/pkg/@amedia/brick-carousel/2.
|
|
64
|
+
src="https://assets.acdn.no/pkg/@amedia/brick-carousel/2.3.5/brick-carousel.js"
|
|
63
65
|
></script>
|
|
64
66
|
|
|
65
67
|
<brick-carousel-v2>
|
|
@@ -352,4 +354,4 @@ The `data-hide-btn-start-end` attribute should generally not be used when carous
|
|
|
352
354
|
|
|
353
355
|
## Version
|
|
354
356
|
|
|
355
|
-
Current version: 2.
|
|
357
|
+
Current version: 2.3.5
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-classnames
|
|
3
|
-
version:
|
|
3
|
+
version: 3.0.2
|
|
4
4
|
category: Utility
|
|
5
|
-
tags: [utility, css, theming, design-system, classnames]
|
|
5
|
+
tags: [utility, css, theming, design-system, classnames, esm]
|
|
6
6
|
use_cases: [theming, styling, design-tokens, css-variables]
|
|
7
7
|
related: [brick-themes, brick-tokens]
|
|
8
8
|
---
|
|
@@ -16,18 +16,19 @@ A utility module that converts design theme names into CSS-safe class names for
|
|
|
16
16
|
- Converts design theme names to CSS-safe class names
|
|
17
17
|
- Ensures correct scoping for theme-specific CSS variables
|
|
18
18
|
- Works seamlessly with brick-tokens theme CSS files
|
|
19
|
-
- TypeScript support with type-safe design names
|
|
19
|
+
- TypeScript support with type-safe design names via `Design` type from `@amedia/brick-themes`
|
|
20
20
|
- Simple, single-function API
|
|
21
|
+
- ESM-only package (CommonJS support removed in v3)
|
|
21
22
|
|
|
22
23
|
## API
|
|
23
24
|
|
|
24
25
|
### `designNameToClassName(designName: Design): string`
|
|
25
26
|
|
|
26
|
-
Converts a design theme name to a CSS-safe class name that corresponds with theme classes in brick-tokens.
|
|
27
|
+
Converts a design theme name to a CSS-safe class name that corresponds with theme classes in brick-tokens. Internally splits the name on underscores, filters empty segments, capitalizes each word, and prepends `theme`.
|
|
27
28
|
|
|
28
29
|
**Parameters:**
|
|
29
30
|
|
|
30
|
-
- `designName`: `Design` -
|
|
31
|
+
- `designName`: `Design` - A design name from `@amedia/brick-themes` (e.g., `'nettavisen' | 'alt' | 'alfa' | 'bravo' | 'charlie'`)
|
|
31
32
|
|
|
32
33
|
**Returns:** `string` - A CSS class name (e.g., `'themeAlt'`, `'themeBravo'`)
|
|
33
34
|
|
|
@@ -49,6 +50,8 @@ const html = `<div class="${cssClass}">
|
|
|
49
50
|
### With CSS Variables
|
|
50
51
|
|
|
51
52
|
```javascript
|
|
53
|
+
import { designNameToClassName } from '@amedia/brick-classnames';
|
|
54
|
+
|
|
52
55
|
const className = designNameToClassName('bravo');
|
|
53
56
|
// Returns: 'themeBravo'
|
|
54
57
|
|
|
@@ -72,10 +75,10 @@ const markup = `<div class="${className}">
|
|
|
72
75
|
import { designNameToClassName } from '@amedia/brick-classnames';
|
|
73
76
|
|
|
74
77
|
designNameToClassName('nettavisen'); // 'themeNettavisen'
|
|
75
|
-
designNameToClassName('alt');
|
|
76
|
-
designNameToClassName('alfa');
|
|
77
|
-
designNameToClassName('bravo');
|
|
78
|
-
designNameToClassName('charlie');
|
|
78
|
+
designNameToClassName('alt'); // 'themeAlt'
|
|
79
|
+
designNameToClassName('alfa'); // 'themeAlfa'
|
|
80
|
+
designNameToClassName('bravo'); // 'themeBravo'
|
|
81
|
+
designNameToClassName('charlie'); // 'themeCharlie'
|
|
79
82
|
```
|
|
80
83
|
|
|
81
84
|
## Framework Integration
|
|
@@ -111,16 +114,18 @@ function ThemedContainer({ design, children }) {
|
|
|
111
114
|
## Technical Details
|
|
112
115
|
|
|
113
116
|
- **Package**: `@amedia/brick-classnames`
|
|
114
|
-
- **Type**: Utility function
|
|
115
|
-
- **
|
|
116
|
-
- **
|
|
117
|
+
- **Type**: Utility function (ESM only)
|
|
118
|
+
- **Module format**: ES modules only — no CommonJS
|
|
119
|
+
- **Dependencies**: `@amedia/brick-themes` (provides the `Design` type)
|
|
120
|
+
- **Output format**: PascalCased class name with `theme` prefix (e.g., `'themeAlt'`, `'themeBravo'`)
|
|
117
121
|
|
|
118
122
|
## Important Notes
|
|
119
123
|
|
|
124
|
+
- **Breaking change in v3.0.0**: CommonJS support has been removed. Consumers must use ESM `import` syntax — `require()` will not work.
|
|
120
125
|
- You must load the corresponding theme CSS file from Eik to use the CSS variables
|
|
121
126
|
- Theme CSS files are available at: `https://assets.acdn.no/pkg/@amedia/brick-tokens/v2/css/theme-{name}.css`
|
|
122
127
|
- The class name provides scoping for CSS variables defined in brick-tokens
|
|
123
|
-
- TypeScript provides autocomplete and validation for design names
|
|
128
|
+
- TypeScript provides autocomplete and validation for design names via the `Design` type from `@amedia/brick-themes`
|
|
124
129
|
|
|
125
130
|
## Common Patterns
|
|
126
131
|
|
|
@@ -144,4 +149,4 @@ document.body.className = className;
|
|
|
144
149
|
|
|
145
150
|
## Version
|
|
146
151
|
|
|
147
|
-
Current version:
|
|
152
|
+
Current version: 3.0.2
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-dialog
|
|
3
|
-
version: 2.
|
|
3
|
+
version: 2.1.15
|
|
4
4
|
selector: brick-dialog-v2
|
|
5
5
|
category: Feedback
|
|
6
6
|
tags:
|
|
@@ -447,7 +447,7 @@ const dialogId = `dialog-${Math.random().toString(36).substring(2)}`;
|
|
|
447
447
|
|
|
448
448
|
### Server-Side Rendering
|
|
449
449
|
|
|
450
|
-
The current version (2.
|
|
450
|
+
The current version (2.1.15) does not support server-side rendering. Future versions may add this capability if needed.
|
|
451
451
|
|
|
452
452
|
### Template Tag Attributes
|
|
453
453
|
|
|
@@ -455,4 +455,4 @@ Use `data-name` (not `name`) for template tag identification. This was changed i
|
|
|
455
455
|
|
|
456
456
|
## Version
|
|
457
457
|
|
|
458
|
-
Current version: 2.
|
|
458
|
+
Current version: 2.1.15
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brick-expand
|
|
3
|
+
version: 0.0.27
|
|
4
|
+
selector: brick-expand-v0
|
|
5
|
+
category: Layout
|
|
6
|
+
tags: [expand, collapse, accordion, show-more, content-toggle, read-more]
|
|
7
|
+
use_cases:
|
|
8
|
+
[
|
|
9
|
+
long-content,
|
|
10
|
+
read-more,
|
|
11
|
+
article-truncation,
|
|
12
|
+
collapsible-sections,
|
|
13
|
+
progressive-disclosure,
|
|
14
|
+
]
|
|
15
|
+
related: [brick-button, brick-tokens]
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# Brick Expand
|
|
19
|
+
|
|
20
|
+
A container component for content that can be expanded from a collapsed state, with animated transitions and a toggle button.
|
|
21
|
+
|
|
22
|
+
## Key Capabilities
|
|
23
|
+
|
|
24
|
+
- Expand/collapse content with animated height transitions
|
|
25
|
+
- Two visual variants: primary (default) and secondary
|
|
26
|
+
- Automatic button generation using brick-button
|
|
27
|
+
- Gradient overlay on collapsed content
|
|
28
|
+
- Accessibility-enforced: requires `data-aria-label` for collapsed state
|
|
29
|
+
- Collapsed content is made inert (not focusable/interactable)
|
|
30
|
+
- One-way expand: once expanded, the button is removed and content stays expanded
|
|
31
|
+
- Server-side rendering support via template submodule
|
|
32
|
+
|
|
33
|
+
## Props/Attributes
|
|
34
|
+
|
|
35
|
+
| Attribute | Type | Default | Required | Description |
|
|
36
|
+
| ---------------------- | ---------------------------- | ------------- | ----------------------- | --------------------------------------------------------- |
|
|
37
|
+
| `data-expanded-state` | `"expanded" \| "collapsed"` | `"expanded"` | no | Initial state of the content |
|
|
38
|
+
| `data-version` | `"primary" \| "secondary"` | `"primary"` | no | Visual style variant |
|
|
39
|
+
| `data-button-label` | string | - | yes (when collapsed) | Label text for the expand button |
|
|
40
|
+
| `data-aria-label` | string | - | yes (when collapsed) | ARIA label for the expand button and content region |
|
|
41
|
+
|
|
42
|
+
## Examples
|
|
43
|
+
|
|
44
|
+
### Collapsed Content (Read More)
|
|
45
|
+
|
|
46
|
+
```html
|
|
47
|
+
<brick-expand-v0
|
|
48
|
+
data-expanded-state="collapsed"
|
|
49
|
+
data-button-label="Les mer"
|
|
50
|
+
data-aria-label="Les mer om artikkelen"
|
|
51
|
+
data-version="primary"
|
|
52
|
+
>
|
|
53
|
+
<brick-expand-content>
|
|
54
|
+
<p>This is the content that will be partially hidden until the user clicks expand.</p>
|
|
55
|
+
<p>More content here that is initially hidden...</p>
|
|
56
|
+
</brick-expand-content>
|
|
57
|
+
</brick-expand-v0>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Already Expanded Content
|
|
61
|
+
|
|
62
|
+
```html
|
|
63
|
+
<brick-expand-v0 data-expanded-state="expanded">
|
|
64
|
+
<brick-expand-content>
|
|
65
|
+
<p>This content is fully visible from the start. No button is shown.</p>
|
|
66
|
+
</brick-expand-content>
|
|
67
|
+
</brick-expand-v0>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Secondary Variant
|
|
71
|
+
|
|
72
|
+
```html
|
|
73
|
+
<brick-expand-v0
|
|
74
|
+
data-expanded-state="collapsed"
|
|
75
|
+
data-button-label="Vis hele artikkelen"
|
|
76
|
+
data-aria-label="Vis hele artikkelen"
|
|
77
|
+
data-version="secondary"
|
|
78
|
+
>
|
|
79
|
+
<brick-expand-content>
|
|
80
|
+
<p>Content with secondary visual styling...</p>
|
|
81
|
+
</brick-expand-content>
|
|
82
|
+
</brick-expand-v0>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Server-Side Rendering
|
|
86
|
+
|
|
87
|
+
```javascript
|
|
88
|
+
import { renderBrickExpand } from '@amedia/brick-expand/template';
|
|
89
|
+
|
|
90
|
+
const expandHTML = renderBrickExpand({
|
|
91
|
+
dataExpandedState: 'collapsed',
|
|
92
|
+
dataButtonLabel: 'Les mer',
|
|
93
|
+
dataAriaLabel: 'Les mer om artikkelen',
|
|
94
|
+
dataVersion: 'primary',
|
|
95
|
+
children: '<p>Content to be expanded...</p>',
|
|
96
|
+
});
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Accessibility
|
|
100
|
+
|
|
101
|
+
- **Mandatory `data-aria-label`**: Required when using collapsed state. If not provided, the component defaults to expanded state and throws an error
|
|
102
|
+
- **Inert content**: When collapsed, the content region gets `inert` and `tabindex="-1"` attributes, preventing focus on hidden content
|
|
103
|
+
- **ARIA attributes**: The expand button includes `aria-expanded` and `aria-controls` linking to the content region
|
|
104
|
+
- **Content region**: Wrapped in a `role="region"` element with `aria-label`
|
|
105
|
+
- **Reduced motion**: Respects `prefers-reduced-motion` for transition animations
|
|
106
|
+
|
|
107
|
+
## Technical Details
|
|
108
|
+
|
|
109
|
+
- **Custom Element**: `brick-expand-v0`
|
|
110
|
+
- **Base Class**: BrickElement (from @amedia/brick-template)
|
|
111
|
+
- **Dependencies**:
|
|
112
|
+
- @amedia/brick-button (expand button)
|
|
113
|
+
- @amedia/brick-template (base class)
|
|
114
|
+
- @amedia/brick-tokens (design tokens)
|
|
115
|
+
- **Observed Attributes**: `children-rendered`, `data-expanded-state`
|
|
116
|
+
- **SSR Compatible**: Yes, via `renderBrickExpand` from template submodule
|
|
117
|
+
|
|
118
|
+
## Important Notes
|
|
119
|
+
|
|
120
|
+
- **One-way expand**: Once content is expanded, the button is removed and the content stays expanded permanently. There is no re-collapse
|
|
121
|
+
- **Gradient overlay**: Collapsed content shows a gradient overlay at the bottom to indicate more content is available
|
|
122
|
+
- **Button label required**: Both `data-button-label` and `data-aria-label` are required for collapsed state. Without them, the component defaults to expanded
|
|
123
|
+
- **Transition duration**: For content taller than 1000px, the transition duration is automatically increased to 1000ms for smoother animation
|
|
124
|
+
- **Content wrapping**: Child content must be placed inside `<brick-expand-content>` element
|
|
125
|
+
- The `isRendered` flag in SSR prevents client-side re-rendering of server-rendered markup
|
|
126
|
+
|
|
127
|
+
## Version
|
|
128
|
+
|
|
129
|
+
Current version: 0.0.27
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-illustrations
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.3.0
|
|
4
4
|
category: Media
|
|
5
5
|
tags: [svg, illustrations, graphics, assets, cdn, decorative, figma]
|
|
6
6
|
use_cases:
|
|
@@ -29,7 +29,7 @@ A collection of SVG illustrations synced from Figma and distributed via CDN for
|
|
|
29
29
|
|
|
30
30
|
## Key Capabilities
|
|
31
31
|
|
|
32
|
-
-
|
|
32
|
+
- 98 professionally designed SVG illustrations covering various use cases
|
|
33
33
|
- Delivered via Eik CDN for fast, cached loading
|
|
34
34
|
- Scalable vector graphics with no quality loss at any size
|
|
35
35
|
- Organized by category (error, success, audio, sport, subscription, etc.)
|
|
@@ -135,7 +135,7 @@ A collection of SVG illustrations synced from Figma and distributed via CDN for
|
|
|
135
135
|
|
|
136
136
|
### Other Categories
|
|
137
137
|
|
|
138
|
-
- `enjoy-breakfast.svg`, `enjoy-cats.svg`, `enjoy-coffee.svg`, `enjoy-cuddle.svg`, `enjoy-watching.svg` - Lifestyle/enjoyment
|
|
138
|
+
- `enjoy-brainteaser.svg`, `enjoy-breakfast.svg`, `enjoy-cats.svg`, `enjoy-coffee.svg`, `enjoy-cuddle.svg`, `enjoy-watching.svg` - Lifestyle/enjoyment
|
|
139
139
|
- `friendly-balldog.svg`, `friendly-hello.svg`, `friendly-tada.svg` - Friendly greetings
|
|
140
140
|
- `location-boypin.svg`, `location-boypins.svg`, `location-girlpin.svg`, `location-girlpins.svg` - Location features
|
|
141
141
|
- `payment-wallet.svg` - Payment flows
|
|
@@ -579,7 +579,7 @@ Illustrations can be either decorative or informative:
|
|
|
579
579
|
- **Source**: Figma via Figmagic
|
|
580
580
|
- **Distribution**: Eik CDN
|
|
581
581
|
- **Build Tool**: Figmagic 4.5.11
|
|
582
|
-
- **Total Illustrations**:
|
|
582
|
+
- **Total Illustrations**: 98
|
|
583
583
|
|
|
584
584
|
## Important Notes
|
|
585
585
|
|
|
@@ -593,10 +593,11 @@ Illustrations can be either decorative or informative:
|
|
|
593
593
|
|
|
594
594
|
## Version
|
|
595
595
|
|
|
596
|
-
Current version: 1.
|
|
596
|
+
Current version: 1.3.0
|
|
597
597
|
|
|
598
598
|
Latest changes:
|
|
599
599
|
|
|
600
|
+
- New illustration "enjoy-brainteaser" added
|
|
600
601
|
- Synced illustrations from Figma
|
|
601
602
|
- Added new illustrations for various use cases
|
|
602
603
|
- Updated elder user illustrations
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-pill
|
|
3
|
-
version:
|
|
3
|
+
version: 10.1.6
|
|
4
4
|
selector: brick-pill-v10
|
|
5
5
|
category: Data Display
|
|
6
6
|
tags: [pill, label, badge, status, meta, countdown, icon, vignette]
|
|
@@ -22,12 +22,12 @@ A read-only status indicator or label component that displays small pieces of me
|
|
|
22
22
|
|
|
23
23
|
## Key Capabilities
|
|
24
24
|
|
|
25
|
-
- Multiple visual versions: vignette, video, gallery, breaking, plus, alt, plusall, icon, countdown
|
|
25
|
+
- Multiple visual versions: vignette, video, gallery, breaking, untold, plus, alt, plusall, icon, countdown
|
|
26
26
|
- Customizable skins for different content categories (sport, opinion, highlight, commercial, shopping, betting)
|
|
27
27
|
- Optional filled or outlined styles
|
|
28
28
|
- Icon support with configurable size
|
|
29
29
|
- Live countdown timer functionality with automatic toggle to fallback version
|
|
30
|
-
- Locale support for countdown text (Norwegian Bokmal and Nynorsk)
|
|
30
|
+
- Locale support for countdown text (Norwegian Bokmal and Nynorsk) using IETF BCP 47 format
|
|
31
31
|
- Can be used standalone or wrapped in brick-pillbox container
|
|
32
32
|
- CSS custom properties for advanced styling
|
|
33
33
|
|
|
@@ -41,7 +41,7 @@ A read-only status indicator or label component that displays small pieces of me
|
|
|
41
41
|
| `data-skin` | `'none' \| 'black' \| 'custom-one' \| 'custom-two' \| 'custom-three' \| 'sport' \| 'highlight' \| 'commercial' \| 'shopping' \| 'betting' \| 'opinion'` | `'none'` | no | Predefined color theme for the pill |
|
|
42
42
|
| `data-icon-id` | string | - | no | ID of icon from brick-icon to display |
|
|
43
43
|
| `data-icon-text` | string | - | no | Alternative text for the icon |
|
|
44
|
-
| `data-icon-size` |
|
|
44
|
+
| `data-icon-size` | `'small' \| 'medium'` | `'small'` | no | Size of the icon |
|
|
45
45
|
| `data-countdown-date` | EpochTimeStamp | - | no | Unix timestamp for countdown end time (required for countdown) |
|
|
46
46
|
| `data-countdown-toggle-version` | `'vignette' \| 'video' \| 'gallery' \| 'breaking' \| 'untold'` | `'vignette'` | no | Version to display after countdown ends |
|
|
47
47
|
| `data-countdown-toggle-text` | string | - | no | Text to display after countdown ends |
|
|
@@ -242,7 +242,7 @@ const pillHTML = renderBrickPill({
|
|
|
242
242
|
});
|
|
243
243
|
|
|
244
244
|
// Include CSS file
|
|
245
|
-
// <link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-pill/
|
|
245
|
+
// <link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-pill/v10/css/styles.css">
|
|
246
246
|
```
|
|
247
247
|
|
|
248
248
|
## Accessibility
|
|
@@ -355,8 +355,10 @@ brick-pill-v10 {
|
|
|
355
355
|
- Truncates text on the last pill
|
|
356
356
|
- Adds dividers between eligible pills
|
|
357
357
|
- The breaking version has special animation that requires overflow to be visible, so it will not get text ellipsis
|
|
358
|
-
-
|
|
358
|
+
- **Breaking change in v10.0.0**: Locale values for `data-locale` now follow IETF BCP 47 standard — use `'nb-NO'` instead of the old `'nb_no'` format
|
|
359
|
+
- Colors are now applied even on non-filled pills (since v10.1.0)
|
|
360
|
+
- Icon-only versions (`alt`, `plus`, `plusall`, `icon`) display only an SVG icon with no text
|
|
359
361
|
|
|
360
362
|
## Version
|
|
361
363
|
|
|
362
|
-
Current version:
|
|
364
|
+
Current version: 10.1.6
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-player
|
|
3
|
-
version: 2.
|
|
3
|
+
version: 2.4.3
|
|
4
4
|
selector: brick-player-v2
|
|
5
5
|
category: Media
|
|
6
6
|
tags: [video, audio, player, flowplayer, media, streaming, ads, autoplay]
|
|
@@ -319,7 +319,10 @@ Test different Flowplayer versions in production using query parameters:
|
|
|
319
319
|
- Media IDs are UUIDs from Flowplayer workspace/publication
|
|
320
320
|
- Player IDs reference pre-configured players in Flowplayer UI
|
|
321
321
|
- Attributes are parsed into typed properties on initialization
|
|
322
|
-
- Changes to attributes after initialization are reactive
|
|
322
|
+
- Changes to attributes after initialization are reactive — attribute changes emit `brick-player:<attribute>` custom events
|
|
323
|
+
- The `muted` attribute reflects internal mute state changes and dispatches `brick-player:muted` event (since v2.1.0)
|
|
324
|
+
- TypeScript types are now included (since v2.2.0)
|
|
325
|
+
- Middleware types are available for extending player behavior (since v2.4.0)
|
|
323
326
|
- Audio players do not load ads plugin (ads are disabled automatically)
|
|
324
327
|
- The `nextvideo` attribute accepts JSON string format
|
|
325
328
|
- Events bubble as regular DOM events (can be listened on window or element)
|
|
@@ -328,4 +331,4 @@ Test different Flowplayer versions in production using query parameters:
|
|
|
328
331
|
|
|
329
332
|
## Version
|
|
330
333
|
|
|
331
|
-
Current version: 2.
|
|
334
|
+
Current version: 2.4.3
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-share
|
|
3
|
-
version: 0.3
|
|
3
|
+
version: 0.4.3
|
|
4
4
|
selector: brick-share
|
|
5
5
|
category: Navigation
|
|
6
6
|
tags: [share, social, web-share-api, clipboard, copy, gift, toast, url]
|
|
@@ -21,6 +21,8 @@ A versatile sharing component that supports native Web Share API, clipboard copy
|
|
|
21
21
|
- Customizable labels and aria-labels for accessibility
|
|
22
22
|
- Icon-only or label-only display modes
|
|
23
23
|
- Automatic URL detection (uses current page URL if not specified)
|
|
24
|
+
- UTM parameter support for campaign tracking (since v0.4.0)
|
|
25
|
+
- Uses native sharing on mobile/tablet and copy-to-clipboard on desktop
|
|
24
26
|
- Server-side rendering support
|
|
25
27
|
|
|
26
28
|
## Props/Attributes
|
|
@@ -38,6 +40,7 @@ A versatile sharing component that supports native Web Share API, clipboard copy
|
|
|
38
40
|
| `data-copy-status` | `"success" \| "error"` | - | no | Manually trigger toast display (for testing/demo) |
|
|
39
41
|
| `data-label` | string | - | no | Set to "false" to hide label (icon-only mode) |
|
|
40
42
|
| `data-icon` | string | - | no | Set to "false" to hide icon (label-only mode) |
|
|
43
|
+
| `data-utm` | string | - | no | UTM parameters to append as query params to the shared URL |
|
|
41
44
|
|
|
42
45
|
## Examples
|
|
43
46
|
|
|
@@ -332,4 +335,4 @@ Special variant for gifting articles, typically with custom messaging.
|
|
|
332
335
|
|
|
333
336
|
## Version
|
|
334
337
|
|
|
335
|
-
Current version: 0.3
|
|
338
|
+
Current version: 0.4.3
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brick-skip-link
|
|
3
|
+
version: 0.0.1
|
|
4
|
+
selector: brick-skip-link-v0
|
|
5
|
+
category: Navigation
|
|
6
|
+
tags: [accessibility, a11y, skip-link, navigation, focus, keyboard, bypass]
|
|
7
|
+
use_cases: [main-navigation, header, keyboard-navigation, accessibility-improvement, bypass-blocks]
|
|
8
|
+
related: []
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Brick Skip Link
|
|
12
|
+
|
|
13
|
+
A component that allows keyboard users to bypass blocks of repetitive content, such as navigation menus.
|
|
14
|
+
|
|
15
|
+
## Key Capabilities
|
|
16
|
+
|
|
17
|
+
- Provides a "skip to content" link for improved keyboard navigation.
|
|
18
|
+
- Becomes visible only when it receives focus via keyboard tabbing.
|
|
19
|
+
- Helps users meet WCAG 2.4.1 (Bypass Blocks).
|
|
20
|
+
- Renders a semantic `<a>` tag for accessibility and SEO.
|
|
21
|
+
- Customizable link text and target element ID.
|
|
22
|
+
- Server-side rendering support for immediate availability.
|
|
23
|
+
|
|
24
|
+
## Props/Attributes
|
|
25
|
+
|
|
26
|
+
| Attribute | Type | Default | Required | Description |
|
|
27
|
+
| ----------- | ------ | ----------------------- | -------- | ---------------------------------------------------- |
|
|
28
|
+
| `data-href` | string | - | yes | The selector for the target element (e.g., `#main`). |
|
|
29
|
+
| `data-text` | string | "Skip to main content" | no | The accessible text for the link. |
|
|
30
|
+
|
|
31
|
+
## Usage
|
|
32
|
+
|
|
33
|
+
### Server-side rendering (preferred)
|
|
34
|
+
|
|
35
|
+
Import the render function from the `/template` submodule and call it to produce an HTML string.
|
|
36
|
+
|
|
37
|
+
```ts
|
|
38
|
+
import { renderBrickSkipLink } from '@amedia/brick-skip-link/template';
|
|
39
|
+
|
|
40
|
+
const html = renderBrickSkipLink({
|
|
41
|
+
dataHref: '#main-content',
|
|
42
|
+
dataText: 'Hopp til hovedinnhold'
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
// Include CSS file
|
|
46
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-skip-link/v0/css/styles.css">
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Client-side (declarative HTML)
|
|
50
|
+
|
|
51
|
+
Use the custom element directly in HTML
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<script type="module" src="https://assets.acdn.no/pkg/@amedia/brick-skip-link/v0/brick-skip-link.js"></script>
|
|
55
|
+
|
|
56
|
+
<brick-skip-link-v0 data-href="#main-content" data-text="Hopp til hovedinnhold"></brick-skip-link-v0>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Accessibility
|
|
60
|
+
|
|
61
|
+
This component is a fundamental accessibility feature.
|
|
62
|
+
|
|
63
|
+
- **Bypass Blocks**: It directly addresses WCAG 2.4.1 by providing a mechanism to bypass blocks of content that are repeated on multiple Web pages.
|
|
64
|
+
- **Focus Management**: The component is designed to be visually hidden until it receives keyboard focus, making it unobtrusive for mouse users but available for keyboard and screen reader users.
|
|
65
|
+
- **Semantic HTML**: It renders a native `<a>` element with a valid `href`, ensuring it is correctly identified as a link by assistive technologies.
|
|
66
|
+
|
|
67
|
+
## Technical Details
|
|
68
|
+
|
|
69
|
+
- **Package version**: `0.0.1`
|
|
70
|
+
- **Custom Element tag**: `brick-skip-link-v0`
|
|
71
|
+
- **Dependencies**:
|
|
72
|
+
- `@amedia/brick-template`
|
|
73
|
+
- `@amedia/brick-tokens`
|
|
74
|
+
|
|
75
|
+
## Important Notes
|
|
76
|
+
|
|
77
|
+
- For the skip link to be effective, it should be one of the very first focusable elements in the page's DOM, ideally right after the `<body>` tag.
|
|
78
|
+
- The value of `data-href` must be a valid CSS selector that points to a single, existing element on the page (e.g., `#main-content`). The target element should have a corresponding `id`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-stepper
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.1.9
|
|
4
4
|
selector: brick-stepper-v1
|
|
5
5
|
category: Navigation
|
|
6
6
|
tags: [stepper, progress, steps, wizard, multi-step, process, indicator, accessibility]
|
|
@@ -316,4 +316,4 @@ function CheckoutFlow() {
|
|
|
316
316
|
|
|
317
317
|
## Version
|
|
318
318
|
|
|
319
|
-
Current version: 1.
|
|
319
|
+
Current version: 1.1.9
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-teaser
|
|
3
|
-
version:
|
|
3
|
+
version: 22.2.9
|
|
4
4
|
selector: brick-teaser-v22
|
|
5
5
|
category: Data Display
|
|
6
6
|
tags: [teaser, card, article, content, preview, link, image, metadata]
|
|
7
7
|
use_cases: [article-listings, content-grids, news-feeds, content-previews, homepage, front-page]
|
|
8
|
-
related: [brick-image, brick-avatar, brick-countdown, brick-icon, brick-pill, brick-player, brick-button]
|
|
8
|
+
related: [brick-image, brick-avatar, brick-countdown, brick-icon, brick-pill, brick-teaser-player, brick-button]
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
# Brick Teaser
|
|
@@ -19,7 +19,7 @@ A comprehensive content teaser/card component for displaying article previews wi
|
|
|
19
19
|
- Avatar support for authors/publications
|
|
20
20
|
- Countdown timer integration
|
|
21
21
|
- Premium content indicators (pill badges)
|
|
22
|
-
- Video player
|
|
22
|
+
- Video teaser support (inline playback via brick-teaser-player)
|
|
23
23
|
- Breaking news styling
|
|
24
24
|
- Commercial/sponsored content support
|
|
25
25
|
- Analytics (ADP) integration
|
|
@@ -62,7 +62,7 @@ The component supports multiple content types:
|
|
|
62
62
|
|
|
63
63
|
### Interactive Elements
|
|
64
64
|
- Clickable teaser links
|
|
65
|
-
- Video player
|
|
65
|
+
- Video teaser support (inline playback via brick-teaser-player)
|
|
66
66
|
- Countdown timers for live events
|
|
67
67
|
- Action buttons
|
|
68
68
|
|
|
@@ -246,12 +246,13 @@ The component integrates with ADP (Amedia Data Platform):
|
|
|
246
246
|
|
|
247
247
|
## Important Notes
|
|
248
248
|
|
|
249
|
-
- Version
|
|
249
|
+
- Version 22.2.9 is the current stable version (mature component)
|
|
250
250
|
- Supports complex teaser configurations with many optional features
|
|
251
251
|
- Integrates deeply with Amedia's content management system (ACP)
|
|
252
252
|
- The component is highly configurable for different content types
|
|
253
253
|
- Breaking news, premium, and commercial content have special styling
|
|
254
|
-
-
|
|
254
|
+
- **Breaking change in v22.0.0**: Removed `playOnFront` attribute and inline video playback functionality. Use `brick-teaser-player` for teasers that play videos
|
|
255
|
+
- Video teasers now require `brick-teaser-player` wrapper for inline playback
|
|
255
256
|
- Gallery teasers show image count
|
|
256
257
|
- Countdown timers for live events
|
|
257
258
|
- The component generates custom-elements.json for IDE autocomplete
|
|
@@ -259,4 +260,4 @@ The component integrates with ADP (Amedia Data Platform):
|
|
|
259
260
|
|
|
260
261
|
## Version
|
|
261
262
|
|
|
262
|
-
Current version:
|
|
263
|
+
Current version: 22.2.9
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brick-tokens
|
|
3
|
-
version: 6.
|
|
3
|
+
version: 6.2.1
|
|
4
4
|
selector: N/A
|
|
5
5
|
category: Utilities
|
|
6
6
|
tags: [design-tokens, css, styling, themes, colors, spacing, typography, shadows]
|
|
@@ -106,11 +106,11 @@ Load the theme CSS file and set the corresponding class on a container (e.g. `<b
|
|
|
106
106
|
|
|
107
107
|
```html
|
|
108
108
|
<!-- Load theme CSS from Eik CDN -->
|
|
109
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
110
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
111
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
112
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
113
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
109
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/alfa/styles.css" crossorigin="anonymous" />
|
|
110
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/bravo/styles.css" crossorigin="anonymous" />
|
|
111
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/charlie/styles.css" crossorigin="anonymous" />
|
|
112
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/nettavisen/styles.css" crossorigin="anonymous" />
|
|
113
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/alt/styles.css" crossorigin="anonymous" />
|
|
114
114
|
|
|
115
115
|
<!-- Apply theme class to a container -->
|
|
116
116
|
<body class="themeAlfa">...</body>
|
|
@@ -128,7 +128,7 @@ The package provides multiple formats:
|
|
|
128
128
|
|
|
129
129
|
```html
|
|
130
130
|
<!-- Load theme CSS (one per page) -->
|
|
131
|
-
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.
|
|
131
|
+
<link rel="stylesheet" href="https://assets.acdn.no/pkg/@amedia/brick-tokens/6.2.1/css/alfa/styles.css" crossorigin="anonymous" />
|
|
132
132
|
```
|
|
133
133
|
|
|
134
134
|
## Common Token Examples
|
|
@@ -188,10 +188,14 @@ npm run validate # Validate CSS files
|
|
|
188
188
|
|
|
189
189
|
## Important Notes
|
|
190
190
|
|
|
191
|
-
- Version 6.
|
|
191
|
+
- Version 6.2.1 is the current stable version
|
|
192
192
|
- Tokens are generated from Figma via Tokens Studio + Style Dictionary
|
|
193
193
|
- CSS custom properties use `--brick-{category}-{tokenName}` prefix (e.g. `--brick-colors-baseFg`, `--brick-space-x1`)
|
|
194
194
|
- Theme CSS files are scoped to a class (e.g. `.themeAlfa`) — apply the class to a container element
|
|
195
195
|
- There is no single `tokens.css` — CSS is per-theme: `dist/css/{theme}/styles.css`
|
|
196
196
|
- The package is used by all Brick components for consistent styling
|
|
197
197
|
- `sroStyle` is a utility class export for screen-reader-only visually hidden content
|
|
198
|
+
- Brand accent colors available since v6.2.0: `custom-one`, `custom-two`, `custom-three`, and `opinion` with `surface`, `surface-subtle`, and `text` variants
|
|
199
|
+
- Brand-specific publication colors available since v6.1.0 via CDN:
|
|
200
|
+
- CSS: `https://assets.acdn.no/pkg/@amedia/brick-tokens/v6/brand/css/{publication-key}/styles.css`
|
|
201
|
+
- JSON: `https://assets.acdn.no/pkg/@amedia/brick-tokens/v6/brand/mobile/{publication-key}/colors.json`
|