Squashed commit of the following:

Rebase from Donetick.com branch
commit 2a73d3240cab4b1624cc92e97cbf88d28ea97339
Merge: e6f7aa9 c6865f4
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Apr 14 13:16:01 2026 -0400

    Merge branch 'main' into donetick.com

commit e6f7aa98d1afdd63bca7172b647443edab72e0ec
Merge: f502dc4 4713e99
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Apr 7 00:43:25 2026 -0400

    Merge branch 'main' into donetick.com

commit f502dc4e76d6215a2ea4421ba9d4efd690087d14
Merge: 92ff8a5 1e122b3
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Apr 7 00:41:20 2026 -0400

    Merge branch 'main' into donetick.com

commit 92ff8a532c399b89e1bc9a747f7ee261bc2a3a75
Merge: 0297738 c87335f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Apr 7 00:05:24 2026 -0400

    Merge branch 'main' into donetick.com

commit 0297738c0648cc740cc6c5ece0744ac83a9309f6
Merge: e7df60c 12cba1f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Apr 5 23:41:46 2026 -0400

    Merge branch 'main' into donetick.com

commit e7df60c504594bb0079637ff5aef9c6fb24e30b4
Merge: 0a4c5ed 0b19cdc
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Mar 23 22:32:08 2026 -0400

    Merge branch 'main' into donetick.com

commit 0a4c5ed3870c20ed13c45e9caffd29d55aafcd5d
Merge: 4805cbb f483653
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Feb 16 18:30:25 2026 -0500

    Merge branch 'main' into donetick.com

commit 4805cbb8f7117f184aaaa35ae549a3433baee3d7
Merge: 96649ed 0b7d7bb
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Feb 14 17:01:26 2026 -0500

    Merge branch 'main' into donetick.com

commit 96649ed012028c8d55feb130f4c67f299522f5dc
Merge: a89f9b9 d8d7b6a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 23:22:08 2026 -0500

    Merge branch 'main' into donetick.com

commit a89f9b9525568775dba16464c61bce5ffe1c858b
Merge: 3550d23 1786a5e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 20:40:06 2026 -0500

    Merge branch 'main' into donetick.com

commit 3550d23639b0e8eea9e8449b1452a6e08617fb75
Merge: 160bd81 430e602
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 11:46:30 2026 -0500

    Merge branch 'main' into donetick.com

commit 160bd814bea4fea2c8c2ae9469ecddb8bbdefbc3
Merge: 68df100 4525aee
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 11:12:31 2026 -0500

    Merge branch 'main' into donetick.com

commit 68df100b63db2f8ce8169699cf8c757bc7c5fa86
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 11:08:58 2026 -0500

    chore: update version to 0.3.0 and add version bump scripts

    - Bumped version from 0.1.145 to 0.3.0 in package.json
    - Added npm scripts for version bumping: bump, bump:minor, and bump:major
    - Added capacitor-set-version dependency

commit 39fb8aeebc330bf22ab6015e119900dabe353238
Merge: 070abf9 a9cff1f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 10 01:24:01 2026 -0500

    Merge branch 'main' into donetick.com

commit 070abf9c81a6b450efe090811bf56d166087edf7
Merge: 2a11069 ef232ab
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Feb 9 23:31:36 2026 -0500

    Merge branch 'main' into donetick.com

commit 2a11069831cc780e82450a8ebdb6dc8b9e0aa7b9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 23:01:49 2026 -0500

    update API keys in configuration files for security and compliance

commit 216befc69ef9d13bba4ab2ddb8ce189f513109f8
Merge: 23f1d7e 7663a53
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 21:56:44 2026 -0500

    Merge branch 'main' into donetick.com

commit 23f1d7efe4fc38f7c3428dc8fc740e3b56c6d485
Merge: d5ab457 bec69b4
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 16:34:02 2026 -0500

    Merge branch 'main' into donetick.com

commit d5ab45789e946c16b89a95858c7173e96ed87316
Merge: fde04f2 666eb75
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 16:20:44 2026 -0500

    Merge branch 'main' into donetick.com

commit fde04f268052d765be65e78df7ba7937f99a1c8c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 11:17:01 2026 -0500

    fix: update version codes and names in output-metadata.json and Podfile.lock

commit 1aa592ccb2c3b79ae5751c09566280b5fedb50f7
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 11:10:27 2026 -0500

    fix: add missing newline at end of package.json

commit f9df5b27240ab6e038a11d25ff6d6adb39e2bb0b
Merge: 501f1a5 00e6cf5
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 10:30:07 2026 -0500

    Merge branch 'main' into donetick.com

commit 501f1a5ca3d405e34010a7e825e342bb1e7a1665
Merge: bed45a1 753d4cd
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 8 10:28:05 2026 -0500

    Merge branch 'main' into donetick.com

commit bed45a13a1a9780ac6ad9c64297730e1b7f22534
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Dec 29 15:34:20 2025 -0500

    chore: update Gradle distribution URL to version 8.12

commit a7a91fd1ebd0100f99770e1d8c5e5ebc4864c7e9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Dec 29 15:33:51 2025 -0500

    feat: update RevenueCat API key handling for iOS and Android in AccountSettings and Settings components

commit a2142b36365c0fc8d094adbde10746cd2a7ac6a0
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Dec 1 17:52:40 2025 -0500

    bump version code and name to 1.0.20 for Android and iOS

commit 215bb7d5c91afc2746275e85894b63515f2cdfd3
Merge: f0cb7d6 7cb2f20
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Dec 2 00:23:50 2025 -0500

    Merge branch 'main' into donetick.com

commit f0cb7d62ad7736bd3d49d0f4ff74ca147bf9d789
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Oct 3 00:56:48 2025 -0400

    chore: update version codes and dependencies for Android and iOS

commit 0ed061e7ad63fd406c5f4051e19dfaff719cb8e9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Oct 3 00:56:00 2025 -0400

    feat: add PRODUCT_BUNDLE_IDENTIFIER to project configuration

commit 9987813265bc808e37e0298e4463d52a71d7cfec
Merge: 0257074 04314d5
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Oct 3 00:44:16 2025 -0400

    Merge branch 'main' into donetick.com

commit 02570740ab1cd404bfc3c9d19539a7f67f94a317
Merge: 719708c 68f0912
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 28 19:33:12 2025 -0400

    Merge branch 'main' into donetick.com

commit 719708cd185da9791411299632ab940c7ca0b15a
Merge: 4ffaa75 ac2d491
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 28 19:31:22 2025 -0400

    Merge branch 'main' into donetick.com

commit 4ffaa75aea9b2a0f91e92594fbdef87763afd15e
Merge: 7e1deae 7658b4c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 28 02:46:53 2025 -0400

    Merge branch 'main' into donetick.com

commit 7e1deae9cf9c96253526fa03ee0bce42ca1e3f9d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Sep 27 13:35:06 2025 -0400

    chore: update project version to 1.0.18 and increment current project version to 18

commit ad041aeee88076793e23ce5da11f8e945d16e5d6
Merge: bb6a05a d28ecb5
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Sep 26 02:22:01 2025 -0400

    Merge branch 'main' into donetick.com

commit bb6a05a6b4c291333dc365824634ebbb92b57e6e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Sep 24 02:05:05 2025 -0400

    chore: update version codes and marketing version to 1.0.6 for Android and iOS builds

commit fac7225da9e509edb8735c3ec1e27e7861c9befd
Merge: 4aa17a0 fd6e488
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 21 13:06:56 2025 -0400

    Merge branch 'main' into donetick.com

commit 4aa17a0addfa6bd2b7d3012810d969cfda075ce2
Merge: bf4abea 79dfb11
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Sep 20 22:22:31 2025 -0400

    Merge branch 'main' into donetick.com

commit bf4abea73bc2f9cce732d6b2cd4b5fc8a59369e1
Merge: 7ed2a50 3bf9126
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Sep 20 19:08:51 2025 -0400

    Merge branch 'main' into donetick.com

commit 7ed2a50a6926249355a885d5f2c0d7339b15f3b1
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 18 01:09:50 2025 -0400

    Update google-service with fcm details. add support for push notification and push new version for the

commit 79017f91c6472656891ed5918fc12cad6182817f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Sep 15 23:58:13 2025 -0400

    refactor: remove unnecessary import statement in PrivacyPolicyView component

commit e40ea550f14a93d4fb275af8390f30a02ff3a52f
Merge: cba69af b71a533
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Sep 15 23:58:00 2025 -0400

    Merge branch 'main' into donetick.com

