@aquera/nile-elements 2.0.2 → 2.0.3

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 (41) hide show
  1. package/README.md +3 -0
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +949 -640
  5. package/dist/nile-segmented-progress-bar/index.cjs.js +2 -0
  6. package/dist/nile-segmented-progress-bar/index.cjs.js.map +1 -0
  7. package/dist/nile-segmented-progress-bar/index.esm.js +1 -0
  8. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.cjs.js +2 -0
  9. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.cjs.js.map +1 -0
  10. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.css.cjs.js +2 -0
  11. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.css.cjs.js.map +1 -0
  12. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.css.esm.js +243 -0
  13. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.esm.js +69 -0
  14. package/dist/nile-wysiwyg-editor/engine/commands.cjs.js +1 -1
  15. package/dist/nile-wysiwyg-editor/engine/commands.cjs.js.map +1 -1
  16. package/dist/nile-wysiwyg-editor/engine/commands.esm.js +1 -1
  17. package/dist/src/index.d.ts +2 -0
  18. package/dist/src/index.js +1 -0
  19. package/dist/src/index.js.map +1 -1
  20. package/dist/src/nile-segmented-progress-bar/index.d.ts +2 -0
  21. package/dist/src/nile-segmented-progress-bar/index.js +2 -0
  22. package/dist/src/nile-segmented-progress-bar/index.js.map +1 -0
  23. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.css.d.ts +9 -0
  24. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.css.js +252 -0
  25. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.css.js.map +1 -0
  26. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.d.ts +135 -0
  27. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.js +373 -0
  28. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.js.map +1 -0
  29. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.test.d.ts +1 -0
  30. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.test.js +961 -0
  31. package/dist/src/nile-segmented-progress-bar/nile-segmented-progress-bar.test.js.map +1 -0
  32. package/dist/src/version.js +1 -1
  33. package/dist/src/version.js.map +1 -1
  34. package/dist/tsconfig.tsbuildinfo +1 -1
  35. package/package.json +2 -1
  36. package/src/index.ts +5 -0
  37. package/src/nile-segmented-progress-bar/index.ts +5 -0
  38. package/src/nile-segmented-progress-bar/nile-segmented-progress-bar.css.ts +254 -0
  39. package/src/nile-segmented-progress-bar/nile-segmented-progress-bar.test.ts +1298 -0
  40. package/src/nile-segmented-progress-bar/nile-segmented-progress-bar.ts +437 -0
  41. package/vscode-html-custom-data.json +113 -0
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Webcomponent nile-elements following open-wc recommendations",
4
4
  "license": "MIT",
5
5
  "author": "nile-elements",
6
- "version": "2.0.2",
6
+ "version": "2.0.3",
7
7
  "main": "dist/src/index.js",
8
8
  "type": "module",
9
9
  "module": "dist/src/index.js",
@@ -28,6 +28,7 @@
28
28
  "./nile-slide-toggle": "./dist/src/nile-slide-toggle/index.js",
29
29
  "./nile-loader": "./dist/src/nile-loader/index.js",
30
30
  "./nile-progress-bar": "./dist/src/nile-progress-bar/index.js",
31
+ "./nile-segmented-progress-bar": "./dist/src/nile-segmented-progress-bar/index.js",
31
32
  "./nile-spinner": "./dist/src/nile-spinner/index.js",
32
33
  "./nile-select": "./dist/src/nile-select/index.js",
33
34
  "./nile-option": "./dist/src/nile-option/index.js",
package/src/index.ts CHANGED
@@ -16,6 +16,11 @@ export { NileTooltip } from './nile-tooltip';
16
16
  export { NileSlideToggle } from './nile-slide-toggle';
17
17
  export { NileLoader } from './nile-loader';
18
18
  export { NileProgressBar } from './nile-progress-bar';
19
+ export { NileSegmentedProgressBar } from './nile-segmented-progress-bar';
20
+ export type {
21
+ NileProgressSegment,
22
+ NileSegmentTooltipPlacement,
23
+ } from './nile-segmented-progress-bar';
19
24
  export { NileSpinner } from './nile-spinner';
20
25
  export { NileSkeletonLoader } from './nile-skeleton-loader';
21
26
  export { NileSelect } from './nile-select';
