diff --git a/android/app/build.gradle b/android/app/build.gradle
index 347ae66..ea2da41 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -7,8 +7,8 @@ android {
applicationId "com.donetick.app"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
- versionCode 13
- versionName "1.0.4"
+ versionCode 22
+ versionName "0.4.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
diff --git a/ios/App/App.xcodeproj/project.pbxproj b/ios/App/App.xcodeproj/project.pbxproj
index 35da000..9a5aeb1 100644
--- a/ios/App/App.xcodeproj/project.pbxproj
+++ b/ios/App/App.xcodeproj/project.pbxproj
@@ -355,12 +355,12 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = App/App.entitlements;
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 13;
+ CURRENT_PROJECT_VERSION = 22;
DEVELOPMENT_TEAM = 6UJJ78R3BS;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
- MARKETING_VERSION = 1.0.4;
+ MARKETING_VERSION = 0.4.0;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
@@ -374,12 +374,12 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = App/App.entitlements;
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 13;
+ CURRENT_PROJECT_VERSION = 22;
DEVELOPMENT_TEAM = 6UJJ78R3BS;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
- MARKETING_VERSION = 1.0.4;
+ MARKETING_VERSION = 0.4.0;
PRODUCT_BUNDLE_IDENTIFIER = com.donetick.app;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
diff --git a/package.json b/package.json
index 2b8e621..3f0a067 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "donetick",
"private": true,
- "version": "0.1.145",
+ "version": "0.4.0",
"type": "module",
"engines": {
"node": ">=20.0.0",
@@ -29,7 +29,10 @@
"merge": "git checkout main && git merge develop && git push origin main && git checkout develop",
"ionic:build": "npm run build",
"ionic:serve": "npm run start",
- "android": "npm run build && npx cap sync android"
+ "android": "npm run build && npx cap sync android",
+ "bump": "node bump-version.js",
+ "bump:minor": "node bump-version.js minor",
+ "bump:major": "node bump-version.js major"
},
"dependencies": {
"@capacitor-community/sqlite": "^7.0.0",
diff --git a/src/views/Labels/LabelView.jsx b/src/views/Labels/LabelView.jsx
index 875414a..1a6ddcb 100644
--- a/src/views/Labels/LabelView.jsx
+++ b/src/views/Labels/LabelView.jsx
@@ -1,14 +1,14 @@
import DeleteIcon from '@mui/icons-material/Delete'
import EditIcon from '@mui/icons-material/Edit'
import {
- Avatar,
- Box,
- Chip,
- CircularProgress,
- Container,
- IconButton,
- Stack,
- Typography,
+ Avatar,
+ Box,
+ Chip,
+ CircularProgress,
+ Container,
+ IconButton,
+ Stack,
+ Typography,
} from '@mui/joy'
import { useEffect, useState } from 'react'
import LabelModal from '../Modals/Inputs/LabelModal'
@@ -16,11 +16,11 @@ import LabelModal from '../Modals/Inputs/LabelModal'
import { Add } from '@mui/icons-material'
import { useQueryClient } from '@tanstack/react-query'
import {
- Type as ListType,
- SwipeableList,
- SwipeableListItem,
- SwipeAction,
- TrailingActions,
+ Type as ListType,
+ SwipeableList,
+ SwipeableListItem,
+ SwipeAction,
+ TrailingActions,
} from 'react-swipeable-list'
import 'react-swipeable-list/dist/styles.css'
import { useUserProfile } from '../../queries/UserQueries'
diff --git a/src/views/Modals/Inputs/DateModal.jsx b/src/views/Modals/Inputs/DateModal.jsx
index da5ce7c..52ed0d1 100644
--- a/src/views/Modals/Inputs/DateModal.jsx
+++ b/src/views/Modals/Inputs/DateModal.jsx
@@ -1,5 +1,4 @@
-import { NextWeek, Today, WbSunny, Weekend } from '@mui/icons-material'
-import { Box, Button, Chip, Input, Stack, Typography } from '@mui/joy'
+import { Box, Button, Input } from '@mui/joy'
import { useState } from 'react'
import { useResponsiveModal } from '../../../hooks/useResponsiveModal'
@@ -10,62 +9,6 @@ function DateModal({ isOpen, onClose, onSave, current, title }) {
current ? new Date(current).toISOString().split('T')[0] : '',
)
- const getQuickScheduleDate = option => {
- const now = new Date()
- const today = new Date(now.getFullYear(), now.getMonth(), now.getDate())
-
- switch (option) {
- case 'today': {
- const nowHour = now.getHours()
- const scheduled = new Date(today)
- if (nowHour < 9) {
- scheduled.setHours(9, 0, 0, 0)
- } else if (nowHour < 12) {
- scheduled.setHours(12, 0, 0, 0)
- } else if (nowHour < 17) {
- scheduled.setHours(17, 0, 0, 0)
- } else {
- scheduled.setHours(
- now.getHours(),
- now.getMinutes(),
- now.getSeconds(),
- now.getMilliseconds(),
- )
- }
- return scheduled
- }
- case 'tomorrow': {
- const tomorrow = new Date(today)
- tomorrow.setDate(today.getDate() + 1)
- tomorrow.setHours(12, 0, 0, 0)
- return tomorrow
- }
- case 'weekend': {
- const weekend = new Date(today)
- const daysUntilSaturday = (6 - today.getDay() + 7) % 7 || 7
- weekend.setDate(today.getDate() + daysUntilSaturday)
- return weekend
- }
- case 'next-week': {
- const nextWeek = new Date(today)
- const daysUntilMonday = (1 - today.getDay() + 7) % 7 || 7
- nextWeek.setDate(today.getDate() + daysUntilMonday)
- return nextWeek
- }
- default:
- return today
- }
- }
-
- const handleQuickSchedule = option => {
- if (option === 'remove') {
- setDate('')
- } else {
- const selectedDate = getQuickScheduleDate(option)
- setDate(selectedDate.toISOString().split('T')[0])
- }
- }
-
const handleSave = () => {
onSave(date)
onClose()
@@ -86,7 +29,7 @@ function DateModal({ isOpen, onClose, onSave, current, title }) {
onChange={e => setDate(e.target.value)}
/>
-
+ {/*
Quick select:
@@ -132,7 +75,7 @@ function DateModal({ isOpen, onClose, onSave, current, title }) {
Next week
-
+ */}