@public-ui/kolibri-cli 4.0.0-alpha.9 → 4.0.0-beta.0
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/README.md
CHANGED
|
@@ -27,6 +27,14 @@ yarn add -g @public-ui/kolibri-cli
|
|
|
27
27
|
|
|
28
28
|
> **Important:** Install exactly the CLI version you want to upgrade to. The migration tool compares your locally installed `@public-ui/components` version with the CLI version to decide which migration tasks must run and in which order.
|
|
29
29
|
|
|
30
|
+
## Quickstart (Happy Path)
|
|
31
|
+
|
|
32
|
+
1. Install the CLI version that matches your target `@public-ui/components` release (see above).
|
|
33
|
+
2. Run the migration in your project root: `kolibri migrate .`.
|
|
34
|
+
3. Review the changes: `git status` and `git diff`.
|
|
35
|
+
4. Format updated files: `pnpm format`.
|
|
36
|
+
5. Commit the result and continue development.
|
|
37
|
+
|
|
30
38
|
## Usage
|
|
31
39
|
|
|
32
40
|
The `KoliBri` CLI is intended to be executed in your project root directory. Use the `kolibri` command to start the CLI.
|
|
@@ -71,27 +79,92 @@ With the `migrate` command you can migrate your project to the latest version of
|
|
|
71
79
|
|
|
72
80
|
> **Hint:** The migration tool currently supports React projects (JSX/TSX), Vue single-file components, and HTML/XHTML template-based projects such as Angular applications or vanilla custom elements. Support for additional project types is planned.
|
|
73
81
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
-
|
|
85
|
-
-
|
|
86
|
-
|
|
87
|
-
-
|
|
88
|
-
-
|
|
89
|
-
-
|
|
90
|
-
-
|
|
91
|
-
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
94
|
-
-
|
|
82
|
+
The migration runner registers tasks in the following order and executes only those whose semantic version ranges match your
|
|
83
|
+
project: common tasks (`*`), v1 tasks (`^1`), v2 tasks (`^2` / `>=2.1.7 <3`), v3 tasks (`>=2 <4`), v4 tasks (`^4`) and
|
|
84
|
+
asset-related tasks (`^1`). All tasks are enabled by default. If you need to disable a noisy task or explicitly re-enable a
|
|
85
|
+
previously deactivated one for better migratability, set the corresponding flag in `.kolibri.config.json` under
|
|
86
|
+
`migrate.tasks` to `false` or `true`.
|
|
87
|
+
|
|
88
|
+
#### Migration tasks and version ranges
|
|
89
|
+
|
|
90
|
+
- **Common tasks (`*`)**
|
|
91
|
+
- Add `.kolibri.migrate.json` to `.gitignore`.
|
|
92
|
+
- Add `save-exact=true` to `.npmrc`.
|
|
93
|
+
- Configure `html.customData` in `.vscode/settings.json` to point to `@public-ui/components/vscode-custom-data.json`.
|
|
94
|
+
- **Version 1 tasks (`^1`, unless noted)**
|
|
95
|
+
- `kol-abbr`: rename `_align` → `_tooltip-align`; rename `_title` → `_label`.
|
|
96
|
+
- `kol-accordion`: rename `_heading` → `_label`; mark removed slot `header`; rename slot `content` to the default slot.
|
|
97
|
+
- `kol-alert`: rename `_heading` → `_label`.
|
|
98
|
+
- `kol-badge`: remove `_icon-only`; rename `_icon-only` → `_hide-label`; remove `_hide-label`; rename `_icon` → `_icons`.
|
|
99
|
+
- `kol-breadcrumb`: rename `_aria-label` → `_label`.
|
|
100
|
+
- `kol-button`: remove `_aria-current`; remove `_aria-label`; rename `_icon-only` → `_hide-label`; rename `_icon` → `_icons`;
|
|
101
|
+
refactor `_icon-align` into `_icons` (**`^2`**).
|
|
102
|
+
- `kol-button-link`: remove `_aria-current`; remove `_aria-label`; rename `_icon-only` → `_hide-label`; rename `_icon` →
|
|
103
|
+
`_icons`.
|
|
104
|
+
- `kol-card`: rename `_heading` → `_label`; rename `_headline` → `_label`; mark removed slots `footer` and `header`; rename
|
|
105
|
+
slot `content` to the default slot.
|
|
106
|
+
- `kol-details`: rename `_summary` → `_label`.
|
|
107
|
+
- `kol-icon`: rename `_aria-label` → `_label`; remove `_part`; rename `_icon` → `_icons`.
|
|
108
|
+
- `kol-input`: rename `_icon` → `_icons`.
|
|
109
|
+
- `kol-input-checkbox`: rename `_type` → `_variant`; rename `_icon` → `_icons`.
|
|
110
|
+
- `kol-input-color`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`.
|
|
111
|
+
- `kol-input-date` / `kol-date`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`.
|
|
112
|
+
- `kol-input-email`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`; remove `_size`.
|
|
113
|
+
- `kol-input-file`: rename `_icon` → `_icons`.
|
|
114
|
+
- `kol-input-number`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`; remove `_type`.
|
|
115
|
+
- `kol-input-password`: rename `_icon` → `_icons`; remove `_size`.
|
|
116
|
+
- `kol-input-radio`: rename `_list` → `_options`.
|
|
117
|
+
- `kol-input-range`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`.
|
|
118
|
+
- `kol-input-text`: rename `_list` → `_suggestions`; rename `_icon` → `_icons`; remove `_size`.
|
|
119
|
+
- `kol-link`: remove `_aria-controls`, `_aria-expanded`, `_aria-label`, `_aria-selected`, `_disabled`, `_selector`, `_stealth`,
|
|
120
|
+
`_use-case`; rename `_aria-current` → `_listen-aria-current`; rename `_icon-only` → `_hide-label`; rename `_icon` → `_icons`;
|
|
121
|
+
refactor `_icon-align` (**`^2`**).
|
|
122
|
+
- `kol-link-button`: remove `_aria-controls`, `_aria-expanded`, `_aria-label`, `_aria-selected`, `_disabled`; rename
|
|
123
|
+
`_aria-current` → `_listen-aria-current`; rename `_icon-only` → `_hide-label`; rename `_icon` → `_icons`.
|
|
124
|
+
- `kol-link-group`: rename `_aria-label` → `_label`; rename `_heading` → `_label`; remove `_heading`; remove `_ordered`.
|
|
125
|
+
- `kol-logo`: rename `_abbr` → `_org`.
|
|
126
|
+
- `kol-modal`: rename `_aria-label` → `_label`.
|
|
127
|
+
- `kol-nav`: rename `_aria-label` → `_label`; rename `_compact` → `_hide-label`; remove `_variant`.
|
|
128
|
+
- `kol-pagination`: rename `_count` → `_total`; rename `_total` → `_max`.
|
|
129
|
+
- `kol-progress`: rename `_type` → `_variant`.
|
|
130
|
+
- `kol-quote`: rename `_caption` → `_label`.
|
|
131
|
+
- `kol-select`: rename `_height` → `_rows`; rename `_list` → `_options`; rename `_icon` → `_icons`; remove `_size`.
|
|
132
|
+
- `kol-skip-nav`: rename `_aria-label` → `_label`.
|
|
133
|
+
- `kol-span`: rename `_icon-only` → `_hide-label`; rename `_icon` → `_icons`.
|
|
134
|
+
- `kol-split-button`: remove `_aria-label`, `_access-key`, `_show-dropdown`; remove `_show`.
|
|
135
|
+
- `kol-symbol`: rename `_aria-label` → `_label`.
|
|
136
|
+
- `kol-table`: rename `_caption` → `_label`.
|
|
137
|
+
- `kol-tabs`: rename `_aria-label` → `_label`; rename `_tab-align` → `_align`; rename `_icon` → `_icons`; rename `_icon-only`
|
|
138
|
+
→ `_hide-label`.
|
|
139
|
+
- `kol-toast`: remove `_show-duration`; rename `_heading` → `_label`.
|
|
140
|
+
- `kol-version`: rename `_version` → `_label`.
|
|
141
|
+
- Expert slot migrations: move `innerText` to `_label` for `kol-heading`, `kol-input-*`, `kol-link`, `kol-select`,
|
|
142
|
+
`kol-textarea` (**`^1`**).
|
|
143
|
+
- Slot removals: mark removed `kol-accordion` `header`, `kol-card` `footer`/`header` (**`^1`**).
|
|
144
|
+
- Slot renames: `kol-accordion` / `kol-card` slot `content` → default slot (**`^1`**).
|
|
145
|
+
- Refactor `_label={false}` to empty string (**`>=1.6 <=1.7`**).
|
|
146
|
+
- **Version 2 tasks**
|
|
147
|
+
- `kol-card`: remove `_has-footer` (**`^2`**).
|
|
148
|
+
- `kol-link-group`: remove `_level` (**`^2`**).
|
|
149
|
+
- `kol-table`: rename tag `kol-table` → `kol-table-stateful` (**`>=2.1.7 <3`**).
|
|
150
|
+
- **Version 3 tasks (`>=2 <4`)**
|
|
151
|
+
- `kol-abbr`: remove `_tooltip-align`.
|
|
152
|
+
- `kol-input-file`: remove `_value`.
|
|
153
|
+
- `kol-modal`: remove `_active-element`.
|
|
154
|
+
- `kol-textarea`: `_resize="both"` → `_resize="vertical"`; `_resize="horizontal"` → `_resize="none"`.
|
|
155
|
+
- `kol-toaster`: rename `alertVariant` → `variant`; rename `defaultAlertType` → `defaultVariant`.
|
|
156
|
+
- All inputs (`kol-combobox`, `kol-input-*`, `kol-select`, `kol-single-select`, `kol-textarea`): remove `_alert`; rename
|
|
157
|
+
`_hide-error` → `_hide-msg`; refactor `_error` → `_msg`.
|
|
158
|
+
- **Version 4 tasks (`^4`)**
|
|
159
|
+
- Remove `_id` from `kol-button`, `kol-button-link`, `kol-combobox`, `kol-input-*`, `kol-popover-button`, `kol-select`,
|
|
160
|
+
`kol-single-select`, `kol-split-button`, `kol-textarea`, `kol-tooltip`.
|
|
161
|
+
- Remove `_label` and `_variant` keys from `_msg` objects.
|
|
162
|
+
- `kol-toast`: remove `variant` from `enqueue()` calls.
|
|
163
|
+
- `kol-toaster`: remove `defaultVariant` option from `getInstance()` calls.
|
|
164
|
+
- **Asset tasks (`^1`)**
|
|
165
|
+
- Remove old `cpy-cli`/`rimraf` versions and reinstall pinned ones.
|
|
166
|
+
- Add `scripts.prepare` to copy component assets into the project and remove `public/assets/codicons` before copying.
|
|
167
|
+
- Inject the Codicon stylesheet link into `index.html` (or warn if the file is missing).
|
|
95
168
|
|
|
96
169
|
#### Theme Migration
|
|
97
170
|
|
|
@@ -185,53 +258,124 @@ You can configure the migration with the `.kolibri.config.json` file in your pro
|
|
|
185
258
|
"tasks": {
|
|
186
259
|
".gitignore-add-rule-.kolibri.migrate.json": true,
|
|
187
260
|
".npmrc-add-rule-save-exact=true": true,
|
|
188
|
-
"
|
|
261
|
+
"add--cpy-cli,rimraf": true,
|
|
262
|
+
"exec-npx cpy \"node_modules/@public-ui/components/assets/**/*\" \"public/assets\" --dot": true,
|
|
263
|
+
"kol-abbr-remove-property-_tooltip-align": true,
|
|
189
264
|
"kol-abbr-rename-property-_align-to-_tooltip-align": true,
|
|
190
265
|
"kol-abbr-rename-property-_title-to-_label": true,
|
|
266
|
+
"kol-accordion-mark-removed-slot-header": true,
|
|
191
267
|
"kol-accordion-rename-property-_heading-to-_label": true,
|
|
268
|
+
"kol-accordion-rename-slot-content-to-": true,
|
|
192
269
|
"kol-alert-rename-property-_heading-to-_label": true,
|
|
193
|
-
"kol-badge-rename-property-_icon-only-to-_hide-label": true,
|
|
194
270
|
"kol-badge-remove-property-_hide-label": true,
|
|
195
271
|
"kol-badge-remove-property-_icon-only": true,
|
|
272
|
+
"kol-badge-rename-property-_icon-only-to-_hide-label": true,
|
|
196
273
|
"kol-badge-rename-property-_icon-to-_icons": true,
|
|
197
274
|
"kol-breadcrumb-rename-property-_aria-label-to-_label": true,
|
|
275
|
+
"kol-button-link-remove-property-_access-key": true,
|
|
198
276
|
"kol-button-link-remove-property-_aria-current": true,
|
|
199
277
|
"kol-button-link-remove-property-_aria-label": true,
|
|
278
|
+
"kol-button-link-remove-property-_id": true,
|
|
279
|
+
"kol-button-link-rename-property-_aria-current-to-_listen-aria-current": true,
|
|
200
280
|
"kol-button-link-rename-property-_icon-only-to-_hide-label": true,
|
|
201
281
|
"kol-button-link-rename-property-_icon-to-_icons": true,
|
|
282
|
+
"kol-button-remove-property-_access-key": true,
|
|
202
283
|
"kol-button-remove-property-_aria-current": true,
|
|
203
284
|
"kol-button-remove-property-_aria-label": true,
|
|
204
285
|
"kol-button-remove-property-_icon-align": true,
|
|
286
|
+
"kol-button-remove-property-_id": true,
|
|
205
287
|
"kol-button-rename-property-_icon-only-to-_hide-label": true,
|
|
288
|
+
"refactor-property-icon-align": true,
|
|
206
289
|
"kol-button-rename-property-_icon-to-_icons": true,
|
|
290
|
+
"kol-card-mark-removed-slot-footer": true,
|
|
291
|
+
"kol-card-mark-removed-slot-header": true,
|
|
292
|
+
"kol-card-remove-property-_has-footer": true,
|
|
207
293
|
"kol-card-rename-property-_heading-to-_label": true,
|
|
208
294
|
"kol-card-rename-property-_headline-to-_label": true,
|
|
295
|
+
"kol-card-rename-slot-content-to-": true,
|
|
296
|
+
"kol-checkbox-rename-property-_type-to-_variant": true,
|
|
297
|
+
"kol-color-rename-property-_icon-to-_icons": true,
|
|
298
|
+
"kol-color-rename-property-_list-to-_suggestions": true,
|
|
299
|
+
"kol-combobox-refactor-property-error-to-msg": true,
|
|
300
|
+
"kol-combobox-remove-property-_alert": true,
|
|
301
|
+
"kol-combobox-remove-property-_id": true,
|
|
302
|
+
"kol-combobox-rename-property-_hide-error-to-_hide-msg": true,
|
|
303
|
+
"kol-date-rename-property-_list-to-_suggestions": true,
|
|
209
304
|
"kol-details-rename-property-_summary-to-_label": true,
|
|
305
|
+
"kol-heading-move-innerText-to-property-_label": true,
|
|
210
306
|
"kol-icon-remove-property-_part": true,
|
|
211
307
|
"kol-icon-rename-property-_aria-label-to-_label": true,
|
|
212
308
|
"kol-icon-rename-property-_icon-to-_icons": true,
|
|
309
|
+
"kol-input-checkbox-move-innerText-to-property-_label": true,
|
|
310
|
+
"kol-input-checkbox-refactor-property-error-to-msg": true,
|
|
311
|
+
"kol-input-checkbox-remove-property-_alert": true,
|
|
312
|
+
"kol-input-checkbox-remove-property-_id": true,
|
|
313
|
+
"kol-input-checkbox-rename-property-_hide-error-to-_hide-msg": true,
|
|
213
314
|
"kol-input-checkbox-rename-property-_icon-to-_icons": true,
|
|
214
|
-
"kol-checkbox-rename-property-_type-to-_variant": true,
|
|
215
|
-
"kol-color-
|
|
216
|
-
"kol-color-
|
|
315
|
+
"kol-input-checkbox-rename-property-_type-to-_variant": true,
|
|
316
|
+
"kol-input-color-move-innerText-to-property-_label": true,
|
|
317
|
+
"kol-input-color-refactor-property-error-to-msg": true,
|
|
318
|
+
"kol-input-color-remove-property-_alert": true,
|
|
319
|
+
"kol-input-color-remove-property-_id": true,
|
|
320
|
+
"kol-input-color-rename-property-_hide-error-to-_hide-msg": true,
|
|
321
|
+
"kol-input-date-move-innerText-to-property-_label": true,
|
|
322
|
+
"kol-input-date-refactor-property-error-to-msg": true,
|
|
323
|
+
"kol-input-date-remove-property-_alert": true,
|
|
324
|
+
"kol-input-date-remove-property-_id": true,
|
|
325
|
+
"kol-input-date-rename-property-_hide-error-to-_hide-msg": true,
|
|
217
326
|
"kol-input-date-rename-property-_icon-to-_icons": true,
|
|
218
|
-
"kol-
|
|
327
|
+
"kol-input-email-move-innerText-to-property-_label": true,
|
|
328
|
+
"kol-input-email-refactor-property-error-to-msg": true,
|
|
329
|
+
"kol-input-email-remove-property-_alert": true,
|
|
330
|
+
"kol-input-email-remove-property-_id": true,
|
|
331
|
+
"kol-input-email-remove-property-_size": true,
|
|
332
|
+
"kol-input-email-rename-property-_hide-error-to-_hide-msg": true,
|
|
219
333
|
"kol-input-email-rename-property-_icon-to-_icons": true,
|
|
220
334
|
"kol-input-email-rename-property-_list-to-_suggestions": true,
|
|
221
|
-
"kol-input-
|
|
335
|
+
"kol-input-file-move-innerText-to-property-_label": true,
|
|
336
|
+
"kol-input-file-refactor-property-error-to-msg": true,
|
|
337
|
+
"kol-input-file-remove-property-_alert": true,
|
|
338
|
+
"kol-input-file-remove-property-_id": true,
|
|
339
|
+
"kol-input-file-remove-property-_value": true,
|
|
340
|
+
"kol-input-file-rename-property-_hide-error-to-_hide-msg": true,
|
|
222
341
|
"kol-input-file-rename-property-_icon-to-_icons": true,
|
|
342
|
+
"kol-input-number-move-innerText-to-property-_label": true,
|
|
343
|
+
"kol-input-number-refactor-property-error-to-msg": true,
|
|
344
|
+
"kol-input-number-remove-property-_alert": true,
|
|
345
|
+
"kol-input-number-remove-property-_id": true,
|
|
346
|
+
"kol-input-number-remove-property-_type": true,
|
|
347
|
+
"kol-input-number-rename-property-_hide-error-to-_hide-msg": true,
|
|
223
348
|
"kol-input-number-rename-property-_icon-to-_icons": true,
|
|
224
349
|
"kol-input-number-rename-property-_list-to-_suggestions": true,
|
|
225
|
-
"kol-input-
|
|
226
|
-
"kol-input-password-
|
|
350
|
+
"kol-input-password-move-innerText-to-property-_label": true,
|
|
351
|
+
"kol-input-password-refactor-property-error-to-msg": true,
|
|
352
|
+
"kol-input-password-remove-property-_alert": true,
|
|
353
|
+
"kol-input-password-remove-property-_id": true,
|
|
227
354
|
"kol-input-password-remove-property-_size": true,
|
|
355
|
+
"kol-input-password-rename-property-_hide-error-to-_hide-msg": true,
|
|
356
|
+
"kol-input-password-rename-property-_icon-to-_icons": true,
|
|
357
|
+
"kol-input-radio-move-innerText-to-property-_label": true,
|
|
358
|
+
"kol-input-radio-refactor-property-error-to-msg": true,
|
|
359
|
+
"kol-input-radio-remove-property-_alert": true,
|
|
360
|
+
"kol-input-radio-remove-property-_id": true,
|
|
361
|
+
"kol-input-radio-rename-property-_hide-error-to-_hide-msg": true,
|
|
228
362
|
"kol-input-radio-rename-property-_list-to-_options": true,
|
|
363
|
+
"kol-input-range-move-innerText-to-property-_label": true,
|
|
364
|
+
"kol-input-range-refactor-property-error-to-msg": true,
|
|
365
|
+
"kol-input-range-remove-property-_alert": true,
|
|
366
|
+
"kol-input-range-remove-property-_id": true,
|
|
367
|
+
"kol-input-range-rename-property-_hide-error-to-_hide-msg": true,
|
|
229
368
|
"kol-input-range-rename-property-_icon-to-_icons": true,
|
|
230
369
|
"kol-input-range-rename-property-_list-to-_suggestions": true,
|
|
231
370
|
"kol-input-rename-property-_icon-to-_icons": true,
|
|
371
|
+
"kol-input-text-move-innerText-to-property-_label": true,
|
|
372
|
+
"kol-input-text-refactor-property-error-to-msg": true,
|
|
373
|
+
"kol-input-text-remove-property-_alert": true,
|
|
374
|
+
"kol-input-text-remove-property-_id": true,
|
|
375
|
+
"kol-input-text-remove-property-_size": true,
|
|
376
|
+
"kol-input-text-rename-property-_hide-error-to-_hide-msg": true,
|
|
232
377
|
"kol-input-text-rename-property-_icon-to-_icons": true,
|
|
233
378
|
"kol-input-text-rename-property-_list-to-_suggestions": true,
|
|
234
|
-
"kol-input-text-remove-property-_size": true,
|
|
235
379
|
"kol-link-button-remove-property-_aria-controls": true,
|
|
236
380
|
"kol-link-button-remove-property-_aria-expanded": true,
|
|
237
381
|
"kol-link-button-remove-property-_aria-label": true,
|
|
@@ -240,16 +384,17 @@ You can configure the migration with the `.kolibri.config.json` file in your pro
|
|
|
240
384
|
"kol-link-button-rename-property-_aria-current-to-_listen-aria-current": true,
|
|
241
385
|
"kol-link-button-rename-property-_icon-only-to-_hide-label": true,
|
|
242
386
|
"kol-link-button-rename-property-_icon-to-_icons": true,
|
|
243
|
-
"kol-link-group-rename-property-_heading-to-_label": true,
|
|
244
387
|
"kol-link-group-remove-property-_heading": true,
|
|
388
|
+
"kol-link-group-remove-property-_level": true,
|
|
245
389
|
"kol-link-group-remove-property-_ordered": true,
|
|
246
390
|
"kol-link-group-rename-property-_aria-label-to-_label": true,
|
|
391
|
+
"kol-link-group-rename-property-_heading-to-_label": true,
|
|
392
|
+
"kol-link-move-innerText-to-property-_label": true,
|
|
247
393
|
"kol-link-remove-property-_aria-controls": true,
|
|
248
394
|
"kol-link-remove-property-_aria-expanded": true,
|
|
249
395
|
"kol-link-remove-property-_aria-label": true,
|
|
250
396
|
"kol-link-remove-property-_aria-selected": true,
|
|
251
397
|
"kol-link-remove-property-_disabled": true,
|
|
252
|
-
"kol-link-remove-property-_icon-align": true,
|
|
253
398
|
"kol-link-remove-property-_selector": true,
|
|
254
399
|
"kol-link-remove-property-_stealth": true,
|
|
255
400
|
"kol-link-remove-property-_use-case": true,
|
|
@@ -257,69 +402,74 @@ You can configure the migration with the `.kolibri.config.json` file in your pro
|
|
|
257
402
|
"kol-link-rename-property-_icon-only-to-_hide-label": true,
|
|
258
403
|
"kol-link-rename-property-_icon-to-_icons": true,
|
|
259
404
|
"kol-logo-rename-property-_abbr-to-_org": true,
|
|
405
|
+
"kol-modal-remove-property-_active-element": true,
|
|
260
406
|
"kol-modal-rename-property-_aria-label-to-_label": true,
|
|
407
|
+
"kol-nav-remove-property-_has-compact-button": true,
|
|
261
408
|
"kol-nav-remove-property-_variant": true,
|
|
262
409
|
"kol-nav-rename-property-_aria-label-to-_label": true,
|
|
263
410
|
"kol-nav-rename-property-_compact-to-_hide-label": true,
|
|
264
411
|
"kol-pagination-rename-property-_count-to-_total": true,
|
|
265
412
|
"kol-pagination-rename-property-_total-to-_max": true,
|
|
413
|
+
"kol-popover-button-remove-property-_id": true,
|
|
266
414
|
"kol-progress-rename-property-_type-to-_variant": true,
|
|
267
415
|
"kol-quote-rename-property-_caption-to-_label": true,
|
|
416
|
+
"kol-select-move-innerText-to-property-_label": true,
|
|
417
|
+
"kol-select-refactor-property-error-to-msg": true,
|
|
418
|
+
"kol-select-remove-property-_alert": true,
|
|
419
|
+
"kol-select-remove-property-_id": true,
|
|
420
|
+
"kol-select-remove-property-_size": true,
|
|
268
421
|
"kol-select-rename-property-_height-to-_rows": true,
|
|
422
|
+
"kol-select-rename-property-_hide-error-to-_hide-msg": true,
|
|
269
423
|
"kol-select-rename-property-_icon-to-_icons": true,
|
|
270
424
|
"kol-select-rename-property-_list-to-_options": true,
|
|
271
|
-
"kol-select-
|
|
425
|
+
"kol-single-select-refactor-property-error-to-msg": true,
|
|
426
|
+
"kol-single-select-remove-property-_alert": true,
|
|
427
|
+
"kol-single-select-remove-property-_id": true,
|
|
428
|
+
"kol-single-select-rename-property-_hide-error-to-_hide-msg": true,
|
|
272
429
|
"kol-skip-nav-rename-property-_aria-label-to-_label": true,
|
|
273
430
|
"kol-span-rename-property-_icon-only-to-_hide-label": true,
|
|
274
431
|
"kol-span-rename-property-_icon-to-_icons": true,
|
|
275
|
-
"kol-split-button-remove-property-_aria-label": true,
|
|
276
432
|
"kol-split-button-remove-property-_access-key": true,
|
|
277
|
-
"kol-split-button-remove-property-
|
|
433
|
+
"kol-split-button-remove-property-_aria-label": true,
|
|
434
|
+
"kol-split-button-remove-property-_id": true,
|
|
278
435
|
"kol-split-button-remove-property-_show": true,
|
|
436
|
+
"kol-split-button-remove-property-_show-dropdown": true,
|
|
279
437
|
"kol-symbol-rename-property-_aria-label-to-_label": true,
|
|
280
438
|
"kol-table-rename-property-_caption-to-_label": true,
|
|
281
439
|
"kol-tabs-rename-property-_aria-label-to-_label": true,
|
|
440
|
+
"kol-tabs-rename-property-_icon-only-to-_hide-label": true,
|
|
282
441
|
"kol-tabs-rename-property-_icon-to-_icons": true,
|
|
283
442
|
"kol-tabs-rename-property-_tab-align-to-_align": true,
|
|
284
|
-
"kol-
|
|
443
|
+
"kol-textarea-move-innerText-to-property-_label": true,
|
|
444
|
+
"kol-textarea-refactor-property-error-to-msg": true,
|
|
445
|
+
"kol-textarea-remove-property-_alert": true,
|
|
446
|
+
"kol-textarea-remove-property-_id": true,
|
|
447
|
+
"kol-textarea-rename-property-_hide-error-to-_hide-msg": true,
|
|
448
|
+
"kol-textarea-update-property-_resize-value-both-to-vertical": true,
|
|
449
|
+
"kol-textarea-update-property-_resize-value-horizontal-to-none": true,
|
|
285
450
|
"kol-toast-remove-property-_show-duration": true,
|
|
286
451
|
"kol-toast-rename-property-_heading-to-_label": true,
|
|
452
|
+
"kol-tooltip-remove-property-_id": true,
|
|
287
453
|
"kol-version-rename-property-_version-to-_label": true,
|
|
288
|
-
"
|
|
289
|
-
"
|
|
290
|
-
"
|
|
291
|
-
"kol-input-date-move-innerText-to-property-_label": true,
|
|
292
|
-
"kol-input-email-move-innerText-to-property-_label": true,
|
|
293
|
-
"kol-input-file-move-innerText-to-property-_label": true,
|
|
294
|
-
"kol-input-number-move-innerText-to-property-_label": true,
|
|
295
|
-
"kol-input-password-move-innerText-to-property-_label": true,
|
|
296
|
-
"kol-input-radio-move-innerText-to-property-_label": true,
|
|
297
|
-
"kol-input-range-move-innerText-to-property-_label": true,
|
|
298
|
-
"kol-input-text-move-innerText-to-property-_label": true,
|
|
299
|
-
"kol-link-move-innerText-to-property-_label": true,
|
|
300
|
-
"kol-select-move-innerText-to-property-_label": true,
|
|
301
|
-
"kol-textarea-move-innerText-to-property-_label": true,
|
|
302
|
-
"kol-accordion-mark-removed-slot-header": true,
|
|
303
|
-
"kol-card-mark-removed-slot-footer": true,
|
|
304
|
-
"kol-card-mark-removed-slot-header": true,
|
|
305
|
-
"kol-accordion-rename-slot-content-to-": true,
|
|
306
|
-
"kol-card-rename-slot-content-to-": true,
|
|
454
|
+
"merge-html-codicon-in-index.html": true,
|
|
455
|
+
"package.json-reconfigure-scripts.prepare": true,
|
|
456
|
+
"refactor-property-icon-align": true,
|
|
307
457
|
"refactor-property-label-replace-false": true,
|
|
308
|
-
"kol-card-remove-property-_has-footer": true,
|
|
309
|
-
"kol-link-group-remove-property-_level": true,
|
|
310
458
|
"remove--cpy-cli,rimraf": true,
|
|
311
|
-
"
|
|
312
|
-
"package.json-reconfigure-scripts.prepare": true,
|
|
459
|
+
"remove-msg-props": true,
|
|
313
460
|
"remove-public/assets/codicons": true,
|
|
314
|
-
"
|
|
315
|
-
"
|
|
316
|
-
"kol-
|
|
317
|
-
"
|
|
461
|
+
"remove-toast-variant-^4": true,
|
|
462
|
+
"remove-toaster-get-instance-options-^4": true,
|
|
463
|
+
"rename-tag-name-kol-table-to-kol-table-stateful": true,
|
|
464
|
+
"toaster-rename-properties": true,
|
|
465
|
+
"vscode-settings-reconfigure-html.customData": true
|
|
318
466
|
}
|
|
319
467
|
}
|
|
320
468
|
}
|
|
321
469
|
```
|
|
322
470
|
|
|
471
|
+
> The `exec-npx cpy` task copies the packaged component assets into your project's `public/assets` folder; leave it enabled unless your build already handles asset copying in a different location.
|
|
472
|
+
|
|
323
473
|
## Troubleshooting
|
|
324
474
|
|
|
325
475
|
If the migration failed, you can reset the migration with `git reset --hard HEAD~1`.
|
|
@@ -55,14 +55,6 @@ class GenericUpdatePropertyValueTask extends abstract_task_1.AbstractTask {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
exports.GenericUpdatePropertyValueTask = GenericUpdatePropertyValueTask;
|
|
58
|
-
// Helper function to update attribute values in HTML strings
|
|
59
|
-
/**
|
|
60
|
-
*
|
|
61
|
-
* @param htmlString
|
|
62
|
-
* @param tagRegExp
|
|
63
|
-
* @param oldValue
|
|
64
|
-
* @param newValue
|
|
65
|
-
*/
|
|
66
58
|
function updateAttributeValue(htmlString, tagRegExp, oldValue, newValue) {
|
|
67
59
|
return htmlString.replace(tagRegExp, (match) => {
|
|
68
60
|
return match.replace(`="${oldValue}"`, `="${newValue}"`).replace(`='${oldValue}'`, `='${newValue}'`);
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RenameClearButtonPropTasks = exports.RenameClearButtonPropTask = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const types_1 = require("../../../../types");
|
|
9
|
+
const reuse_1 = require("../../../shares/reuse");
|
|
10
|
+
const abstract_task_1 = require("../../abstract-task");
|
|
11
|
+
class RenameClearButtonPropTask extends abstract_task_1.AbstractTask {
|
|
12
|
+
constructor(identifier, versionRange) {
|
|
13
|
+
super(identifier, 'Rename _hide-clear-button to _has-clear-button', types_1.MARKUP_EXTENSIONS, versionRange);
|
|
14
|
+
}
|
|
15
|
+
static getInstance(versionRange) {
|
|
16
|
+
const identifier = 'rename-clear-button-prop';
|
|
17
|
+
if (!this.instances.has(identifier)) {
|
|
18
|
+
this.instances.set(identifier, new RenameClearButtonPropTask(identifier, versionRange));
|
|
19
|
+
}
|
|
20
|
+
return this.instances.get(identifier);
|
|
21
|
+
}
|
|
22
|
+
run(baseDir) {
|
|
23
|
+
(0, reuse_1.filterFilesByExt)(baseDir, types_1.MARKUP_EXTENSIONS).forEach((file) => {
|
|
24
|
+
const content = fs_1.default.readFileSync(file, 'utf8');
|
|
25
|
+
const newContent = content
|
|
26
|
+
.replace(/_hide-clear-button\s*=\s*"(true|false)"/g, (_match, value) => {
|
|
27
|
+
return `_has-clear-button="${value === 'true' ? 'false' : 'true'}"`;
|
|
28
|
+
})
|
|
29
|
+
.replace(/_hide-clear-button\s*=\s*'(true|false)'/g, (_match, value) => {
|
|
30
|
+
return `_has-clear-button='${value === 'true' ? 'false' : 'true'}'`;
|
|
31
|
+
})
|
|
32
|
+
.replace(/_hide-clear-button\s*=\s*\{\s*(true|false)\s*\}/g, (_match, value) => {
|
|
33
|
+
return `_has-clear-button={${value === 'true' ? 'false' : 'true'}}`;
|
|
34
|
+
})
|
|
35
|
+
.replace(/_hideClearButton\s*=\s*"(true|false)"/g, (_match, value) => {
|
|
36
|
+
return `_hasClearButton="${value === 'true' ? 'false' : 'true'}"`;
|
|
37
|
+
})
|
|
38
|
+
.replace(/_hideClearButton\s*=\s*'(true|false)'/g, (_match, value) => {
|
|
39
|
+
return `_hasClearButton='${value === 'true' ? 'false' : 'true'}'`;
|
|
40
|
+
})
|
|
41
|
+
.replace(/_hideClearButton\s*=\s*\{\s*(true|false)\s*\}/g, (_match, value) => {
|
|
42
|
+
return `_hasClearButton={${value === 'true' ? 'false' : 'true'}}`;
|
|
43
|
+
})
|
|
44
|
+
.replace(/_hide-clear-button(?=[\s/>])/g, '_has-clear-button="false"')
|
|
45
|
+
.replace(/_hideClearButton(?=[\s/>])/g, '_hasClearButton={false}');
|
|
46
|
+
if (content !== newContent) {
|
|
47
|
+
fs_1.default.writeFileSync(file, newContent);
|
|
48
|
+
reuse_1.MODIFIED_FILES.add(file);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.RenameClearButtonPropTask = RenameClearButtonPropTask;
|
|
54
|
+
exports.RenameClearButtonPropTasks = [RenameClearButtonPropTask.getInstance('^4')];
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.v4Tasks = void 0;
|
|
4
|
+
const clear_button_1 = require("./clear-button");
|
|
4
5
|
const id_1 = require("./id");
|
|
5
6
|
const link_1 = require("./link");
|
|
6
7
|
const loader_1 = require("./loader");
|
|
@@ -11,6 +12,7 @@ exports.v4Tasks = [];
|
|
|
11
12
|
exports.v4Tasks.push(...link_1.MapVariantStandaloneToInlineTasks);
|
|
12
13
|
exports.v4Tasks.push(...id_1.RemoveIdPropTasks);
|
|
13
14
|
exports.v4Tasks.push(...msg_1.RemoveMsgPropsTasks);
|
|
15
|
+
exports.v4Tasks.push(...clear_button_1.RenameClearButtonPropTasks);
|
|
14
16
|
exports.v4Tasks.push(toast_1.RemoveToastVariantTask.getInstance('^4'));
|
|
15
17
|
exports.v4Tasks.push(toaster_1.RemoveToasterGetInstanceOptionsTask.getInstance('^4'));
|
|
16
18
|
exports.v4Tasks.push(loader_1.UpdateLoaderImportPathTask.getInstance('^4'));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@public-ui/kolibri-cli",
|
|
3
|
-
"version": "4.0.0-
|
|
3
|
+
"version": "4.0.0-beta.0",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
5
|
"homepage": "https://public-ui.github.io",
|
|
6
6
|
"repository": {
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"typed-bem": "1.0.2"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@types/node": "24.10.
|
|
35
|
+
"@types/node": "24.10.4",
|
|
36
36
|
"@typescript-eslint/eslint-plugin": "7.18.0",
|
|
37
37
|
"@typescript-eslint/parser": "7.18.0",
|
|
38
38
|
"cpy-cli": "6.0.0",
|
|
@@ -40,17 +40,16 @@
|
|
|
40
40
|
"eslint": "8.57.1",
|
|
41
41
|
"eslint-config-prettier": "9.1.2",
|
|
42
42
|
"eslint-plugin-html": "8.1.3",
|
|
43
|
-
"eslint-plugin-jsdoc": "50.8.0",
|
|
44
43
|
"eslint-plugin-json": "3.1.0",
|
|
45
44
|
"eslint-plugin-jsx-a11y": "6.10.2",
|
|
46
45
|
"eslint-plugin-react": "7.37.5",
|
|
47
|
-
"knip": "5.
|
|
46
|
+
"knip": "5.73.4",
|
|
48
47
|
"mocha": "11.7.5",
|
|
49
48
|
"nodemon": "3.1.11",
|
|
50
49
|
"rimraf": "6.1.2",
|
|
51
50
|
"ts-node": "10.9.2",
|
|
52
51
|
"typescript": "5.9.3",
|
|
53
|
-
"@public-ui/components": "4.0.0-
|
|
52
|
+
"@public-ui/components": "4.0.0-beta.0"
|
|
54
53
|
},
|
|
55
54
|
"files": [
|
|
56
55
|
"dist"
|