Compare commits
7 commits
Author | SHA1 | Date | |
---|---|---|---|
|
7d10842005 | ||
|
25ab08b982 | ||
|
3f316e18e7 | ||
|
c74a9f0dee | ||
|
bbf5bff023 | ||
|
58ed576b85 | ||
|
2961b87eb2 |
10 changed files with 77 additions and 45 deletions
10
CHANGELOG.md
10
CHANGELOG.md
|
@ -12,6 +12,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
|
||||
## [0.5.0] - 2023-09-29
|
||||
|
||||
### Changed
|
||||
- If the browser uses a dark theme, the default theme is also set to dark
|
||||
- Display the navigation bar on every view, except the creation of the first account
|
||||
|
||||
### Fixed
|
||||
- The account deletion view is now emphasized the same way it was before
|
||||
|
||||
|
||||
## [0.4.0] - 2023-09-26
|
||||
|
||||
### Added
|
||||
|
|
82
package-lock.json
generated
82
package-lock.json
generated
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "sake-app",
|
||||
"version": "0.3.0",
|
||||
"version": "0.5.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "sake-app",
|
||||
"version": "0.3.0",
|
||||
"version": "0.5.0",
|
||||
"license": "(MIT OR Apache-2.0)",
|
||||
"dependencies": {
|
||||
"@noble/hashes": "^1.3.1",
|
||||
|
@ -28,9 +28,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/parser": {
|
||||
"version": "7.22.16",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.16.tgz",
|
||||
"integrity": "sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA==",
|
||||
"version": "7.23.0",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz",
|
||||
"integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==",
|
||||
"bin": {
|
||||
"parser": "bin/babel-parser.js"
|
||||
},
|
||||
|
@ -391,9 +391,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@intlify/bundle-utils": {
|
||||
"version": "7.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/bundle-utils/-/bundle-utils-7.3.0.tgz",
|
||||
"integrity": "sha512-lcnfsLA5Dyd3TbvfoLS0ejLr1vAJYyT6VRYtE4LGNexy1ZD/GEcbXrC33fI9oQp7t2hDlHbCn2o4BBVgXaJFqg==",
|
||||
"version": "7.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/bundle-utils/-/bundle-utils-7.4.0.tgz",
|
||||
"integrity": "sha512-AQfjBe2HUxzyN8ignIk3WhhSuVcSuirgzOzkd17nb337rCbI4Gv/t1R60UUyIqFoFdviLb/wLcDUzTD/xXjv9w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@intlify/message-compiler": "^9.4.0",
|
||||
|
@ -420,12 +420,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@intlify/core-base": {
|
||||
"version": "9.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.4.1.tgz",
|
||||
"integrity": "sha512-WIwx+elsZbxSMxRG5+LC+utRohFvmZMoDevfKOfnYMLbpCjCSavqTfHJAtfsY6ruowzqXeKkeLhRHbYbjoJx5g==",
|
||||
"version": "9.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.5.0.tgz",
|
||||
"integrity": "sha512-y3ufM1RJbI/DSmJf3lYs9ACq3S/iRvaSsE3rPIk0MGH7fp+JxU6rdryv/EYcwfcr3Y1aHFlCBir6S391hRZ57w==",
|
||||
"dependencies": {
|
||||
"@intlify/message-compiler": "9.4.1",
|
||||
"@intlify/shared": "9.4.1"
|
||||
"@intlify/message-compiler": "9.5.0",
|
||||
"@intlify/shared": "9.5.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 16"
|
||||
|
@ -435,11 +435,11 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@intlify/message-compiler": {
|
||||
"version": "9.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.4.1.tgz",
|
||||
"integrity": "sha512-aN2N+dUx320108QhH51Ycd2LEpZ+NKbzyQ2kjjhqMcxhHdxtOnkgdx+MDBhOy/CObwBmhC3Nygzc6hNlfKvPNw==",
|
||||
"version": "9.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.5.0.tgz",
|
||||
"integrity": "sha512-CAhVNfEZcOVFg0/5MNyt+OFjvs4J/ARjCj2b+54/FvFP0EDJI5lIqMTSDBE7k0atMROSP0SvWCkwu/AZ5xkK1g==",
|
||||
"dependencies": {
|
||||
"@intlify/shared": "9.4.1",
|
||||
"@intlify/shared": "9.5.0",
|
||||
"source-map-js": "^1.0.2"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -450,9 +450,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@intlify/shared": {
|
||||
"version": "9.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.4.1.tgz",
|
||||
"integrity": "sha512-A51elBmZWf1FS80inf/32diO9DeXoqg9GR9aUDHFcfHoNDuT46Q+fpPOdj8jiJnSHSBh8E1E+6qWRhAZXdK3Ng==",
|
||||
"version": "9.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.5.0.tgz",
|
||||
"integrity": "sha512-tAxV14LMXZDZbu32XzLMTsowNlgJNmLwWHYzvMUl6L8gvQeoYiZONjY7AUsqZW8TOZDX9lfvF6adPkk9FSRdDA==",
|
||||
"engines": {
|
||||
"node": ">= 16"
|
||||
},
|
||||
|
@ -461,12 +461,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@intlify/unplugin-vue-i18n": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/unplugin-vue-i18n/-/unplugin-vue-i18n-1.2.0.tgz",
|
||||
"integrity": "sha512-AzjlMZKj9DG10ICDR2VWjfJudHJ1XK2GNSHxw+VmOUYpUm4S0L/a7OAdvgnuY7S4plk1VnPdT4YilpZk+uQcqg==",
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@intlify/unplugin-vue-i18n/-/unplugin-vue-i18n-1.4.0.tgz",
|
||||
"integrity": "sha512-RGDchCRBlDTyVVFgPA1C1XC1uD4xYN81Ma+3EnU6GQ8pBEreraX/PWdPXXzOB6k9GWCQHuqii3atYXhcH3rpSg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@intlify/bundle-utils": "^7.3.0",
|
||||
"@intlify/bundle-utils": "^7.4.0",
|
||||
"@intlify/shared": "^9.4.0",
|
||||
"@rollup/pluginutils": "^5.0.2",
|
||||
"@vue/compiler-sfc": "^3.2.47",
|
||||
|
@ -1286,9 +1286,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/magic-string": {
|
||||
"version": "0.30.3",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.3.tgz",
|
||||
"integrity": "sha512-B7xGbll2fG/VjP+SWg4sX3JynwIU0mjoTc6MPpKNuIvftk6u6vqhDnk1R80b8C2GBR6ywqy+1DcKBrevBg+bmw==",
|
||||
"version": "0.30.4",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.4.tgz",
|
||||
"integrity": "sha512-Q/TKtsC5BPm0kGqgBIF9oXAs/xEf2vRKiIB4wCRQTJOQIByZ1d+NnUOotvJOvNpi5RNIgVOMC3pOuaP1ZTDlVg==",
|
||||
"dependencies": {
|
||||
"@jridgewell/sourcemap-codec": "^1.4.15"
|
||||
},
|
||||
|
@ -1397,9 +1397,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/postcss": {
|
||||
"version": "8.4.30",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.30.tgz",
|
||||
"integrity": "sha512-7ZEao1g4kd68l97aWG/etQKPKq07us0ieSZ2TnFDk11i0ZfDW2AwKHYU8qv4MZKqN2fdBfg+7q0ES06UA73C1g==",
|
||||
"version": "8.4.31",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
|
||||
"integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
|
@ -1478,9 +1478,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/rollup": {
|
||||
"version": "3.29.2",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.2.tgz",
|
||||
"integrity": "sha512-CJouHoZ27v6siztc21eEQGo0kIcE5D1gVPA571ez0mMYb25LGYGKnVNXpEj5MGlepmDWGXNjDB5q7uNiPHC11A==",
|
||||
"version": "3.29.4",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz",
|
||||
"integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"rollup": "dist/bin/rollup"
|
||||
|
@ -1592,9 +1592,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/ufo": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.0.tgz",
|
||||
"integrity": "sha512-bRn3CsoojyNStCZe0BG0Mt4Nr/4KF+rhFlnNXybgqt5pXHNFRlqinSoQaTrGyzE4X8aHplSb+TorH+COin9Yxw==",
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.1.tgz",
|
||||
"integrity": "sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/unplugin": {
|
||||
|
@ -1685,12 +1685,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/vue-i18n": {
|
||||
"version": "9.4.1",
|
||||
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.4.1.tgz",
|
||||
"integrity": "sha512-vnQyYE9LBuNOqPpETIcCaGnAyLEqfeIvDcyZ9T+WBCWFTqWw1J8FuF1jfeDwpHBi5JKgAwgXyq1mt8jp/x/GPA==",
|
||||
"version": "9.5.0",
|
||||
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.5.0.tgz",
|
||||
"integrity": "sha512-NiI3Ph1qMstNf7uhYh8trQBOBFLxeJgcOxBq51pCcZ28Vs18Y7BDS58r8HGDKCYgXdLUYqPDXdKatIF4bvBVZg==",
|
||||
"dependencies": {
|
||||
"@intlify/core-base": "9.4.1",
|
||||
"@intlify/shared": "9.4.1",
|
||||
"@intlify/core-base": "9.5.0",
|
||||
"@intlify/shared": "9.5.0",
|
||||
"@vue/devtools-api": "^6.5.0"
|
||||
},
|
||||
"engines": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "sake-app",
|
||||
"version": "0.4.0",
|
||||
"version": "0.5.0",
|
||||
"author": "Rodolphe Bréard <rodolphe@what.tf>",
|
||||
"license": "(MIT OR Apache-2.0)",
|
||||
"private": true,
|
||||
|
|
|
@ -27,6 +27,13 @@ update_app_version()
|
|||
jq ".version = \"${new_version}\"" "package.json" >"${tmp_file}"
|
||||
mv "${tmp_file}" "package.json"
|
||||
sed -i "s/## \[Unreleased\]/## \[${new_version}\] - ${current_date}/" "CHANGELOG.md"
|
||||
update_dependencies
|
||||
}
|
||||
|
||||
update_dependencies()
|
||||
{
|
||||
npm update
|
||||
npm outdated
|
||||
}
|
||||
|
||||
check_working_directory()
|
||||
|
@ -105,6 +112,7 @@ main()
|
|||
local new_version
|
||||
local confirm_release
|
||||
|
||||
update_dependencies
|
||||
check_working_directory
|
||||
|
||||
display_app_version
|
||||
|
|
|
@ -23,8 +23,12 @@ const setGlobalAttribute = (attrName, storageName, defaultValue, allowedValues)
|
|||
'defaultValue': defaultValue,
|
||||
};
|
||||
};
|
||||
const getDefaultColorMode = () => {
|
||||
const darkMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
|
||||
return darkMediaQuery.matches ? 'dark' : 'light';
|
||||
};
|
||||
const locale = setGlobalAttribute('lang', 'sake-locale', getDefaultLocale(), allowedLocales);
|
||||
const colorMode = setGlobalAttribute('data-bs-theme', 'sake-color-mode', 'light', allowedColorModes);
|
||||
const colorMode = setGlobalAttribute('data-bs-theme', 'sake-color-mode', getDefaultColorMode(), allowedColorModes);
|
||||
|
||||
const i18n = createI18n({
|
||||
legacy: false,
|
||||
|
|
|
@ -4,9 +4,10 @@ import { version } from '../../package.json';
|
|||
import ButtonGroupComponent from '../components/ButtonGroupComponent.vue';
|
||||
import LayoutComponent from '../components/LayoutComponent.vue';
|
||||
import ExternalLinkComponent from '../components/ExternalLinkComponent.vue';
|
||||
import NavBarComponent from '../components/NavBarComponent.vue';
|
||||
|
||||
const router = useRouter();
|
||||
const repoUrl = 'https://github.com/breard-r/sake-app';
|
||||
const repoUrl = 'https://git.what.tf/rodolphe/sake-app';
|
||||
|
||||
const toMainView = () => {
|
||||
return router.push('/');
|
||||
|
@ -14,6 +15,7 @@ const toMainView = () => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<NavBarComponent />
|
||||
<LayoutComponent>
|
||||
<h1>{{ $t("about.title") }}</h1>
|
||||
<h4>{{ $t("about.name") }}</h4>
|
||||
|
|
|
@ -8,6 +8,7 @@ import { Modal } from 'bootstrap';
|
|||
import base32Encode from 'base32-encode';
|
||||
import ButtonGroupComponent from '../components/ButtonGroupComponent.vue';
|
||||
import LayoutComponent from '../components/LayoutComponent.vue';
|
||||
import NavBarComponent from '../components/NavBarComponent.vue';
|
||||
import wasmFile from "../../node_modules/@sec-ant/zxing-wasm/dist/reader/zxing_reader.wasm?url";
|
||||
|
||||
const accounts = useStorage('sake-accounts', []);
|
||||
|
@ -175,6 +176,7 @@ const resetErrorMessage = () => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<NavBarComponent v-if="!cancellDisabled" />
|
||||
<LayoutComponent>
|
||||
<h1>{{ $t("addAccount.title") }}</h1>
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@ import { useI18n } from 'vue-i18n';
|
|||
import { useStorage } from '@vueuse/core';
|
||||
import ButtonGroupComponent from '../components/ButtonGroupComponent.vue';
|
||||
import LayoutComponent from '../components/LayoutComponent.vue';
|
||||
import NavBarComponent from '../components/NavBarComponent.vue';
|
||||
|
||||
const router = useRouter();
|
||||
const stored_locale = useStorage('sake-locale', '');
|
||||
|
@ -28,6 +29,7 @@ watch(colorMode, async (newColorMode) => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<NavBarComponent />
|
||||
<LayoutComponent>
|
||||
<h1>{{ $t("config.title") }}</h1>
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ import { useRoute, useRouter } from 'vue-router';
|
|||
import { useStorage } from '@vueuse/core';
|
||||
import ButtonGroupComponent from '../components/ButtonGroupComponent.vue';
|
||||
import LayoutComponent from '../components/LayoutComponent.vue';
|
||||
import NavBarComponent from '../components/NavBarComponent.vue';
|
||||
|
||||
const accounts = useStorage('sake-accounts', []);
|
||||
const router = useRouter();
|
||||
|
@ -19,11 +20,12 @@ const toMainView = () => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<NavBarComponent />
|
||||
<LayoutComponent>
|
||||
<h1>{{ $t("deleteAccount.title") }}</h1>
|
||||
|
||||
<p>{{ $t("deleteAccount.account") }}</p>
|
||||
<p class="has-text-weight-semibold is-size-5">{{ account.localPart }}@{{ account.domain }}</p>
|
||||
<p class="fw-semibold fs-5">{{ account.localPart }}@{{ account.domain }}</p>
|
||||
<p>{{ $t("deleteAccount.confirm") }}</p>
|
||||
|
||||
<ButtonGroupComponent>
|
||||
|
|
|
@ -5,6 +5,7 @@ import { RouterLink, useRouter } from 'vue-router';
|
|||
import { useStorage } from '@vueuse/core';
|
||||
import ButtonGroupComponent from '../components/ButtonGroupComponent.vue';
|
||||
import LayoutComponent from '../components/LayoutComponent.vue';
|
||||
import NavBarComponent from '../components/NavBarComponent.vue';
|
||||
|
||||
const router = useRouter();
|
||||
const accounts = useStorage('sake-accounts', []);
|
||||
|
@ -25,6 +26,7 @@ const toMainView = () => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<NavBarComponent />
|
||||
<LayoutComponent>
|
||||
<h1>{{ $t("manageAccounts.title") }}</h1>
|
||||
|
||||
|
|
Loading…
Reference in a new issue