@amedia/brick-mcp 0.1.3 → 0.1.5

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.
Files changed (82) hide show
  1. package/README.md +50 -1
  2. package/data/components/brick-mcp.md +259 -0
  3. package/data/components/brick-pill.md +362 -0
  4. package/data/components/brick-player.md +331 -0
  5. package/data/components/brick-published.md +219 -0
  6. package/data/components/brick-share.md +335 -0
  7. package/data/components/brick-stepper.md +319 -0
  8. package/data/components/brick-tab.md +241 -0
  9. package/data/components/brick-tabs.md +420 -0
  10. package/data/components/brick-tag.md +335 -0
  11. package/data/components/brick-teaser-player.md +248 -0
  12. package/data/components/brick-teaser-reels.md +190 -0
  13. package/data/components/brick-teaser.md +262 -0
  14. package/data/components/brick-template.md +226 -0
  15. package/data/components/brick-textarea.md +191 -0
  16. package/data/components/brick-themes.md +104 -0
  17. package/data/components/brick-toast.md +271 -0
  18. package/data/components/brick-toggle.md +268 -0
  19. package/data/components/brick-tokens.md +287 -0
  20. package/data/components/brick-tooltip.md +249 -0
  21. package/data/components-metadata.json +35 -41
  22. package/data/tokens.json +0 -7
  23. package/dist/data/components/brick-mcp.md +259 -0
  24. package/dist/data/components/brick-pill.md +362 -0
  25. package/dist/data/components/brick-player.md +331 -0
  26. package/dist/data/components/brick-published.md +219 -0
  27. package/dist/data/components/brick-share.md +335 -0
  28. package/dist/data/components/brick-stepper.md +319 -0
  29. package/dist/data/components/brick-tab.md +241 -0
  30. package/dist/data/components/brick-tabs.md +420 -0
  31. package/dist/data/components/brick-tag.md +335 -0
  32. package/dist/data/components/brick-teaser-player.md +248 -0
  33. package/dist/data/components/brick-teaser-reels.md +190 -0
  34. package/dist/data/components/brick-teaser.md +262 -0
  35. package/dist/data/components/brick-template.md +226 -0
  36. package/dist/data/components/brick-textarea.md +191 -0
  37. package/dist/data/components/brick-themes.md +104 -0
  38. package/dist/data/components/brick-toast.md +271 -0
  39. package/dist/data/components/brick-toggle.md +268 -0
  40. package/dist/data/components/brick-tokens.md +287 -0
  41. package/dist/data/components/brick-tooltip.md +249 -0
  42. package/dist/data/components-metadata.json +35 -41
  43. package/dist/data/tokens.json +0 -7
  44. package/package.json +37 -37
  45. package/data/components/brick-mcp.json +0 -6
  46. package/data/components/brick-pill.json +0 -6
  47. package/data/components/brick-player.json +0 -7
  48. package/data/components/brick-published.json +0 -7
  49. package/data/components/brick-share.json +0 -7
  50. package/data/components/brick-stepper.json +0 -7
  51. package/data/components/brick-tab.json +0 -7
  52. package/data/components/brick-tabs.json +0 -9
  53. package/data/components/brick-tag.json +0 -7
  54. package/data/components/brick-teaser-player.json +0 -9
  55. package/data/components/brick-teaser-reels.json +0 -9
  56. package/data/components/brick-teaser.json +0 -9
  57. package/data/components/brick-template.json +0 -9
  58. package/data/components/brick-textarea.json +0 -7
  59. package/data/components/brick-themes.json +0 -6
  60. package/data/components/brick-toast.json +0 -9
  61. package/data/components/brick-toggle.json +0 -7
  62. package/data/components/brick-tokens.json +0 -8
  63. package/data/components/brick-tooltip.json +0 -7
  64. package/dist/data/components/brick-mcp.json +0 -6
  65. package/dist/data/components/brick-pill.json +0 -6
  66. package/dist/data/components/brick-player.json +0 -7
  67. package/dist/data/components/brick-published.json +0 -7
  68. package/dist/data/components/brick-share.json +0 -7
  69. package/dist/data/components/brick-stepper.json +0 -7
  70. package/dist/data/components/brick-tab.json +0 -7
  71. package/dist/data/components/brick-tabs.json +0 -9
  72. package/dist/data/components/brick-tag.json +0 -7
  73. package/dist/data/components/brick-teaser-player.json +0 -9
  74. package/dist/data/components/brick-teaser-reels.json +0 -9
  75. package/dist/data/components/brick-teaser.json +0 -9
  76. package/dist/data/components/brick-template.json +0 -9
  77. package/dist/data/components/brick-textarea.json +0 -7
  78. package/dist/data/components/brick-themes.json +0 -6
  79. package/dist/data/components/brick-toast.json +0 -9
  80. package/dist/data/components/brick-toggle.json +0 -7
  81. package/dist/data/components/brick-tokens.json +0 -8
  82. package/dist/data/components/brick-tooltip.json +0 -7
