uikit 3.25.28-dev.779d915 → 3.25.28-dev.fcd5185
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/CHANGELOG.md +3 -0
- package/build/ci-publish-dev.js +19 -0
- package/build/ci-release.js +128 -0
- package/dist/css/uikit-core-rtl.css +1 -1
- package/dist/css/uikit-core-rtl.min.css +1 -1
- package/dist/css/uikit-core.css +1 -1
- package/dist/css/uikit-core.min.css +1 -1
- package/dist/css/uikit-rtl.css +1 -1
- package/dist/css/uikit-rtl.min.css +1 -1
- package/dist/css/uikit.css +1 -1
- package/dist/css/uikit.min.css +1 -1
- package/dist/js/components/countdown.js +3 -3
- package/dist/js/components/countdown.min.js +1 -1
- package/dist/js/components/filter.js +1 -1
- package/dist/js/components/filter.min.js +1 -1
- package/dist/js/components/lightbox-panel.js +1 -1
- package/dist/js/components/lightbox-panel.min.js +1 -1
- package/dist/js/components/lightbox.js +1 -1
- package/dist/js/components/lightbox.min.js +1 -1
- package/dist/js/components/notification.js +1 -1
- package/dist/js/components/notification.min.js +1 -1
- package/dist/js/components/parallax.js +2 -2
- package/dist/js/components/parallax.min.js +1 -1
- package/dist/js/components/slider-parallax.js +1 -1
- package/dist/js/components/slider-parallax.min.js +1 -1
- package/dist/js/components/slider.js +1 -1
- package/dist/js/components/slider.min.js +1 -1
- package/dist/js/components/slideshow-parallax.js +1 -1
- package/dist/js/components/slideshow-parallax.min.js +1 -1
- package/dist/js/components/slideshow.js +2 -2
- package/dist/js/components/slideshow.min.js +1 -1
- package/dist/js/components/sortable.js +1 -1
- package/dist/js/components/sortable.min.js +1 -1
- package/dist/js/components/tooltip.js +1 -1
- package/dist/js/components/tooltip.min.js +1 -1
- package/dist/js/components/upload.js +8 -6
- package/dist/js/components/upload.min.js +1 -1
- package/dist/js/uikit-core.js +8 -10
- package/dist/js/uikit-core.min.js +1 -1
- package/dist/js/uikit-icons.js +1 -1
- package/dist/js/uikit-icons.min.js +1 -1
- package/dist/js/uikit.js +19 -19
- package/dist/js/uikit.min.js +1 -1
- package/package.json +1 -2
- package/src/js/components/countdown.js +2 -2
- package/src/js/components/parallax.js +1 -1
- package/src/js/components/slideshow.js +1 -1
- package/src/js/components/upload.js +5 -9
- package/src/js/core/drop.js +5 -7
- package/src/js/core/scrollspy-nav.js +0 -1
- package/src/js/util/style.js +1 -0
- package/build/publishDev.js +0 -32
- package/build/release.js +0 -132
package/CHANGELOG.md
CHANGED
|
@@ -4,7 +4,10 @@
|
|
|
4
4
|
|
|
5
5
|
### Fixed
|
|
6
6
|
|
|
7
|
+
- Fix Scrollspy Nav removing focus from links during updates
|
|
7
8
|
- Fix Drop incorrectly setting `aria-haspopup="true"` on its toggle; authors must set `aria-haspopup` explicitly when appropriate for the popup's role
|
|
9
|
+
- Fix Upload matching only part of a file name or MIME type when filters contain alternatives
|
|
10
|
+
- Fix Upload interpreting literal filter characters as regular expressions and incorrectly matching double wildcards
|
|
8
11
|
|
|
9
12
|
## 3.25.27 (October 20, 2026)
|
|
10
13
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { $ } from 'execa';
|
|
2
|
+
import semver from 'semver';
|
|
3
|
+
import { getVersion } from './util.js';
|
|
4
|
+
|
|
5
|
+
const $$ = $({ stdio: 'inherit' });
|
|
6
|
+
|
|
7
|
+
// increase version patch number
|
|
8
|
+
const version = semver.inc(await getVersion(), 'patch');
|
|
9
|
+
|
|
10
|
+
// get current git hash
|
|
11
|
+
const hash = (await $`git rev-parse --short HEAD`).stdout.trim();
|
|
12
|
+
|
|
13
|
+
// set version of package.json
|
|
14
|
+
await $$`pnpm version ${version}-dev.${hash} --no-git-tag-version`;
|
|
15
|
+
|
|
16
|
+
// create dist files
|
|
17
|
+
await $$`pnpm compile`;
|
|
18
|
+
await $$`pnpm compile-rtl`;
|
|
19
|
+
await $$`pnpm build-scss`;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { ZipArchive } from 'archiver';
|
|
2
|
+
import { $ } from 'execa';
|
|
3
|
+
import { createWriteStream } from 'node:fs';
|
|
4
|
+
import fs from 'node:fs/promises';
|
|
5
|
+
import semver from 'semver';
|
|
6
|
+
import { args, getVersion, logFile, read, replaceInFile } from './util.js';
|
|
7
|
+
|
|
8
|
+
const $$ = $({ stdio: 'inherit' });
|
|
9
|
+
|
|
10
|
+
if ([args.prepare, args.build, args.resolve].filter(Boolean).length !== 1) {
|
|
11
|
+
throw new Error(
|
|
12
|
+
'Use --resolve --bump <type> --preid <identifier>, --prepare --version <version>, or --build.',
|
|
13
|
+
);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const prevVersion = await getVersion();
|
|
17
|
+
if (args.resolve) {
|
|
18
|
+
console.log(validateVersion(semver.inc(prevVersion, args.bump, args.preid), prevVersion));
|
|
19
|
+
process.exit(0);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const version = args.prepare ? validateVersion(args.version, prevVersion) : prevVersion;
|
|
23
|
+
const tag = `v${version}`;
|
|
24
|
+
|
|
25
|
+
if (args.prepare) {
|
|
26
|
+
await raiseVersion(version, prevVersion);
|
|
27
|
+
} else {
|
|
28
|
+
const previous = JSON.parse(
|
|
29
|
+
(await $`git show ${`${process.env.RELEASE_BASE_SHA}:package.json`}`).stdout,
|
|
30
|
+
).version;
|
|
31
|
+
validateVersion(version, previous);
|
|
32
|
+
if (process.env.RELEASE_BRANCH !== `release/${tag}`) {
|
|
33
|
+
throw new Error('Release branch does not match package.json version.');
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
await $$`pnpm compile`;
|
|
38
|
+
await $$`pnpm compile-rtl`;
|
|
39
|
+
await $$`pnpm build-scss`;
|
|
40
|
+
|
|
41
|
+
if (args.build) {
|
|
42
|
+
const notes = releaseNotes(await read('CHANGELOG.md'), version);
|
|
43
|
+
const asset = await createPackage(version);
|
|
44
|
+
const notesFile = `${process.env.RUNNER_TEMP}/uikit-${version}-notes.md`;
|
|
45
|
+
await fs.writeFile(notesFile, notes);
|
|
46
|
+
await fs.appendFile(
|
|
47
|
+
process.env.GITHUB_OUTPUT,
|
|
48
|
+
`tag=${tag}\nasset=${asset}\nnotes-file=${notesFile}\nprerelease=${Boolean(semver.prerelease(version))}\n`,
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function validateVersion(version, previous) {
|
|
53
|
+
if (
|
|
54
|
+
typeof version !== 'string' ||
|
|
55
|
+
semver.valid(version) !== version ||
|
|
56
|
+
!semver.gt(version, previous)
|
|
57
|
+
) {
|
|
58
|
+
throw new Error(`Version must be a valid version greater than ${previous}.`);
|
|
59
|
+
}
|
|
60
|
+
return version;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function versionFormat(version) {
|
|
64
|
+
return [semver.coerce(version).version].concat(semver.prerelease(version) || []).join(' ');
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
function releaseChangelog(changelog, version, date) {
|
|
68
|
+
if (!/^## WIP\s*$/m.test(changelog)) {
|
|
69
|
+
throw new Error('CHANGELOG.md must contain a WIP section before preparing a release.');
|
|
70
|
+
}
|
|
71
|
+
const result = changelog.replace(
|
|
72
|
+
/^## WIP[^\S\n]*$/m,
|
|
73
|
+
`## WIP\n\n## ${versionFormat(version)} (${date})`,
|
|
74
|
+
);
|
|
75
|
+
releaseNotes(result, version);
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
function releaseNotes(changelog, version) {
|
|
80
|
+
const sections = changelog.split(/^## /m);
|
|
81
|
+
const section = sections.find((section) => section.startsWith(`${versionFormat(version)} (`));
|
|
82
|
+
const notes = section?.slice(section.indexOf('\n') + 1).trim();
|
|
83
|
+
if (!notes) {
|
|
84
|
+
throw new Error(`No changelog notes found for ${version}.`);
|
|
85
|
+
}
|
|
86
|
+
return notes;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
async function raiseVersion(version, prevVersion) {
|
|
90
|
+
const changelog = releaseChangelog(await read('CHANGELOG.md'), version, dateFormat());
|
|
91
|
+
return Promise.all([
|
|
92
|
+
$$`npm version ${version} --git-tag-version false`,
|
|
93
|
+
replaceInFile('CHANGELOG.md', () => changelog),
|
|
94
|
+
replaceInFile('.github/ISSUE_TEMPLATE/bug-report.md', (data) =>
|
|
95
|
+
data.replace(prevVersion, version),
|
|
96
|
+
),
|
|
97
|
+
]);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
async function createPackage(version) {
|
|
101
|
+
const dest = `dist/uikit-${version}.zip`;
|
|
102
|
+
const archive = new ZipArchive({ zlib: { level: 9 } });
|
|
103
|
+
|
|
104
|
+
const output = createWriteStream(dest);
|
|
105
|
+
const closed = new Promise((resolve, reject) => {
|
|
106
|
+
output.on('close', resolve);
|
|
107
|
+
output.on('error', reject);
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
archive.pipe(output);
|
|
111
|
+
|
|
112
|
+
for await (const file of fs.glob('dist/{js,css}/uikit?(-icons|-rtl)?(.min).{js,css}')) {
|
|
113
|
+
archive.file(file, { name: file.slice(5) });
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
await archive.finalize();
|
|
117
|
+
await closed;
|
|
118
|
+
await logFile(dest);
|
|
119
|
+
return dest;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function dateFormat() {
|
|
123
|
+
return new Intl.DateTimeFormat('en-US', {
|
|
124
|
+
month: 'long',
|
|
125
|
+
day: 'numeric',
|
|
126
|
+
year: 'numeric',
|
|
127
|
+
}).format(new Date());
|
|
128
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! UIkit 3.25.28-dev.
|
|
1
|
+
/*! UIkit 3.25.28-dev.fcd5185 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
|
|
2
2
|
/* ========================================================================
|
|
3
3
|
Component: Base
|
|
4
4
|
========================================================================== */
|