@retailcrm/embed-ui-v1-components 0.9.15 → 0.9.16
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/assets/sprites/map-and-places/navigate.svg +3 -0
- package/dist/host.cjs +993 -516
- package/dist/host.css +261 -0
- package/dist/host.d.ts +222 -112
- package/dist/host.js +993 -516
- package/dist/remote.cjs +446 -60
- package/dist/remote.d.ts +573 -81
- package/dist/remote.js +447 -61
- package/docs/COMPONENTS.md +3 -0
- package/docs/FORMAT.md +19 -0
- package/docs/PROFILES.md +2 -0
- package/docs/profiles/UiAddButton.yml +12 -0
- package/docs/profiles/UiAlert.yml +12 -0
- package/docs/profiles/UiAvatar.yml +12 -0
- package/docs/profiles/UiAvatarList.yml +12 -0
- package/docs/profiles/UiButton.yml +8 -0
- package/docs/profiles/UiCalendar.yml +12 -0
- package/docs/profiles/UiCheckbox.yml +12 -0
- package/docs/profiles/UiCollapse.yml +12 -0
- package/docs/profiles/UiCollapseBox.yml +12 -0
- package/docs/profiles/UiCollapseGroup.yml +12 -0
- package/docs/profiles/UiCopyButton.yml +12 -0
- package/docs/profiles/UiDate.yml +12 -0
- package/docs/profiles/UiDatePicker.yml +12 -0
- package/docs/profiles/UiError.yml +12 -0
- package/docs/profiles/UiField.yml +5 -1
- package/docs/profiles/UiImage.yml +12 -0
- package/docs/profiles/UiInfobox.yml +12 -0
- package/docs/profiles/UiLink.yml +12 -0
- package/docs/profiles/UiLoader.yml +12 -0
- package/docs/profiles/UiMenuItem.yml +12 -0
- package/docs/profiles/UiMenuItemGroup.yml +12 -0
- package/docs/profiles/UiModalSidebar.yml +12 -0
- package/docs/profiles/UiModalWindow.yml +12 -0
- package/docs/profiles/UiModalWindowSurface.yml +12 -0
- package/docs/profiles/UiNumberStepper.yml +12 -0
- package/docs/profiles/UiPageHeader.yml +5 -1
- package/docs/profiles/UiPopper.yml +5 -1
- package/docs/profiles/UiPopperConnector.yml +6 -0
- package/docs/profiles/UiPopperTarget.yml +6 -0
- package/docs/profiles/UiRadio.yml +12 -0
- package/docs/profiles/UiRadioSwitch.yml +7 -0
- package/docs/profiles/UiRadioSwitchOption.yml +8 -0
- package/docs/profiles/UiScrollBox.yml +12 -0
- package/docs/profiles/UiSelect.yml +9 -0
- package/docs/profiles/UiSelectOption.yml +12 -0
- package/docs/profiles/UiSelectOptionGroup.yml +12 -0
- package/docs/profiles/UiSlider.yml +12 -0
- package/docs/profiles/UiSwitch.yml +12 -0
- package/docs/profiles/UiTab.yml +5 -0
- package/docs/profiles/UiTabGroup.yml +5 -0
- package/docs/profiles/UiTable.yml +5 -1
- package/docs/profiles/UiTableBodyCell.yml +12 -0
- package/docs/profiles/UiTableColumn.yml +12 -0
- package/docs/profiles/UiTableFooterButton.yml +12 -0
- package/docs/profiles/UiTableFooterSection.yml +12 -0
- package/docs/profiles/UiTableHeadCell.yml +12 -0
- package/docs/profiles/UiTableSorter.yml +12 -0
- package/docs/profiles/UiTag.yml +12 -0
- package/docs/profiles/UiTextbox.yml +5 -1
- package/docs/profiles/UiTimePicker.yml +12 -0
- package/docs/profiles/UiToggleButton.yml +211 -0
- package/docs/profiles/UiToggleGroup.yml +211 -0
- package/docs/profiles/UiToggleGroupOption.yml +116 -0
- package/docs/profiles/UiToolbarButton.yml +12 -0
- package/docs/profiles/UiToolbarLink.yml +12 -0
- package/docs/profiles/UiTooltip.yml +12 -0
- package/docs/profiles/UiTransition.yml +12 -0
- package/docs/profiles/UiYandexMap.yml +12 -0
- package/package.json +2 -2
package/docs/COMPONENTS.md
CHANGED
|
@@ -16,6 +16,8 @@ Detailed AI-friendly profiles are collected in [`PROFILES.md`](./PROFILES.md).
|
|
|
16
16
|
- [`UiRadio`](./profiles/UiRadio.yml): single choice
|
|
17
17
|
- [`UiRadioSwitch`](./profiles/UiRadioSwitch.yml): segmented single-choice switch with inline or section-card appearance
|
|
18
18
|
- [`UiRadioSwitchOption`](./profiles/UiRadioSwitchOption.yml): rich option child for UiRadioSwitch
|
|
19
|
+
- [`UiToggleGroup`](./profiles/UiToggleGroup.yml): segmented multi-select group built from toggle buttons
|
|
20
|
+
- [`UiToggleGroupOption`](./profiles/UiToggleGroupOption.yml): rich option child for UiToggleGroup
|
|
19
21
|
- [`UiSwitch`](./profiles/UiSwitch.yml): state toggle
|
|
20
22
|
- [`UiSlider`](./profiles/UiSlider.yml): ranged value selection
|
|
21
23
|
- [`UiSelect`](./profiles/UiSelect.yml): select container for single or multiple choice
|
|
@@ -29,6 +31,7 @@ Detailed AI-friendly profiles are collected in [`PROFILES.md`](./PROFILES.md).
|
|
|
29
31
|
## Actions And Navigation
|
|
30
32
|
|
|
31
33
|
- [`UiButton`](./profiles/UiButton.yml): main action button that can render as a button or anchor
|
|
34
|
+
- [`UiToggleButton`](./profiles/UiToggleButton.yml): stateful toggle button primitive for standalone or grouped use
|
|
32
35
|
- [`UiAddButton`](./profiles/UiAddButton.yml): add action button
|
|
33
36
|
- [`UiCopyButton`](./profiles/UiCopyButton.yml): copy value action
|
|
34
37
|
- [`UiToolbarButton`](./profiles/UiToolbarButton.yml): toolbar button
|
package/docs/FORMAT.md
CHANGED
|
@@ -52,6 +52,17 @@ api:
|
|
|
52
52
|
- name: update:value
|
|
53
53
|
payload: unknown
|
|
54
54
|
|
|
55
|
+
rendered_structure:
|
|
56
|
+
descriptive_only: true
|
|
57
|
+
root:
|
|
58
|
+
shape: div.ui-v1-component
|
|
59
|
+
tag: div
|
|
60
|
+
|
|
61
|
+
geometry:
|
|
62
|
+
layout: block-like root
|
|
63
|
+
root_display: block
|
|
64
|
+
width_behavior: stretches to container width by default
|
|
65
|
+
|
|
55
66
|
styling:
|
|
56
67
|
root_classes:
|
|
57
68
|
- .ui-v1-component
|
|
@@ -140,6 +151,7 @@ Inside `api`, it is useful to distinguish:
|
|
|
140
151
|
Describe the actual rendered shape:
|
|
141
152
|
|
|
142
153
|
- the root container;
|
|
154
|
+
- the actual root tag or tags when they matter, for example `button`, `a`, `div`, or `span`;
|
|
143
155
|
- the main internal zones;
|
|
144
156
|
- where label, control, action area, icon area, popper content, and similar parts live;
|
|
145
157
|
- current root classes and state classes, if they help reasoning.
|
|
@@ -155,10 +167,17 @@ Important:
|
|
|
155
167
|
Capture:
|
|
156
168
|
|
|
157
169
|
- whether the component is block-like or inline-like;
|
|
170
|
+
- what the root behaves like in layout terms, for example `block`, `inline-block`, `inline-flex`, or `flex`;
|
|
158
171
|
- what stretches to `width: 100%` and what stays content-sized;
|
|
159
172
|
- how the component behaves in a row, grid, header, or popper;
|
|
160
173
|
- which props affect dimensions: `size`, `multiline`, `autofit`, `popperFitTrigger`, and so on.
|
|
161
174
|
|
|
175
|
+
Useful optional fields:
|
|
176
|
+
|
|
177
|
+
- `root_display` for the root display mode or the common display modes when the root changes by props;
|
|
178
|
+
- `width_behavior` for whether the component stretches, shrinks to content, or switches between those modes;
|
|
179
|
+
- `notes` for short practical remarks about how the root behaves in layout and composition.
|
|
180
|
+
|
|
162
181
|
## 8. `styling`
|
|
163
182
|
|
|
164
183
|
Capture only the styling data that helps an agent make safe decisions:
|
package/docs/PROFILES.md
CHANGED
|
@@ -36,6 +36,8 @@ Current high-signal core profiles:
|
|
|
36
36
|
- [`UiField`](./profiles/UiField.yml)
|
|
37
37
|
- [`UiTextbox`](./profiles/UiTextbox.yml)
|
|
38
38
|
- [`UiButton`](./profiles/UiButton.yml)
|
|
39
|
+
- [`UiToggleButton`](./profiles/UiToggleButton.yml)
|
|
40
|
+
- [`UiToggleGroup`](./profiles/UiToggleGroup.yml)
|
|
39
41
|
- [`UiPageHeader`](./profiles/UiPageHeader.yml)
|
|
40
42
|
- [`UiSelect`](./profiles/UiSelect.yml)
|
|
41
43
|
- [`UiRadioSwitch`](./profiles/UiRadioSwitch.yml)
|
|
@@ -34,6 +34,18 @@ api:
|
|
|
34
34
|
zone: secondary-copy
|
|
35
35
|
creates: Optional secondary description near the main label.
|
|
36
36
|
|
|
37
|
+
rendered_structure:
|
|
38
|
+
descriptive_only: true
|
|
39
|
+
root:
|
|
40
|
+
shape: button.ui-v1-add-button
|
|
41
|
+
tag: button
|
|
42
|
+
notes: Current root is a single action button with optional icon and description zones.
|
|
43
|
+
|
|
44
|
+
geometry:
|
|
45
|
+
layout: button-like action root
|
|
46
|
+
root_display: flex
|
|
47
|
+
width_behavior: content-sized by default
|
|
48
|
+
|
|
37
49
|
behavior:
|
|
38
50
|
notes:
|
|
39
51
|
- Behaves like a clickable add action with standard button focus and click semantics.
|
|
@@ -24,6 +24,18 @@ api:
|
|
|
24
24
|
- name: closable
|
|
25
25
|
- name: fluid
|
|
26
26
|
|
|
27
|
+
rendered_structure:
|
|
28
|
+
descriptive_only: true
|
|
29
|
+
root:
|
|
30
|
+
shape: div.ui-v1-alert
|
|
31
|
+
tag: div
|
|
32
|
+
notes: Current alert body is wrapped in UiTransition and uses one flex row for icon, content, and optional closer.
|
|
33
|
+
|
|
34
|
+
geometry:
|
|
35
|
+
layout: block-like feedback row
|
|
36
|
+
root_display: flex
|
|
37
|
+
width_behavior: stretches to container width by default
|
|
38
|
+
|
|
27
39
|
behavior:
|
|
28
40
|
notes:
|
|
29
41
|
- shown controls visibility.
|
|
@@ -24,6 +24,18 @@ api:
|
|
|
24
24
|
- name: size
|
|
25
25
|
- name: href
|
|
26
26
|
|
|
27
|
+
rendered_structure:
|
|
28
|
+
descriptive_only: true
|
|
29
|
+
root:
|
|
30
|
+
shape: div.ui-v1-avatar or a.ui-v1-avatar
|
|
31
|
+
tag: div or a
|
|
32
|
+
notes: The root switches to anchor when href is provided.
|
|
33
|
+
|
|
34
|
+
geometry:
|
|
35
|
+
layout: avatar frame
|
|
36
|
+
root_display: inline-block
|
|
37
|
+
width_behavior: content-sized by size
|
|
38
|
+
|
|
27
39
|
behavior:
|
|
28
40
|
notes:
|
|
29
41
|
- Can render linked avatar behavior when href is provided.
|
|
@@ -23,6 +23,18 @@ api:
|
|
|
23
23
|
- name: avatars
|
|
24
24
|
- name: size
|
|
25
25
|
|
|
26
|
+
rendered_structure:
|
|
27
|
+
descriptive_only: true
|
|
28
|
+
root:
|
|
29
|
+
shape: div.ui-v1-avatar-list
|
|
30
|
+
tag: div
|
|
31
|
+
notes: Renders one wrapper around a compact row of avatars.
|
|
32
|
+
|
|
33
|
+
geometry:
|
|
34
|
+
layout: inline avatar row
|
|
35
|
+
root_display: flex
|
|
36
|
+
width_behavior: content-sized by default
|
|
37
|
+
|
|
26
38
|
ai_notes:
|
|
27
39
|
do:
|
|
28
40
|
- Use for compact grouped identity display.
|
|
@@ -83,7 +83,9 @@ rendered_structure:
|
|
|
83
83
|
This internal DOM description is useful for reasoning, not for styling against implementation details.
|
|
84
84
|
root:
|
|
85
85
|
button_shape: button.ui-v1-button
|
|
86
|
+
button_tag: button
|
|
86
87
|
link_shape: a.ui-v1-button
|
|
88
|
+
link_tag: a
|
|
87
89
|
zones:
|
|
88
90
|
- .ui-v1-button__content
|
|
89
91
|
- text span
|
|
@@ -95,7 +97,13 @@ rendered_structure:
|
|
|
95
97
|
|
|
96
98
|
geometry:
|
|
97
99
|
layout: inline-block
|
|
100
|
+
root_display:
|
|
101
|
+
default_button: inline-block
|
|
102
|
+
default_link: inline-block
|
|
103
|
+
width_behavior: content-sized by default
|
|
98
104
|
notes:
|
|
105
|
+
- Fits naturally into inline rows and action strips.
|
|
106
|
+
- Does not behave like a full-width block unless constrained by the parent layout.
|
|
99
107
|
- Size controls dimensions and internal paddings.
|
|
100
108
|
- Icon-only content leads to a square-like layout through state classes.
|
|
101
109
|
- The component fits naturally into inline rows, header actions, and compact action zones.
|
|
@@ -24,6 +24,18 @@ api:
|
|
|
24
24
|
- name: maxDate
|
|
25
25
|
- name: locale
|
|
26
26
|
|
|
27
|
+
rendered_structure:
|
|
28
|
+
descriptive_only: true
|
|
29
|
+
root:
|
|
30
|
+
shape: div.ui-v1-calendar
|
|
31
|
+
tag: div
|
|
32
|
+
notes: The root contains header controls, weekday labels, and the date grid.
|
|
33
|
+
|
|
34
|
+
geometry:
|
|
35
|
+
layout: block-like calendar panel
|
|
36
|
+
root_display: flex
|
|
37
|
+
width_behavior: stretches to container width by default
|
|
38
|
+
|
|
27
39
|
behavior:
|
|
28
40
|
notes:
|
|
29
41
|
- Supports single and range selection.
|
|
@@ -29,6 +29,18 @@ api:
|
|
|
29
29
|
- name: focus
|
|
30
30
|
- name: blur
|
|
31
31
|
|
|
32
|
+
rendered_structure:
|
|
33
|
+
descriptive_only: true
|
|
34
|
+
root:
|
|
35
|
+
shape: span.ui-v1-checkbox
|
|
36
|
+
tag: span
|
|
37
|
+
notes: One inline wrapper around the visual checkbox control and label content.
|
|
38
|
+
|
|
39
|
+
geometry:
|
|
40
|
+
layout: inline checkbox control
|
|
41
|
+
root_display: inline-flex
|
|
42
|
+
width_behavior: content-sized by default
|
|
43
|
+
|
|
32
44
|
behavior:
|
|
33
45
|
notes:
|
|
34
46
|
- model plus value supports group-style selection.
|
|
@@ -21,6 +21,18 @@ api:
|
|
|
21
21
|
- name: collapseBehaviour
|
|
22
22
|
- name: duration
|
|
23
23
|
|
|
24
|
+
rendered_structure:
|
|
25
|
+
descriptive_only: true
|
|
26
|
+
root:
|
|
27
|
+
shape: div.ui-v1-collapse
|
|
28
|
+
tag: div
|
|
29
|
+
notes: The animated container is wrapped in a native transition and exists only while shown or expanded.
|
|
30
|
+
|
|
31
|
+
geometry:
|
|
32
|
+
layout: block-like animated container
|
|
33
|
+
root_display: block
|
|
34
|
+
width_behavior: stretches to container width by default
|
|
35
|
+
|
|
24
36
|
ai_notes:
|
|
25
37
|
do:
|
|
26
38
|
- Use UiCollapse as a primitive for expandable content regions.
|
|
@@ -28,6 +28,18 @@ api:
|
|
|
28
28
|
- name: disabled
|
|
29
29
|
- name: color
|
|
30
30
|
|
|
31
|
+
rendered_structure:
|
|
32
|
+
descriptive_only: true
|
|
33
|
+
root:
|
|
34
|
+
shape: section.ui-v1-collapse-box
|
|
35
|
+
tag: section
|
|
36
|
+
notes: Renders one section root with a header button and a collapsible body region.
|
|
37
|
+
|
|
38
|
+
geometry:
|
|
39
|
+
layout: block-like collapsible section
|
|
40
|
+
root_display: flex
|
|
41
|
+
width_behavior: stretches to container width by default
|
|
42
|
+
|
|
31
43
|
behavior:
|
|
32
44
|
notes:
|
|
33
45
|
- Supports controlled expanded state and grouped interaction.
|
|
@@ -22,6 +22,18 @@ api:
|
|
|
22
22
|
key_props:
|
|
23
23
|
- name: activeBoxId
|
|
24
24
|
|
|
25
|
+
rendered_structure:
|
|
26
|
+
descriptive_only: true
|
|
27
|
+
root:
|
|
28
|
+
shape: div
|
|
29
|
+
tag: div
|
|
30
|
+
notes: Current implementation is an unstyled wrapper that coordinates child UiCollapseBox nodes.
|
|
31
|
+
|
|
32
|
+
geometry:
|
|
33
|
+
layout: block wrapper for stacked collapse boxes
|
|
34
|
+
root_display: block
|
|
35
|
+
width_behavior: stretches to container width by default
|
|
36
|
+
|
|
25
37
|
ai_notes:
|
|
26
38
|
do:
|
|
27
39
|
- Use with UiCollapseBox when grouped expansion matters.
|
|
@@ -35,6 +35,18 @@ api:
|
|
|
35
35
|
zone: tooltip
|
|
36
36
|
creates: Tooltip content after copy succeeds.
|
|
37
37
|
|
|
38
|
+
rendered_structure:
|
|
39
|
+
descriptive_only: true
|
|
40
|
+
root:
|
|
41
|
+
shape: div.ui-v1-copy-button
|
|
42
|
+
tag: div
|
|
43
|
+
notes: The root wraps the trigger, tooltip, and fallback input for clipboard support.
|
|
44
|
+
|
|
45
|
+
geometry:
|
|
46
|
+
layout: inline trigger wrapper
|
|
47
|
+
root_display: inline-block
|
|
48
|
+
width_behavior: content-sized by default
|
|
49
|
+
|
|
38
50
|
ai_notes:
|
|
39
51
|
do:
|
|
40
52
|
- Use for copy-specific flows instead of recreating copy state manually.
|
package/docs/profiles/UiDate.yml
CHANGED
|
@@ -21,6 +21,18 @@ api:
|
|
|
21
21
|
- name: withTime
|
|
22
22
|
- name: locale
|
|
23
23
|
|
|
24
|
+
rendered_structure:
|
|
25
|
+
descriptive_only: true
|
|
26
|
+
root:
|
|
27
|
+
shape: time
|
|
28
|
+
tag: time
|
|
29
|
+
notes: Renders one semantic time element with formatted date text.
|
|
30
|
+
|
|
31
|
+
geometry:
|
|
32
|
+
layout: inline date text
|
|
33
|
+
root_display: inline
|
|
34
|
+
width_behavior: content-sized by content
|
|
35
|
+
|
|
24
36
|
ai_notes:
|
|
25
37
|
do:
|
|
26
38
|
- Use UiDate for formatted output and UiDatePicker for input.
|
|
@@ -35,6 +35,18 @@ api:
|
|
|
35
35
|
- name: close
|
|
36
36
|
- name: toggle
|
|
37
37
|
|
|
38
|
+
rendered_structure:
|
|
39
|
+
descriptive_only: true
|
|
40
|
+
root:
|
|
41
|
+
shape: span.ui-v1-date-picker
|
|
42
|
+
tag: span
|
|
43
|
+
notes: The visible trigger behaves like an inline date control that opens a floating calendar.
|
|
44
|
+
|
|
45
|
+
geometry:
|
|
46
|
+
layout: inline date input trigger
|
|
47
|
+
root_display: inline-block
|
|
48
|
+
width_behavior: content-sized by default
|
|
49
|
+
|
|
38
50
|
behavior:
|
|
39
51
|
notes:
|
|
40
52
|
- Supports single-date and range flows.
|
|
@@ -15,6 +15,18 @@ use_when:
|
|
|
15
15
|
avoid_when:
|
|
16
16
|
- You need a richer feedback block, use UiAlert or UiInfobox instead.
|
|
17
17
|
|
|
18
|
+
rendered_structure:
|
|
19
|
+
descriptive_only: true
|
|
20
|
+
root:
|
|
21
|
+
shape: div.ui-v1-error
|
|
22
|
+
tag: div
|
|
23
|
+
notes: Renders one text container for error content.
|
|
24
|
+
|
|
25
|
+
geometry:
|
|
26
|
+
layout: block-like error text container
|
|
27
|
+
root_display: block
|
|
28
|
+
width_behavior: stretches to container width by default
|
|
29
|
+
|
|
18
30
|
ai_notes:
|
|
19
31
|
do:
|
|
20
32
|
- Use for compact error presentation.
|
|
@@ -116,7 +116,9 @@ rendered_structure:
|
|
|
116
116
|
descriptive_only: true
|
|
117
117
|
notes: >
|
|
118
118
|
This is a debugging and reasoning model, not a public styling contract.
|
|
119
|
-
root:
|
|
119
|
+
root:
|
|
120
|
+
shape: div.ui-v1-field
|
|
121
|
+
tag: div
|
|
120
122
|
zones:
|
|
121
123
|
- .ui-v1-field__headline
|
|
122
124
|
- .ui-v1-field__label
|
|
@@ -126,8 +128,10 @@ rendered_structure:
|
|
|
126
128
|
|
|
127
129
|
geometry:
|
|
128
130
|
layout: grid
|
|
131
|
+
root_display: grid
|
|
129
132
|
width: 100%
|
|
130
133
|
min_width: 0
|
|
134
|
+
width_behavior: stretches to container width by default
|
|
131
135
|
notes:
|
|
132
136
|
- Root uses grid with a 4px gap.
|
|
133
137
|
- The headline is a flex row.
|
|
@@ -22,6 +22,18 @@ api:
|
|
|
22
22
|
- name: resize
|
|
23
23
|
- name: crop
|
|
24
24
|
|
|
25
|
+
rendered_structure:
|
|
26
|
+
descriptive_only: true
|
|
27
|
+
root:
|
|
28
|
+
shape: img
|
|
29
|
+
tag: img
|
|
30
|
+
notes: The component renders a single image element.
|
|
31
|
+
|
|
32
|
+
geometry:
|
|
33
|
+
layout: replaced media element
|
|
34
|
+
root_display: inline-block
|
|
35
|
+
width_behavior: intrinsic by image source or explicit dimensions
|
|
36
|
+
|
|
25
37
|
ai_notes:
|
|
26
38
|
do:
|
|
27
39
|
- Use UiImage for general media and UiAvatar for people or identity.
|
|
@@ -28,6 +28,18 @@ api:
|
|
|
28
28
|
- name: hide
|
|
29
29
|
- name: toggle
|
|
30
30
|
|
|
31
|
+
rendered_structure:
|
|
32
|
+
descriptive_only: true
|
|
33
|
+
root:
|
|
34
|
+
shape: div.ui-v1-infobox
|
|
35
|
+
tag: div
|
|
36
|
+
notes: The visible infobox body is wrapped in UiTransition and uses one flex row for media, content, and optional closer.
|
|
37
|
+
|
|
38
|
+
geometry:
|
|
39
|
+
layout: block-like message panel
|
|
40
|
+
root_display: flex
|
|
41
|
+
width_behavior: stretches to container width by default
|
|
42
|
+
|
|
31
43
|
ai_notes:
|
|
32
44
|
do:
|
|
33
45
|
- Use UiInfobox for richer guidance blocks, not tiny alerts.
|
package/docs/profiles/UiLink.yml
CHANGED
|
@@ -32,6 +32,18 @@ api:
|
|
|
32
32
|
- name: focus
|
|
33
33
|
- name: blur
|
|
34
34
|
|
|
35
|
+
rendered_structure:
|
|
36
|
+
descriptive_only: true
|
|
37
|
+
root:
|
|
38
|
+
shape: a.ui-v1-link
|
|
39
|
+
tag: a
|
|
40
|
+
notes: The root is one anchor element with inline icon and text zones.
|
|
41
|
+
|
|
42
|
+
geometry:
|
|
43
|
+
layout: inline link root
|
|
44
|
+
root_display: inline-flex
|
|
45
|
+
width_behavior: content-sized by default
|
|
46
|
+
|
|
35
47
|
ai_notes:
|
|
36
48
|
do:
|
|
37
49
|
- Use UiLink for real link semantics and inline navigation.
|
|
@@ -21,6 +21,18 @@ api:
|
|
|
21
21
|
- name: fixed
|
|
22
22
|
- name: overlay
|
|
23
23
|
|
|
24
|
+
rendered_structure:
|
|
25
|
+
descriptive_only: true
|
|
26
|
+
root:
|
|
27
|
+
shape: div.ui-v1-loader
|
|
28
|
+
tag: div
|
|
29
|
+
notes: The loader body may be wrapped in UiTransition, but the visible loader itself is one div root.
|
|
30
|
+
|
|
31
|
+
geometry:
|
|
32
|
+
layout: loader surface or overlay
|
|
33
|
+
root_display: block
|
|
34
|
+
width_behavior: content-sized by default, viewport-covering in fixed or overlay modes
|
|
35
|
+
|
|
24
36
|
ai_notes:
|
|
25
37
|
do:
|
|
26
38
|
- Use overlay or fixed only when the loader should escape normal inline flow.
|
|
@@ -40,6 +40,18 @@ api:
|
|
|
40
40
|
zone: trailing-icon
|
|
41
41
|
creates: Trailing icon zone.
|
|
42
42
|
|
|
43
|
+
rendered_structure:
|
|
44
|
+
descriptive_only: true
|
|
45
|
+
root:
|
|
46
|
+
shape: div.ui-v1-menu-item
|
|
47
|
+
tag: div
|
|
48
|
+
notes: The root is one menu row container with leading, main, and trailing content zones.
|
|
49
|
+
|
|
50
|
+
geometry:
|
|
51
|
+
layout: menu row
|
|
52
|
+
root_display: flex
|
|
53
|
+
width_behavior: stretches to available menu width
|
|
54
|
+
|
|
43
55
|
ai_notes:
|
|
44
56
|
do:
|
|
45
57
|
- Use structured slots instead of custom wrappers inside menu rows.
|
|
@@ -33,6 +33,18 @@ api:
|
|
|
33
33
|
zone: group-meta
|
|
34
34
|
creates: Group quantity or meta area.
|
|
35
35
|
|
|
36
|
+
rendered_structure:
|
|
37
|
+
descriptive_only: true
|
|
38
|
+
root:
|
|
39
|
+
shape: div.ui-v1-menu-item-group
|
|
40
|
+
tag: div
|
|
41
|
+
notes: The root wraps the group head and the nested option content.
|
|
42
|
+
|
|
43
|
+
geometry:
|
|
44
|
+
layout: block-like menu group wrapper
|
|
45
|
+
root_display: block
|
|
46
|
+
width_behavior: stretches to available menu width
|
|
47
|
+
|
|
36
48
|
ai_notes:
|
|
37
49
|
do:
|
|
38
50
|
- Use for grouped menu structure instead of manual heading-plus-list markup.
|
|
@@ -24,6 +24,18 @@ api:
|
|
|
24
24
|
- name: scrolling
|
|
25
25
|
- name: fixed
|
|
26
26
|
|
|
27
|
+
rendered_structure:
|
|
28
|
+
descriptive_only: true
|
|
29
|
+
root:
|
|
30
|
+
shape: div.ui-v1-modal-sidebar-overlay
|
|
31
|
+
tag: div
|
|
32
|
+
notes: The component is teleported; the overlay div contains the actual aside.ui-v1-modal-sidebar panel.
|
|
33
|
+
|
|
34
|
+
geometry:
|
|
35
|
+
layout: teleported overlay with side panel
|
|
36
|
+
root_display: flex
|
|
37
|
+
width_behavior: viewport-covering overlay with fixed-width sidebar surface
|
|
38
|
+
|
|
27
39
|
behavior:
|
|
28
40
|
notes:
|
|
29
41
|
- opened controls visibility.
|
|
@@ -30,3 +30,15 @@ api:
|
|
|
30
30
|
methods:
|
|
31
31
|
- name: open
|
|
32
32
|
- name: close
|
|
33
|
+
|
|
34
|
+
rendered_structure:
|
|
35
|
+
descriptive_only: true
|
|
36
|
+
root:
|
|
37
|
+
shape: div.ui-v1-modal-window via UiModalWindowSurface
|
|
38
|
+
tag: div
|
|
39
|
+
notes: The component delegates the actual teleported modal root to UiModalWindowSurface and renders header, content, and footer inside it.
|
|
40
|
+
|
|
41
|
+
geometry:
|
|
42
|
+
layout: teleported modal layer with centered surface
|
|
43
|
+
root_display: flex
|
|
44
|
+
width_behavior: viewport-covering overlay with content-sized or responsive surface
|
|
@@ -27,3 +27,15 @@ api:
|
|
|
27
27
|
- name: responsive
|
|
28
28
|
- name: scrolling
|
|
29
29
|
- name: role
|
|
30
|
+
|
|
31
|
+
rendered_structure:
|
|
32
|
+
descriptive_only: true
|
|
33
|
+
root:
|
|
34
|
+
shape: div.ui-v1-modal-window
|
|
35
|
+
tag: div
|
|
36
|
+
notes: The component is teleported and renders the modal overlay and surface container directly.
|
|
37
|
+
|
|
38
|
+
geometry:
|
|
39
|
+
layout: teleported modal overlay
|
|
40
|
+
root_display: flex
|
|
41
|
+
width_behavior: viewport-covering overlay with content-sized or responsive surface
|
|
@@ -34,6 +34,18 @@ api:
|
|
|
34
34
|
- name: increase
|
|
35
35
|
- name: decrease
|
|
36
36
|
|
|
37
|
+
rendered_structure:
|
|
38
|
+
descriptive_only: true
|
|
39
|
+
root:
|
|
40
|
+
shape: div.ui-v1-number-stepper
|
|
41
|
+
tag: div
|
|
42
|
+
notes: One inline control root wraps the text input and increment or decrement actions.
|
|
43
|
+
|
|
44
|
+
geometry:
|
|
45
|
+
layout: inline numeric control
|
|
46
|
+
root_display: inline-flex
|
|
47
|
+
width_behavior: content-sized by default
|
|
48
|
+
|
|
37
49
|
behavior:
|
|
38
50
|
notes:
|
|
39
51
|
- Can clamp values into range.
|
|
@@ -106,7 +106,9 @@ rendered_structure:
|
|
|
106
106
|
descriptive_only: true
|
|
107
107
|
notes: >
|
|
108
108
|
This structure is useful for reasoning and debugging, not as a public styling API.
|
|
109
|
-
root:
|
|
109
|
+
root:
|
|
110
|
+
shape: div.ui-v1-page-header
|
|
111
|
+
tag: div
|
|
110
112
|
zones:
|
|
111
113
|
- .ui-v1-page-header__main
|
|
112
114
|
- .ui-v1-page-header__title
|
|
@@ -120,6 +122,8 @@ rendered_structure:
|
|
|
120
122
|
|
|
121
123
|
geometry:
|
|
122
124
|
layout: flex
|
|
125
|
+
root_display: flex
|
|
126
|
+
width_behavior: stretches to container width by default
|
|
123
127
|
notes:
|
|
124
128
|
- Root uses justify-content space-between and can wrap.
|
|
125
129
|
- The main area contains title and optional addon.
|
|
@@ -94,7 +94,9 @@ api:
|
|
|
94
94
|
|
|
95
95
|
rendered_structure:
|
|
96
96
|
descriptive_only: true
|
|
97
|
-
root:
|
|
97
|
+
root:
|
|
98
|
+
shape: div.ui-v1-popper
|
|
99
|
+
tag: div
|
|
98
100
|
zones:
|
|
99
101
|
- .ui-v1-popper__arrow when withArrow=true
|
|
100
102
|
- .ui-v1-popper__content
|
|
@@ -102,6 +104,8 @@ rendered_structure:
|
|
|
102
104
|
|
|
103
105
|
geometry:
|
|
104
106
|
layout: floating layer outside normal document flow
|
|
107
|
+
root_display: block
|
|
108
|
+
width_behavior: content-sized by floating content
|
|
105
109
|
notes:
|
|
106
110
|
- Position is calculated relative to the target element.
|
|
107
111
|
- Container controls where the DOM node is teleported.
|
|
@@ -43,10 +43,16 @@ api:
|
|
|
43
43
|
|
|
44
44
|
rendered_structure:
|
|
45
45
|
descriptive_only: true
|
|
46
|
+
root:
|
|
47
|
+
shape: no persistent DOM root
|
|
48
|
+
tag: none
|
|
46
49
|
notes: >
|
|
47
50
|
The connector exists mainly to provide target context. It is not a styled layout primitive.
|
|
48
51
|
|
|
49
52
|
geometry:
|
|
53
|
+
layout: no standalone layout of its own
|
|
54
|
+
root_display: none
|
|
55
|
+
width_behavior: defined by slotted children
|
|
50
56
|
notes:
|
|
51
57
|
- It usually has no meaningful layout behavior on its own.
|
|
52
58
|
- Treat it as a context wrapper, not as a visual block.
|
|
@@ -46,11 +46,17 @@ api:
|
|
|
46
46
|
|
|
47
47
|
rendered_structure:
|
|
48
48
|
descriptive_only: true
|
|
49
|
+
root:
|
|
50
|
+
shape: configurable wrapper tag
|
|
51
|
+
tag: configurable, div by default
|
|
49
52
|
notes: >
|
|
50
53
|
The component renders a configurable wrapper tag and stores its element ref in popper context.
|
|
51
54
|
It does not add complex UI logic on its own.
|
|
52
55
|
|
|
53
56
|
geometry:
|
|
57
|
+
layout: wrapper defined by the chosen tag
|
|
58
|
+
root_display: depends on the chosen tag
|
|
59
|
+
width_behavior: follows the chosen tag and its children
|
|
54
60
|
notes:
|
|
55
61
|
- Layout depends on the chosen tag and its children.
|
|
56
62
|
- Its main purpose is to provide the correct anchor ref for the popper.
|
|
@@ -24,3 +24,15 @@ api:
|
|
|
24
24
|
- name: click
|
|
25
25
|
- name: focus
|
|
26
26
|
- name: blur
|
|
27
|
+
|
|
28
|
+
rendered_structure:
|
|
29
|
+
descriptive_only: true
|
|
30
|
+
root:
|
|
31
|
+
shape: span.ui-v1-radio
|
|
32
|
+
tag: span
|
|
33
|
+
notes: One inline wrapper around the visual radio control and label content.
|
|
34
|
+
|
|
35
|
+
geometry:
|
|
36
|
+
layout: inline radio control
|
|
37
|
+
root_display: inline-flex
|
|
38
|
+
width_behavior: content-sized by default
|