commit cba69af2856596c8e255211074094d96b0194e06
Merge: bf4e6aa 36093b9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 14 22:06:14 2025 -0400

    Merge branch 'main' into donetick.com

commit bf4e6aa3c90d6fca08d5ca6f3891b24fe68e73fb
Merge: ab0f603 bd14a35
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Sep 14 21:59:46 2025 -0400

    Merge branch 'main' into donetick.com

commit ab0f60320b5ed3673a56f8c5fbb4bd32c722f08e
Merge: 165bc07 219aa06
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 11 01:20:23 2025 -0400

    Merge branch 'main' into donetick.com

commit 165bc074a38239d4d2d5dc4326ced7794fbfc178
Merge: 70a8d3c b152da9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 09:17:56 2025 -0400

    Merge branch 'main' into donetick.com

commit 70a8d3cfd77ee1d9de66a373892486be1bc0510d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 03:09:28 2025 -0400

    fix: updated tablet installation section

commit ed1a35aa364f81c9f2aae14b3b342b5e1c2797e8
Merge: baabd4e 14ce230
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 03:01:58 2025 -0400

    Merge branch 'main' into donetick.com

commit baabd4e5b26cb2d849cc73c0ca12597d46f8b526
Merge: 3935b26 a65cb92
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 03:00:08 2025 -0400

    Merge branch 'main' into donetick.com

commit 3935b265cf78edcda2126eb133313482e087f2f4
Merge: b06cef2 4a54115
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 02:52:37 2025 -0400

    Merge branch 'main' into donetick.com

commit b06cef2c2b982f195c4d55485ec4b013361b8037
Merge: be0f64d 057c5f7
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Sep 4 01:49:49 2025 -0400

    Merge branch 'dev' into donetick.com
    ::# the commit.

commit be0f64d11ecb190e6999e03222f7f5d8d37d55e7
Merge: 480ee88 fd15235
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Sep 2 17:39:34 2025 -0400

    Merge branch 'main' into donetick.com

commit 480ee8818ad6406194b1c224445652f19dbf7cae
Merge: a225768 4e31190
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Aug 30 01:36:52 2025 -0400

    Merge branch 'main' into donetick.com

commit a225768e98639339df81b05699df50abde7d6e25
Merge: c251ee9 e99a066
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Aug 29 00:56:56 2025 -0400

    Merge branch 'main' into donetick.com

commit c251ee99a4e7c5852d5a798dd7fa473bce96da9f
Merge: be02a6d 6b5a874
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Aug 26 22:11:46 2025 -0400

    Merge branch 'main' into donetick.com

commit be02a6dca0958cec8bdfc408497dd999429caaf0
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Aug 26 17:53:43 2025 -0400

    Refactor ChoreCard: remove unused circle members data and update approval logic

commit d1e93c24e3bb917a2d26ad43ddc21a88cb9426e9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Aug 26 17:43:07 2025 -0400

    Add chore filtering by selected date and update navigation for localhost

commit d38e0c4ac7bdd790541a15eee471ad42afd01b34
Merge: 9098f9e defc7a8
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Aug 25 23:59:06 2025 -0400

    Merge branch 'main' into donetick.com

commit 9098f9e0304022fcbbb61f88cd79a5cf02489e0f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Aug 25 23:54:04 2025 -0400

    Remove unnecessary dependencies and clean up wrangler configuration

commit c51cc3a73c568200ee8905cb340ad85e201b7956
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Aug 25 23:51:04 2025 -0400

    Add wrangler configuration for Cloudflare Workers deployment

commit e7ec5f2b05312bdfe5297aefd3c19cf52b20f932
Merge: 2bfe42f 06d568e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Aug 25 23:42:23 2025 -0400

    Merge branch 'main' into donetick.com

commit 2bfe42f6f1729fc304a73a08d46a0b0969b1baaf
Merge: 6429fb8 6064c88
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Aug 25 23:40:58 2025 -0400

    Merge branch 'main' into donetick.com

commit 6429fb8aca1b2bfc9cb36c86d888c31e37182efd
Merge: 918a5fa 77b3430
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Aug 24 12:25:12 2025 -0400

    Merge branch 'main' into donetick.com

commit 918a5fa7e89ecb310c3f50352bbc900a383be8a2
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Aug 2 18:53:18 2025 -0400

    add RevenueCat API key to production environment variables

commit ef8d17cec88a5a3c7ba7ecdc0a793c104fc1fe55
Merge: 267de24 18743f6
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 29 00:12:33 2025 -0400

    Merge branch 'main' into donetick.com

commit 267de24b125e8754a0cab8997d10b9602886a27c
Merge: eefe3bb 63d1b86
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 20 10:41:56 2025 -0400

    Merge branch 'main' into donetick.com

commit eefe3bbbe99cdfb28eb335bec8a4afd763544068
Merge: a4c1187 1efab98
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 19 01:18:43 2025 -0400

    Merge branch 'main' into donetick.com

commit a4c1187c34a9cfbf944e05eab2af80a48642a230
Merge: ce3a97e e6400d8
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 19 00:56:06 2025 -0400

    Merge branch 'main' into donetick.com

commit ce3a97e8f43aad43ce3ee3d5664dc7f03ba6f69e
Merge: a3c4f1a 9d9c12a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 15 07:58:29 2025 -0400

    Merge branch 'main' into donetick.com

commit a3c4f1a6149fd84381cfd916e4f5ce2b59d63a30
Merge: b062f2f 0b57e42
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 14 02:06:27 2025 -0400

    Merge branch 'main' into donetick.com

commit b062f2f9152420a0d2c84ede1b49fd5f52ada432
Merge: fde32a4 8d9a3cb
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 13 01:33:50 2025 -0400

    Merge branch 'main' into donetick.com

commit fde32a4db4183019e9b4057f0c7bb983e61c644b
Merge: 011ed3c 9f2d0b5
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 13 01:31:04 2025 -0400

    Merge branch 'main' into donetick.com

commit 011ed3c89a5d5760d9d3bc22e963a140fd91397c
Merge: f6d4507 f6085aa
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 13 00:53:11 2025 -0400

    Merge branch 'main' into donetick.com

commit f6d45072b2894b967ac8b301f4d2c56297080f19
Merge: 76946d3 8a240d5
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 13 00:37:26 2025 -0400

    Merge branch 'main' into donetick.com

commit 76946d39daaf3e18805d745b1da0c4f478616c7e
Merge: 1ef7c49 c8d13a6
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 12 16:37:20 2025 -0400

    Merge branch 'main' into donetick.com

commit 1ef7c498cfa4a714ebe6baf07a85568a6832bc0c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 12 02:44:05 2025 -0400

    remove unnecessary whitespace and improve comments in StatusBarManager

commit 70e7864884c7aee3004c4b8b19518203bd4dcba5
Merge: dfc2ff5 b6fea7d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 12 02:43:26 2025 -0400

    Merge branch 'main' into donetick.com

commit dfc2ff5993e1471d99960dee6315b4838a952018
Merge: ff4ccfc 807dc61
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 12 02:20:06 2025 -0400

    Merge branch 'main' into donetick.com

commit ff4ccfcbb64307f2668155b2e327cd5b98bf7a3c
Merge: 7eace25 4576ddf
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 12 00:45:41 2025 -0400

    Merge branch 'main' into donetick.com

commit 7eace25ae9779becf349c490e88caa4a5fc84c6e
Merge: 8de5a78 3bab677
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jun 23 01:55:47 2025 -0400

    Merge branch 'main' into donetick.com

commit 8de5a787b31cbad2e09a7470f63a46d72f13bd03
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jun 23 01:46:44 2025 -0400

    fix: update Capacitor and CapgoCapacitorSocialLogin versions in Podfile.lock

commit 81480982210d213379c093efbc3523ce77fef5d6
Merge: c0d1071 ea70aa2
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jun 23 01:17:20 2025 -0400

    Merge branch 'main' into donetick.com

commit c0d1071cf9bd999e428d2786031ecbb0164668e7
Merge: 836d93a fe5a72a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jun 21 01:20:09 2025 -0400

    Merge branch 'main' into donetick.com

commit 836d93af08af34027098221df59ae906b17256aa
Merge: 8e97ee2 eaaeee6
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jun 21 01:01:09 2025 -0400

    Merge branch 'main' into donetick.com

