diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ba9a2ce..aee3b85 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,8 +18,11 @@ jobs: uses: actions/setup-node@v3 with: node-version: 22 - - name: npm install, build, and test - run: | - npm it + - name: npm install + run: npm install + - name: Install Playwright browsers + run: npx playwright install --with-deps chromium + - name: Run tests + run: npm test env: CI: true diff --git a/package-lock.json b/package-lock.json index 92ebd0c..c5f50f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6245,10 +6245,11 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -6741,31 +6742,50 @@ } }, "node_modules/playwright": { - "version": "1.28.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.28.1.tgz", - "integrity": "sha512-92Sz6XBlfHlb9tK5UCDzIFAuIkHHpemA9zwUaqvo+w7sFMSmVMGmvKcbptof/eJObq63PGnMhM75x7qxhTR78Q==", + "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.2.tgz", + "integrity": "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==", "dev": true, - "hasInstallScript": true, + "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.28.1" + "playwright-core": "1.58.2" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=14" + "node": ">=18" + }, + "optionalDependencies": { + "fsevents": "2.3.2" } }, "node_modules/playwright-core": { - "version": "1.28.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.28.1.tgz", - "integrity": "sha512-3PixLnGPno0E8rSBJjtwqTwJe3Yw72QwBBBxNoukIj3lEeBNXwbNiKrNuB1oyQgTBw5QHUhNO3SteEtHaMK6ag==", + "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.2.tgz", + "integrity": "sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg==", "dev": true, + "license": "Apache-2.0", "bin": { - "playwright": "cli.js" + "playwright-core": "cli.js" }, "engines": { - "node": ">=14" + "node": ">=18" + } + }, + "node_modules/playwright/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, "node_modules/portfinder": { diff --git a/src/duration-format-ponyfill.ts b/src/duration-format-ponyfill.ts index 122e061..b8e4ce3 100644 --- a/src/duration-format-ponyfill.ts +++ b/src/duration-format-ponyfill.ts @@ -109,7 +109,7 @@ export default class DurationFormat { ? twoDigitFormatOptions : unitStyle === 'numeric' ? {} - : {style: 'unit', unit: nfUnit, unitDisplay: unitStyle} + : {style: 'unit' as const, unit: nfUnit, unitDisplay: unitStyle} let formattedValue = new Intl.NumberFormat(locale, nfOpts).format(value) diff --git a/test/relative-time.js b/test/relative-time.js index 79ce3ef..930980c 100644 --- a/test/relative-time.js +++ b/test/relative-time.js @@ -1030,7 +1030,7 @@ suite('relative-time', function () { datetime: '2022-10-24T14:46:50.000Z', format: 'relative', formatStyle: 'narrow', - expected: 'in 50 sec.', + expected: 'in 50s', }, { datetime: '2022-10-24T14:46:50.000Z', @@ -1109,7 +1109,7 @@ suite('relative-time', function () { datetime: '2022-10-24T14:47:30.000Z', format: 'relative', formatStyle: 'narrow', - expected: 'in 1 min.', + expected: 'in 1m', }, { datetime: '2022-10-24T14:47:30.000Z', @@ -1182,7 +1182,7 @@ suite('relative-time', function () { datetime: '2022-11-13T15:46:00.000Z', format: 'relative', formatStyle: 'narrow', - expected: 'in 3 wk.', + expected: 'in 3w', }, { datetime: '2022-11-13T15:46:00.000Z', @@ -1559,7 +1559,7 @@ suite('relative-time', function () { datetime: '2022-10-24T14:44:30.000Z', format: 'relative', formatStyle: 'narrow', - expected: '1 min. ago', + expected: '1m ago', }, { datetime: '2022-10-24T14:44:30.000Z', @@ -1632,7 +1632,7 @@ suite('relative-time', function () { datetime: '2022-10-04T14:46:00.000Z', format: 'relative', formatStyle: 'narrow', - expected: '3 wk. ago', + expected: '3w ago', }, { datetime: '2022-10-04T14:46:00.000Z', @@ -2529,28 +2529,28 @@ suite('relative-time', function () { lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 1 hr.', + expected: 'in 1h', }, { datetime: '2022-10-24T16:00:00.000Z', lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 1 hr.', + expected: 'in 1h', }, { datetime: '2022-10-24T16:15:00.000Z', lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 1 hr.', + expected: 'in 1h', }, { datetime: '2022-10-24T16:31:00.000Z', lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 1 hr.', + expected: 'in 1h', }, { datetime: '2022-10-30T14:46:00.000Z', @@ -2585,14 +2585,14 @@ suite('relative-time', function () { lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 2 yr.', + expected: 'in 2y', }, { datetime: '2024-04-01T14:46:00.000Z', lang: 'en', tense: 'future', formatStyle: 'narrow', - expected: 'in 2 yr.', + expected: 'in 2y', }, // Dates in the future @@ -2681,28 +2681,28 @@ suite('relative-time', function () { lang: 'en', tense: 'past', formatStyle: 'narrow', - expected: '1 hr. ago', + expected: '1h ago', }, { datetime: '2022-10-24T13:30:00.000Z', lang: 'en', tense: 'past', formatStyle: 'narrow', - expected: '1 hr. ago', + expected: '1h ago', }, { datetime: '2022-10-24T13:17:00.000Z', lang: 'en', tense: 'past', formatStyle: 'narrow', - expected: '1 hr. ago', + expected: '1h ago', }, { datetime: '2022-10-24T13:01:00.000Z', lang: 'en', tense: 'past', formatStyle: 'narrow', - expected: '1 hr. ago', + expected: '1h ago', }, { datetime: '2022-10-18T14:46:00.000Z',