From 8e2ec951a9ccb3be232ecb3e111db3d2c9acd153 Mon Sep 17 00:00:00 2001 From: jere-mie Date: Fri, 8 Nov 2024 22:40:08 -0500 Subject: [PATCH] add currency converter for trip --- currency/icon.png | Bin 0 -> 5331 bytes currency/index.html | 97 +++++++++++++++++++++++++++++++++++++ currency/manifest.json | 21 ++++++++ currency/service-worker.js | 65 +++++++++++++++++++++++++ index.html | 1 + 5 files changed, 184 insertions(+) create mode 100644 currency/icon.png create mode 100644 currency/index.html create mode 100644 currency/manifest.json create mode 100644 currency/service-worker.js diff --git a/currency/icon.png b/currency/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..879d5ab9f27a0cb1f5ded10adcef1553a1481276 GIT binary patch literal 5331 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 + + + + + Currency Converter + + + + + + + + + + + +

Currency Converter

+
+
+ + +
+
+ + +
+
+ + +
+
+ + + + diff --git a/currency/manifest.json b/currency/manifest.json new file mode 100644 index 0000000..d5bbf9c --- /dev/null +++ b/currency/manifest.json @@ -0,0 +1,21 @@ +{ + "name": "Currency Converter", + "short_name": "Currency Converter", + "start_url": "/currency/index.html", + "display": "standalone", + "background_color": "#ffffff", + "theme_color": "#000000", + "icons": [ + { + "src": "/currency/icon.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/currency/icon.png", + "sizes": "512x512", + "type": "image/png" + } + ] + } + \ No newline at end of file diff --git a/currency/service-worker.js b/currency/service-worker.js new file mode 100644 index 0000000..b60372f --- /dev/null +++ b/currency/service-worker.js @@ -0,0 +1,65 @@ +const CACHE_NAME = 'currency-converter-cache-v1'; +const urlsToCache = [ + '/currency/', + '/currency/index.html', + '/currency/manifest.json', + '/currency/icon.png', + // Add other resources you want to cache +]; + +// Install the service worker and cache the necessary resources +self.addEventListener('install', event => { + event.waitUntil( + caches.open(CACHE_NAME) + .then(cache => { + console.log('Opened cache'); + return cache.addAll(urlsToCache); + }) + ); +}); + +// Fetch resources and use the cache if the network is not available +self.addEventListener('fetch', event => { + event.respondWith( + caches.match(event.request) + .then(response => { + // Cache hit - return the response from the cache + if (response) { + return response; + } + // Clone the request, fetch it, cache it, and return the response + const fetchRequest = event.request.clone(); + return fetch(fetchRequest).then( + response => { + // Check if we received a valid response + if (!response || response.status !== 200 || response.type !== 'basic') { + return response; + } + // Clone the response, cache it, and return it + const responseToCache = response.clone(); + caches.open(CACHE_NAME) + .then(cache => { + cache.put(event.request, responseToCache); + }); + return response; + } + ); + }) + ); +}); + +// Update the service worker +self.addEventListener('activate', event => { + const cacheWhitelist = [CACHE_NAME]; + event.waitUntil( + caches.keys().then(cacheNames => { + return Promise.all( + cacheNames.map(cacheName => { + if (cacheWhitelist.indexOf(cacheName) === -1) { + return caches.delete(cacheName); + } + }) + ); + }) + ); +}); diff --git a/index.html b/index.html index 5c97242..f39cde3 100644 --- a/index.html +++ b/index.html @@ -32,6 +32,7 @@

Current Projects List

  • Web Terminal Simulator
  • Accent Remover
  • Common Files (CSS libraries and templates)
  • +
  • Currency Converter