diff --git a/lib/publicShare.ts b/lib/publicShare.ts index 4e8098f..1690a77 100644 --- a/lib/publicShare.ts +++ b/lib/publicShare.ts @@ -5,6 +5,11 @@ * @module public */ import { loadState } from '@nextcloud/initial-state' +import { getBuilder } from '@nextcloud/browser-storage' + +const localStorage = getBuilder('shared') + .persist() + .build() /** * Check if the current page is on a public share @@ -30,3 +35,18 @@ export function getSharingToken(): string | null { null ) } + +/** + * Get the guest nickname for public shares + */ +export function getGuestNickname(): string | null { + return localStorage.getItem('guestNickname') +} + +/** + * Set the guest nickname for public shares + * @param nickname The nickname to set + */ +export function setGuestNickname(nickname: string): void { + localStorage.setItem('guestNickname', nickname) +} diff --git a/package-lock.json b/package-lock.json index a3aafb7..f46634d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.2.2", "license": "GPL-3.0-or-later", "dependencies": { + "@nextcloud/browser-storage": "^0.4.0", "@nextcloud/initial-state": "^2.2.0" }, "devDependencies": { @@ -717,6 +718,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/@nextcloud/browser-storage": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.4.0.tgz", + "integrity": "sha512-D6XxznxCYmJ3oBCC3p0JB6GZJ2RZ9dgbB1UqtTePXrIvHUMBAeF/YkiGKYxLAVZCZb+NSNZXgAYHm/3LnIUbDg==", + "dependencies": { + "core-js": "3.37.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, "node_modules/@nextcloud/browserslist-config": { "version": "3.0.1", "dev": true, @@ -2502,6 +2515,16 @@ "dev": true, "peer": true }, + "node_modules/core-js": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, "node_modules/core-js-compat": { "version": "3.37.1", "dev": true, diff --git a/package.json b/package.json index 3ab7d0a..d7fdbf8 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ ] }, "dependencies": { + "@nextcloud/browser-storage": "^0.4.0", "@nextcloud/initial-state": "^2.2.0" }, "devDependencies": {