chore: release v0.26.3
This commit is contained in:
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [0.26.3] - 2026-04-27
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Birthdays: "Discard changes?" dialog appeared immediately after successfully saving a birthday because `closeModal()` was called without `force: true`, triggering the dirty-form check on a programmatic close
|
||||||
|
- Dashboard (PWA): widget items (tasks, events, meals, notes, birthdays, shopping lists) occasionally blocked vertical swipe-to-scroll; added `touch-action: pan-y` so the browser passes vertical pan gestures through to the scroll container
|
||||||
|
|
||||||
## [0.26.2] - 2026-04-27
|
## [0.26.2] - 2026-04-27
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "oikos",
|
"name": "oikos",
|
||||||
"version": "0.26.2",
|
"version": "0.26.3",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "oikos",
|
"name": "oikos",
|
||||||
"version": "0.26.2",
|
"version": "0.26.3",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"bcrypt": "^6.0.0",
|
"bcrypt": "^6.0.0",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "oikos",
|
"name": "oikos",
|
||||||
"version": "0.26.2",
|
"version": "0.26.3",
|
||||||
"description": "Self-hosted family planner - calendar, tasks, shopping, meal planning, budget and more. Private, open-source, no subscription.",
|
"description": "Self-hosted family planner - calendar, tasks, shopping, meal planning, budget and more. Private, open-source, no subscription.",
|
||||||
"main": "server/index.js",
|
"main": "server/index.js",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
|||||||
@@ -366,7 +366,7 @@ function openBirthdayModal({ mode, birthday = null }) {
|
|||||||
renderUpcoming();
|
renderUpcoming();
|
||||||
renderSuggestions();
|
renderSuggestions();
|
||||||
renderList();
|
renderList();
|
||||||
closeModal();
|
closeModal({ force: true });
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
window.oikos?.showToast(err.message, 'danger');
|
window.oikos?.showToast(err.message, 'danger');
|
||||||
saveBtn.disabled = false;
|
saveBtn.disabled = false;
|
||||||
|
|||||||
@@ -427,6 +427,7 @@
|
|||||||
padding: var(--space-2) 0;
|
padding: var(--space-2) 0;
|
||||||
border-bottom: 1px solid var(--color-border-subtle);
|
border-bottom: 1px solid var(--color-border-subtle);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
transition: opacity var(--transition-fast);
|
transition: opacity var(--transition-fast);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -507,6 +508,7 @@
|
|||||||
padding: var(--space-2) 0;
|
padding: var(--space-2) 0;
|
||||||
border-bottom: 1px solid var(--color-border-subtle);
|
border-bottom: 1px solid var(--color-border-subtle);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
transition: opacity var(--transition-fast);
|
transition: opacity var(--transition-fast);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -594,6 +596,7 @@
|
|||||||
padding: var(--space-2) var(--space-1);
|
padding: var(--space-2) var(--space-1);
|
||||||
background-color: var(--color-surface);
|
background-color: var(--color-surface);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
transition: background-color var(--transition-fast);
|
transition: background-color var(--transition-fast);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
min-height: 72px;
|
min-height: 72px;
|
||||||
@@ -683,6 +686,7 @@
|
|||||||
* -------------------------------------------------------- */
|
* -------------------------------------------------------- */
|
||||||
.shopping-widget-list {
|
.shopping-widget-list {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
transition: background-color var(--transition-fast);
|
transition: background-color var(--transition-fast);
|
||||||
border-radius: var(--radius-sm);
|
border-radius: var(--radius-sm);
|
||||||
padding: var(--space-2) 0;
|
padding: var(--space-2) 0;
|
||||||
@@ -794,6 +798,7 @@
|
|||||||
border-radius: var(--radius-sm);
|
border-radius: var(--radius-sm);
|
||||||
padding: var(--space-3);
|
padding: var(--space-3);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
transition: opacity var(--transition-fast), transform var(--transition-fast);
|
transition: opacity var(--transition-fast), transform var(--transition-fast);
|
||||||
border-left: 3px solid var(--note-color, var(--color-accent));
|
border-left: 3px solid var(--note-color, var(--color-accent));
|
||||||
background-color: color-mix(in srgb, var(--note-color, var(--color-accent)) 6%, var(--color-surface-2));
|
background-color: color-mix(in srgb, var(--note-color, var(--color-accent)) 6%, var(--color-surface-2));
|
||||||
@@ -2262,6 +2267,7 @@
|
|||||||
border: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
|
border: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
|
||||||
background: var(--color-surface-2);
|
background: var(--color-surface-2);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
touch-action: pan-y;
|
||||||
}
|
}
|
||||||
|
|
||||||
.birthday-widget-item + .birthday-widget-item {
|
.birthday-widget-item + .birthday-widget-item {
|
||||||
|
|||||||
Reference in New Issue
Block a user