Skip to content

Commit 995bc64

Browse files
committed
chore: update version to 1.4.10 and remove unused build files
- Incremented version to 1.4.10 in package.json, build.gradle, and project.pbxproj. - Deleted unused entitlements.mac.plist and various icon files (icon.icns, icon.ico, icon.png) from the build directory to clean up the project.
1 parent 60a21b9 commit 995bc64

14 files changed

Lines changed: 102 additions & 51 deletions

File tree

android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ android {
77
applicationId "com.tasktrees.app"
88
minSdkVersion rootProject.ext.minSdkVersion
99
targetSdkVersion rootProject.ext.targetSdkVersion
10-
versionCode 20
11-
versionName "1.4.9"
10+
versionCode 21
11+
versionName "1.4.10"
1212
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
1313
aaptOptions {
1414
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.

build/icon.icns

-170 KB
Binary file not shown.

electron/build/icon.icns

215 KB
Binary file not shown.
File renamed without changes.
File renamed without changes.

ios/App/App.xcodeproj/project.pbxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@
372372
CODE_SIGN_ENTITLEMENTS = App/App.entitlements;
373373
CODE_SIGN_IDENTITY = "Apple Development";
374374
CODE_SIGN_STYLE = Automatic;
375-
CURRENT_PROJECT_VERSION = 20;
375+
CURRENT_PROJECT_VERSION = 21;
376376
ENABLE_USER_SCRIPT_SANDBOXING = NO;
377377
INFOPLIST_FILE = App/Info.plist;
378378
INFOPLIST_KEY_CFBundleDisplayName = TaskTrees;
@@ -382,7 +382,7 @@
382382
"$(inherited)",
383383
"@executable_path/Frameworks",
384384
);
385-
MARKETING_VERSION = 1.4.9;
385+
MARKETING_VERSION = 1.4.10;
386386
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
387387
PRODUCT_BUNDLE_IDENTIFIER = com.tasktrees.app;
388388
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -404,7 +404,7 @@
404404
CODE_SIGN_ENTITLEMENTS = App/App.entitlements;
405405
CODE_SIGN_IDENTITY = "Apple Development";
406406
CODE_SIGN_STYLE = Automatic;
407-
CURRENT_PROJECT_VERSION = 20;
407+
CURRENT_PROJECT_VERSION = 21;
408408
ENABLE_USER_SCRIPT_SANDBOXING = NO;
409409
INFOPLIST_FILE = App/Info.plist;
410410
INFOPLIST_KEY_CFBundleDisplayName = TaskTrees;
@@ -414,7 +414,7 @@
414414
"$(inherited)",
415415
"@executable_path/Frameworks",
416416
);
417-
MARKETING_VERSION = 1.4.9;
417+
MARKETING_VERSION = 1.4.10;
418418
PRODUCT_BUNDLE_IDENTIFIER = com.tasktrees.app;
419419
PRODUCT_NAME = "$(TARGET_NAME)";
420420
PROVISIONING_PROFILE_SPECIFIER = "";

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"description": "A tree-structured task management app",
44
"author": "Jun Murakami",
55
"private": true,
6-
"version": "1.4.9",
6+
"version": "1.4.10",
77
"type": "module",
88
"main": "./out/main/index.js",
99
"scripts": {

src/features/homepage/HomePage.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Button, Typography, Box, Divider } from '@mui/material';
1+
import { Button, Typography, Box, Divider, Backdrop, CircularProgress } from '@mui/material';
22
import { DeleteForever } from '@mui/icons-material';
33
import { TaskTreesLogo } from '@/features/common/TaskTreesLogo';
44
import { ResponsiveDrawer } from '@/features/homepage/components/ResponsiveDrawer';
@@ -26,6 +26,7 @@ export function HomePage() {
2626
const isQuickMemoExpanded = useAppStateStore((state) => state.isQuickMemoExpanded); // クイックメモの展開状態
2727
const currentTree = useTreeStateStore((state) => state.currentTree);
2828
const isShowArchive = useAppStateStore((state) => state.isShowArchive);
29+
const isCreatingTree = useAppStateStore((state) => state.isCreatingTree);
2930

3031
// 認証状態の監視とログイン、ログアウトを行うカスタムフック
3132
const {
@@ -50,6 +51,9 @@ export function HomePage() {
5051

5152
return (
5253
<>
54+
<Backdrop open={isCreatingTree} sx={{ zIndex: 1600 }}>
55+
<CircularProgress color='inherit' />
56+
</Backdrop>
5357
{isElectron && isWindows && <Divider sx={{ width: '100%', position: 'fixed', top: 0, zIndex: 1500 }} />}
5458
{isLoggedIn ? (
5559
!isWaitingForDelete ? (

src/features/homepage/components/ArchiveList.tsx

Lines changed: 53 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
import React from 'react';
1+
import React, { useEffect, useState } from 'react';
22
import { useTreeStateStore } from '@/store/treeStateStore';
33
import { UniqueIdentifier } from '@dnd-kit/core';
4-
import { List, ListItemText, ListItemButton, Box, IconButton, Typography, Divider } from '@mui/material';
4+
import { List, ListItemText, ListItemButton, Box, IconButton, Tooltip, Typography, Divider } from '@mui/material';
55
import { Unarchive, DeleteForever } from '@mui/icons-material';
66
import { useTreeManagement } from '@/hooks/useTreeManagement';
77
import { useDialogStore } from '@/store/dialogStore';
88
import { useAppStateStore } from '@/store/appStateStore';
9+
import * as idbService from '@/services/indexedDbService';
910

1011
export const ArchiveList = () => {
1112
const currentTree = useTreeStateStore((state) => state.currentTree);
@@ -19,6 +20,16 @@ export const ArchiveList = () => {
1920
const { handleChangeIsArchived, deleteTree } = useTreeManagement();
2021
const { loadAndSetCurrentTreeDataFromIdb } = useTreeManagement();
2122

23+
const [timestamps, setTimestamps] = useState<Record<string, number>>({});
24+
25+
const archivedTrees = treesList.filter((tree) => tree.isArchived);
26+
27+
useEffect(() => {
28+
const ids = archivedTrees.map((t) => t.id);
29+
if (ids.length === 0) return;
30+
idbService.loadTreeTimestampsFromIdb(ids).then(setTimestamps);
31+
}, [treesList]); // eslint-disable-line react-hooks/exhaustive-deps
32+
2233
const handleUnArchiveClick = (treeId: UniqueIdentifier) => {
2334
handleChangeIsArchived(treeId, false);
2435
};
@@ -27,7 +38,7 @@ export const ArchiveList = () => {
2738
const result = await showDialog(
2839
'すべての編集メンバーからツリーが削除されます。この操作は元に戻せません。実行しますか?',
2940
'Confirmation Required',
30-
true
41+
true,
3142
);
3243
if (result) {
3344
await deleteTree(treeId);
@@ -48,22 +59,22 @@ export const ArchiveList = () => {
4859
}
4960
};
5061

51-
const archivedTrees = treesList.filter((tree) => tree.isArchived);
52-
5362
return (
5463
<Box
5564
sx={{
5665
maxWidth: '900px',
5766
width: '100%',
5867
marginX: 'auto',
68+
height: '100%',
69+
overflowY: 'auto',
5970
}}
6071
>
6172
<Box sx={{ py: 4 }}>
6273
<Typography variant='h6' sx={{ textAlign: 'center' }}>
6374
アーカイブ済みツリー
6475
</Typography>
6576
</Box>
66-
<Box sx={{ width: '100%', border: '1px solid #e0e0e0', borderRadius: 2, p: 0 }}>
77+
<Box sx={{ width: '100%', border: '1px solid #e0e0e0', borderRadius: 2, p: 0, mb: 12 }}>
6778
<List
6879
sx={{
6980
m: 0,
@@ -77,31 +88,42 @@ export const ArchiveList = () => {
7788
onClick={async () => await handleListClick(tree.id)}
7889
sx={{ width: '100%', height: 36, minHeight: 36, py: 0 }}
7990
>
80-
<ListItemText
81-
primary={tree.name}
82-
slotProps={{ primary: { variant: 'body2' } }}
83-
sx={{ my: 0 }}
84-
/>
85-
<IconButton
86-
size='small'
87-
onClick={(e) => {
88-
e.stopPropagation();
89-
handleUnArchiveClick(tree.id);
90-
}}
91-
sx={{ color: 'primary.main', flexShrink: 0 }}
92-
>
93-
<Unarchive sx={{ fontSize: 18 }} />
94-
</IconButton>
95-
<IconButton
96-
size='small'
97-
onClick={(e) => {
98-
e.stopPropagation();
99-
handleDeleteClick(tree.id);
100-
}}
101-
sx={{ color: 'error.main', flexShrink: 0 }}
102-
>
103-
<DeleteForever sx={{ fontSize: 18 }} />
104-
</IconButton>
91+
<ListItemText primary={tree.name} slotProps={{ primary: { variant: 'body2' } }} sx={{ my: 0 }} />
92+
{timestamps[String(tree.id)] && (
93+
<Typography variant='caption' sx={{ color: 'text.secondary', flexShrink: 0, mx: 1 }}>
94+
{new Date(timestamps[String(tree.id)]).toLocaleString('ja-JP', {
95+
year: 'numeric',
96+
month: '2-digit',
97+
day: '2-digit',
98+
hour: '2-digit',
99+
minute: '2-digit',
100+
})}
101+
</Typography>
102+
)}
103+
<Tooltip title='アーカイブ解除'>
104+
<IconButton
105+
size='small'
106+
onClick={(e) => {
107+
e.stopPropagation();
108+
handleUnArchiveClick(tree.id);
109+
}}
110+
sx={{ color: 'primary.main', flexShrink: 0 }}
111+
>
112+
<Unarchive sx={{ fontSize: 18 }} />
113+
</IconButton>
114+
</Tooltip>
115+
<Tooltip title='削除'>
116+
<IconButton
117+
size='small'
118+
onClick={(e) => {
119+
e.stopPropagation();
120+
handleDeleteClick(tree.id);
121+
}}
122+
sx={{ color: 'error.main', flexShrink: 0 }}
123+
>
124+
<DeleteForever sx={{ fontSize: 18 }} />
125+
</IconButton>
126+
</Tooltip>
105127
</ListItemButton>
106128
{index !== archivedTrees.length - 1 && <Divider sx={{ width: '100%' }} />}
107129
</React.Fragment>

0 commit comments

Comments
 (0)