use-pwa 1.0.1 → 2.0.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.
@@ -0,0 +1 @@
1
+ {}
package/README.md CHANGED
@@ -29,7 +29,8 @@ use-pwa is install and update handler for pwa.
29
29
  | enabledA2hs | Boolean | | [MDN](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Add_to_home_screen) |
30
30
  | enabledPwa | Boolean | | [MDN](https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent) |
31
31
  | enabledUpdate | Boolean | | [MDN](https://developer.mozilla.org/ja/docs/Web/API/ServiceWorkerRegistration/update) |
32
+ | isLoading | Boolean | | |
32
33
  | isPwa | Boolean | | [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/display-mode) |
33
34
  | showInstallPrompt | Function | | [MDN](https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent/prompt) |
34
- | unregister | Function | | [MDN](https://developer.mozilla.org/ja/docs/Web/API/ServiceWorkerRegistration/unregister) |
35
+ | unregister | Function || [MDN](https://developer.mozilla.org/ja/docs/Web/API/ServiceWorkerRegistration/unregister) |
35
36
  | userChoice | Object | ✓ | [MDN](https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent) |
package/dist/index.d.ts CHANGED
@@ -1,23 +1,19 @@
1
- declare type PromiseType<T extends Promise<any>> = T extends Promise<infer P> ? P : never;
2
- declare type BeforeInstallPromptEvent = Event & {
3
- readonly platforms: Array<string>;
4
- readonly userChoice: Promise<{
5
- outcome: "accepted" | "dismissed";
6
- platform: string;
7
- }>;
8
- prompt(): Promise<void>;
1
+ type UserChoice = {
2
+ outcome: "accepted" | "dismissed";
3
+ platform: string;
9
4
  };
10
- export declare type PwaData = {
5
+ export type PwaData = {
11
6
  appinstalled: boolean;
12
7
  canInstallprompt: boolean;
13
8
  enabledA2hs: boolean;
14
9
  enabledPwa: boolean;
15
10
  enabledUpdate: boolean;
11
+ isLoading: boolean;
16
12
  isPwa: boolean;
17
13
  showInstallPrompt: () => void;
18
- unregister: () => Promise<boolean | undefined>;
19
- userChoice?: PromiseType<BeforeInstallPromptEvent["userChoice"]>;
14
+ unregister?: () => Promise<boolean>;
15
+ userChoice?: UserChoice;
20
16
  };
21
- declare function usePwa(): PwaData;
22
- export default usePwa;
17
+ export default function usePwa(): PwaData;
18
+ export {};
23
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/hooks/usePwa/index.ts"],"names":[],"mappings":"AAGA,aAAK,WAAW,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GACjE,CAAC,GACD,KAAK,CAAC;AAEV,aAAK,wBAAwB,GAAG,KAAK,GAAG;IACtC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;QAC3B,OAAO,EAAE,UAAU,GAAG,WAAW,CAAC;QAClC,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB,CAAC;AAEF,oBAAY,OAAO,GAAG;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE,WAAW,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,CAAC;CAClE,CAAC;AAEF,iBAAS,MAAM,IAAI,OAAO,CAwIzB;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/hooks/usePwa/index.ts"],"names":[],"mappings":"AAUA,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,UAAU,GAAG,WAAW,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAQF,MAAM,MAAM,OAAO,GAAG;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,IAAI,OAAO,CAkNxC"}
package/dist/index.js CHANGED
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
2
13
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
14
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
15
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -14,7 +25,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
25
  function verb(n) { return function (v) { return step([n, v]); }; }
15
26
  function step(op) {
16
27
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
29
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
30
  if (y = 0, t) op = [op[0] & 2, t.value];
20
31
  switch (op[0]) {
@@ -36,33 +47,54 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
47
  }
37
48
  };
38
49
  Object.defineProperty(exports, "__esModule", { value: true });
39
- var react_1 = require("react");
40
50
  var detect_browser_1 = require("detect-browser");
51
+ var react_1 = require("react");
52
+ function useBoolean(initialValue) {
53
+ var _a = (0, react_1.useState)(initialValue), value = _a[0], setValue = _a[1];
54
+ var setTrue = (0, react_1.useCallback)(function () { return setValue(true); }, []);
55
+ return { value: value, setTrue: setTrue };
56
+ }
41
57
  function usePwa() {
42
58
  var _this = this;
43
- var beforeinstallprompt = react_1.useRef();
44
- var _a = react_1.useState(false), appinstalled = _a[0], setAppinstalled = _a[1];
45
- var _b = react_1.useState(false), canInstallprompt = _b[0], setCanInstallprompt = _b[1];
46
- var _c = react_1.useState(false), enabledA2hs = _c[0], setEnabledA2hs = _c[1];
47
- var _d = react_1.useState(false), enabledPwa = _d[0], setEnabledPwa = _d[1];
48
- var _e = react_1.useState(false), isPwa = _e[0], setIsPwa = _e[1];
49
- var _f = react_1.useState(false), enabledUpdate = _f[0], setEnabledUpdate = _f[1];
50
- var _g = react_1.useState(), userChoice = _g[0], setUserChoice = _g[1];
51
- var showInstallPrompt = react_1.useCallback(function () { return __awaiter(_this, void 0, void 0, function () {
52
- var userChoice;
59
+ var beforeinstallprompt = (0, react_1.useRef)();
60
+ var _a = useBoolean(false), appinstalled = _a.value, onAppinstalled = _a.setTrue;
61
+ var _b = useBoolean(false), canInstallprompt = _b.value, onCanInstallprompt = _b.setTrue;
62
+ var _c = useBoolean(false), enabledA2hs = _c.value, onEnabledA2hs = _c.setTrue;
63
+ var _d = useBoolean(false), enabledPwa = _d.value, onEnabledPwa = _d.setTrue;
64
+ var _e = useBoolean(false), enabledUpdate = _e.value, onEnabledUpdate = _e.setTrue;
65
+ var _f = useBoolean(false), isPwa = _f.value, onIsPwa = _f.setTrue;
66
+ var _g = (0, react_1.useState)(), userChoice = _g[0], setUserChoice = _g[1];
67
+ var handleAppinstalled = (0, react_1.useCallback)(function () { return onAppinstalled(); }, [onAppinstalled]);
68
+ var handleBeforeinstallprompt = (0, react_1.useCallback)(function (event) {
69
+ beforeinstallprompt.current = event;
70
+ onCanInstallprompt();
71
+ }, [onCanInstallprompt]);
72
+ var _h = (0, react_1.useState)(), registration = _h[0], setRegistration = _h[1];
73
+ var unregister = registration &&
74
+ (function () { return __awaiter(_this, void 0, void 0, function () {
75
+ var result;
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0: return [4 /*yield*/, registration.unregister()];
79
+ case 1:
80
+ result = _a.sent();
81
+ return [2 /*return*/, result];
82
+ }
83
+ });
84
+ }); });
85
+ var showInstallPrompt = (0, react_1.useCallback)(function () { return __awaiter(_this, void 0, void 0, function () {
86
+ var current, userChoice;
53
87
  return __generator(this, function (_a) {
54
88
  switch (_a.label) {
55
89
  case 0:
56
- if (!beforeinstallprompt.current) {
90
+ current = beforeinstallprompt.current;
91
+ if (!current) {
57
92
  return [2 /*return*/];
58
93
  }
59
- return [4 /*yield*/, beforeinstallprompt.current.prompt()];
94
+ return [4 /*yield*/, current.prompt()];
60
95
  case 1:
61
96
  _a.sent();
62
- if (!beforeinstallprompt.current) {
63
- return [2 /*return*/];
64
- }
65
- return [4 /*yield*/, beforeinstallprompt.current.userChoice];
97
+ return [4 /*yield*/, current.userChoice];
66
98
  case 2:
67
99
  userChoice = _a.sent();
68
100
  setUserChoice(userChoice);
@@ -70,108 +102,134 @@ function usePwa() {
70
102
  }
71
103
  });
72
104
  }); }, []);
73
- var unregister = react_1.useCallback(function () { return __awaiter(_this, void 0, void 0, function () {
74
- var registration, result;
75
- return __generator(this, function (_a) {
76
- switch (_a.label) {
77
- case 0:
78
- if (!("serviceWorker" in window.navigator)) {
79
- return [2 /*return*/];
80
- }
81
- return [4 /*yield*/, window.navigator.serviceWorker.getRegistration()];
82
- case 1:
83
- registration = _a.sent();
84
- if (!registration) {
85
- return [2 /*return*/];
86
- }
87
- return [4 /*yield*/, registration.unregister()];
88
- case 2:
89
- result = _a.sent();
90
- return [2 /*return*/, result];
91
- }
92
- });
93
- }); }, []);
94
- var handleBeforeInstallPrompt = react_1.useCallback(function (event) {
95
- beforeinstallprompt.current = event;
96
- setCanInstallprompt(true);
97
- }, []);
98
- var handleAppinstalled = react_1.useCallback(function () {
99
- setAppinstalled(true);
100
- }, []);
101
- react_1.useEffect(function () {
102
- window.addEventListener("beforeinstallprompt", handleBeforeInstallPrompt);
103
- return function () {
104
- window.removeEventListener("beforeinstallprompt", handleBeforeInstallPrompt);
105
- };
106
- }, [handleBeforeInstallPrompt]);
107
- react_1.useEffect(function () {
105
+ var _j = (0, react_1.useState)({
106
+ appinstalled: false,
107
+ beforeinstallprompt: false,
108
+ enabledA2hs: false,
109
+ enabledPwa: false,
110
+ enabledUpdate: false,
111
+ isPwa: false,
112
+ }), completed = _j[0], setCompleted = _j[1];
113
+ var isLoading = (0, react_1.useMemo)(function () { return !Object.values(completed).includes(false); }, [completed]);
114
+ (0, react_1.useEffect)(function () {
108
115
  window.addEventListener("appinstalled", handleAppinstalled);
116
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { appinstalled: true })); });
117
+ return function () { return window.removeEventListener("keydown", handleAppinstalled); };
118
+ }, [handleAppinstalled]);
119
+ (0, react_1.useEffect)(function () {
120
+ // @ts-ignore
121
+ window.addEventListener("beforeinstallprompt", handleBeforeinstallprompt);
122
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { beforeinstallprompt: true })); });
109
123
  return function () {
110
- window.removeEventListener("appinstalled", handleAppinstalled);
124
+ // @ts-ignore
125
+ return window.removeEventListener("beforeinstallprompt", handleBeforeinstallprompt);
111
126
  };
112
- }, [handleAppinstalled]);
113
- react_1.useEffect(function () {
114
- setEnabledPwa("serviceWorker" in window.navigator &&
115
- "BeforeInstallPromptEvent" in window);
116
- }, []);
117
- react_1.useEffect(function () {
118
- setIsPwa("standalone" in window.navigator ||
119
- window.matchMedia("(display-mode: standalone)").matches);
120
- }, []);
121
- react_1.useEffect(function () {
122
- var browser = detect_browser_1.detect();
123
- if (!browser) {
124
- return;
127
+ }, [handleBeforeinstallprompt]);
128
+ (0, react_1.useEffect)(function () {
129
+ try {
130
+ var browser = (0, detect_browser_1.detect)();
131
+ if (!browser) {
132
+ return;
133
+ }
134
+ var name_1 = browser.name;
135
+ if (name_1 !== "ios") {
136
+ return;
137
+ }
138
+ var document_1 = window.document, userAgent = window.navigator.userAgent;
139
+ var lownerUserAgent = userAgent.toLowerCase();
140
+ if (!lownerUserAgent.includes("iphone") &&
141
+ !lownerUserAgent.includes("ipad") &&
142
+ (!lownerUserAgent.includes("macintosh") || !("ontouchend" in document_1))) {
143
+ return;
144
+ }
145
+ onEnabledA2hs();
125
146
  }
126
- var userAgent = window.navigator.userAgent.toLowerCase();
127
- var isIos = userAgent.indexOf("iphone") >= 0 ||
128
- userAgent.indexOf("ipad") >= 0 ||
129
- (userAgent.indexOf("macintosh") >= 0 && "ontouchend" in document);
130
- var name = browser.name;
131
- setEnabledA2hs(isIos && name === "ios");
132
- }, []);
133
- react_1.useEffect(function () {
147
+ finally {
148
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { enabledA2hs: true })); });
149
+ }
150
+ }, [onEnabledA2hs]);
151
+ (0, react_1.useEffect)(function () {
152
+ try {
153
+ if (!("serviceWorker" in window.navigator) ||
154
+ !("BeforeInstallPromptEvent" in window)) {
155
+ return;
156
+ }
157
+ onEnabledPwa();
158
+ }
159
+ finally {
160
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { enabledPwa: true })); });
161
+ }
162
+ }, [onEnabledPwa]);
163
+ (0, react_1.useEffect)(function () {
134
164
  var callback = function () { return __awaiter(_this, void 0, void 0, function () {
135
- var registration;
136
- var _this = this;
165
+ var serviceWorker, registration;
137
166
  return __generator(this, function (_a) {
138
167
  switch (_a.label) {
139
168
  case 0:
140
169
  if (!("serviceWorker" in window.navigator)) {
141
170
  return [2 /*return*/];
142
171
  }
143
- return [4 /*yield*/, window.navigator.serviceWorker.getRegistration()];
172
+ serviceWorker = window.navigator.serviceWorker;
173
+ return [4 /*yield*/, serviceWorker.getRegistration()];
144
174
  case 1:
145
175
  registration = _a.sent();
146
- if (!registration) {
147
- return [2 /*return*/];
148
- }
149
- registration.onupdatefound = function () { return __awaiter(_this, void 0, void 0, function () {
150
- return __generator(this, function (_a) {
151
- switch (_a.label) {
152
- case 0: return [4 /*yield*/, registration.update()];
153
- case 1:
154
- _a.sent();
155
- setEnabledUpdate(true);
156
- return [2 /*return*/];
157
- }
158
- });
159
- }); };
176
+ setRegistration(registration);
160
177
  return [2 /*return*/];
161
178
  }
162
179
  });
163
180
  }); };
164
181
  callback();
165
182
  }, []);