commit 8e97ee2f516508a6910abca588ad514dd36a91a9
Merge: decf250 78b156d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 8 10:52:46 2025 -0400

    Merge branch 'donetick.com' of https://github.com/meauxt/donetick-frontend into donetick.com

commit 78b156d76e2cc739456fbe04b0debfc1d51042c5
Author: Mohamad Tarbin <mhed.t91@gmail.com>
Date:   Tue Jun 3 23:47:33 2025 -0400

    Dev (#5)

    * refactor: Update chore grouping and color constants for improved clarity and organization

    * refactor: Update due date display logic and fix performer ID reference in ChoreCard component

    * refactor: Rename parameter in CompleteSubTask back to completedAt to match backend https://github.com/donetick/donetick/issues/224

commit decf25006bf9fd6bafd086e0c15d0eef88af12d1
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 1 22:19:58 2025 -0400

    feat: Implement StatusBarManager and useStatusBar hook for theme-aware status bar handling

commit f58003b4ce2b1a77eef24b59126d5e329770e05c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 1 21:06:01 2025 -0400

    fix: Update CapgoCapacitorSocialLogin to version 7.6.3 and update Podfile.lock checksums

commit 6a13eef8e2167c9977b4a25cf09f2e236b986146
Merge: cd49d9a 6080b57
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 1 00:48:18 2025 -0400

    Merge branch 'main' into donetick.com

commit cd49d9a6a7ed2c91c9016c66002aad35cb9ab3d1
Merge: 4826090 ddf654a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 1 00:48:07 2025 -0400

    Merge branch 'dev' into donetick.com

commit 4826090a903c838e3c6a6a9c7843a2785600097a
Merge: 89196b0 bf8e187
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat May 31 19:40:43 2025 -0400

    Merge branch 'main' into donetick.com

commit 89196b0b3f0438387c69ba23de64822faf4596d5
Merge: 7919b00 87a0039
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat May 31 03:43:07 2025 -0400

    Merge branch 'main' into donetick.com

commit 7919b00cae6f6d77795b88f380ebde911b7c1a61
Merge: 54c9819 ee69009
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat May 31 01:44:39 2025 -0400

    Merge branch 'main' into donetick.com

commit 54c981997e055e1de46d08cf408b78ecf569233e
Merge: c3b54d0 a217740
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri May 16 21:18:11 2025 -0400

    Merge branch 'main' into donetick.com

commit c3b54d049aff67df2a0fd11a01ee44a6797ff7c7
Merge: 206302b de4dc9b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri May 16 20:48:22 2025 -0400

    Merge branch 'main' into donetick.com

commit 206302b2d2d4058a18457bb9bee45b1a6e13a65f
Merge: 56179a0 7ae2859
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri May 16 20:39:12 2025 -0400

    Merge branch 'main' into donetick.com

commit 56179a027f4510d3f5278fc649ecf1560d923aa1
Merge: 8980c06 e26f291
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 22:11:20 2025 -0400

    Merge branch 'main' into donetick.com

commit 8980c06554b2c2eeb95e8063830f2461c732b70a
Merge: f8812ca 0b1208a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 21:56:39 2025 -0400

    Merge branch 'main' into donetick.com

commit f8812cadee1547a9bf70ba8e35201bd68081c05d
Merge: 4eaa68b 261919f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 21:35:26 2025 -0400

    Merge branch 'main' into donetick.com

commit 4eaa68bf6e91f81b87ac8c70615a6e4373291ee0
Merge: c2544d9 66db280
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 19:52:10 2025 -0400

    Merge branch 'donetick.com' of https://github.com/meauxt/donetick-frontend into donetick.com

commit c2544d91e64e7d1f9db5c70fb12ce08bb0b76000
Merge: 6978288 f537a00
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 19:51:43 2025 -0400

    Merge branch 'main' into donetick.com

commit 66db28044faa1f88122d51d7e0646622025ef38f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 02:52:34 2025 -0400

    fix: update Capacitor dependencies and downgrade CocoaPods version

commit 697828837e28a0a553092f99684376a9fc181902
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 02:42:16 2025 -0400

    fix: update Java version to 21 and add new Capacitor dependencies

commit 3dc779fd15bbd7317be7e2bef0e741d21843341b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 02:37:13 2025 -0400

    fix: update Java version to 17 and add CapacitorCommunitySqlite and CapacitorNetwork dependencies

commit 6dbca55da82398a069d901bc3a85206fa47eae47
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 02:22:07 2025 -0400

    chore: update dependencies

commit 0c163d52aefb2065abc38718c3d842183aadc0e3
Merge: e08b80d f0e0c0e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Apr 24 02:00:03 2025 -0400

    Merge branch 'smart-text-field' into donetick.com

commit e08b80d625248a4917a03549d452530e2eadbd8a
Merge: b0b0bcc 1b53a4d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Mar 17 01:04:49 2025 -0400

    Merge branch 'main' into donetick.com

commit b0b0bcc4a9561ab829a3e55f4b344edf971bf5d6
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Mar 10 01:14:11 2025 -0400

    Update Podfile.lock and enhance Safe Area handling for Android platform

commit ff13ee112782bf963e892e8be36d95ed628b4d08
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Mar 10 00:34:28 2025 -0400

    Update Podfile.lock to reflect updated Capacitor dependencies and downgrade CocoaPods version

commit a7b756e1dbf6081c843457c31728fef3b1c6ec5f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Mar 10 00:34:12 2025 -0400

    Enhance Android configuration and improve Safe Area handling in NavBar and App components

commit aeab3560f6778712d8899a83497599b6f608b9eb
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Mar 8 23:51:43 2025 -0500

    Prevent NavBar from rendering on landing page in native platforms

commit 4972f554f53225636042f8e9bee19fa11e81893c
Merge: 7a7eb25 98b1cb6
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Mar 8 00:14:41 2025 -0500

    Merge branch 'capacitor7' into c7-donetick.com

commit 98b1cb6e8a25ebfff3fe7aacf421ffe56399c14e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Mar 6 17:39:06 2025 -0500

    Add iOS and Android assets; update dependencies and configurations

commit 7a7eb25f33d1f0c241221ece32a1842dbdddd57d
Merge: e369549 76ed927
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Mar 5 22:04:50 2025 -0500

    Merge branch 'main' into donetick.com

commit e36954960c803d5aab41a4b3549791a4c809b9a1
Merge: 4907e0a 52b81cc
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Mar 5 21:42:11 2025 -0500

    Merge branch 'main' into donetick.com

commit 4907e0af41cc2033c549bb9ef51124e582c963f0
Merge: 062bbbb ee566bd
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Mar 5 21:06:45 2025 -0500

    Merge branch 'main' into donetick.com

commit 062bbbb9137954eb1ef2b3ff101513659d6c68cd
Merge: ac6988c cd1b556
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Mar 5 20:56:11 2025 -0500

    Merge branch 'main' into donetick.com

commit ac6988c66c59d0fb0bc2982a6c20456448fce1ba
Merge: 2365b5e 6431e71
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 25 23:41:03 2025 -0500

    Merge branch 'main' into donetick.com

commit 2365b5e0895c34cd3f31fca032d652d2630bdea5
Merge: f064993 4734819
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Feb 15 00:06:31 2025 -0500

    Merge branch 'main' into donetick.com

commit f0649931825e2812da508e75d80f275854461e53
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Feb 15 00:04:59 2025 -0500

    Fix https://github.com/donetick/donetick/issues/128

commit d98a324a890318dca2cf4fb371fd83b99830d602
Merge: d36a428 5c82fe4
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Feb 12 22:27:36 2025 -0500

    Merge branch 'donetick.com' of https://github.com/meauxt/donetick-frontend into donetick.com

commit d36a42871e98bc94f5c56634859325a561727c15
Merge: b35f518 c06d5f1
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Feb 12 22:27:19 2025 -0500

    Merge branch 'main' into donetick.com

commit 5c82fe4c3f07ee0faefd7c1ac90b4c419df33c23
Merge: b5a0076 5bf0724
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Feb 12 00:32:16 2025 -0500

    Merge branch 'main' into donetick.com

commit b5a00763d75d6c599520250bcd511b17317fd8b9
Merge: c6e1f9c 2925267
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 11 21:01:01 2025 -0500

    Merge branch 'main' into donetick.com

commit c6e1f9c935d9654d1fd0e6cb802f9eb9934f65c0
Merge: 6e3f223 cfc121b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 11 20:50:47 2025 -0500

    Merge branch 'main' into donetick.com

commit 6e3f223c6ce83690466c31de38d918698424efd8
Merge: d2beee5 e964985
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Feb 11 20:49:26 2025 -0500

    Merge branch 'main' into donetick.com

commit d2beee52a1a954b63902abc596b25e97447a3c54
Merge: b35f518 06519a0
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Feb 7 00:42:16 2025 -0500

    Merge branch 'main' into donetick.com

commit b35f518b4e6e40b4e6b0c6f360ad258bd50a689e
Merge: c4121db b221f38
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 2 20:48:54 2025 -0500

    Merge branch 'dev' into donetick.com

commit c4121dbae1c16cb7def7c07bafccc98c6255d1b4
Merge: 8cc6789 568f86a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Feb 2 01:27:53 2025 -0500

    Merge branch 'dev' into donetick.com

commit 8cc678955bd0a8f1846a17ee8dc2c7597c62cdf0
Merge: 279bf05 4527b22
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jan 21 15:24:34 2025 -0500

    Merge branch 'dev' into donetick.com

commit 279bf059c4ca2034802872f0b49eea0d73f8e7fd
Merge: 8c0ccc9 4e64d0b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jan 18 09:54:24 2025 -0500

    Merge branch 'dev' into donetick.com

commit 8c0ccc9d2cd1cbf101ef672134ad8980f4e7cd65
Merge: 629c1ce 9dc3edb
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Jan 17 00:50:46 2025 -0500

    Merge branch 'dev' into donetick.com

commit 629c1cee0b9b591f6c33b23e557af079837f9b4e
Merge: 5adeae6 56f66e9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Jan 16 01:02:14 2025 -0500

    Add useDebounce hook for debouncing input value
    s# Please enter a commit message to explain why this merge is necessary,

commit 5adeae661b402280f1f0b84e1416f3ffbfcb3410
Merge: 7309161 aa7f412
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Jan 15 02:05:10 2025 -0500

    Merge branch 'dev' into donetick.com

commit 73091615cb21faca1325fad6bb10aa126de297aa
Merge: f6d86a9 da85caf
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Jan 15 01:55:13 2025 -0500

    Add IconButtonWithMenu component with label support
    Add LearnMoreButton with some instruction on task modal# Please enter a commit message to explain why this merge is necessary,

commit f6d86a92d92a5cf0b78c3505fc0b4de9917a8913
Merge: 89824a4 d3b3623
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jan 14 11:08:22 2025 -0500

    Make sure the title respect upper and lower case

commit 89824a4ce0f374b0f41943d0c2b4d11bd234cc85
Merge: 9110bf6 cc11a62
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jan 14 10:47:13 2025 -0500

    Experiment: Add Sidepanel with calendar view
    Support redeem points
    Experiment: task in sentences
    Fix small bugs in the chip when loading the chore card

commit 9110bf6de4a1a234dbd73afc19f78e4378816cc4
Merge: 4879b86 46f7f51
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Jan 10 00:38:38 2025 -0500

    Update Login URL

commit 4879b86e49525da56de3f95d386711cc2013a5e2
Merge: f8d3312 13bfe66
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Jan 3 02:12:21 2025 -0500

    Update API URLs to include version number

commit f8d3312ee7f333c190526b90e2e1534a9ab88379
Merge: 92513aa 1b1da5f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Dec 31 02:23:06 2024 -0500

    Merge branch 'dev' into donetick.com

commit 92513aafaee2ed5135f022c57354ee63160a4f38
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Dec 29 00:31:10 2024 -0500

    chore: Remove unused import and fix typo in LabelView.jsx

commit aafc3c412db13f01b467df8180231fd58e2fd14d
Merge: 8183792 d4c36e2
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Dec 28 18:53:53 2024 -0500

    Initial Activity View
    Add New Colors.jsx
    Allow Dark model Toggle from the Navbar

commit 818379211ccde58532242aba17b6a88696df43ac
Merge: 7bdc09d 0f2781f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 19:06:20 2024 -0500

    Merge branch 'dev' into donetick.com

commit 7bdc09db7368d022c2552f1721d3fa3b52e8a795
Merge: 08955e3 577791b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 18:44:32 2024 -0500

    Merge branch 'main' into donetick.com

commit 08955e325e300411ebb113f80ef5be7e9898ecf5
Merge: f812ada 6085ffa
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 18:28:20 2024 -0500

    Merge branch 'donetick.com' of https://github.com/meauxt/donetick-frontend into donetick.com

commit f812ada34938998d1a1cd4c00405b96edd7d219b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 18:22:15 2024 -0500

    Update npm dependency to latest stable version

commit bda85c8f90fd616deee9594b64cc02bb60af7d7c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 18:21:46 2024 -0500

    Update API_URL in Config.js to use window.location.hostname for 'AUTO' value

commit 1bda13166c569f0d726e3d40eb15e4ec3784188e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:39:16 2024 -0500

    feat: Set maximum file size to cache in service worker configuration

commit 6085ffa7e11844876cfdf3617c6efdd6ee741cbf
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:37:19 2024 -0500

    Update Vite configuration to set maximum cache file size and remove unused Rollup external dependencies

commit 2d7ff4550e6f80529d11f4f7bf308873511b6a63
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:32:06 2024 -0500

    Fix formatting in Vite configuration file

commit 47571fe092c915119ed700e437f616377f86e815
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:30:56 2024 -0500

    Add external dependency configuration for Rollup in Vite build

commit 528faaf46cf780c0ce04a9380283a3a2d11825aa
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:25:02 2024 -0500

    Remove unnecessary 'dev' flags from package-lock.json dependencies

commit 7d01541aecbe059f22c0c108b2baf81012eb3b36
Author: Mohamad Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:21:36 2024 -0500

    Mobile app (#3) (#4)

    * Initial Capacitor Config and plugins

    * Add Android project files and resources

    * Add local notification scheduling for chores

    * Add NotificationAccessSnackbar component for handling notification preferences

    * Add capacitor-preferences to Android project

    * Update notification Snackbar

    * Add local notification scheduling for chores

    * Add ionic.config.json file for custom project configuration

    * chore: Add environment variables for production deployment

    * Add Support for IOS, pass notificaiton token(push notifications)

    * Add Capacitor Device support and refactor notification handling

    * Refactor GoogleAuth client IDs to use environment variables

    * Remove google-services.json to enhance security by eliminating sensitive data from the repository

    * Remove environment files to enhance security by eliminating sensitive data from the repository

    * Rename project from fe-template to Donetick in ionic.config.json

    * Remove GoogleService-Info.plist and Info.plist to enhance security by eliminating sensitive data from the repository

    ---------

    Co-authored-by: Mo Tarbin <mohamad@Mos-MacBook-Pro.local>

commit 4aa4528b565560a6a91b9e2a9bdeda11dba7c2cf
Merge: bcd32a8 5d1f381
Author: Mohamad Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:18:13 2024 -0500

    Merge branch 'donetick.com' into dev

commit 5d1f3811c65445cae702660023bb449a8e221a53
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:09:04 2024 -0500

    Add Info.plist configuration for iOS app

commit 903e8c3f1ec3e12041c9382936fcd16de7918d81
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 02:08:28 2024 -0500

    Add Google services configuration for iOS app

commit 592a43a85c8540978c6b85d4a3bd01a643f607cc
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 01:40:17 2024 -0500

    Add Google services configuration for Android app

commit 6ed89f0d085812364af0fd249e5c867a6e7b446d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Dec 26 01:20:30 2024 -0500

    Add Android and iOS client IDs to production environment variables

commit a941263debcac8205ca828ee643c2a4dafa4d7ce
Merge: 385d923 1e7b47e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Dec 22 16:07:18 2024 -0500

    Merge branch 'dev' into donetick.com

commit 385d92316ab6c4b20569a6d0e4f1fa2d5228c0b3
Merge: 22abf46 88c11ee
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Dec 15 18:11:00 2024 -0500

    Fix Unable to assign Assignee to task
    Support Loading  archived

commit 22abf462f041384559fa9808a24d308c40bf1fba
Merge: 08ccd89 7ea0a03
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Dec 14 02:15:21 2024 -0500

    Support Sortinging in My Chore by Date
    Show API Token and allow manual copy
    Show Error when sign up disabled
    Support Pushover

commit 08ccd891b115a599eb907d859a0129695baf5f01
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Dec 7 15:26:11 2024 -0500

    Update VITE_APP_API_URL in .env.production

commit 874898be4a13d5f16512f469c57cab2e4f9d4d46
Merge: 0994f3a f8639be
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Dec 6 01:30:41 2024 -0500

    Merge branch 'dev' into donetick.com

commit 0994f3a0d3c05a2515084e455e950773526f3243
Merge: 7205a64 57b2ea1
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Nov 30 02:15:54 2024 -0500

    Merge branch 'main' into donetick.com

commit 7205a647677df61fa26b4428bac34e2d468defe1
Merge: 2514205 ba75962
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Nov 30 00:46:06 2024 -0500

    Add Label filters, Update cohre card to show labels, fix typo

commit 2514205e342e7196b8cd6ed8bbcdc2e53eca8889
Merge: f5d157d 7551871
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Nov 24 00:50:00 2024 -0500

    Merge branch 'dev' into donetick.com

commit f5d157d1758a92ec38fe89e894e5ef58af204ec6
Merge: b9b0d28 43608a3
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Nov 23 21:42:52 2024 -0500

    Merge branch 'dev' into donetick.com

commit b9b0d28a18affcbccf6b0b02401d6ee65ce62f22
Merge: d80311a 7c36e2d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Nov 23 20:26:14 2024 -0500

    Add Support for LabelV2, Add LabelModal and LabelView.
    Add React Query

commit d80311ac956412f8a22d43cab445d4c928201048
Merge: 5954dfc 2ad8ddd
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Nov 4 00:23:13 2024 -0500

    Fix Monthly text

commit 5954dfcf500a88b7a2ec5c7004b545febf4327c2
Merge: 1925822 e1615d2
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Nov 3 22:59:43 2024 -0500

    Merge branch 'dev' into donetick.com

commit 1925822192ff22de00a76fc2fafa6dfd174c8406
Merge: 7465158 1e90c2e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Nov 3 22:40:43 2024 -0500

    Update the version

commit 7465158b033a330ea9d933d787f03779ba754abe
Merge: 5a16acf ee5763b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Nov 3 22:38:02 2024 -0500

    Add Support for Priority

commit 5a16acf403e5d0fd173f411f91ddbfc8b15e9168
Merge: d85776d 2406331
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Sep 6 18:05:54 2024 -0400

    Add CookiePermissionSnackbar
    Update landing

commit d85776d8fd9cb8a007128ad49a87a3da941e9295
Merge: 78c8bb7 7e93e80
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Aug 10 02:31:27 2024 -0400

    Merge branch 'dev' into donetick.com

commit 78c8bb7a873ea6c596855a785a20f360724d15f4
Merge: fb93f4e ea4783f
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Aug 10 02:29:35 2024 -0400

    Merge branch 'dev' into donetick.com

commit fb93f4e705b2988cd21194be28eceb9e8bae27df
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Aug 4 22:36:22 2024 -0400

    chore: Add support for Open Replay

commit dc9760960c2dbfe04ab0abe182493dc702ebc788
Merge: f003eca b5f17dc
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Aug 4 22:35:12 2024 -0400

    Add support for Open Replay

commit f003eca86b664564c0519415898456e28765f5db
Merge: eeb0e20 539cf5c
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 29 12:46:40 2024 -0400

    Merge branch 'dev' into donetick.com

commit eeb0e209a3cb175fc63d1d0894f6d0c1039183a8
Merge: 65fd025 8e0c467
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 29 12:10:31 2024 -0400

    Merge branch 'dev' into donetick.com

commit 65fd025b26cef1cdb632732b5ef1656df10fe9bc
Merge: 098c2bd ff745e9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 29 12:03:43 2024 -0400

    Merge branch 'dev' into donetick.com

commit 098c2bde3755d97f6eb3585bbce6b9766f313987
Merge: 65a6eae 0df5162
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 29 12:00:49 2024 -0400

    Merge branch 'dev' into donetick.com

commit 65a6eae42ea00ec0c1e043f0d3580f7bbcfa12ad
Merge: f676bf0 b7ee1c0
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 29 02:55:28 2024 -0400

    Merge branch 'dev' into donetick.com

commit f676bf0aaa356b4a414199b364787e36bd757c23
Merge: f365635 90efb5b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 20 03:40:53 2024 -0400

    Merge branch 'dev' into donetick.com

commit f3656353cd95276b23d9f7aba0f177ee4d81a89e
Merge: 3036eb4 aed179d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Jul 18 18:20:23 2024 -0400

    Merge branch 'dev' into donetick.com

commit 3036eb443a0ff8b09d4a33c4c6842082ab6edad9
Merge: e2dff21 7991399
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Thu Jul 18 18:06:56 2024 -0400

    Merge branch 'dev' into donetick.com

commit e2dff2197c5a49e97fd9f8150d336fdd5b11afb3
Merge: c292335 dfe89b4
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Wed Jul 17 01:08:35 2024 -0400

    Merge branch 'dev' into donetick.com

commit c292335e95e7aa01ab0960ac4e1c080ceeda1379
Merge: 9602842 7f4e592
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 16 19:37:32 2024 -0400

    Merge branch 'dev' into donetick.com

commit 9602842008a9cb76022640b370e941208f08305d
Merge: 9cba371 93512eb
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 16 01:59:02 2024 -0400

    Merge branch 'dev' into donetick.com

commit 9cba371fd526f2a52dcef83d20e463c446852e1d
Merge: ef6c184 7a49011
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 14 17:56:25 2024 -0400

    Merge branch 'dev' into donetick.com

commit ef6c1841fe4c4ebffca920779f04f8c92b18ffe6
Merge: 78299ee bc741d9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 14 17:45:41 2024 -0400

    Merge branch 'd`ev' into donetick.com

commit 78299ee953418059c84b4b9ea53ffe01129a28fc
Merge: bcc82f9 ba3331e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 13 01:54:35 2024 -0400

    Merge branch 'dev' into donetick.com

commit bcc82f9b524a484a41ac4470d123c565aafd9ce8
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 9 21:22:32 2024 -0400

    Add VITE_IS_LANDING_DEFAULT flag for conditional rendering of landing page

commit 48d664e15704811c60d125370e5bd80ecf6cfb8b
Merge: 8f670c6 e25a6d3
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 9 21:21:43 2024 -0400

    Merge branch 'dev' into donetick.com

commit 8f670c60bf8df7e060b8a963b5a107e6f59e3b93
Merge: 851c330 8da220e
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 9 17:51:09 2024 -0400

    Merge branch 'dev' into donetick.com

commit 851c33035c8a0431d36524a300b5fd3b399238ce
Merge: 5a60894 40f1384
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 9 17:41:23 2024 -0400

    Update landing Merge branch 'dev' into donetick.com

commit 5a6089465391825c9b0278e2dc330aff8167ae36
Merge: 499da8f c4bf06b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 7 19:49:37 2024 -0400

    Merge branch 'dev' into donetick.com

commit 499da8f995ea10ae4a488e2b83505460a925de8d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 7 03:19:03 2024 -0400

    Squashed commit of the following:
        Trim first character from emoji name in ChoreCard component

commit d031363dae6789b2ea8bd0cd770ccdeb98bdb7d7
Merge: a725dc2 09a4bbd
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 7 02:50:39 2024 -0400

    Merge branch 'dev' into donetick.com

commit a725dc2d5f22575bbdadc278b986e8575ee74a97
Merge: 468f282 8a919dd
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 7 02:14:02 2024 -0400

    Merge branch 'dev' into donetick.com

commit 468f282f2e2cb5bb73c8542d8135b2cdf3981d80
Merge: 47f8218 e039b73
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jul 7 00:25:27 2024 -0400

    Merge branch 'dev' into donetick.com

commit 47f82188a4fbba5bffcf1d50bde30e19c10354e3
Merge: dd5f61a 4f9e2f9
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 6 13:24:57 2024 -0400

    Merge branch 'dev' into donetick.com

commit dd5f61a3c13f528275dedf0af4dbe8aa5923b990
Merge: 203846b ae96328
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 6 03:50:05 2024 -0400

    Merge branch 'dev' into donetick.com

commit 203846ba3220732ec619f39cb9ea60e999a6115e
Merge: 7f86704 09c25ce
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sat Jul 6 02:35:20 2024 -0400

    Merge branch 'dev' into donetick.com

commit 7f8670439b044eb38acfa5bfa036166c647d5b15
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Jul 5 17:30:47 2024 -0400

    refactor: Simplify API_URL assignment in Config.js

commit 24d9db8d580224574d6c468150b638c9e29f2528
Merge: 6232455 c34da50
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Fri Jul 5 17:29:45 2024 -0400

    Merge branch 'dev' into donetick.com

commit 6232455f30692e6e6ca8351049d6985b158cf9fe
Merge: 6da9c29 c5ee02d
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Tue Jul 2 00:49:58 2024 -0400

    Merge branch 'dev' into donetick.com

commit 6da9c2966b2ba5b168844a2961f169e188bafa84
Merge: 0b90929 61b4e4b
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 1 23:54:30 2024 -0400

    Merge branch 'dev' into donetick.com

commit 0b909292d6c033662ef8a6591dd8d665611d88ab
Merge: 4546728 5e54da8
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 1 22:13:01 2024 -0400

    Merge branch 'dev' into donetick.com

commit 45467286b27fc7dd9cbb05947d7db2ca81312da0
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Mon Jul 1 01:52:00 2024 -0400

    add the .env.development file

commit 73a458b740cc81376ef3d28e80ac931865d2af0a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 30 23:08:23 2024 -0400

    navigate app always to my/chores

commit 44aeb03c53c30ac5644461bc45e0d8c49b01911a
Author: Mo Tarbin <mhed.t91@gmail.com>
Date:   Sun Jun 30 22:46:55 2024 -0400

    Add production environment variables for API URL, redirect URL, and Google Client ID
This commit is contained in:
Mo Tarbin
2026-05-30 21:50:16 -04:00
parent 3d170d88fb
commit c4b2b909e0
36 changed files with 1819 additions and 925 deletions

3
.gitignore vendored
View File

@@ -23,4 +23,5 @@ dist-ssr
*.sln
*.sw?
resources/android/**/*
resources/android/**/*
resources/ios/**/*

View File

@@ -0,0 +1,37 @@
{
"version": 3,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.donetick.app",
"variantName": "release",
"elements": [
{
"type": "SINGLE",
"filters": [],
"attributes": [],
"versionCode": 20,
"versionName": "1.0.20",
"outputFile": "app-release.apk"
}
],
"elementType": "File",
"baselineProfiles": [
{
"minApi": 28,
"maxApi": 30,
"baselineProfiles": [
"baselineProfiles/1/app-release.dm"
]
},
{
"minApi": 31,
"maxApi": 2147483647,
"baselineProfiles": [
"baselineProfiles/0/app-release.dm"
]
}
],
"minSdkVersionForDexing": 24
}

View File

@@ -9,7 +9,7 @@
android:theme="@style/AppTheme"
android:usesCleartextTraffic="true">
<activity
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode|navigation"
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:theme="@style/AppTheme.NoActionBarLaunch"
@@ -36,6 +36,16 @@
android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
</provider>
<!-- Push Notifications Icon -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@mipmap/ic_launcher" />
<!-- Push Notifications Color -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@android:color/white" />
</application>
<!-- Permissions -->
@@ -43,6 +53,7 @@
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.INTERNET" />
</manifest>

View File

@@ -2,4 +2,36 @@ package com.donetick.app;
import com.getcapacitor.BridgeActivity;
public class MainActivity extends BridgeActivity {}
import ee.forgr.capacitor.social.login.GoogleProvider;
import ee.forgr.capacitor.social.login.SocialLoginPlugin;
import ee.forgr.capacitor.social.login.ModifiedMainActivityForSocialLoginPlugin;
import com.getcapacitor.PluginHandle;
import com.getcapacitor.Plugin;
import android.content.Intent;
import android.util.Log;
public class MainActivity extends BridgeActivity implements ModifiedMainActivityForSocialLoginPlugin {
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode >= GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MIN && requestCode < GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MAX) {
PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin");
if (pluginHandle == null) {
Log.i("Google Activity Result", "SocialLogin login handle is null");
return;
}
Plugin plugin = pluginHandle.getInstance();
if (!(plugin instanceof SocialLoginPlugin)) {
Log.i("Google Activity Result", "SocialLogin plugin instance is not SocialLoginPlugin");
return;
}
((SocialLoginPlugin) plugin).handleGoogleLoginIntent(requestCode, data);
}
}
@Override
public void IHaveModifiedTheMainActivityForTheUseWithSocialLoginPlugin() {}
}

