From 5147908d41161c79c5c92e4e080d4f321656f2dd Mon Sep 17 00:00:00 2001
From: Leonardo Christino <leomilho@gmail.com>
Date: Tue, 23 Jan 2024 17:13:33 +0100
Subject: [PATCH] fix(url): sync saveID as a URL query param

---
 libs/shared/lib/data-access/api/url.ts | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 libs/shared/lib/data-access/api/url.ts

diff --git a/libs/shared/lib/data-access/api/url.ts b/libs/shared/lib/data-access/api/url.ts
new file mode 100644
index 000000000..0f841a7b9
--- /dev/null
+++ b/libs/shared/lib/data-access/api/url.ts
@@ -0,0 +1,24 @@
+export enum URLParams {
+  saveState = 'saveState',
+}
+
+export function getParam(param: URLParams) {
+  const query = new URLSearchParams(window.location.search);
+  return query.get(param);
+}
+
+export function setParam(param: URLParams, value: string | undefined) {
+  const query = new URLSearchParams(window.location.search);
+  if (!value) {
+    deleteParam(param);
+  } else {
+    query.set(param, value);
+    history.pushState(null, '', '?' + query.toString());
+  }
+}
+
+export function deleteParam(param: URLParams) {
+  const query = new URLSearchParams(window.location.search);
+  query.delete(param);
+  history.pushState(null, '', '?' + query.toString());
+}
-- 
GitLab