@@ -0,0 +1,5 @@
1
+ export { NileSegmentedProgressBar } from './nile-segmented-progress-bar';
2
+ export type {
3
+ NileProgressSegment,
4
+ NileSegmentTooltipPlacement,
5
+ } from './nile-segmented-progress-bar';
@@ -0,0 +1,254 @@
1
+ /**
2
+ * Copyright Aquera Inc 2026
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ import { css } from 'lit';
9
+
10
+ export const styles = css`
11
+ :host {
12
+ -webkit-font-smoothing: var(
13
+ --nile-webkit-font-smoothing,
14
+ var(--ng-webkit-font-smoothing)
15
+ );
16
+ -moz-osx-font-smoothing: var(
17
+ --nile-moz-osx-font-smoothing,
18
+ var(--ng-moz-osx-font-smoothing)
19
+ );
20
+ text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));
21
+ display: block;
22
+ width: 100%;
23
+ }
24
+
25
+ .segmented-progress-bar {
26
+ display: flex;
27
+ flex-direction: column;
28
+ gap: var(--nile-spacing-sm, var(--ng-spacing-2));
29
+ box-sizing: border-box;
30
+ width: 100%;
31
+ min-width: 0;
32
+ font-family: var(--nile-font-family-serif, var(--ng-font-family-body));
33
+ }
34
+
35
+ /* #region Label */
36
+
37
+ .segmented-progress-bar__label {
38
+ font-size: var(--nile-type-scale-2, var(--ng-font-size-text-sm));
39
+ line-height: var(--nile-type-scale-5, var(--ng-line-height-text-sm));
40
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-medium));
41
+ color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));
42
+ }
43
+
44
+ /* #endregion */
45
+
46
+ /* #region Track */
47
+
48
+ .segmented-progress-bar__track {
49
+ display: flex;
50
+ flex-wrap: nowrap;
51
+ align-items: stretch;
52
+ width: 100%;
53
+ min-width: 0;
54
+ box-sizing: border-box;
55
+ overflow: hidden;
56
+ background-color: var(
57
+ --nile-progress-bar-track-color-stroke,
58
+ var(--ng-colors-bg-quaternary)
59
+ );
60
+ border-radius: var(--nile-radius-none, var(--ng-radius-none));
61
+ height: var(--nile-height-8px, var(--ng-height-8px));
62
+ }
63
+
64
+ .segmented-progress-bar--rounded .segmented-progress-bar__track {
65
+ border-radius: var(--nile-radius-full, var(--ng-radius-full));
66
+ }
67
+
68
+ .segmented-progress-bar--small .segmented-progress-bar__track {
69
+ height: var(--nile-height-4px, var(--ng-height-4px));
70
+ }
71
+
72
+ .segmented-progress-bar--medium .segmented-progress-bar__track {
73
+ height: var(--nile-height-8px, var(--ng-height-8px));
74
+ }
75
+
76
+ .segmented-progress-bar--large .segmented-progress-bar__track {
77
+ height: var(--nile-height-12px, var(--ng-height-12px));
78
+ }
79
+
80
+ .segmented-progress-bar__track nile-lite-tooltip {
81
+ display: contents;
82
+ }
83
+
84
+ /* #endregion */
85
+
86
+ /* #region Segments */
87
+
88
+ .segmented-progress-bar__segment {
89
+ appearance: none;
90
+ -webkit-appearance: none;
91
+ display: block;
92
+ padding: var(--nile-spacing-none, var(--ng-spacing-0));
93
+ margin: var(--nile-spacing-none, var(--ng-spacing-0));
94
+ border: none;
95
+ border-radius: var(--nile-radius-none, var(--ng-radius-none));
96
+ height: 100%;
97
+ align-self: stretch;
98
+ box-sizing: border-box;
99
+ cursor: pointer;
100
+ flex-grow: 0;
101
+ transition: opacity 0.15s ease-in-out;
102
+ }
103
+
104
+ .segmented-progress-bar__segment:hover {
105
+ opacity: 0.85;
106
+ }
107
+
108
+ .segmented-progress-bar__segment:focus-visible {
109
+ outline: var(--nile-height-2px, var(--ng-height-2px)) solid
110
+ var(--nile-colors-brand-600, var(--ng-colors-border-brand));
111
+ outline-offset: var(--nile-height-1px, var(--ng-height-1px));
112
+ }
113
+
114
+ /* #endregion */
115
+
116
+ .segmented-progress-bar__palette-0 {
117
+ background-color: var(--nile-colors-green-500, var(--ng-componentcolors-utility-success-500));
118
+ }
119
+
120
+ .segmented-progress-bar__palette-1 {
121
+ background-color: var(--nile-colors-red-500, var(--ng-componentcolors-utility-error-500));
122
+ }
123
+
124
+ .segmented-progress-bar__palette-2 {
125
+ background-color: var(--nile-colors-orange-500, var(--ng-componentcolors-utility-orange-500));
126
+ }
127
+
128
+ .segmented-progress-bar__palette-3 {
129
+ background-color: var(--nile-colors-blue-500, var(--ng-componentcolors-utility-blue-500));
130
+ }
131
+ .segmented-progress-bar__palette-4 {
132
+ background-color: var(--nile-colors-neutral-700, var(--ng-componentcolors-utility-gray-500));
133
+ }
134
+
135
+ .segmented-progress-bar__palette-5 {
136
+ background-color: var(--nile-colors-purple-500, var(--ng-componentcolors-utility-purple-500));
137
+ }
138
+
139
+ .segmented-progress-bar__palette-6 {
140
+ background-color: var(--nile-colors-yellow-500, var(--ng-componentcolors-utility-warning-500));
141
+ }
142
+
143
+ .segmented-progress-bar__palette-7 {
144
+ background-color: var(--nile-colors-pink-500, var(--ng-componentcolors-utility-pink-500));
145
+ }
146
+
147
+ .segmented-progress-bar__palette-8 {
148
+ background-color: var(--nile-colors-indigo-500, var(--ng-componentcolors-utility-indigo-500));
149
+ }
150
+
151
+ .segmented-progress-bar__palette-9 {
152
+ background-color: var(--nile-colors-fuchsia-500, var(--ng-componentcolors-utility-fuchsia-500));
153
+ }
154
+
155
+ /* #endregion */
156
+
157
+ /* #region Legend */
158
+
159
+ .segmented-progress-bar__legend {
160
+ display: flex;
161
+ flex-wrap: wrap;
162
+ align-items: center;
163
+ column-gap: var(--nile-spacing-lg, var(--ng-spacing-4));
164
+ row-gap: var(--nile-spacing-sm, var(--ng-spacing-2));
165
+ width: 100%;
166
+ min-width: 0;
167
+ margin-top: var(--nile-spacing-xs, var(--ng-spacing-1));
168
+ }
169
+
170
+ .segmented-progress-bar__legend-item {
171
+ appearance: none;
172
+ -webkit-appearance: none;
173
+ display: inline-flex;
174
+ align-items: center;
175
+ gap: var(--nile-spacing-xs, var(--ng-spacing-2));
176
+ padding: var(--nile-spacing-none, var(--ng-spacing-0));
177
+ margin: var(--nile-spacing-none, var(--ng-spacing-0));
178
+ border: none;
179
+ background: none;
180
+ border-radius: var(--nile-radius-xs, var(--ng-radius-xs));
181
+ cursor: pointer;
182
+ /* Keep swatch, label and value on one line — never break mid-entry. */
183
+ white-space: nowrap;
184
+ flex: 0 0 auto;
185
+ max-width: 100%;
186
+ font-family: inherit;
187
+ text-align: left;
188
+ }
189
+
190
+ .segmented-progress-bar__legend-item:focus-visible {
191
+ outline: var(--nile-height-2px, var(--ng-height-2px)) solid
192
+ var(--nile-colors-brand-600, var(--ng-colors-border-brand));
193
+ outline-offset: var(--nile-height-2px, var(--ng-height-2px));
194
+ }
195
+
196
+ .segmented-progress-bar__legend-swatch {
197
+ flex: none;
198
+ width: var(--nile-height-10px, var(--ng-height-10px));
199
+ height: var(--nile-height-10px, var(--ng-height-10px));
200
+ border-radius: var(--nile-radius-xxs, var(--ng-radius-xxs));
201
+ }
202
+
203
+ .segmented-progress-bar__legend-label {
204
+ font-size: var(--nile-type-scale-2, var(--ng-font-size-text-sm));
205
+ line-height: var(--nile-type-scale-5, var(--ng-line-height-text-sm));
206
+ font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-regular));
207
+ color: var(--nile-colors-text-secondary, var(--ng-colors-text-secondary-700));
208
+ overflow: hidden;
209
+ text-overflow: ellipsis;
210
+ }
211
+
212
+ .segmented-progress-bar__legend-value {
213
+ font-size: var(--nile-type-scale-2, var(--ng-font-size-text-sm));
214
+ line-height: var(--nile-type-scale-5, var(--ng-line-height-text-sm));
215
+ font-weight: var(--nile-font-weight-bold, var(--ng-font-weight-semibold));
216
+ color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));
217
+ }
218
+
219
+ /* #endregion */
220
+
221
+ /* #region Sizes — legend scales with the bar */
222
+
223
+ .segmented-progress-bar--small .segmented-progress-bar__legend-swatch {
224
+ width: var(--nile-height-8px, var(--ng-height-8px));
225
+ height: var(--nile-height-8px, var(--ng-height-8px));
226
+ }
227
+
228
+ .segmented-progress-bar--small .segmented-progress-bar__legend-label,
229
+ .segmented-progress-bar--small .segmented-progress-bar__legend-value {
230
+ font-size: var(--nile-type-scale-1, var(--ng-font-size-text-xs));
231
+ line-height: var(--nile-type-scale-4, var(--ng-line-height-text-xs));
232
+ }
233
+
234
+ .segmented-progress-bar--large .segmented-progress-bar__legend-swatch {
235
+ width: var(--nile-height-12px, var(--ng-height-12px));
236
+ height: var(--nile-height-12px, var(--ng-height-12px));
237
+ }
238
+
239
+ .segmented-progress-bar--large .segmented-progress-bar__legend-label,
240
+ .segmented-progress-bar--large .segmented-progress-bar__legend-value {
241
+ font-size: var(--nile-type-scale-3, var(--ng-font-size-text-md));
242
+ line-height: var(--nile-type-scale-6, var(--ng-line-height-text-md));
243
+ }
244
+
245
+ /* #endregion */
246
+
247
+ @media (prefers-reduced-motion: reduce) {
248
+ .segmented-progress-bar__segment {
249
+ transition: none;
250
+ }
251
+ }
252
+ `;
253
+
254
+ export default [styles];