@budarin/pluggable-serviceworker 1.5.6 → 1.5.7

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
@@ -619,18 +619,20 @@ activateOnNextVisitServiceWorker({
619
619
 
620
620
  ### Публикуемые утилиты
621
621
 
622
- | Название | Где использовать | Описание |
623
- | -------------------------------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
624
- | `registerServiceWorker(scriptURL, options?)` | клиент | Регистрация SW; при первом заходе при необходимости один автоматический reload (обход [бага браузера](https://issues.chromium.org/issues/482903583)). Импорт: `@budarin/pluggable-serviceworker/client`. |
625
- | `normalizeUrl(url)` | SW | Нормализует URL (относительный → абсолютный по origin SW) для сравнения. Импорт: `@budarin/pluggable-serviceworker/utils`. |
626
- | `notifyClients(messageType)` | SW | Отправляет сообщение `{ type: messageType }` всем окнам-клиентам. Импорт: `@budarin/pluggable-serviceworker/utils`. |
622
+ | Название | Где использовать | Описание |
623
+ | --------------------------------------------------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
624
+ | `registerServiceWorkerWithClaimWorkaround(scriptURL, options?)` | клиент | Регистрация SW для случая, когда в activate вызывается claim(); при первом заходе при необходимости один автоматический reload (обход [бага браузера](https://issues.chromium.org/issues/482903583)). Импорт: `@budarin/pluggable-serviceworker/client`. |
625
+ | `normalizeUrl(url)` | SW | Нормализует URL (относительный → абсолютный по origin SW) для сравнения. Импорт: `@budarin/pluggable-serviceworker/utils`. |
626
+ | `notifyClients(messageType)` | SW | Отправляет сообщение `{ type: messageType }` всем окнам-клиентам. Импорт: `@budarin/pluggable-serviceworker/utils`. |
627
627
 
628
- На странице используйте **клиентский API** библиотеки, чтобы SW корректно взял контроль уже на первой загрузке (обход [бага браузера](https://issues.chromium.org/issues/482903583)):
628
+ На странице используйте **клиентский API** библиотеки, чтобы SW корректно взял контроль уже на первой загрузке если сервисворкер использует `claim()` для того, чтобы сразу же установить контроль над страницей (обход [бага браузера](https://issues.chromium.org/issues/482903583)):
629
629
 
630
630
  ```typescript
631
- import { registerServiceWorker } from '@budarin/pluggable-serviceworker/client';
631
+ import { registerServiceWorkerWithClaimWorkaround } from '@budarin/pluggable-serviceworker/client';
632
632
 
633
- const reg = await registerServiceWorker('/sw.js');
633
+ const reg = await registerServiceWorkerWithClaimWorkaround('/sw.js', {
634
+ type: 'module',
635
+ });
634
636
  ```
635
637
 
636
638
  Без этого API на первом визите страница может остаться без контроллера до перезагрузки.
@@ -1 +1 @@
1
- export { registerServiceWorker } from './register.js';
1
+ export { registerServiceWorkerWithClaimWorkaround } from './register.js';
@@ -1 +1 @@
1
- export { registerServiceWorker } from './register.js';
1
+ export { registerServiceWorkerWithClaimWorkaround } from './register.js';
@@ -1 +1 @@
1
- export declare function registerServiceWorker(scriptURL: string, options?: RegistrationOptions): Promise<ServiceWorkerRegistration | undefined>;
1
+ export declare function registerServiceWorkerWithClaimWorkaround(scriptURL: string, options?: RegistrationOptions): Promise<ServiceWorkerRegistration | undefined>;
@@ -1,4 +1,4 @@
1
- export async function registerServiceWorker(scriptURL, options) {
1
+ export async function registerServiceWorkerWithClaimWorkaround(scriptURL, options) {
2
2
  if (!('serviceWorker' in navigator)) {
3
3
  return undefined;
4
4
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@budarin/pluggable-serviceworker",
3
- "version": "1.5.6",
3
+ "version": "1.5.7",
4
4
  "description": "Extensible via plugins service worker",
5
5
  "keywords": [
6
6
  "serviceworker",