* feat: create whats new initial component * feat: create initial whats-new hook * feat: create whats-new story * feat: add button to open dialog in storybook * feat: complete popup ui * feat: add check for new updates or installs * fix: fix linter issues * fix: use proper features and add video * fix: properly fetch version from manifest * feat: add a link to open the popup * fix: update spacing and features' content * fix: update UTRP Map name * fix: increase icon size and display version correctly * feat: update the features video * fix: update offwhite color * fix: color typo * fix: fixing colors again * feat: use numbers instead of boolean * fix: typo in import * feat: add type safety to features array * feat: cdn video url * fix: delete mp4 video * feat: handle video failure to load * fix: make border outline tight to video * feat: make design responsive * fix: make features array readonly --------- Co-authored-by: doprz <52579214+doprz@users.noreply.github.com> Co-authored-by: Derek Chen <derex1987@gmail.com>
22 lines
741 B
TypeScript
22 lines
741 B
TypeScript
import { createLocalStore, debugStore } from 'chrome-extension-toolkit';
|
|
|
|
/**
|
|
* A store that is used for storing user options
|
|
*/
|
|
interface IExtensionStore {
|
|
/** These values are cached in storage, so that we can know the previous version that the extension was before the current update. Is only used for onUpdate */
|
|
version: string;
|
|
/** When was the last update */
|
|
lastUpdate: number;
|
|
/** The last version of the "What's New" popup that was shown to the user */
|
|
lastWhatsNewPopupVersion: number;
|
|
}
|
|
|
|
export const ExtensionStore = createLocalStore<IExtensionStore>({
|
|
version: chrome.runtime.getManifest().version,
|
|
lastUpdate: Date.now(),
|
|
lastWhatsNewPopupVersion: 0,
|
|
});
|
|
|
|
debugStore({ ExtensionStore });
|