@redhat-cloud-services/chrome 1.0.7 → 1.0.9

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.
@@ -2,7 +2,7 @@
2
2
  declare const ChromeContext: import("react").Context<{
3
3
  getState: () => import("../ChromeProvider/chromeState").UserIdentity;
4
4
  setLastVisited: (pages: import("../ChromeProvider/chromeState").LastVisitedPage[]) => void;
5
- setIdentity: (userIdentity: import("../ChromeProvider/chromeState").UserIdentity) => void;
5
+ setIdentity: ({ lastVisitedPages, ...userIdentity }: import("../ChromeProvider/chromeState").UserIdentity) => void;
6
6
  setFavoritePages: (pages: import("../ChromeProvider/chromeState").FavoritePage[]) => void;
7
7
  setVisitedBundles: (visitedBundles: import("../ChromeProvider/chromeState").VisitedBundles) => void;
8
8
  subscribe: (event: import("../ChromeProvider/chromeState").UpdateEvents, onUpdate: () => void) => symbol;
@@ -35,6 +35,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
38
47
  var __importDefault = (this && this.__importDefault) || function (mod) {
39
48
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
49
  };
@@ -43,41 +52,25 @@ var jsx_runtime_1 = require("react/jsx-runtime");
43
52
  var react_1 = require("react");
44
53
  var react_core_1 = require("@scalprum/react-core");
45
54
  var react_router_dom_1 = require("react-router-dom");
46
- var debounce_1 = __importDefault(require("lodash/debounce"));
47
55
  var ChromeContext_1 = require("../ChromeContext");
48
56
  var chromeState_1 = __importDefault(require("./chromeState"));
49
57
  var fetch_1 = require("../utils/fetch");
50
58
  var getUserIdentity = function () { return (0, fetch_1.get)(fetch_1.IDENTITY_URL); };
51
- var postDataDebounced = (0, debounce_1.default)(function (pathname, title, bundle) { return __awaiter(void 0, void 0, void 0, function () {
52
- var data;
53
- return __generator(this, function (_a) {
54
- switch (_a.label) {
55
- case 0: return [4, (0, fetch_1.post)(fetch_1.LAST_VISITED_URL, {
56
- pathname: pathname,
57
- title: title,
58
- bundle: bundle,
59
- })];
60
- case 1:
61
- data = _a.sent();
62
- return [2, data];
63
- }
64
- });
65
- }); }, 5000);
66
59
  var useLastPageVisitedUploader = function (providerState) {
67
- var scalprum = (0, react_core_1.useScalprum)();
68
- var pathname = (0, react_router_dom_1.useLocation)().pathname;
69
- var postData = function (pathname, title, bundle) { return __awaiter(void 0, void 0, void 0, function () {
70
- var data, error_1;
60
+ var inactiveDuration = 1000 * 20;
61
+ var batchUpdateInterval = 1000 * 60 * 3;
62
+ var inactiveTimeout = (0, react_1.useRef)(undefined);
63
+ var postBatchData = function (recentPages) { return __awaiter(void 0, void 0, void 0, function () {
64
+ var error_1;
71
65
  return __generator(this, function (_a) {
72
66
  switch (_a.label) {
73
67
  case 0:
74
68
  _a.trys.push([0, 2, , 3]);
75
- return [4, postDataDebounced(pathname, title, bundle)];
69
+ return [4, (0, fetch_1.post)(fetch_1.LAST_VISITED_URL, {
70
+ pages: recentPages,
71
+ })];
76
72
  case 1:
77
- data = _a.sent();
78
- if (data) {
79
- providerState.setLastVisited(data);
80
- }
73
+ _a.sent();
81
74
  return [3, 3];
82
75
  case 2:
83
76
  error_1 = _a.sent();
@@ -87,63 +80,111 @@ var useLastPageVisitedUploader = function (providerState) {
87
80
  }
88
81
  });
89
82
  }); };
83
+ var sanitizeRecentPages = function (recentPages) {
84
+ return recentPages.map(function (_a) {
85
+ var pathname = _a.pathname, title = _a.title, bundle = _a.bundle;
86
+ return ({ pathname: pathname, title: title, bundle: bundle });
87
+ });
88
+ };
89
+ var clearInactiveTimeout = function () {
90
+ if (inactiveTimeout.current !== undefined) {
91
+ clearTimeout(inactiveTimeout.current);
92
+ inactiveTimeout.current = undefined;
93
+ }
94
+ };
95
+ var updateMostRecentPages = function () { return __awaiter(void 0, void 0, void 0, function () {
96
+ var recentPages, sanitizedPages;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0:
100
+ recentPages = providerState.getState().lastVisitedPages;
101
+ sanitizedPages = sanitizeRecentPages(recentPages);
102
+ return [4, postBatchData(sanitizedPages)];
103
+ case 1:
104
+ _a.sent();
105
+ return [2];
106
+ }
107
+ });
108
+ }); };
90
109
  (0, react_1.useEffect)(function () {
91
- var titleObserver;
92
- var prevTitle;
93
- var titleTarget = document.querySelector('title');
94
- if (titleTarget) {
95
- prevTitle = titleTarget.textContent;
96
- postData(pathname, prevTitle !== null && prevTitle !== void 0 ? prevTitle : '', scalprum.api.chrome.getBundleData().bundleTitle);
97
- titleObserver = new MutationObserver(function (mutations) {
98
- var _a;
99
- var currentTitle = (_a = mutations[0]) === null || _a === void 0 ? void 0 : _a.target.textContent;
100
- if (typeof currentTitle === 'string' && currentTitle !== prevTitle) {
101
- try {
102
- prevTitle = currentTitle;
103
- postData(pathname, currentTitle, scalprum.api.chrome.getBundleData().bundleTitle);
104
- }
105
- catch (error) {
106
- console.error('Unable to update last visited pages!', error);
107
- }
108
- }
109
- });
110
- titleObserver.observe(titleTarget, {
111
- childList: true,
110
+ var updateInterval = setInterval(function () { return __awaiter(void 0, void 0, void 0, function () {
111
+ return __generator(this, function (_a) {
112
+ updateMostRecentPages();
113
+ return [2];
112
114
  });
113
- }
115
+ }); }, batchUpdateInterval);
116
+ var handleVisibilityChange = function () {
117
+ if (document.visibilityState !== 'visible') {
118
+ if (inactiveTimeout.current) {
119
+ return;
120
+ }
121
+ inactiveTimeout.current = setTimeout(function () { return __awaiter(void 0, void 0, void 0, function () {
122
+ return __generator(this, function (_a) {
123
+ updateMostRecentPages();
124
+ return [2];
125
+ });
126
+ }); }, inactiveDuration);
127
+ }
128
+ else {
129
+ clearInactiveTimeout();
130
+ }
131
+ };
132
+ document.addEventListener('visibilitychange', handleVisibilityChange);
114
133
  return function () {
115
- titleObserver === null || titleObserver === void 0 ? void 0 : titleObserver.disconnect();
116
- postDataDebounced === null || postDataDebounced === void 0 ? void 0 : postDataDebounced.cancel();
134
+ clearInterval(updateInterval);
135
+ clearInactiveTimeout();
136
+ document.removeEventListener('visibilitychange', handleVisibilityChange);
117
137
  };
118
- }, [pathname]);
138
+ }, []);
119
139
  };
120
140
  var LAST_VISITED_FLAG = 'chrome:lastVisited';
121
141
  var useLastVisitedLocalStorage = function (providerState) {
122
142
  var pathname = (0, react_router_dom_1.useLocation)().pathname;
123
143
  var scalprum = (0, react_core_1.useScalprum)();
124
144
  var titleTarget = document.querySelector('title');
145
+ var getInitialPages = function () { return __awaiter(void 0, void 0, void 0, function () {
146
+ var localVisited, firstPages, _a, error_2;
147
+ var _b, _c;
148
+ return __generator(this, function (_d) {
149
+ switch (_d.label) {
150
+ case 0:
151
+ localVisited = [];
152
+ try {
153
+ localVisited = JSON.parse((_b = localStorage.getItem(LAST_VISITED_FLAG)) !== null && _b !== void 0 ? _b : '[]');
154
+ if (!Array.isArray(localVisited)) {
155
+ localVisited = [];
156
+ }
157
+ }
158
+ catch (error) {
159
+ console.error('Unable to parse last visited pages from localStorage!', error);
160
+ localVisited = [];
161
+ }
162
+ _d.label = 1;
163
+ case 1:
164
+ _d.trys.push([1, 3, , 4]);
165
+ _a = [[]];
166
+ return [4, (0, fetch_1.get)(fetch_1.LAST_VISITED_URL)];
167
+ case 2:
168
+ firstPages = __spreadArray.apply(void 0, [__spreadArray.apply(void 0, _a.concat([((_c = (_d.sent())) !== null && _c !== void 0 ? _c : []), true])), localVisited, true]).slice(0, 10);
169
+ providerState.setLastVisited(firstPages);
170
+ localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify(firstPages));
171
+ return [3, 4];
172
+ case 3:
173
+ error_2 = _d.sent();
174
+ console.error('Unable to load initial last visited pages!', error_2);
175
+ providerState.setLastVisited(localVisited);
176
+ localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify(localVisited));
177
+ return [3, 4];
178
+ case 4: return [2];
179
+ }
180
+ });
181
+ }); };
182
+ (0, react_1.useEffect)(function () {
183
+ getInitialPages();
184
+ }, []);
125
185
  (0, react_1.useEffect)(function () {
126
- var _a;
127
186
  var titleObserver;
128
187
  var prevTitle;
129
- var lastVisited = localStorage.getItem(LAST_VISITED_FLAG);
130
- if (lastVisited) {
131
- try {
132
- var lastVisited_1 = JSON.parse((_a = localStorage.getItem(LAST_VISITED_FLAG)) !== null && _a !== void 0 ? _a : '[]');
133
- if (!Array.isArray(lastVisited_1)) {
134
- localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify([]));
135
- providerState.setLastVisited([]);
136
- }
137
- else {
138
- providerState.setLastVisited(lastVisited_1);
139
- }
140
- }
141
- catch (error) {
142
- console.error('Unable to parse last visited pages from localStorage!', error);
143
- providerState.setLastVisited([]);
144
- localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify([]));
145
- }
146
- }
147
188
  if (titleTarget) {
148
189
  titleObserver = new MutationObserver(function (mutations) {
149
190
  var _a, _b;
@@ -179,6 +220,7 @@ var ChromeProvider = function (_a) {
179
220
  providerState.current = (0, chromeState_1.default)();
180
221
  }
181
222
  useLastVisitedLocalStorage(providerState.current);
223
+ useLastPageVisitedUploader(providerState.current);
182
224
  (0, react_1.useEffect)(function () {
183
225
  isMounted.current = true;
184
226
  if (!initialRequest) {
@@ -1 +1 @@
1
- {"version":3,"file":"ChromeProvider.js","sourceRoot":"","sources":["../src/ChromeProvider/ChromeProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChromeProvider.js","sourceRoot":"","sources":["../src/ChromeProvider/ChromeProvider.tsx"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export declare enum UpdateEvents {
24
24
  declare const chromeState: () => {
25
25
  getState: () => UserIdentity;
26
26
  setLastVisited: (pages: LastVisitedPage[]) => void;
27
- setIdentity: (userIdentity: UserIdentity) => void;
27
+ setIdentity: ({ lastVisitedPages, ...userIdentity }: UserIdentity) => void;
28
28
  setFavoritePages: (pages: FavoritePage[]) => void;
29
29
  setVisitedBundles: (visitedBundles: VisitedBundles) => void;
30
30
  subscribe: (event: UpdateEvents, onUpdate: () => void) => symbol;
@@ -10,6 +10,17 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
13
24
  Object.defineProperty(exports, "__esModule", { value: true });
14
25
  exports.UpdateEvents = void 0;
15
26
  var UpdateEvents;
@@ -25,20 +36,20 @@ var chromeState = function () {
25
36
  visitedBundles: {},
26
37
  initialized: false,
27
38
  };
28
- var subscribtions = {
39
+ var subscriptions = {
29
40
  lastVisited: new Map(),
30
41
  favoritePages: new Map(),
31
42
  visitedBundles: new Map(),
32
43
  };
33
44
  function subscribe(event, onUpdate) {
34
45
  var id = Symbol(event);
35
- subscribtions[event].set(id, { onUpdate: onUpdate });
46
+ subscriptions[event].set(id, { onUpdate: onUpdate });
36
47
  onUpdate();
37
48
  return id;
38
49
  }
39
50
  function unsubscribe(id, event) {
40
- if (subscribtions[event].has(id)) {
41
- subscribtions[event].delete(id);
51
+ if (subscriptions[event].has(id)) {
52
+ subscriptions[event].delete(id);
42
53
  }
43
54
  else {
44
55
  console.error('Trying to unsubscribe non existing client!');
@@ -46,7 +57,7 @@ var chromeState = function () {
46
57
  }
47
58
  function update(event, attributes) {
48
59
  state = __assign(__assign({}, state), attributes);
49
- var updateSubscriptions = subscribtions[event];
60
+ var updateSubscriptions = subscriptions[event];
50
61
  if (updateSubscriptions.size === 0) {
51
62
  return;
52
63
  }
@@ -66,9 +77,10 @@ var chromeState = function () {
66
77
  function getState() {
67
78
  return state;
68
79
  }
69
- function setIdentity(userIdentity) {
70
- state = __assign(__assign({}, userIdentity), { initialized: true });
71
- Object.values(subscribtions)
80
+ function setIdentity(_a) {
81
+ var lastVisitedPages = _a.lastVisitedPages, userIdentity = __rest(_a, ["lastVisitedPages"]);
82
+ state = __assign(__assign(__assign({}, state), userIdentity), { initialized: true });
83
+ Object.values(subscriptions)
72
84
  .flat()
73
85
  .forEach(function (event) {
74
86
  Array.from(event.values()).forEach(function (sub) {
@@ -1 +1 @@
1
- {"version":3,"file":"chromeState.js","sourceRoot":"","sources":["../src/ChromeProvider/chromeState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chromeState.js","sourceRoot":"","sources":["../src/ChromeProvider/chromeState.ts"],"names":[],"mappings":"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"}
@@ -34,45 +34,38 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
45
+ };
37
46
  import { jsx as _jsx } from "react/jsx-runtime";
38
47
  import { useEffect, useRef, useState } from 'react';
39
48
  import { useScalprum } from '@scalprum/react-core';
40
49
  import { useLocation } from 'react-router-dom';
41
- import debounce from 'lodash/debounce';
42
50
  import { ChromeContext } from '../ChromeContext';
43
51
  import chromeState from './chromeState';
44
52
  import { IDENTITY_URL, LAST_VISITED_URL, get, post } from '../utils/fetch';
45
53
  var getUserIdentity = function () { return get(IDENTITY_URL); };
46
- var postDataDebounced = debounce(function (pathname, title, bundle) { return __awaiter(void 0, void 0, void 0, function () {
47
- var data;
48
- return __generator(this, function (_a) {
49
- switch (_a.label) {
50
- case 0: return [4, post(LAST_VISITED_URL, {
51
- pathname: pathname,
52
- title: title,
53
- bundle: bundle,
54
- })];
55
- case 1:
56
- data = _a.sent();
57
- return [2, data];
58
- }
59
- });
60
- }); }, 5000);
61
54
  var useLastPageVisitedUploader = function (providerState) {
62
- var scalprum = useScalprum();
63
- var pathname = useLocation().pathname;
64
- var postData = function (pathname, title, bundle) { return __awaiter(void 0, void 0, void 0, function () {
65
- var data, error_1;
55
+ var inactiveDuration = 1000 * 20;
56
+ var batchUpdateInterval = 1000 * 60 * 3;
57
+ var inactiveTimeout = useRef(undefined);
58
+ var postBatchData = function (recentPages) { return __awaiter(void 0, void 0, void 0, function () {
59
+ var error_1;
66
60
  return __generator(this, function (_a) {
67
61
  switch (_a.label) {
68
62
  case 0:
69
63
  _a.trys.push([0, 2, , 3]);
70
- return [4, postDataDebounced(pathname, title, bundle)];
64
+ return [4, post(LAST_VISITED_URL, {
65
+ pages: recentPages,
66
+ })];
71
67
  case 1:
72
- data = _a.sent();
73
- if (data) {
74
- providerState.setLastVisited(data);
75
- }
68
+ _a.sent();
76
69
  return [3, 3];
77
70
  case 2:
78
71
  error_1 = _a.sent();
@@ -82,63 +75,111 @@ var useLastPageVisitedUploader = function (providerState) {
82
75
  }
83
76
  });
84
77
  }); };
78
+ var sanitizeRecentPages = function (recentPages) {
79
+ return recentPages.map(function (_a) {
80
+ var pathname = _a.pathname, title = _a.title, bundle = _a.bundle;
81
+ return ({ pathname: pathname, title: title, bundle: bundle });
82
+ });
83
+ };
84
+ var clearInactiveTimeout = function () {
85
+ if (inactiveTimeout.current !== undefined) {
86
+ clearTimeout(inactiveTimeout.current);
87
+ inactiveTimeout.current = undefined;
88
+ }
89
+ };
90
+ var updateMostRecentPages = function () { return __awaiter(void 0, void 0, void 0, function () {
91
+ var recentPages, sanitizedPages;
92
+ return __generator(this, function (_a) {
93
+ switch (_a.label) {
94
+ case 0:
95
+ recentPages = providerState.getState().lastVisitedPages;
96
+ sanitizedPages = sanitizeRecentPages(recentPages);
97
+ return [4, postBatchData(sanitizedPages)];
98
+ case 1:
99
+ _a.sent();
100
+ return [2];
101
+ }
102
+ });
103
+ }); };
85
104
  useEffect(function () {
86
- var titleObserver;
87
- var prevTitle;
88
- var titleTarget = document.querySelector('title');
89
- if (titleTarget) {
90
- prevTitle = titleTarget.textContent;
91
- postData(pathname, prevTitle !== null && prevTitle !== void 0 ? prevTitle : '', scalprum.api.chrome.getBundleData().bundleTitle);
92
- titleObserver = new MutationObserver(function (mutations) {
93
- var _a;
94
- var currentTitle = (_a = mutations[0]) === null || _a === void 0 ? void 0 : _a.target.textContent;
95
- if (typeof currentTitle === 'string' && currentTitle !== prevTitle) {
96
- try {
97
- prevTitle = currentTitle;
98
- postData(pathname, currentTitle, scalprum.api.chrome.getBundleData().bundleTitle);
99
- }
100
- catch (error) {
101
- console.error('Unable to update last visited pages!', error);
102
- }
103
- }
104
- });
105
- titleObserver.observe(titleTarget, {
106
- childList: true,
105
+ var updateInterval = setInterval(function () { return __awaiter(void 0, void 0, void 0, function () {
106
+ return __generator(this, function (_a) {
107
+ updateMostRecentPages();
108
+ return [2];
107
109
  });
108
- }
110
+ }); }, batchUpdateInterval);
111
+ var handleVisibilityChange = function () {
112
+ if (document.visibilityState !== 'visible') {
113
+ if (inactiveTimeout.current) {
114
+ return;
115
+ }
116
+ inactiveTimeout.current = setTimeout(function () { return __awaiter(void 0, void 0, void 0, function () {
117
+ return __generator(this, function (_a) {
118
+ updateMostRecentPages();
119
+ return [2];
120
+ });
121
+ }); }, inactiveDuration);
122
+ }
123
+ else {
124
+ clearInactiveTimeout();
125
+ }
126
+ };
127
+ document.addEventListener('visibilitychange', handleVisibilityChange);
109
128
  return function () {
110
- titleObserver === null || titleObserver === void 0 ? void 0 : titleObserver.disconnect();
111
- postDataDebounced === null || postDataDebounced === void 0 ? void 0 : postDataDebounced.cancel();
129
+ clearInterval(updateInterval);
130
+ clearInactiveTimeout();
131
+ document.removeEventListener('visibilitychange', handleVisibilityChange);
112
132
  };
113
- }, [pathname]);
133
+ }, []);
114
134
  };
115
135
  var LAST_VISITED_FLAG = 'chrome:lastVisited';
116
136
  var useLastVisitedLocalStorage = function (providerState) {
117
137
  var pathname = useLocation().pathname;
118
138
  var scalprum = useScalprum();
119
139
  var titleTarget = document.querySelector('title');
140
+ var getInitialPages = function () { return __awaiter(void 0, void 0, void 0, function () {
141
+ var localVisited, firstPages, _a, error_2;
142
+ var _b, _c;
143
+ return __generator(this, function (_d) {
144
+ switch (_d.label) {
145
+ case 0:
146
+ localVisited = [];
147
+ try {
148
+ localVisited = JSON.parse((_b = localStorage.getItem(LAST_VISITED_FLAG)) !== null && _b !== void 0 ? _b : '[]');
149
+ if (!Array.isArray(localVisited)) {
150
+ localVisited = [];
151
+ }
152
+ }
153
+ catch (error) {
154
+ console.error('Unable to parse last visited pages from localStorage!', error);
155
+ localVisited = [];
156
+ }
157
+ _d.label = 1;
158
+ case 1:
159
+ _d.trys.push([1, 3, , 4]);
160
+ _a = [[]];
161
+ return [4, get(LAST_VISITED_URL)];
162
+ case 2:
163
+ firstPages = __spreadArray.apply(void 0, [__spreadArray.apply(void 0, _a.concat([((_c = (_d.sent())) !== null && _c !== void 0 ? _c : []), true])), localVisited, true]).slice(0, 10);
164
+ providerState.setLastVisited(firstPages);
165
+ localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify(firstPages));
166
+ return [3, 4];
167
+ case 3:
168
+ error_2 = _d.sent();
169
+ console.error('Unable to load initial last visited pages!', error_2);
170
+ providerState.setLastVisited(localVisited);
171
+ localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify(localVisited));
172
+ return [3, 4];
173
+ case 4: return [2];
174
+ }
175
+ });
176
+ }); };
177
+ useEffect(function () {
178
+ getInitialPages();
179
+ }, []);
120
180
  useEffect(function () {
121
- var _a;
122
181
  var titleObserver;
123
182
  var prevTitle;
124
- var lastVisited = localStorage.getItem(LAST_VISITED_FLAG);
125
- if (lastVisited) {
126
- try {
127
- var lastVisited_1 = JSON.parse((_a = localStorage.getItem(LAST_VISITED_FLAG)) !== null && _a !== void 0 ? _a : '[]');
128
- if (!Array.isArray(lastVisited_1)) {
129
- localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify([]));
130
- providerState.setLastVisited([]);
131
- }
132
- else {
133
- providerState.setLastVisited(lastVisited_1);
134
- }
135
- }
136
- catch (error) {
137
- console.error('Unable to parse last visited pages from localStorage!', error);
138
- providerState.setLastVisited([]);
139
- localStorage.setItem(LAST_VISITED_FLAG, JSON.stringify([]));
140
- }
141
- }
142
183
  if (titleTarget) {
143
184
  titleObserver = new MutationObserver(function (mutations) {
144
185
  var _a, _b;
@@ -174,6 +215,7 @@ var ChromeProvider = function (_a) {
174
215
  providerState.current = chromeState();
175
216
  }
176
217
  useLastVisitedLocalStorage(providerState.current);
218
+ useLastPageVisitedUploader(providerState.current);
177
219
  useEffect(function () {
178
220
  isMounted.current = true;
179
221
  if (!initialRequest) {
@@ -1 +1 @@
1
- {"version":3,"file":"ChromeProvider.js","sourceRoot":"","sources":["../../src/ChromeProvider/ChromeProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChromeProvider.js","sourceRoot":"","sources":["../../src/ChromeProvider/ChromeProvider.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,17 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
12
23
  export var UpdateEvents;
13
24
  (function (UpdateEvents) {
14
25
  UpdateEvents["lastVisited"] = "lastVisited";
@@ -22,20 +33,20 @@ var chromeState = function () {
22
33
  visitedBundles: {},
23
34
  initialized: false,
24
35
  };
25
- var subscribtions = {
36
+ var subscriptions = {
26
37
  lastVisited: new Map(),
27
38
  favoritePages: new Map(),
28
39
  visitedBundles: new Map(),
29
40
  };
30
41
  function subscribe(event, onUpdate) {
31
42
  var id = Symbol(event);
32
- subscribtions[event].set(id, { onUpdate: onUpdate });
43
+ subscriptions[event].set(id, { onUpdate: onUpdate });
33
44
  onUpdate();
34
45
  return id;
35
46
  }
36
47
  function unsubscribe(id, event) {
37
- if (subscribtions[event].has(id)) {
38
- subscribtions[event].delete(id);
48
+ if (subscriptions[event].has(id)) {
49
+ subscriptions[event].delete(id);
39
50
  }
40
51
  else {
41
52
  console.error('Trying to unsubscribe non existing client!');
@@ -43,7 +54,7 @@ var chromeState = function () {
43
54
  }
44
55
  function update(event, attributes) {
45
56
  state = __assign(__assign({}, state), attributes);
46
- var updateSubscriptions = subscribtions[event];
57
+ var updateSubscriptions = subscriptions[event];
47
58
  if (updateSubscriptions.size === 0) {
48
59
  return;
49
60
  }
@@ -63,9 +74,10 @@ var chromeState = function () {
63
74
  function getState() {
64
75
  return state;
65
76
  }
66
- function setIdentity(userIdentity) {
67
- state = __assign(__assign({}, userIdentity), { initialized: true });
68
- Object.values(subscribtions)
77
+ function setIdentity(_a) {
78
+ var lastVisitedPages = _a.lastVisitedPages, userIdentity = __rest(_a, ["lastVisitedPages"]);
79
+ state = __assign(__assign(__assign({}, state), userIdentity), { initialized: true });
80
+ Object.values(subscriptions)
69
81
  .flat()
70
82
  .forEach(function (event) {
71
83
  Array.from(event.values()).forEach(function (sub) {
@@ -1 +1 @@
1
- {"version":3,"file":"chromeState.js","sourceRoot":"","sources":["../../src/ChromeProvider/chromeState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chromeState.js","sourceRoot":"","sources":["../../src/ChromeProvider/chromeState.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redhat-cloud-services/chrome",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Chrome functions for RedHat Hybrid cloud console.",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",