View File

@@ -7,8 +7,8 @@ buildscript {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.2.1'
classpath 'com.google.gms:google-services:4.4.0'
classpath 'com.android.tools.build:gradle:8.7.2'
classpath 'com.google.gms:google-services:4.4.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files

View File

@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME

View File

@@ -5,12 +5,13 @@ ext {
androidxActivityVersion = '1.9.2'
androidxAppCompatVersion = '1.7.0'
androidxCoordinatorLayoutVersion = '1.2.0'
androidxCoreVersion = '1.12.0'
androidxFragmentVersion = '1.6.2'
androidxCoreVersion = '1.15.0'
androidxFragmentVersion = '1.8.4'
coreSplashScreenVersion = '1.0.1'
androidxWebkitVersion = '1.9.0'
androidxWebkitVersion = '1.12.1'
junitVersion = '4.13.2'
androidxJunitVersion = '1.1.5'
androidxEspressoCoreVersion = '3.5.1'
androidxJunitVersion = '1.2.1'
androidxEspressoCoreVersion = '3.6.1'
cordovaAndroidVersion = '10.1.1'
firebaseMessagingVersion = '24.1.0'
}

View File

@@ -1,4 +1,4 @@
import type { CapacitorConfig } from '@capacitor/cli';
import type { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
appId: 'com.donetick.app',
@@ -12,17 +12,17 @@ const config: CapacitorConfig = {
presentationOptions: ['badge', 'sound', 'alert'],
},
LocalNotifications: {
smallIcon: "ic_stat_icon_config_sample",
iconColor: "#488AFF",
sound: "beep.wav",
smallIcon: 'ic_stat_icon_config_sample',
iconColor: '#488AFF',
sound: 'beep.wav',
},
GoogleAuth: {
scopes: ['profile', 'email', 'openid'],
clientId: process.env.VITE_APP_GOOGLE_CLIENT_ID,
androidClientId: process.env.VITE_APP_ANDRIOD_CLIENT_ID,
iosClientId: process.env.VITE_APP_IOS_CLIENT_ID,
// GoogleAuth: {
// scopes: ['profile', 'email', 'openid'],
// clientId: process.env.VITE_APP_GOOGLE_CLIENT_ID,
// androidClientId: process.env.VITE_APP_ANDRIOD_CLIENT_ID,
// iosClientId: process.env.VITE_APP_IOS_CLIENT_ID,
// },
},
}
};
export default config;
export default config