183
+ (0, react_1.useEffect)(function () {
184
+ var callback = function () { return __awaiter(_this, void 0, void 0, function () {
185
+ var _this = this;
186
+ return __generator(this, function (_a) {
187
+ try {
188
+ if (!registration) {
189
+ return [2 /*return*/];
190
+ }
191
+ registration.onupdatefound = function () { return __awaiter(_this, void 0, void 0, function () {
192
+ return __generator(this, function (_a) {
193
+ switch (_a.label) {
194
+ case 0: return [4 /*yield*/, registration.update()];
195
+ case 1:
196
+ _a.sent();
197
+ onEnabledUpdate();
198
+ return [2 /*return*/];
199
+ }
200
+ });
201
+ }); };
202
+ }
203
+ finally {
204
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { enabledUpdate: true })); });
205
+ }
206
+ return [2 /*return*/];
207
+ });
208
+ }); };
209
+ callback();
210
+ }, [onEnabledUpdate, registration]);
211
+ (0, react_1.useEffect)(function () {
212
+ try {
213
+ if (!("standalone" in window.navigator) &&
214
+ !window.matchMedia("(display-mode: standalone)").matches) {
215
+ return;
216
+ }
217
+ onIsPwa();
218
+ }
219
+ finally {
220
+ setCompleted(function (prevCompleted) { return (__assign(__assign({}, prevCompleted), { isPwa: true })); });
221
+ }
222
+ }, [onIsPwa]);
166
223
  return {
167
224
  appinstalled: appinstalled,
168
225
  canInstallprompt: canInstallprompt,
169
226
  enabledA2hs: enabledA2hs,
170
- enabledUpdate: enabledUpdate,
171
227
  enabledPwa: enabledPwa,
228
+ enabledUpdate: enabledUpdate,
229
+ isLoading: isLoading,
172
230
  isPwa: isPwa,
173
- showInstallPrompt: showInstallPrompt,
174
231
  unregister: unregister,
232
+ showInstallPrompt: showInstallPrompt,
175
233
  userChoice: userChoice,
176
234
  };
