Skip to content

Commit

Permalink
Fixed minor issue with tomato icon in row, rearranged assets accordin…
Browse files Browse the repository at this point in the history
…g to electron-vite documentation, added close button to settings windows and replaced modal component with dialog component to streamline it
  • Loading branch information
ransome1 committed Jan 16, 2025
1 parent 648e28e commit ee0a610
Show file tree
Hide file tree
Showing 52 changed files with 160 additions and 126 deletions.
4 changes: 0 additions & 4 deletions .eslintignore

This file was deleted.

9 changes: 0 additions & 9 deletions .eslintrc.cjs

This file was deleted.

6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# sleek
[<img src="https://api.gitsponsors.com/api/badge/img?id=301463691" height="30">](https://api.gitsponsors.com/api/badge/link?p=D8BfxYAU1DxX1VNxduDJQbIUSYf6yxW/d0eMica/OVIxkPYetoBj4zOxaMZ2M2UWztuE+Q9zJ62tLJqTewz4UzgisFtstXsGEBi0GLqJTMhvroMtJREbEjD6DFlvykacEc+7ak5lmmxN6ZECCJbm7w==)

![image](https://github.com/ransome1/sleek/assets/11188741/304d2da2-e8bd-4901-9d12-04a0f5426317)

### sleek is an open-source (FOSS) todo manager based on the todo.txt syntax. It's available for Windows, macOS and Linux
Expand All @@ -16,7 +18,7 @@ Pushing sleek to the Apple and Microsoft app stores creates annual costs. You ca
sleek's backlog is becoming increasingly populated, yet our capacity remains limited. If you are skilled in `React`, `TypeScript`, `Electron`, or `Jest/Playwright` you can support this project. Here you'll find our backlog: https://github.com/users/ransome1/projects/3. For those interested, [we've updated our contribution guidelines](https://github.com/ransome1/sleek/wiki/Contributing-Guidelines). The `develop` branch reflects the most recent progress.

### Get sleek from Apple Mac App Store
<a href="https://apps.apple.com/us/app/sleek-todo-manager/id1614704209" target="blank"><img src='assets/store_badges/Download_on_the_Mac_App_Store.png' alt='Get sleek from Apple Mac App Store' width='180'/></a>
https://apps.apple.com/us/app/sleek-todo-manager/id1614704209

### Get sleek from Microsoft Store
<a href="//www.microsoft.com/store/apps/9NWM2WXF60KR?cid=storebadge&ocid=badge" target="blank"><img src='https://developer.microsoft.com/store/badges/images/English_get-it-from-MS.png' alt='English badge' width='180'/></a>
Expand Down Expand Up @@ -45,4 +47,4 @@ Install sleek from [AUR](https://aur.archlinux.org/packages/sleek/).
### Download sleek
You can download sleek for Windows, macOS and Linux from
- [SourceForge](https://sourceforge.net/p/sleek/)
- [GitHub](https://github.com/ransome1/sleek/releases/latest)
- [GitHub](https://github.com/ransome1/sleek/releases/latest)
Binary file removed assets/icons/96x96.png
Binary file not shown.
Binary file not shown.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
16 changes: 8 additions & 8 deletions electron-builder.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
directories:
output: dist
buildResources: build
buildVersion: '52'
buildVersion: '54'
asar: true
mac:
appId: com.todotxt.sleek
Expand Down Expand Up @@ -31,13 +31,13 @@ dmg:
x: 130
y: 410
masDev:
entitlements: ./assets/entitlements.mas.plist
entitlementsInherit: ./assets/entitlements.mas.inherit.plist
provisioningProfile: ./assets/development.provisionprofile
entitlements: ./build/entitlements.mas.plist
entitlementsInherit: ./build/entitlements.mas.inherit.plist
provisioningProfile: ./build/development.provisionprofile
mas:
entitlements: ./assets/entitlements.mas.plist
entitlementsInherit: ./assets/entitlements.mas.inherit.plist
provisioningProfile: ./assets/distribution.provisionprofile
entitlements: ./build/entitlements.mas.plist
entitlementsInherit: ./build/entitlements.mas.inherit.plist
provisioningProfile: ./build/distribution.provisionprofile
win:
target:
- target: zip
Expand Down Expand Up @@ -71,7 +71,7 @@ appx:
publisherDisplayName: ransome1
applicationId: RobinAhle.sleektodomanager
linux:
icon: resources/icon
icon: ./resources/icon
category: ProjectManagement
artifactName: ${productName}-${version}-linux-${arch}.${ext}
target:
Expand Down
2 changes: 0 additions & 2 deletions electron.vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,8 @@ import react from '@vitejs/plugin-react'

export default {
main: {
// vite config options
},
preload: {
// vite config options
},
renderer: {
resolve: {
Expand Down
9 changes: 9 additions & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
export default [
{
files: ["**/*.tsx"],
rules: {
"semi": "error",
"no-unused-vars": "error"
}
}
];
17 changes: 6 additions & 11 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "sleek",
"productName": "sleek",
"version": "2.0.16-rc.1",
"version": "2.0.16",
"description": "todo.txt manager for Linux, Windows and MacOS, free and open-source (FOSS)",
"synopsis": "todo.txt manager for Linux, Windows and MacOS, free and open-source (FOSS)",
"keywords": [
Expand Down Expand Up @@ -29,7 +29,7 @@
"type": "module",
"scripts": {
"format": "prettier --write .",
"lint": "eslint . --ext .js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
"lint": "eslint ./src --fix",
"typecheck:node": "tsc --noEmit -p tsconfig.node.json --composite false",
"typecheck:web": "tsc --noEmit -p tsconfig.web.json --composite false",
"typecheck": "yarn typecheck:node && yarn typecheck:web",
Expand All @@ -38,20 +38,16 @@
"build": "yarn peggy && electron-vite build",
"postinstall": "electron-builder install-app-deps",
"build:unpack": "yarn build && electron-builder --dir",
"build:win": "yarn build && electron-builder --win",
"build:mac": "yarn build && electron-builder --mac",
"build:linux": "yarn build && electron-builder --linux",
"mas": "yarn build && electron-builder build -m mas --universal --publish never",
"masdev": "yarn build && electron-builder build -m mas-dev --universal --publish never",
"peggy": "peggy --format es --output ./src/main/modules/Filters/FilterLang.js ./src/main/modules/Filters/FilterLang.pegjs"
},
},
"dependencies": {
"@electron-toolkit/utils": "^3.0.0",
"@emotion/react": "^11.13.5",
"@emotion/styled": "^11.13.5",
"@mui/icons-material": "^6.3.1",
"@mui/material": "^6.3.1",
"@mui/system": "^6.3.1",
"@mui/icons-material": "^6.4.0",
"@mui/material": "^6.4.0",
"@mui/system": "^6.4.0",
"@mui/x-date-pickers": "^7.23.3",
"chokidar": "^4.0.3",
"dayjs": "^1.11.13",
Expand All @@ -68,7 +64,6 @@
"sugar": "^2.0.6"
},
"devDependencies": {
"@babel/types": "^7.26.5",
"@electron-toolkit/eslint-config-prettier": "^2.0.0",
"@electron-toolkit/eslint-config-ts": "^2.0.0",
"@electron-toolkit/tsconfig": "^1.0.1",
Expand Down
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
2 changes: 1 addition & 1 deletion snap/snapcraft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ description: |
grade: stable
confinement: strict
icon: ./assets/icons/512x512.png
icon: ./build/icons/512x512.png
license: MIT
compression: lzo
platforms:
Expand Down
2 changes: 1 addition & 1 deletion src/__tests__/main/File.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import path from 'path'
import path from 'path';
import { config } from '../../main/config';
import { addFile, removeFile, setFile } from '../../main/modules/File/File';

Expand Down
2 changes: 1 addition & 1 deletion src/__tests__/main/Filters.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ describe('Should filter todos based on passed filters', () => {
test('should filter todo objects based on project filter', () => {
const filters = {
projects: [ { values: ['Project 1'], exclude: false } ]
}
};
const expected = [
{ lineNumber: 1, body: 'Test', created: null, complete: false, completed: null, priority: null, contexts: null, projects: ['Project 1'], due: '2023-01-01', dueString: '2023-01-01', t: null, tString: null, rec: null, hidden: false, pm: null, string: '' },
{ lineNumber: 3, body: 'Test', created: null, complete: false, completed: null, priority: null, contexts: null, projects: ['Project 1'], due: '2023-03-01', dueString: '2023-03-01', t: null, tString: null, rec: null, hidden: false, pm: null, string: '' },
Expand Down
1 change: 1 addition & 0 deletions src/locales/cs.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Přidat",
"todoDialog.footer.update": "Aktualizovat",
"todoDialog.footer.cancel": "Zrušit",
"todoDialog.footer.close": "Zavřít",
"todoDialog.snackbar.emptyInput": "Zadejte prosím něco do textového pole",
"todoDialog.priorityPicker.label": "Priorita",
"todoDialog.datePicker.t": "Termín",
Expand Down
1 change: 1 addition & 0 deletions src/locales/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Hinzufügen",
"todoDialog.footer.update": "Aktualisieren",
"todoDialog.footer.cancel": "Abbrechen",
"todoDialog.footer.close": "Schließen",
"todoDialog.snackbar.emptyInput": "Bitte geben Sie etwas in das Textfeld ein",
"todoDialog.priorityPicker.label": "Priorität",
"todoDialog.datePicker.t": "Schwellenwert",
Expand Down
1 change: 1 addition & 0 deletions src/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Add",
"todoDialog.footer.update": "Update",
"todoDialog.footer.cancel": "Cancel",
"todoDialog.footer.close": "Close",
"todoDialog.snackbar.emptyInput": "Please enter something into the text field",
"todoDialog.priorityPicker.label": "Priority",
"todoDialog.datePicker.t": "Threshold",
Expand Down
1 change: 1 addition & 0 deletions src/locales/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Agregar",
"todoDialog.footer.update": "Actualizar",
"todoDialog.footer.cancel": "Cancelar",
"todoDialog.footer.close": "Cerrar",
"todoDialog.snackbar.emptyInput": "Por favor, ingrese algo en el campo de texto",
"todoDialog.priorityPicker.label": "Prioridad",
"todoDialog.datePicker.t": "Fecha umbral",
Expand Down
1 change: 1 addition & 0 deletions src/locales/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Ajouter",
"todoDialog.footer.update": "Mettre à jour",
"todoDialog.footer.cancel": "Annuler",
"todoDialog.footer.close": "Fermer",
"todoDialog.snackbar.emptyInput": "Veuillez entrer quelque chose dans le champ de texte",
"todoDialog.priorityPicker.label": "Priorité",
"todoDialog.datePicker.t": "Date limite",
Expand Down
1 change: 1 addition & 0 deletions src/locales/hi.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "जोड़ें",
"todoDialog.footer.update": "अपडेट करें",
"todoDialog.footer.cancel": "रद्द करें",
"todoDialog.footer.close": "बंद करें",
"todoDialog.snackbar.emptyInput": "कृपया पाठ फ़ील्ड में कुछ डालें",
"todoDialog.priorityPicker.label": "प्राथमिकता",
"todoDialog.datePicker.t": "सीमा",
Expand Down
1 change: 1 addition & 0 deletions src/locales/hu.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Hozzáadás",
"todoDialog.footer.update": "Frissítés",
"todoDialog.footer.cancel": "Mégse",
"todoDialog.footer.close": "Bezárás",
"todoDialog.snackbar.emptyInput": "Kérjük, írjon be valamit a szövegmezőbe",
"todoDialog.priorityPicker.label": "Prioritás",
"todoDialog.datePicker.t": "Hátralévő dátum",
Expand Down
1 change: 1 addition & 0 deletions src/locales/it.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Aggiungi",
"todoDialog.footer.update": "Aggiorna",
"todoDialog.footer.cancel": "Annulla",
"todoDialog.footer.close": "Chiudi",
"todoDialog.snackbar.emptyInput": "Inserisci qualcosa nel campo di testo, per favore",
"todoDialog.priorityPicker.label": "Priorità",
"todoDialog.datePicker.t": "Data di scadenza",
Expand Down
1 change: 1 addition & 0 deletions src/locales/jp.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "追加",
"todoDialog.footer.update": "更新",
"todoDialog.footer.cancel": "キャンセル",
"todoDialog.footer.close": "閉じる",
"todoDialog.snackbar.emptyInput": "テキストフィールドに何かを入力してください",
"todoDialog.priorityPicker.label": "優先度",
"todoDialog.datePicker.t": "期限日",
Expand Down
1 change: 1 addition & 0 deletions src/locales/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "추가",
"todoDialog.footer.update": "업데이트",
"todoDialog.footer.cancel": "취소",
"todoDialog.footer.close": "닫기",
"todoDialog.snackbar.emptyInput": "텍스트 필드에 내용을 입력하세요",
"todoDialog.priorityPicker.label": "우선 순위",
"todoDialog.datePicker.t": "임계",
Expand Down
1 change: 1 addition & 0 deletions src/locales/pl.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Dodaj",
"todoDialog.footer.update": "Aktualizuj",
"todoDialog.footer.cancel": "Anuluj",
"todoDialog.footer.close": "Zamknij",
"todoDialog.snackbar.emptyInput": "Proszę wprowadzić coś do pola tekstowego",
"todoDialog.priorityPicker.label": "Priorytet",
"todoDialog.datePicker.t": "Data progowa",
Expand Down
1 change: 1 addition & 0 deletions src/locales/pt.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Adicionar",
"todoDialog.footer.update": "Atualizar",
"todoDialog.footer.cancel": "Cancelar",
"todoDialog.footer.close": "Fechar",
"todoDialog.snackbar.emptyInput": "Por favor, insira algo no campo de texto",
"todoDialog.priorityPicker.label": "Prioridade",
"todoDialog.datePicker.t": "Data de limite",
Expand Down
1 change: 1 addition & 0 deletions src/locales/ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Добавить",
"todoDialog.footer.update": "Обновить",
"todoDialog.footer.cancel": "Отменить",
"todoDialog.footer.close": "Закрыть",
"todoDialog.snackbar.emptyInput": "Пожалуйста, введите что-то в текстовое поле",
"todoDialog.priorityPicker.label": "Приоритет",
"todoDialog.datePicker.t": "Дата порога",
Expand Down
1 change: 1 addition & 0 deletions src/locales/tr.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "Ekle",
"todoDialog.footer.update": "Güncelle",
"todoDialog.footer.cancel": "İptal",
"todoDialog.footer.close": "Kapat",
"todoDialog.snackbar.emptyInput": "Lütfen metin alanına bir şeyler yazın",
"todoDialog.priorityPicker.label": "Öncelik",
"todoDialog.datePicker.t": "Eşik",
Expand Down
1 change: 1 addition & 0 deletions src/locales/zh.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"todoDialog.footer.add": "添加",
"todoDialog.footer.update": "更新",
"todoDialog.footer.cancel": "取消",
"todoDialog.footer.close": "关闭",
"todoDialog.snackbar.emptyInput": "请在文本字段中输入内容",
"todoDialog.priorityPicker.label": "优先级",
"todoDialog.datePicker.t": "阈值",
Expand Down
2 changes: 1 addition & 1 deletion src/main/modules/Tray.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { fileURLToPath } from 'url';
import { handleCreateWindow } from '../index';
import { config } from '../config';
import { setFile } from './File/File';
import trayIcon from '../../../resources/tray/tray.png?asset'
import trayIcon from '../../../resources/tray.png?asset'

let tray: Tray;

Expand Down
1 change: 1 addition & 0 deletions src/renderer/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,7 @@ const App = () => {
isOpen={isSettingsOpen}
onClose={() => setIsSettingsOpen(false)}
settings={settings}
setIsSettingsOpen={setIsSettingsOpen}
/>
{contextMenu && (
<ContextMenu
Expand Down
3 changes: 1 addition & 2 deletions src/renderer/Dialog/PomodoroPicker.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import React from 'react';
import FormControl from '@mui/material/FormControl';
import TextField from '@mui/material/TextField';
//import TomatoIconDuo from '../../../assets/icons/tomato-duo.svg';
import TomatoIconDuo from '../public/tomato-duo.svg?asset'
import TomatoIconDuo from '../tomato-duo.svg?asset'
import './PomodoroPicker.scss';

interface PomodoroPickerProps {
Expand Down
2 changes: 1 addition & 1 deletion src/renderer/Grid/Renderer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import remarkGfm from 'remark-gfm'
import Button from '@mui/material/Button';
import Chip from '@mui/material/Chip';
import Tooltip from '@mui/material/Tooltip';
import TomatoIconDuo from '../public/tomato-duo.svg?asset'
import TomatoIconDuo from '../tomato-duo.svg?asset'
import DatePickerInline from './DatePickerInline';
import OpenInNewIcon from '@mui/icons-material/OpenInNew';
import { handleLinkClick } from '../Shared';
Expand Down
1 change: 1 addition & 0 deletions src/renderer/Grid/Row.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ const Row: React.FC<Props> = memo(({
if(clickedElement.tagName.toLowerCase() === 'input') match = true;
if(clickedElement.tagName.toLowerCase() === 'button') match = true;
if(clickedElement.tagName.toLowerCase() === 'svg') match = true;
if(clickedElement.tagName.toLowerCase() === 'img') match = true;
return match;
};
if(!preventDialog() && todoObject) {
Expand Down
45 changes: 27 additions & 18 deletions src/renderer/Settings/Settings.scss
Original file line number Diff line number Diff line change
@@ -1,26 +1,35 @@
@use "../Variables.scss";

.modal {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 35em;
max-width: 90vw;
max-height: 90vh;
overflow: auto;
border-radius: Variables.$radius;
padding: 1em 2em 2em 2em;
display: flex;
flex-direction: column;
.MuiLink-root {
cursor: pointer;
}
.MuiInputBase-root {
#DialogSettingsComponent {
label {
width: 100%;
}
.MuiFormControl-root {
width: 100%;
margin: 1em 0 0 0;

}
}
// .modal {
// position: absolute;
// top: 50%;
// left: 50%;
// transform: translate(-50%, -50%);
// width: 35em;
// max-width: 90vw;
// max-height: 90vh;
// overflow: auto;
// border-radius: Variables.$radius;
// padding: 1em 2em 2em 2em;
// display: flex;
// flex-direction: column;
// .MuiLink-root {
// cursor: pointer;
// }
// .MuiInputBase-root {
// width: 100%;
// }
// .MuiFormControl-root {
// margin: 1em 0 0 0;

// }
// }
Loading

0 comments on commit ee0a610

Please sign in to comment.