@@ -0,0 +1,249 @@
1
+ ---
2
+ name: brick-tooltip
3
+ version: 1.0.17
4
+ selector: brick-tooltip-v1
5
+ category: Feedback
6
+ tags: [tooltip, hint, help, popover, overlay, positioning]
7
+ use_cases: [help-text, additional-info, icon-explanations, contextual-help]
8
+ related: [brick-tokens, brick-template]
9
+ ---
10
+
11
+ # Brick Tooltip
12
+
13
+ A contextual help component that displays additional information when hovering over or focusing on an anchor element, with configurable positioning and optional tail indicator.
14
+
15
+ ## Key Capabilities
16
+
17
+ - Four positioning options (above, below, left, right)
18
+ - Anchored to any element via ID reference
19
+ - Optional visual tail/arrow
20
+ - Hover and focus trigger support
21
+ - Automatic positioning within viewport
22
+ - Accessibility support with proper ARIA
23
+ - Server-side rendering support
24
+
25
+ ## Props/Attributes
26
+
27
+ | Attribute | Type | Default | Required | Description |
28
+ | ---------------- | --------------------------------------- | -------- | -------- | ---------------------------------------------- |
29
+ | `data-anchor` | string | - | yes | ID of the element to anchor the tooltip to |
30
+ | `data-text` | string | - | yes | Tooltip text content |
31
+ | `data-position` | `"above" \| "below" \| "left" \| "right"` | `"above"` | no | Position relative to anchor element |
32
+ | `data-tail` | string | `"false"` | no | Set to "true" to show visual tail/arrow |
33
+
34
+ ## Examples
35
+
36
+ ### Basic Tooltip (Above)
37
+
38
+ ```html
39
+ <button id="help-btn">Help</button>
40
+ <brick-tooltip-v1
41
+ data-anchor="help-btn"
42
+ data-text="Click for more information"
43
+ >
44
+ </brick-tooltip-v1>
45
+ ```
46
+
47
+ ### Tooltip Below
48
+
49
+ ```html
50
+ <span id="username">John Doe</span>
51
+ <brick-tooltip-v1
52
+ data-anchor="username"
53
+ data-text="Premium member since 2020"
54
+ data-position="below"
55
+ >
56
+ </brick-tooltip-v1>
57
+ ```
58
+
59
+ ### Tooltip with Tail
60
+
61
+ ```html
62
+ <button id="save-btn">Save</button>
63
+ <brick-tooltip-v1
64
+ data-anchor="save-btn"
65
+ data-text="Save your changes"
66
+ data-position="above"
67
+ data-tail="true"
68
+ >
69
+ </brick-tooltip-v1>
70
+ ```
71
+
72
+ ### Left Positioned
73
+
74
+ ```html
75
+ <span id="info-icon">ℹ️</span>
76
+ <brick-tooltip-v1
77
+ data-anchor="info-icon"
78
+ data-text="Additional information about this feature"
79
+ data-position="left"
80
+ data-tail="true"
81
+ >
82
+ </brick-tooltip-v1>
83
+ ```
84
+
85
+ ### Right Positioned
86
+
87
+ ```html
88
+ <button id="delete-btn">Delete</button>
89
+ <brick-tooltip-v1
90
+ data-anchor="delete-btn"
91
+ data-text="This action cannot be undone"
92
+ data-position="right"
93
+ >
94
+ </brick-tooltip-v1>
95
+ ```
96
+
97
+ ## Programmatic Usage
98
+
99
+ ```javascript
100
+ // Create tooltip dynamically
101
+ const tooltip = document.createElement('brick-tooltip-v1');
102
+ tooltip.dataAnchor = 'my-button';
103
+ tooltip.dataText = 'Helpful information';
104
+ tooltip.dataPosition = 'below';
105
+ tooltip.dataTail = 'true';
106
+ document.body.appendChild(tooltip);
107
+ ```
108
+
109
+ ## Server-Side Rendering
110
+
111
+ ```javascript
112
+ import { renderBrickTooltip } from '@amedia/brick-tooltip/template';
113
+
114
+ const html = renderBrickTooltip({
115
+ dataAnchor: 'help-icon',
116
+ dataText: 'This is a helpful tooltip',
117
+ dataPosition: 'above',
118
+ dataTail: 'true',
119
+ });
120
+ ```
121
+
122
+ ## Positioning
123
+
124
+ The tooltip automatically positions itself relative to the anchor element:
125
+
126
+ - **above**: Tooltip appears above the anchor
127
+ - **below**: Tooltip appears below the anchor
128
+ - **left**: Tooltip appears to the left of the anchor
129
+ - **right**: Tooltip appears to the right of the anchor
130
+
131
+ If there isn't enough space in the specified position, the tooltip may adjust to stay within the viewport.
132
+
133
+ ## Accessibility
134
+
135
+ - Tooltip is announced to screen readers
136
+ - Anchor element receives `aria-describedby` pointing to tooltip
137
+ - Tooltip appears on both hover and keyboard focus
138
+ - ESC key dismisses tooltip
139
+ - Proper ARIA roles and attributes
140
+
141
+ ## Common Patterns
142
+
143
+ ### Icon with Tooltip
144
+
145
+ ```html
146
+ <brick-icon id="help-icon" data-icon-id="help-circle"></brick-icon>
147
+ <brick-tooltip-v1
148
+ data-anchor="help-icon"
149
+ data-text="Click to learn more about this feature"
150
+ data-position="right"
151
+ data-tail="true"
152
+ >
153
+ </brick-tooltip-v1>
154
+ ```
155
+
156
+ ### Form Field Help
157
+
158
+ ```html
159
+ <label for="email">Email Address
160
+ <span id="email-help">?</span>
161
+ </label>
162
+ <input type="email" id="email" aria-describedby="tooltip-email">
163
+
164
+ <brick-tooltip-v1
165
+ id="tooltip-email"
166
+ data-anchor="email-help"
167
+ data-text="We'll never share your email address"
168
+ data-position="right"
169
+ >
170
+ </brick-tooltip-v1>
171
+ ```
172
+
173
+ ### Button Explanation
174
+
175
+ ```html
176
+ <button id="advanced-btn" aria-describedby="advanced-tooltip">
177
+ Advanced Settings
178
+ </button>
179
+ <brick-tooltip-v1
180
+ id="advanced-tooltip"
181
+ data-anchor="advanced-btn"
182
+ data-text="Configure advanced options for power users"
183
+ data-position="below"
184
+ data-tail="true"
185
+ >
186
+ </brick-tooltip-v1>
187
+ ```
188
+
189
+ ## Framework Integration
190
+
191
+ ### Svelte
192
+
193
+ ```svelte
194
+ <script>
195
+ let anchorId = 'my-element';
196
+ </script>
197
+
198
+ <button id={anchorId}>Hover me</button>
199
+ <brick-tooltip-v1
200
+ data-anchor={anchorId}
201
+ data-text="Helpful information"
202
+ data-position="above"
203
+ data-tail="true"
204
+ />
205
+ ```
206
+
207
+ ### React
208
+
209
+ ```jsx
210
+ function ComponentWithTooltip() {
211
+ const id = 'help-button';
212
+
213
+ return (
214
+ <>
215
+ <button id={id}>Help</button>
216
+ <brick-tooltip-v1
217
+ data-anchor={id}
218
+ data-text="Get help and support"
219
+ data-position="below"
220
+ />
221
+ </>
222
+ );
223
+ }
224
+ ```
225
+
226
+ ## Technical Details
227
+
228
+ - **Custom Element**: `brick-tooltip-v1`
229
+ - **Base Class**: BrickElement
230
+ - **Dependencies**:
231
+ - @amedia/brick-template (base class)
232
+ - @amedia/brick-tokens (design tokens)
233
+ - **Renders as**: Positioned overlay element
234
+ - **SSR Compatible**: Yes, with template function
235
+ - **Positioning**: Absolute positioning relative to anchor
236
+
237
+ ## Important Notes
238
+
239
+ - The anchor element must have a unique ID
240
+ - The anchor element must exist in the DOM when tooltip is created
241
+ - Tooltip visibility is controlled by CSS (hover/focus on anchor)
242
+ - The tail/arrow is purely visual and doesn't affect positioning logic
243
+ - Long tooltip text may wrap or require position adjustment
244
+ - Tooltips should be kept concise for best UX
245
+ - Multiple tooltips can exist on the same page for different anchors
246
+
247
+ ## Version
248
+
249
+ Current version: 1.0.17
@@ -1,7 +1,7 @@
1
1
  [
2
2
  {
3
3
  "name": "brick-alt-teaser",
4
- "version": "8.0.73",
4
+ "version": "8.1.1",
5
5
  "selector": "brick-alt-teaser-v8",
6
6
  "category": "Display",
7
7
  "tags": [
@@ -10,7 +10,7 @@
10
10
  },
11
11
  {
12
12
  "name": "brick-avatar",
13
- "version": "0.2.42",
13
+ "version": "0.2.45",
14
14
  "selector": "brick-avatar-v0",
15
15
  "description": "brick-avatar component",
16
16
  "category": "Display",
@@ -20,7 +20,7 @@
20
20
  },
21
21
  {
22
22
  "name": "brick-button",
23
- "version": "9.4.1",
23
+ "version": "9.4.3",
24
24
  "selector": "brick-button-v9",
25
25
  "category": "Forms",
26
26
  "tags": [
@@ -30,13 +30,13 @@
30
30
  },
31
31
  {
32
32
  "name": "brick-byline",
33
- "version": "1.0.3",
33
+ "version": "1.0.7",
34
34
  "selector": "brick-byline-v1",
35
35
  "description": "brick-byline component"
36
36
  },
37
37
  {
38
38
  "name": "brick-card",
39
- "version": "7.3.15",
39
+ "version": "7.3.17",
40
40
  "selector": "brick-card-v7",
41
41
  "category": "Layout",
42
42
  "tags": [
@@ -45,7 +45,7 @@
45
45
  },
46
46
  {
47
47
  "name": "brick-carousel",
48
- "version": "2.2.4",
48
+ "version": "2.2.6",
49
49
  "selector": "brick-carousel-v2",
50
50
  "description": "Simple carousel for any content passed to it.",
51
51
  "category": "Display",
@@ -55,8 +55,8 @@
55
55
  },
56
56
  {
57
57
  "name": "brick-classnames",
58
- "version": "2.1.0",
59
- "selector": "brick-classnames-v2",
58
+ "version": "3.0.1",
59
+ "selector": "brick-classnames-v3",
60
60
  "description": "Utility method to create a safe string from a design name",
61
61
  "category": "Utilities",
62
62
  "tags": [
@@ -65,13 +65,13 @@
65
65
  },
66
66
  {
67
67
  "name": "brick-countdown",
68
- "version": "2.0.14",
68
+ "version": "2.0.16",
69
69
  "selector": "brick-countdown-v2",
70
70
  "description": "brick-countdown component"
71
71
  },
72
72
  {
73
73
  "name": "brick-dialog",
74
- "version": "2.0.20",
74
+ "version": "2.1.0",
75
75
  "selector": "brick-dialog-v2",
76
76
  "description": "brick-dialog component",
77
77
  "category": "Feedback",
@@ -81,7 +81,7 @@
81
81
  },
82
82
  {
83
83
  "name": "brick-expand",
84
- "version": "0.0.7",
84
+ "version": "0.0.9",
85
85
  "selector": "brick-expand-v0",
86
86
  "description": "brick-expand component"
87
87
  },
@@ -97,13 +97,13 @@
97
97
  },
98
98
  {
99
99
  "name": "brick-helloworld",
100
- "version": "2.0.8",
100
+ "version": "2.0.10",
101
101
  "selector": "brick-helloworld-v2",
102
102
  "description": "Brick Hello World component"
103
103
  },
104
104
  {
105
105
  "name": "brick-icon",
106
- "version": "2.3.7",
106
+ "version": "2.3.9",
107
107
  "selector": "brick-icon-v2",
108
108
  "category": "Display",
109
109
  "tags": [
@@ -112,13 +112,13 @@
112
112
  },
113
113
  {
114
114
  "name": "brick-illustrations",
115
- "version": "1.2.5",
115
+ "version": "1.2.6",
116
116
  "selector": "brick-illustrations-v1",
117
117
  "description": "brick-illustrations"
118
118
  },
119
119
  {
120
120
  "name": "brick-image",
121
- "version": "6.0.10",
121
+ "version": "6.0.12",
122
122
  "selector": "brick-image-v6",
123
123
  "category": "Display",
124
124
  "tags": [
@@ -127,7 +127,7 @@
127
127
  },
128
128
  {
129
129
  "name": "brick-input",
130
- "version": "3.0.14",
130
+ "version": "3.0.16",
131
131
  "selector": "brick-input-v3",
132
132
  "description": "brick-input component",
133
133
  "category": "Forms",
@@ -136,50 +136,44 @@
136
136
  "interactive"
137
137
  ]
138
138
  },
139
- {
140
- "name": "brick-nifs",
141
- "version": "0.0.7",
142
- "selector": "brick-nifs-v0",
143
- "description": "brick-nifs component"
144
- },
145
139
  {
146
140
  "name": "brick-pill",
147
- "version": "9.0.8",
141
+ "version": "9.0.10",
148
142
  "selector": "brick-pill-v9"
149
143
  },
150
144
  {
151
145
  "name": "brick-player",
152
- "version": "1.27.25",
153
- "selector": "brick-player-v1",
146
+ "version": "2.0.1",
147
+ "selector": "brick-player-v2",
154
148
  "description": "Component for playing video and audio files"
155
149
  },
156
150
  {
157
151
  "name": "brick-published",
158
- "version": "4.0.6",
152
+ "version": "4.0.8",
159
153
  "selector": "brick-published-v4",
160
154
  "description": "brick-published"
161
155
  },
162
156
  {
163
157
  "name": "brick-share",
164
- "version": "0.3.11",
158
+ "version": "0.3.13",
165
159
  "selector": "brick-share-v0",
166
160
  "description": "brick-share component"
167
161
  },
168
162
  {
169
163
  "name": "brick-stepper",
170
- "version": "1.0.17",
164
+ "version": "1.0.19",
171
165
  "selector": "brick-stepper-v1",
172
166
  "description": "brick-stepper component"
173
167
  },
174
168
  {
175
169
  "name": "brick-tab",
176
- "version": "0.1.13",
170
+ "version": "0.1.15",
177
171
  "selector": "brick-tab-v0",
178
172
  "description": "brick-tab component"
179
173
  },
180
174
  {
181
175
  "name": "brick-tabs",
182
- "version": "0.1.14",
176
+ "version": "0.1.16",
183
177
  "selector": "brick-tabs-v0",
184
178
  "description": "brick-tabs component handling tablist, tabs and tabpanel",
185
179
  "category": "Navigation",
@@ -189,13 +183,13 @@
189
183
  },
190
184
  {
191
185
  "name": "brick-tag",
192
- "version": "0.0.13",
186
+ "version": "0.0.15",
193
187
  "selector": "brick-tag-v0",
194
188
  "description": "brick-tag component"
195
189
  },
196
190
  {
197
191
  "name": "brick-teaser",
198
- "version": "21.0.1",
192
+ "version": "21.2.4",
199
193
  "selector": "brick-teaser-v21",
200
194
  "description": "Teaser component.",
201
195
  "category": "Display",
@@ -205,7 +199,7 @@
205
199
  },
206
200
  {
207
201
  "name": "brick-teaser-player",
208
- "version": "1.0.31",
202
+ "version": "1.1.1",
209
203
  "selector": "brick-teaser-player-v1",
210
204
  "description": "brick-video-teaser component",
211
205
  "category": "Display",
@@ -215,7 +209,7 @@
215
209
  },
216
210
  {
217
211
  "name": "brick-teaser-reels",
218
- "version": "0.4.4",
212
+ "version": "0.4.6",
219
213
  "selector": "brick-teaser-reels-v0",
220
214
  "description": "brick-teaser-reels component",
221
215
  "category": "Display",
@@ -225,19 +219,19 @@
225
219
  },
226
220
  {
227
221
  "name": "brick-textarea",
228
- "version": "2.0.9",
222
+ "version": "2.0.11",
229
223
  "selector": "brick-textarea-v2",
230
224
  "description": "brick-textarea component"
231
225
  },
232
226
  {
233
227
  "name": "brick-themes",
234
- "version": "1.0.1",
228
+ "version": "1.0.2",
235
229
  "selector": "brick-themes-v1",
236
230
  "description": "Brick theme names"
237
231
  },
238
232
  {
239
233
  "name": "brick-toast",
240
- "version": "0.1.27",
234
+ "version": "0.1.29",
241
235
  "selector": "brick-toast-v0",
242
236
  "description": "brick-toast component",
243
237
  "category": "Feedback",
@@ -247,14 +241,14 @@
247
241
  },
248
242
  {
249
243
  "name": "brick-toggle",
250
- "version": "3.1.13",
244
+ "version": "3.1.15",
251
245
  "selector": "brick-toggle-v3",
252
246
  "description": "brick-toggle component"
253
247
  },
254
248
  {
255
249
  "name": "brick-tokens",
256
- "version": "5.21.0",
257
- "selector": "brick-tokens-v5",
250
+ "version": "6.0.1",
251
+ "selector": "brick-tokens-v6",
258
252
  "description": "Tokens package",
259
253
  "category": "Utilities",
260
254
  "tags": [
@@ -263,7 +257,7 @@
263
257
  },
264
258
  {
265
259
  "name": "brick-tooltip",
266
- "version": "1.0.16",
260
+ "version": "1.0.18",
267
261
  "selector": "brick-tooltip-v1",
268
262
  "description": "brick-tooltip component"
269
263
  }
package/data/tokens.json CHANGED
@@ -4008,13 +4008,6 @@
4008
4008
  "description": "Mellomstor tekst til bruk i tabeller.",
4009
4009
  "cssVariable": "font-family: var(--brick-fonts-baseTabularM);\nfont-size: var(--brick-fontSizes-baseTabularM);\nfont-weight: var(--brick-fontWeights-baseTabularM);\nletter-spacing: var(--brick-letterSpacings-baseTabularM);\nline-height: var(--brick-lineHeights-baseTabularM);"
4010
4010
  },
4011
- {
4012
- "path": "typography.base.test",
4013
- "name": "baseTest",
4014
- "type": "typography",
4015
- "value": "400 16px/1.4 'National 2'",
4016
- "cssVariable": "font-family: var(--brick-fonts-baseTest);\nfont-size: var(--brick-fontSizes-baseTest);\nfont-weight: var(--brick-fontWeights-baseTest);\nletter-spacing: var(--brick-letterSpacings-baseTest);\nline-height: var(--brick-lineHeights-baseTest);"
4017
- },
4018
4011
  {
4019
4012
  "path": "typography.article.body.s",
4020
4013
  "name": "articleBodyS",