177
235
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/hooks/usePwa/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/hooks/usePwa/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -16,17 +16,17 @@
16
16
  "url": "https://github.com/piro0919/use-pwa/issues"
17
17
  },
18
18
  "dependencies": {
19
- "detect-browser": "5.2.0"
19
+ "detect-browser": "5.3.0"
20
20
  },
21
21
  "devDependencies": {
22
- "@types/node": "12.20.12",
23
- "@types/react": "16.14.6",
24
- "@types/react-dom": "16.9.12",
25
- "gh-pages": "3.1.0",
22
+ "@types/node": "12.20.55",
23
+ "@types/react": "16.14.60",
24
+ "@types/react-dom": "16.9.24",
25
+ "gh-pages": "3.2.3",
26
26
  "react": "17.0.2",
27
27
  "react-dom": "17.0.2",
28
28
  "react-scripts": "4.0.3",
29
- "typescript": "4.2.4",
29
+ "typescript": "4.9.5",
30
30
  "web-vitals": "0.2.4",
31
31
  "workbox-background-sync": "5.1.4",
32
32
  "workbox-broadcast-update": "5.1.4",
@@ -71,5 +71,8 @@
71
71
  "start": "react-scripts start"
72
72
  },
73
73
  "types": "dist/index.d.ts",
74
- "version": "1.0.1"
74
+ "version": "2.0.0",
75
+ "volta": {
76
+ "node": "16.20.2"
77
+ }
75
78
  }