View File

@@ -1,10 +1,21 @@
<!doctype html>
<html lang="en">
<head>
<script
defer
data-domain="donetick.com"
src="https://collector.wannaknow.link/js/script.js"
></script>
<meta charset="UTF-8" />
<!-- <link rel="icon" type="image/svg+xml" href="/logo.svg" /> -->
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, viewport-fit=cover"
/>
<title>Donetick</title>
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />

View File

@@ -14,6 +14,7 @@
504EC30F1FED79650016851F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 504EC30E1FED79650016851F /* Assets.xcassets */; };
504EC3121FED79650016851F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 504EC3101FED79650016851F /* LaunchScreen.storyboard */; };
50B271D11FEDC1A000F3C39B /* public in Resources */ = {isa = PBXBuildFile; fileRef = 50B271D01FEDC1A000F3C39B /* public */; };
72FA9293C4A649D1BA0E5917 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 71866EB277374608AD02C137 /* PrivacyInfo.xcprivacy */; };
A084ECDBA7D38E1E42DFC39D /* Pods_App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */; };
D1115B492C653D60004C6043 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = D1115B482C653D60004C6043 /* GoogleService-Info.plist */; };
/* End PBXBuildFile section */
@@ -28,6 +29,7 @@
504EC3111FED79650016851F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
504EC3131FED79650016851F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
50B271D01FEDC1A000F3C39B /* public */ = {isa = PBXFileReference; lastKnownFileType = folder; path = public; sourceTree = "<group>"; };
71866EB277374608AD02C137 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; path = PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
AF277DCFFFF123FFC6DF26C7 /* Pods_App.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_App.framework; sourceTree = BUILT_PRODUCTS_DIR; };
AF51FD2D460BCFE21FA515B2 /* Pods-App.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-App.release.xcconfig"; path = "Pods/Target Support Files/Pods-App/Pods-App.release.xcconfig"; sourceTree = "<group>"; };
D1115B482C653D60004C6043 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
@@ -62,6 +64,7 @@
504EC3051FED79650016851F /* Products */,
7F8756D8B27F46E3366F6CEA /* Pods */,
27E2DDA53C4D2A4D1A88CE4A /* Frameworks */,
71866EB277374608AD02C137 /* PrivacyInfo.xcprivacy */,
);
sourceTree = "<group>";
};
@@ -127,8 +130,8 @@
504EC2FC1FED79650016851F /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0920;
LastUpgradeCheck = 0920;
LastSwiftUpdateCheck = 920;
LastUpgradeCheck = 920;
TargetAttributes = {
504EC3031FED79650016851F = {
CreatedOnToolsVersion = 9.2;
@@ -169,6 +172,7 @@
504EC30D1FED79650016851F /* Main.storyboard in Resources */,
2FAD9763203C412B000D30F8 /* config.xml in Resources */,
D1115B492C653D60004C6043 /* GoogleService-Info.plist in Resources */,
72FA9293C4A649D1BA0E5917 /* PrivacyInfo.xcprivacy in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -289,7 +293,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -340,7 +344,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
@@ -358,7 +362,7 @@
CURRENT_PROJECT_VERSION = 24;
DEVELOPMENT_TEAM = 6UJJ78R3BS;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.donetick.app;
MARKETING_VERSION = 1.2.2;
@@ -378,7 +382,7 @@
CURRENT_PROJECT_VERSION = 24;
DEVELOPMENT_TEAM = 6UJJ78R3BS;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 1.2.2;
PRODUCT_BUNDLE_IDENTIFIER = com.donetick.app;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View File

@@ -1,14 +1,14 @@
{
"images" : [
"images": [
{
"filename" : "AppIcon-512@2x.png",
"idiom" : "universal",
"platform" : "ios",
"size" : "1024x1024"
"idiom": "universal",
"size": "1024x1024",
"filename": "AppIcon-512@2x.png",
"platform": "ios"
}
],
"info" : {
"author" : "xcode",
"version" : 1
"info": {
"author": "xcode",
"version": 1
}
}
}

View File

@@ -1,23 +1,56 @@
{
"images" : [
"images": [
{
"idiom" : "universal",
"filename" : "splash-2732x2732-2.png",
"scale" : "1x"
"idiom": "universal",
"filename": "Default@1x~universal~anyany.png",
"scale": "1x"
},
{
"idiom" : "universal",
"filename" : "splash-2732x2732-1.png",
"scale" : "2x"
"idiom": "universal",
"filename": "Default@2x~universal~anyany.png",
"scale": "2x"
},
{
"idiom" : "universal",
"filename" : "splash-2732x2732.png",
"scale" : "3x"
"idiom": "universal",
"filename": "Default@3x~universal~anyany.png",
"scale": "3x"
},
{
"appearances": [
{
"appearance": "luminosity",
"value": "dark"
}
],
"idiom": "universal",
"scale": "1x",
"filename": "Default@1x~universal~anyany-dark.png"
},
{
"appearances": [
{
"appearance": "luminosity",
"value": "dark"
}
],
"idiom": "universal",
"scale": "2x",
"filename": "Default@2x~universal~anyany-dark.png"
},
{
"appearances": [
{
"appearance": "luminosity",
"value": "dark"
}
],
"idiom": "universal",
"scale": "3x",
"filename": "Default@3x~universal~anyany-dark.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
"info": {
"version": 1,
"author": "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -5,7 +5,7 @@
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>DoneTick</string>
<string>Donetick</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
@@ -18,10 +18,27 @@
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>$(MARKETING_VERSION)</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>com.googleusercontent.apps.682262497914-5dacpk46qcc1494lood6ch8ul9c83kop</string>
</array>
</dict>
</array>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSCameraUsageDescription</key>
<string>This app needs access to camera to take photos to attach to task or use as profile photo</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>This app needs access to photo library to select images to attach to task or use as profile photo</string>
<key>UIBackgroundModes</key>
<array/>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
@@ -30,6 +47,7 @@
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
@@ -54,9 +72,5 @@
</array>
</dict>
</array>
<key>NSCameraUsageDescription</key>
<string>This app needs access to camera to take photos to attach to task or use as profile photo</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>This app needs access to photo library to select images to attach to task or use as profile photo</string>
</dict>
</plist>
</plist>

View File

@@ -130,7 +130,7 @@ PODS:
- SQLCipher/common (4.10.0)
- SQLCipher/standard (4.10.0):
- SQLCipher/common
- ZIPFoundation (0.9.19)
- ZIPFoundation (0.9.20)
DEPENDENCIES:
- "Capacitor (from `../../node_modules/@capacitor/ios`)"
@@ -248,7 +248,7 @@ SPEC CHECKSUMS:
RevenuecatPurchasesCapacitorUi: 267758d61aba42a0a3f035e6ba3c4630112357e4
RevenueCatUI: 3c72ef61b54c3f4787afab6a3b0f00cbec192063
SQLCipher: eb79c64049cb002b4e9fcb30edb7979bf4706dfc
ZIPFoundation: b8c29ea7ae353b309bc810586181fd073cb3312c
ZIPFoundation: dfd3d681c4053ff7e2f7350bc4e53b5dba3f5351
PODFILE CHECKSUM: bb6dcef70c8edc058fe3ba311f08a223fd7dbc66

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>85F4.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
<key>NSPrivacyCollectedDataTypes</key>
<array/>
</dict>
</plist>

0
ios/Podfile Normal file
View File

2203
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -30,6 +30,7 @@
"ionic:build": "npm run build",
"ionic:serve": "npm run start",
"android": "npm run build && npx cap sync android",
"cap": "npm run build && npx cap sync",
"bump": "node bump-version.js",
"bump:minor": "node bump-version.js minor",
"bump:major": "node bump-version.js major"
@@ -104,6 +105,7 @@
"@vitejs/plugin-react-swc": "^3.5.0",
"autoprefixer": "^10.4.16",
"baseline-browser-mapping": "^2.9.19",
"capacitor-set-version": "^2.2.0",
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.2",

View File

@@ -1,14 +1,18 @@
import NavBar from '@/views/components/NavBar'
import { Button, Typography, useColorScheme } from '@mui/joy'
import Tracker from '@openreplay/tracker'
import { useCallback, useEffect } from 'react'
import { Outlet } from 'react-router-dom'
import { useRegisterSW } from 'virtual:pwa-register/react'
import { registerCapacitorListeners } from './CapacitorListener'
import PageTransition from './components/animations/PageTransition'
import { ImpersonateUserProvider } from './contexts/ImpersonateUserContext'
import SSEProvider from './contexts/SSEContext'
import { AuthProvider } from './hooks/useAuth.jsx'
import useStatusBar from './hooks/useStatusBar'
import { useResource } from './queries/ResourceQueries'
import './styles/safe-area.css'
import SSEProvider from './contexts/SSEContext'
import { useNotification } from './service/NotificationProvider'
import NetworkBanner from './views/components/NetworkBanner'
@@ -24,18 +28,14 @@ const remove = className => {
// TODO: Update the interval to at 60 minutes
const intervalMS = 5 * 60 * 1000 // 5 minutes
const startOpenReplay = () => {
if (!import.meta.env.VITE_OPENREPLAY_PROJECT_KEY) return
const tracker = new Tracker({
projectKey: import.meta.env.VITE_OPENREPLAY_PROJECT_KEY,
})
tracker.start()
}
const AppContent = () => {
const { showNotification } = useNotification()
// Initialize status bar with theme-aware configuration
useStatusBar()
const {
offlineReady: [offlineReady, setOfflineReady], // eslint-disable-line no-unused-vars
needRefresh: [needRefresh, setNeedRefresh],
updateServiceWorker,
} = useRegisterSW({
@@ -94,10 +94,11 @@ const AppContent = () => {
}
function App() {
// startOpenReplay()
const resource = useResource() // eslint-disable-line no-unused-vars
const { mode, systemMode } = useColorScheme()
// startOpenReplay()
const setThemeClass = useCallback(() => {
const value = JSON.parse(localStorage.getItem('themeMode')) || mode
@@ -124,7 +125,7 @@ function App() {
}, [])
return (
<>
<div>
<NetworkBanner />
<AuthProvider>
@@ -132,7 +133,7 @@ function App() {
<AppContent />
</SSEProvider>
</AuthProvider>
</>
</div>
)
}

56
src/hooks/useStatusBar.js Normal file
View File

@@ -0,0 +1,56 @@
import { useColorScheme } from '@mui/joy'
import { useEffect } from 'react'
import statusBarManager from '../utils/StatusBarManager'
/**
* Custom hook to manage status bar integration with Joy UI themes
* This hook automatically syncs the status bar style with the current theme
*/
export const useStatusBar = () => {
const { mode, systemMode } = useColorScheme()
useEffect(() => {
// Initialize status bar on mount
const initializeStatusBar = async () => {
await statusBarManager.initialize(mode)
}
initializeStatusBar()
// Cleanup on unmount
return () => {
statusBarManager.cleanup()
}
}, [mode]) // Include mode dependency
useEffect(() => {
// Update status bar when theme changes
const updateStatusBarTheme = async () => {
let resolvedTheme = mode
// Handle system mode by using the detected system theme
if (mode === 'system') {
resolvedTheme = systemMode || 'light'
}
// Update the status bar with the resolved theme
await statusBarManager.updateResolvedTheme(resolvedTheme)
// Also update the base theme for future reference
await statusBarManager.setTheme(mode)
// Notify any custom listeners
statusBarManager.notifyThemeChange(resolvedTheme)
}
updateStatusBarTheme()
}, [mode, systemMode]) // Update when either mode or systemMode changes
return {
statusBarManager,
currentTheme: mode,
resolvedTheme: mode === 'system' ? systemMode : mode,
}
}
export default useStatusBar

127
src/styles/safe-area.css Normal file
View File

@@ -0,0 +1,127 @@
/*
* Safe Area CSS Utilities
* These utilities provide consistent safe area handling across the app
* using CSS custom properties set by StatusBarManager
*/
:root {
/* Fallback values for safe area insets when not on native platforms */
--safe-area-inset-top: 0px;
--safe-area-inset-right: 0px;
--safe-area-inset-bottom: 0px;
--safe-area-inset-left: 0px;
}
/* Utility classes for safe area handling */
.safe-area-top {
padding-top: var(--safe-area-inset-top);
}
.safe-area-right {
padding-right: var(--safe-area-inset-right);
}
.safe-area-bottom {
padding-bottom: var(--safe-area-inset-bottom);
}
.safe-area-left {
padding-left: var(--safe-area-inset-left);
}
.safe-area-x {
padding-left: var(--safe-area-inset-left);
padding-right: var(--safe-area-inset-right);
}
.safe-area-y {
padding-top: var(--safe-area-inset-top);
padding-bottom: var(--safe-area-inset-bottom);
}
.safe-area-all {
padding-top: var(--safe-area-inset-top);
padding-right: var(--safe-area-inset-right);
padding-bottom: var(--safe-area-inset-bottom);
padding-left: var(--safe-area-inset-left);
}
/* Margin variants */
.safe-margin-top {
margin-top: var(--safe-area-inset-top);
}
.safe-margin-right {
margin-right: var(--safe-area-inset-right);
}
.safe-margin-bottom {
margin-bottom: var(--safe-area-inset-bottom);
}
.safe-margin-left {
margin-left: var(--safe-area-inset-left);
}
.safe-margin-x {
margin-left: var(--safe-area-inset-left);
margin-right: var(--safe-area-inset-right);
}
.safe-margin-y {
margin-top: var(--safe-area-inset-top);
margin-bottom: var(--safe-area-inset-bottom);
}
.safe-margin-all {
margin-top: var(--safe-area-inset-top);
margin-right: var(--safe-area-inset-right);
margin-bottom: var(--safe-area-inset-bottom);
margin-left: var(--safe-area-inset-left);
}
/* Height utilities that account for safe areas */
.min-h-screen-safe {
min-height: calc(100vh - var(--safe-area-inset-top) - var(--safe-area-inset-bottom));
}
.h-screen-safe {
height: calc(100vh - var(--safe-area-inset-top) - var(--safe-area-inset-bottom));
}
/* Top positioning that accounts for safe area */
.top-safe {
top: var(--safe-area-inset-top);
}
/* Bottom positioning that accounts for safe area */
.bottom-safe {
bottom: var(--safe-area-inset-bottom);
}
/* Fixed positioning utilities that respect safe areas */
.fixed-top-safe {
position: fixed;
top: var(--safe-area-inset-top);
left: 0;
right: 0;
z-index: 1030;
}
.fixed-bottom-safe {
position: fixed;
bottom: var(--safe-area-inset-bottom);
left: 0;
right: 0;
z-index: 1030;
}
/* Container that provides full safe area coverage */
.container-safe {
padding-top: var(--safe-area-inset-top);
padding-right: var(--safe-area-inset-right);
padding-bottom: var(--safe-area-inset-bottom);
padding-left: var(--safe-area-inset-left);
min-height: 100vh;
box-sizing: border-box;
}

View File

@@ -26,7 +26,7 @@ class StatusBarManager {
}
try {
// Configure basic status bar settings - use overlay: true for precise control
// Configure basic status bar settings
await StatusBar.setOverlaysWebView({ overlay: false })
await StatusBar.show()

View File

@@ -1,14 +1,18 @@
import { Card, Grid, Typography } from '@mui/joy'
import moment from 'moment'
import { useState } from 'react'
import ChoreCard from '../Chores/ChoreCard'
const DemoMyChore = () => {
const [selectedCalendarDate, setSelectedCalendarDate] = useState(null)
const cards = [
{
id: 12,
name: '♻️ Take out recycle ',
frequencyType: 'days_of_the_week',
frequency: 1,
priority: 1,
frequencyMetadata:
'{"days":["thursday"],"time":"2024-07-07T22:00:00-04:00"}',
nextDueDate: moment().add(1, 'days').hour(8).minute(0).toISOString(),
@@ -96,6 +100,17 @@ const DemoMyChore = () => {
]
const users = [{ displayName: 'Me', id: 1, userId: 1 }]
// Helper function to get chores for a specific date
const getChoresForDate = date => {
return cards.filter(chore => {
if (!chore.nextDueDate) return false
const choreDate = new Date(chore.nextDueDate).toLocaleDateString()
const selectedDate = date.toLocaleDateString()
return choreDate === selectedDate
})
}
return (
<>
<Grid item xs={12} sm={5} data-aos-first-tasks-list>

View File

@@ -17,6 +17,10 @@ import TabletInstallationSection from './TabletInstallationSection'
const Landing = () => {
const Navigate = useNavigate()
useEffect(() => {
// if the host is https://app.donetick.com/ then redirect to https://app.donetick.com/my/chores:
if (window.location.host === 'app.donetick.com') {
Navigate('/chores')
}
AOS.init({
once: false, // whether animation should happen only once - while scrolling down
})

View File

@@ -1,5 +1,6 @@
import ipad_screenshot from '@/assets/ipad_dashbard_calendar.png'
import { Box, Container, Typography } from '@mui/joy'
const TabletInstallationSection = () => {
return (
<Container maxWidth='xl' sx={{ py: { xs: 6, sm: 8, md: 12 } }}>

View File

@@ -1,5 +1,3 @@
import React from 'react'
const PrivacyPolicyView = () => {
return (
<div>

View File

@@ -29,7 +29,10 @@ const AccountSettings = () => {
async function configurePurchases() {
if (Capacitor.isNativePlatform() && userProfile) {
await Purchases.configure({
apiKey: import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY,
apiKey:
Capacitor.getPlatform() === 'ios'
? import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY_IOS
: import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY_ANDROID,
appUserID: String(userProfile?.id),
})
}

View File

@@ -139,7 +139,10 @@ const Settings = () => {
async function configurePurchases() {
if (Capacitor.isNativePlatform() && userProfile) {
await Purchases.configure({
apiKey: import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY,
apiKey:
Capacitor.getPlatform() === 'ios'
? import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY_IOS
: import.meta.env.VITE_REACT_APP_REVENUECAT_API_KEY_ANDROID,
appUserID: String(userProfile?.id),
})
}

View File

@@ -221,7 +221,7 @@ const NavBar = () => {
},
}}
>
<div>
<div className='drawer-content'>
{/* <div className='align-center flex px-5 pt-4'>
<ModalClose size='sm' sx={{ top: 'unset', right: 20 }} />
</div> */}