aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/+layout.svelte
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2023-05-02 14:09:51 -0700
committerAdam Soltys <[email protected]>2023-05-02 14:09:51 -0700
commit505386adbad6a07285cfcd7e64a1b3e609c1c5e8 (patch)
tree687beb156c8654b1b4fc3a63955ece6c65a1844e /src/routes/(app)/+layout.svelte
parentb563ab987b0625cdd6d5d9152039d5eef70d69f1 (diff)
downloadcoinos-ui-505386adbad6a07285cfcd7e64a1b3e609c1c5e8.tar.gz
coinos-ui-505386adbad6a07285cfcd7e64a1b3e609c1c5e8.zip
nfc wip
Diffstat (limited to 'src/routes/(app)/+layout.svelte')
-rw-r--r--src/routes/(app)/+layout.svelte18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/routes/(app)/+layout.svelte b/src/routes/(app)/+layout.svelte
index 891de9ac..a0c981c1 100644
--- a/src/routes/(app)/+layout.svelte
+++ b/src/routes/(app)/+layout.svelte
@@ -21,7 +21,7 @@
({ rate, user, subject, token, rates } = data);
};
- onMount(() => {
+ onMount(async () => {
let localStorageLocale = localStorage.getItem(localeLocalStorageKey);
if (localStorageLocale) locale.set(localStorageLocale);
@@ -30,8 +30,24 @@
});
if (browser) {
+ let log = console.log;
checkSocket();
expirePin();
+
+ try {
+ const ndef = new NDEFReader();
+ await ndef.scan();
+
+ ndef.addEventListener('readingerror', (e) => {
+ console.log('nfc error', e);
+ });
+
+ ndef.addEventListener('reading', ({ message, serialNumber }) => {
+ goto(`/${user.username}/card/${serialNumber.replace(/:/g, '-')}`);
+ });
+ } catch (error) {
+ log('Argh! ' + error);
+ }
}
});