aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar vnugent <public@vaughnnugent.com>2024-01-01 12:32:14 -0500
committerLibravatar vnugent <public@vaughnnugent.com>2024-01-01 12:32:14 -0500
commit0ca26fc63cc5311298575209b124516139f58206 (patch)
treeb7062317330da4b79a31d47cfd5a39b939fbc723
parent4890ffb8f4aafed897cabc368fa105a70615a2de (diff)
package updates, pageguard & dead exports
-rw-r--r--.gitignore3
-rw-r--r--lib/vnlib.browser/package-lock.json435
-rw-r--r--lib/vnlib.browser/package.json2
-rw-r--r--lib/vnlib.browser/src/helpers/lastPage.ts25
-rw-r--r--lib/vnlib.browser/src/helpers/pageGuard.ts12
-rw-r--r--lib/vnlib.browser/src/index.ts3
6 files changed, 293 insertions, 187 deletions
diff --git a/.gitignore b/.gitignore
index 71778c0..1be9774 100644
--- a/.gitignore
+++ b/.gitignore
@@ -474,4 +474,5 @@ FodyWeavers.xsd
# End of https://www.toptal.com/developers/gitignore/api/c,c++,visualstudio
*.licenseheader
-/plugins/**/*.json \ No newline at end of file
+/plugins/**/*.json
+/lib/vnlib.browser/dist
diff --git a/lib/vnlib.browser/package-lock.json b/lib/vnlib.browser/package-lock.json
index 1c32ff7..dc87c9d 100644
--- a/lib/vnlib.browser/package-lock.json
+++ b/lib/vnlib.browser/package-lock.json
@@ -20,7 +20,7 @@
"eslint": "^8.39.0",
"jose": "^5.x",
"lodash-es": "^4.x",
- "universal-cookie": "^6.1.x",
+ "universal-cookie": "^7.0.x",
"vue": "^3.x",
"vue-router": "^4.x"
}
@@ -123,10 +123,32 @@
"url": "https://opencollective.com/eslint"
}
},
+ "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "peer": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "peer": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/@eslint/js": {
- "version": "8.55.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz",
- "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==",
+ "version": "8.56.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz",
+ "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==",
"peer": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -146,6 +168,28 @@
"node": ">=10.10.0"
}
},
+ "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "peer": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "peer": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/@humanwhocodes/module-importer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
@@ -204,9 +248,9 @@
}
},
"node_modules/@types/cookie": {
- "version": "0.5.4",
- "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.5.4.tgz",
- "integrity": "sha512-7z/eR6O859gyWIAjuvBWFzNURmf2oPBmJlfVWkwehU5nzIyjwBsTh7WMmEEV4JFnHuQ3ex4oyTvfKzcyJVDBNA==",
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz",
+ "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==",
"peer": true
},
"node_modules/@types/json-schema": {
@@ -231,9 +275,9 @@
}
},
"node_modules/@types/node": {
- "version": "20.10.4",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz",
- "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==",
+ "version": "20.10.6",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.6.tgz",
+ "integrity": "sha512-Vac8H+NlRNNlAmDfGUP7b5h/KA+AtWIzuXy0E6OyP8f1tCLYAtPvKRRDJjAPqhpCb0t6U2j7/xqAuLEebW2kiw==",
"dev": true,
"dependencies": {
"undici-types": "~5.26.4"
@@ -252,16 +296,16 @@
"peer": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.2.tgz",
- "integrity": "sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.17.0.tgz",
+ "integrity": "sha512-Vih/4xLXmY7V490dGwBQJTpIZxH4ZFH6eCVmQ4RFkB+wmaCTDAx4dtgoWwMNGKLkqRY1L6rPqzEbjorRnDo4rQ==",
"dev": true,
"dependencies": {
"@eslint-community/regexpp": "^4.5.1",
- "@typescript-eslint/scope-manager": "6.13.2",
- "@typescript-eslint/type-utils": "6.13.2",
- "@typescript-eslint/utils": "6.13.2",
- "@typescript-eslint/visitor-keys": "6.13.2",
+ "@typescript-eslint/scope-manager": "6.17.0",
+ "@typescript-eslint/type-utils": "6.17.0",
+ "@typescript-eslint/utils": "6.17.0",
+ "@typescript-eslint/visitor-keys": "6.17.0",
"debug": "^4.3.4",
"graphemer": "^1.4.0",
"ignore": "^5.2.4",
@@ -287,16 +331,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.2.tgz",
- "integrity": "sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.17.0.tgz",
+ "integrity": "sha512-C4bBaX2orvhK+LlwrY8oWGmSl4WolCfYm513gEccdWZj0CwGadbIADb0FtVEcI+WzUyjyoBj2JRP8g25E6IB8A==",
"dev": true,
"peer": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "6.13.2",
- "@typescript-eslint/types": "6.13.2",
- "@typescript-eslint/typescript-estree": "6.13.2",
- "@typescript-eslint/visitor-keys": "6.13.2",
+ "@typescript-eslint/scope-manager": "6.17.0",
+ "@typescript-eslint/types": "6.17.0",
+ "@typescript-eslint/typescript-estree": "6.17.0",
+ "@typescript-eslint/visitor-keys": "6.17.0",
"debug": "^4.3.4"
},
"engines": {
@@ -316,13 +360,13 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.2.tgz",
- "integrity": "sha512-CXQA0xo7z6x13FeDYCgBkjWzNqzBn8RXaE3QVQVIUm74fWJLkJkaHmHdKStrxQllGh6Q4eUGyNpMe0b1hMkXFA==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.17.0.tgz",
+ "integrity": "sha512-RX7a8lwgOi7am0k17NUO0+ZmMOX4PpjLtLRgLmT1d3lBYdWH4ssBUbwdmc5pdRX8rXon8v9x8vaoOSpkHfcXGA==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.13.2",
- "@typescript-eslint/visitor-keys": "6.13.2"
+ "@typescript-eslint/types": "6.17.0",
+ "@typescript-eslint/visitor-keys": "6.17.0"
},
"engines": {
"node": "^16.0.0 || >=18.0.0"
@@ -333,13 +377,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.2.tgz",
- "integrity": "sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.17.0.tgz",
+ "integrity": "sha512-hDXcWmnbtn4P2B37ka3nil3yi3VCQO2QEB9gBiHJmQp5wmyQWqnjA85+ZcE8c4FqnaB6lBwMrPkgd4aBYz3iNg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "6.13.2",
- "@typescript-eslint/utils": "6.13.2",
+ "@typescript-eslint/typescript-estree": "6.17.0",
+ "@typescript-eslint/utils": "6.17.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.0.1"
},
@@ -360,9 +404,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.2.tgz",
- "integrity": "sha512-7sxbQ+EMRubQc3wTfTsycgYpSujyVbI1xw+3UMRUcrhSy+pN09y/lWzeKDbvhoqcRbHdc+APLs/PWYi/cisLPg==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.17.0.tgz",
+ "integrity": "sha512-qRKs9tvc3a4RBcL/9PXtKSehI/q8wuU9xYJxe97WFxnzH8NWWtcW3ffNS+EWg8uPvIerhjsEZ+rHtDqOCiH57A==",
"dev": true,
"engines": {
"node": "^16.0.0 || >=18.0.0"
@@ -373,16 +417,17 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.2.tgz",
- "integrity": "sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.17.0.tgz",
+ "integrity": "sha512-gVQe+SLdNPfjlJn5VNGhlOhrXz4cajwFd5kAgWtZ9dCZf4XJf8xmgCTLIqec7aha3JwgLI2CK6GY1043FRxZwg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.13.2",
- "@typescript-eslint/visitor-keys": "6.13.2",
+ "@typescript-eslint/types": "6.17.0",
+ "@typescript-eslint/visitor-keys": "6.17.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
+ "minimatch": "9.0.3",
"semver": "^7.5.4",
"ts-api-utils": "^1.0.1"
},
@@ -400,17 +445,17 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.2.tgz",
- "integrity": "sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.17.0.tgz",
+ "integrity": "sha512-LofsSPjN/ITNkzV47hxas2JCsNCEnGhVvocfyOcLzT9c/tSZE7SfhS/iWtzP1lKNOEfLhRTZz6xqI8N2RzweSQ==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
"@types/json-schema": "^7.0.12",
"@types/semver": "^7.5.0",
- "@typescript-eslint/scope-manager": "6.13.2",
- "@typescript-eslint/types": "6.13.2",
- "@typescript-eslint/typescript-estree": "6.13.2",
+ "@typescript-eslint/scope-manager": "6.17.0",
+ "@typescript-eslint/types": "6.17.0",
+ "@typescript-eslint/typescript-estree": "6.17.0",
"semver": "^7.5.4"
},
"engines": {
@@ -425,12 +470,12 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "6.13.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.2.tgz",
- "integrity": "sha512-OGznFs0eAQXJsp+xSd6k/O1UbFi/K/L7WjqeRoFE7vadjAF9y0uppXhYNQNEqygjou782maGClOoZwPqF0Drlw==",
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.17.0.tgz",
+ "integrity": "sha512-H6VwB/k3IuIeQOyYczyyKN8wH6ed8EwliaYHLxOIhyF0dYEIsN8+Bk3GE19qafeMKyZJJHP8+O1HiFhFLUNKSg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.13.2",
+ "@typescript-eslint/types": "6.17.0",
"eslint-visitor-keys": "^3.4.1"
},
"engines": {
@@ -448,39 +493,39 @@
"peer": true
},
"node_modules/@vue/compiler-core": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.11.tgz",
- "integrity": "sha512-h97/TGWBilnLuRaj58sxNrsUU66fwdRKLOLQ9N/5iNDfp+DZhYH9Obhe0bXxhedl8fjAgpRANpiZfbgWyruQ0w==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.3.tgz",
+ "integrity": "sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==",
"peer": true,
"dependencies": {
- "@babel/parser": "^7.23.5",
- "@vue/shared": "3.3.11",
+ "@babel/parser": "^7.23.6",
+ "@vue/shared": "3.4.3",
+ "entities": "^4.5.0",
"estree-walker": "^2.0.2",
"source-map-js": "^1.0.2"
}
},
"node_modules/@vue/compiler-dom": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.11.tgz",
- "integrity": "sha512-zoAiUIqSKqAJ81WhfPXYmFGwDRuO+loqLxvXmfUdR5fOitPoUiIeFI9cTTyv9MU5O1+ZZglJVTusWzy+wfk5hw==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.3.tgz",
+ "integrity": "sha512-oGF1E9/htI6JWj/lTJgr6UgxNCtNHbM6xKVreBWeZL9QhRGABRVoWGAzxmtBfSOd+w0Zi5BY0Es/tlJrN6WgEg==",
"peer": true,
"dependencies": {
- "@vue/compiler-core": "3.3.11",
- "@vue/shared": "3.3.11"
+ "@vue/compiler-core": "3.4.3",
+ "@vue/shared": "3.4.3"
}
},
"node_modules/@vue/compiler-sfc": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.11.tgz",
- "integrity": "sha512-U4iqPlHO0KQeK1mrsxCN0vZzw43/lL8POxgpzcJweopmqtoYy9nljJzWDIQS3EfjiYhfdtdk9Gtgz7MRXnz3GA==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.3.tgz",
+ "integrity": "sha512-NuJqb5is9I4uzv316VRUDYgIlPZCG8D+ARt5P4t5UDShIHKL25J3TGZAUryY/Aiy0DsY7srJnZL5ryB6DD63Zw==",
"peer": true,
"dependencies": {
- "@babel/parser": "^7.23.5",
- "@vue/compiler-core": "3.3.11",
- "@vue/compiler-dom": "3.3.11",
- "@vue/compiler-ssr": "3.3.11",
- "@vue/reactivity-transform": "3.3.11",
- "@vue/shared": "3.3.11",
+ "@babel/parser": "^7.23.6",
+ "@vue/compiler-core": "3.4.3",
+ "@vue/compiler-dom": "3.4.3",
+ "@vue/compiler-ssr": "3.4.3",
+ "@vue/shared": "3.4.3",
"estree-walker": "^2.0.2",
"magic-string": "^0.30.5",
"postcss": "^8.4.32",
@@ -488,13 +533,13 @@
}
},
"node_modules/@vue/compiler-ssr": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.11.tgz",
- "integrity": "sha512-Zd66ZwMvndxRTgVPdo+muV4Rv9n9DwQ4SSgWWKWkPFebHQfVYRrVjeygmmDmPewsHyznCNvJ2P2d6iOOhdv8Qg==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.3.tgz",
+ "integrity": "sha512-wnYQtMBkeFSxgSSQbYGQeXPhQacQiog2c6AlvMldQH6DB+gSXK/0F6DVXAJfEiuBSgBhUc8dwrrG5JQcqwalsA==",
"peer": true,
"dependencies": {
- "@vue/compiler-dom": "3.3.11",
- "@vue/shared": "3.3.11"
+ "@vue/compiler-dom": "3.4.3",
+ "@vue/shared": "3.4.3"
}
},
"node_modules/@vue/devtools-api": {
@@ -504,76 +549,63 @@
"peer": true
},
"node_modules/@vue/reactivity": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.11.tgz",
- "integrity": "sha512-D5tcw091f0nuu+hXq5XANofD0OXnBmaRqMYl5B3fCR+mX+cXJIGNw/VNawBqkjLNWETrFW0i+xH9NvDbTPVh7g==",
- "peer": true,
- "dependencies": {
- "@vue/shared": "3.3.11"
- }
- },
- "node_modules/@vue/reactivity-transform": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.11.tgz",
- "integrity": "sha512-fPGjH0wqJo68A0wQ1k158utDq/cRyZNlFoxGwNScE28aUFOKFEnCBsvyD8jHn+0kd0UKVpuGuaZEQ6r9FJRqCg==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.3.tgz",
+ "integrity": "sha512-q5f9HLDU+5aBKizXHAx0w4whkIANs1Muiq9R5YXm0HtorSlflqv9u/ohaMxuuhHWCji4xqpQ1eL04WvmAmGnFg==",
"peer": true,
"dependencies": {
- "@babel/parser": "^7.23.5",
- "@vue/compiler-core": "3.3.11",
- "@vue/shared": "3.3.11",
- "estree-walker": "^2.0.2",
- "magic-string": "^0.30.5"
+ "@vue/shared": "3.4.3"
}
},
"node_modules/@vue/runtime-core": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.11.tgz",
- "integrity": "sha512-g9ztHGwEbS5RyWaOpXuyIVFTschclnwhqEbdy5AwGhYOgc7m/q3NFwr50MirZwTTzX55JY8pSkeib9BX04NIpw==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.3.tgz",
+ "integrity": "sha512-C1r6QhB1qY7D591RCSFhMULyzL9CuyrGc+3PpB0h7dU4Qqw6GNyo4BNFjHZVvsWncrUlKX3DIKg0Y7rNNr06NQ==",
"peer": true,
"dependencies": {
- "@vue/reactivity": "3.3.11",
- "@vue/shared": "3.3.11"
+ "@vue/reactivity": "3.4.3",
+ "@vue/shared": "3.4.3"
}
},
"node_modules/@vue/runtime-dom": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.11.tgz",
- "integrity": "sha512-OlhtV1PVpbgk+I2zl+Y5rQtDNcCDs12rsRg71XwaA2/Rbllw6mBLMi57VOn8G0AjOJ4Mdb4k56V37+g8ukShpQ==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.3.tgz",
+ "integrity": "sha512-wrsprg7An5Ec+EhPngWdPuzkp0BEUxAKaQtN9dPU/iZctPyD9aaXmVtehPJerdQxQale6gEnhpnfywNw3zOv2A==",
"peer": true,
"dependencies": {
- "@vue/runtime-core": "3.3.11",
- "@vue/shared": "3.3.11",
- "csstype": "^3.1.2"
+ "@vue/runtime-core": "3.4.3",
+ "@vue/shared": "3.4.3",
+ "csstype": "^3.1.3"
}
},
"node_modules/@vue/server-renderer": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.11.tgz",
- "integrity": "sha512-AIWk0VwwxCAm4wqtJyxBylRTXSy1wCLOKbWxHaHiu14wjsNYtiRCSgVuqEPVuDpErOlRdNnuRgipQfXRLjLN5A==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.3.tgz",
+ "integrity": "sha512-BUxt8oVGMKKsqSkM1uU3d3Houyfy4WAc2SpSQRebNd+XJGATVkW/rO129jkyL+kpB/2VRKzE63zwf5RtJ3XuZw==",
"peer": true,
"dependencies": {
- "@vue/compiler-ssr": "3.3.11",
- "@vue/shared": "3.3.11"
+ "@vue/compiler-ssr": "3.4.3",
+ "@vue/shared": "3.4.3"
},
"peerDependencies": {
- "vue": "3.3.11"
+ "vue": "3.4.3"
}
},
"node_modules/@vue/shared": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.11.tgz",
- "integrity": "sha512-u2G8ZQ9IhMWTMXaWqZycnK4UthG1fA238CD+DP4Dm4WJi5hdUKKLg0RMRaRpDPNMdkTwIDkp7WtD0Rd9BH9fLw==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.3.tgz",
+ "integrity": "sha512-rIwlkkP1n4uKrRzivAKPZIEkHiuwY5mmhMJ2nZKCBLz8lTUlE73rQh4n1OnnMurXt1vcUNyH4ZPfdh8QweTjpQ==",
"peer": true
},
"node_modules/@vueuse/core": {
- "version": "10.7.0",
- "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.7.0.tgz",
- "integrity": "sha512-4EUDESCHtwu44ZWK3Gc/hZUVhVo/ysvdtwocB5vcauSV4B7NiGY5972WnsojB3vRNdxvAt7kzJWE2h9h7C9d5w==",
+ "version": "10.7.1",
+ "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.7.1.tgz",
+ "integrity": "sha512-74mWHlaesJSWGp1ihg76vAnfVq9NTv1YT0SYhAQ6zwFNdBkkP+CKKJmVOEHcdSnLXCXYiL5e7MaewblfiYLP7g==",
"peer": true,
"dependencies": {
"@types/web-bluetooth": "^0.0.20",
- "@vueuse/metadata": "10.7.0",
- "@vueuse/shared": "10.7.0",
+ "@vueuse/metadata": "10.7.1",
+ "@vueuse/shared": "10.7.1",
"vue-demi": ">=0.14.6"
},
"funding": {
@@ -607,18 +639,18 @@
}
},
"node_modules/@vueuse/metadata": {
- "version": "10.7.0",
- "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.7.0.tgz",
- "integrity": "sha512-GlaH7tKP2iBCZ3bHNZ6b0cl9g0CJK8lttkBNUX156gWvNYhTKEtbweWLm9rxCPIiwzYcr/5xML6T8ZUEt+DkvA==",
+ "version": "10.7.1",
+ "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.7.1.tgz",
+ "integrity": "sha512-jX8MbX5UX067DYVsbtrmKn6eG6KMcXxLRLlurGkZku5ZYT3vxgBjui2zajvUZ18QLIjrgBkFRsu7CqTAg18QFw==",
"peer": true,
"funding": {
"url": "https://github.com/sponsors/antfu"
}
},
"node_modules/@vueuse/shared": {
- "version": "10.7.0",
- "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.7.0.tgz",
- "integrity": "sha512-kc00uV6CiaTdc3i1CDC4a3lBxzaBE9AgYNtFN87B5OOscqeWElj/uza8qVDmk7/U8JbqoONLbtqiLJ5LGRuqlw==",
+ "version": "10.7.1",
+ "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.7.1.tgz",
+ "integrity": "sha512-v0jbRR31LSgRY/C5i5X279A/WQjD6/JsMzGa+eqt658oJ75IvQXAeONmwvEMrvJQKnRElq/frzBR7fhmWY5uLw==",
"peer": true,
"dependencies": {
"vue-demi": ">=0.14.6"
@@ -654,9 +686,9 @@
}
},
"node_modules/acorn": {
- "version": "8.11.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz",
- "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==",
+ "version": "8.11.3",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
+ "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==",
"peer": true,
"bin": {
"acorn": "bin/acorn"
@@ -736,9 +768,9 @@
"peer": true
},
"node_modules/axios": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.2.tgz",
- "integrity": "sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==",
+ "version": "1.6.3",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.3.tgz",
+ "integrity": "sha512-fWyNdeawGam70jXSVlKl+SUNVcL6j6W79CuSIPfi6HnDUmSCH6gyUys/HrqHeA/wU0Az41rRgean494d0Jb+ww==",
"peer": true,
"dependencies": {
"follow-redirects": "^1.15.0",
@@ -749,17 +781,15 @@
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "peer": true
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
"node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "peer": true,
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "balanced-match": "^1.0.0"
}
},
"node_modules/braces": {
@@ -836,9 +866,9 @@
"peer": true
},
"node_modules/cookie": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
- "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
+ "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
"peer": true,
"engines": {
"node": ">= 0.6"
@@ -919,6 +949,18 @@
"node": ">=6.0.0"
}
},
+ "node_modules/entities": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
+ "peer": true,
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
"node_modules/escape-string-regexp": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
@@ -932,15 +974,15 @@
}
},
"node_modules/eslint": {
- "version": "8.55.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz",
- "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==",
+ "version": "8.56.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz",
+ "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==",
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1",
"@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.55.0",
+ "@eslint/js": "8.56.0",
"@humanwhocodes/config-array": "^0.11.13",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -1013,6 +1055,28 @@
"url": "https://opencollective.com/eslint"
}
},
+ "node_modules/eslint/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "peer": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/eslint/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "peer": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/espree": {
"version": "9.6.1",
"resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
@@ -1125,9 +1189,9 @@
"peer": true
},
"node_modules/fastq": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz",
+ "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==",
"dependencies": {
"reusify": "^1.0.4"
}
@@ -1193,9 +1257,9 @@
"peer": true
},
"node_modules/follow-redirects": {
- "version": "1.15.3",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz",
- "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==",
+ "version": "1.15.4",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz",
+ "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==",
"funding": [
{
"type": "individual",
@@ -1264,6 +1328,28 @@
"node": ">=10.13.0"
}
},
+ "node_modules/glob/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "peer": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/glob/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "peer": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/globals": {
"version": "13.24.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
@@ -1406,9 +1492,9 @@
"peer": true
},
"node_modules/jose": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/jose/-/jose-5.1.3.tgz",
- "integrity": "sha512-GPExOkcMsCLBTi1YetY2LmkoY559fss0+0KVa6kOfb2YFe84nAM7Nm/XzuZozah4iHgmBGrCOHL5/cy670SBRw==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-5.2.0.tgz",
+ "integrity": "sha512-oW3PCnvyrcm1HMvGTzqjxxfnEs9EoFOFWi2HsEGhlFVOXxTE3K9GKWVMFoFw06yPUqwpvEWic1BmtUZBI/tIjw==",
"peer": true,
"funding": {
"url": "https://github.com/sponsors/panva"
@@ -1561,15 +1647,18 @@
}
},
"node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "peer": true,
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "brace-expansion": "^2.0.1"
},
"engines": {
- "node": "*"
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/ms": {
@@ -2022,13 +2111,13 @@
"dev": true
},
"node_modules/universal-cookie": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-6.1.1.tgz",
- "integrity": "sha512-33S9x3CpdUnnjwTNs2Fgc41WGve2tdLtvaK2kPSbZRc5pGpz2vQFbRWMxlATsxNNe/Cy8SzmnmbuBM85jpZPtA==",
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/universal-cookie/-/universal-cookie-7.0.0.tgz",
+ "integrity": "sha512-T3XwZ2cUbHRU+UNfPSaPd0zti50tVIvk6onLA90pa+qKwsP8ksn5pwYM7rWMODoX1OCA9qPAN8uK88Avq5YbtQ==",
"peer": true,
"dependencies": {
- "@types/cookie": "^0.5.1",
- "cookie": "^0.5.0"
+ "@types/cookie": "^0.6.0",
+ "cookie": "^0.6.0"
}
},
"node_modules/uri-js": {
@@ -2041,16 +2130,16 @@
}
},
"node_modules/vue": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.11.tgz",
- "integrity": "sha512-d4oBctG92CRO1cQfVBZp6WJAs0n8AK4Xf5fNjQCBeKCvMI1efGQ5E3Alt1slFJS9fZuPcFoiAiqFvQlv1X7t/w==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.3.tgz",
+ "integrity": "sha512-GjN+culMAGv/mUbkIv8zMKItno8npcj5gWlXkSxf1SPTQf8eJ4A+YfHIvQFyL1IfuJcMl3soA7SmN1fRxbf/wA==",
"peer": true,
"dependencies": {
- "@vue/compiler-dom": "3.3.11",
- "@vue/compiler-sfc": "3.3.11",
- "@vue/runtime-dom": "3.3.11",
- "@vue/server-renderer": "3.3.11",
- "@vue/shared": "3.3.11"
+ "@vue/compiler-dom": "3.4.3",
+ "@vue/compiler-sfc": "3.4.3",
+ "@vue/runtime-dom": "3.4.3",
+ "@vue/server-renderer": "3.4.3",
+ "@vue/shared": "3.4.3"
},
"peerDependencies": {
"typescript": "*"
diff --git a/lib/vnlib.browser/package.json b/lib/vnlib.browser/package.json
index 3b43594..d4b2864 100644
--- a/lib/vnlib.browser/package.json
+++ b/lib/vnlib.browser/package.json
@@ -31,7 +31,7 @@
"axios": "^1.x",
"eslint": "^8.39.0",
"jose": "^5.x",
- "universal-cookie": "^6.1.x"
+ "universal-cookie": "^7.0.x"
},
"eslintConfig": {
diff --git a/lib/vnlib.browser/src/helpers/lastPage.ts b/lib/vnlib.browser/src/helpers/lastPage.ts
index 8be2116..b3c7103 100644
--- a/lib/vnlib.browser/src/helpers/lastPage.ts
+++ b/lib/vnlib.browser/src/helpers/lastPage.ts
@@ -1,4 +1,4 @@
-// Copyright (c) 2023 Vaughn Nugent
+// Copyright (c) 2024 Vaughn Nugent
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of
// this software and associated documentation files (the "Software"), to deal in
@@ -50,6 +50,19 @@ export interface ILastPageStorage {
pop(): string | null;
}
+/**
+ * Represents a router-like object that can be used
+ * to navigate to a desired route
+ */
+export interface RouterLike{
+ currentRoute: {
+ value: {
+ fullPath: string;
+ }
+ }
+ push(route: object | string): void;
+}
+
const storageKey = "lastPage";
//Storage impl
@@ -79,29 +92,29 @@ const defaultStack = (): ILastPageStorage => {
* last page after login.
* @returns { gotoLastPage: Function }
*/
-export const useLastPage = (storage?: ILastPageStorage): ILastPage => {
+export const useLastPage = (storage?: ILastPageStorage, router?: RouterLike): ILastPage => {
//fallback to default storage
const _storage = defaultTo(storage, defaultStack());
//Get the current router instance
- const router = useRouter();
+ const _router = defaultTo(router, useRouter());
//Store the current page to the last page stack
- const push = () => _storage.push(router.currentRoute.value.fullPath);
+ const push = () => _storage.push(_router.currentRoute.value.fullPath);
const pushAndNavigate = (route: object) => {
//Store the current page to the last page stack
push();
//Navigate to the desired route
- router.push(route);
+ _router.push(route);
};
const gotoLastPage = () => {
//Get the last stored page and navigate to it
const lp = _storage.pop();
if (lp) {
- router.push(lp);
+ _router.push(lp);
}
};
diff --git a/lib/vnlib.browser/src/helpers/pageGuard.ts b/lib/vnlib.browser/src/helpers/pageGuard.ts
index c3a767b..e6a92c6 100644
--- a/lib/vnlib.browser/src/helpers/pageGuard.ts
+++ b/lib/vnlib.browser/src/helpers/pageGuard.ts
@@ -1,4 +1,4 @@
-// Copyright (c) 2023 Vaughn Nugent
+// Copyright (c) 2024 Vaughn Nugent
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of
// this software and associated documentation files (the "Software"), to deal in
@@ -20,8 +20,12 @@
import { watch } from 'vue'
import { useSession } from "../session";
import { useLastPage } from './lastPage';
-import type { ILastPageStorage } from "./lastPage";
+import type { ILastPageStorage, RouterLike } from "./lastPage";
+export interface PageGuardOptions {
+ readonly stack: ILastPageStorage;
+ readonly router: RouterLike;
+}
/**
* When called, configures the component to
@@ -30,12 +34,12 @@ import type { ILastPageStorage } from "./lastPage";
* @remarks Once called, if the user is logged-in changes will be
* watch to redirect if the user becomes logged out.
*/
-export const usePageGuard = (loginRoute = { name: 'Login' }, lpStorage?: ILastPageStorage): void => {
+export const usePageGuard = (loginRoute = { name: 'Login' }, options?: Partial<PageGuardOptions>): void => {
//Get the session state
const session = useSession();
//Get last page controller, fall back to default session storage stack
- const { pushAndNavigate } = useLastPage(lpStorage)
+ const { pushAndNavigate } = useLastPage(options?.stack, options?.router)
// Initial check for logged in to guard the page
if (!session.loggedIn.value) {
diff --git a/lib/vnlib.browser/src/index.ts b/lib/vnlib.browser/src/index.ts
index e2ba952..0072092 100644
--- a/lib/vnlib.browser/src/index.ts
+++ b/lib/vnlib.browser/src/index.ts
@@ -1,4 +1,4 @@
-// Copyright (c) 2023 Vaughn Nugent
+// Copyright (c) 2024 Vaughn Nugent
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of
// this software and associated documentation files (the "Software"), to deal in
@@ -49,7 +49,6 @@ export * from './toast'
//Export helpers
export * from './helpers/apiCall'
export * from './helpers/autoHeartbeat'
-export * from './helpers/autoScroll'
export * from './helpers/confirm'
export * from './helpers/envSize'
export * from './helpers/lastPage'