Performans çalışmaları

Kullanılmayan packageler kaldırılıyor
This commit is contained in:
Sedat Öztürk 2025-08-16 12:27:34 +03:00
parent c5c7060a52
commit 1899fe6261
8 changed files with 20 additions and 397 deletions

View file

@ -82,7 +82,7 @@ define(['./workbox-54d0af47'], (function (workbox) { 'use strict';
"revision": "3ca0b8505b4bec776b69afdba2768812" "revision": "3ca0b8505b4bec776b69afdba2768812"
}, { }, {
"url": "index.html", "url": "index.html",
"revision": "0.760g82pgmf" "revision": "0.8i0jtipgu58"
}], {}); }], {});
workbox.cleanupOutdatedCaches(); workbox.cleanupOutdatedCaches();
workbox.registerRoute(new workbox.NavigationRoute(workbox.createHandlerBoundToURL("index.html"), { workbox.registerRoute(new workbox.NavigationRoute(workbox.createHandlerBoundToURL("index.html"), {

364
ui/package-lock.json generated
View file

@ -27,7 +27,6 @@
"@tanstack/react-table": "^8.8.5", "@tanstack/react-table": "^8.8.5",
"axios": "^1.7.9", "axios": "^1.7.9",
"classnames": "^2.5.1", "classnames": "^2.5.1",
"date-fns": "^4.1.0",
"dayjs": "^1.11.13", "dayjs": "^1.11.13",
"devextreme": "^23.2.11", "devextreme": "^23.2.11",
"devextreme-react": "^23.2.11", "devextreme-react": "^23.2.11",
@ -36,7 +35,6 @@
"file-saver": "^2.0.2", "file-saver": "^2.0.2",
"formik": "^2.4.6", "formik": "^2.4.6",
"framer-motion": "^11.15.0", "framer-motion": "^11.15.0",
"history": "^5.3.0",
"jspdf": "^3.0.1", "jspdf": "^3.0.1",
"jwt-decode": "^4.0.0", "jwt-decode": "^4.0.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
@ -76,7 +74,6 @@
"autoprefixer": "^10.4.14", "autoprefixer": "^10.4.14",
"browserslist": "^4.25.2", "browserslist": "^4.25.2",
"caniuse-lite": "^1.0.30001734", "caniuse-lite": "^1.0.30001734",
"cross-env": "^7.0.3",
"cssnano": "^6.0.1", "cssnano": "^6.0.1",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"eslint": "^8.36.0", "eslint": "^8.36.0",
@ -92,8 +89,6 @@
"eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.1", "eslint-plugin-react-refresh": "^0.4.1",
"postcss": "^8.4.21", "postcss": "^8.4.21",
"postcss-cli": "^11.0.0",
"postcss-nesting": "^12.0.2",
"prettier": "^3.1.1", "prettier": "^3.1.1",
"rollup-plugin-polyfill-node": "^0.12.0", "rollup-plugin-polyfill-node": "^0.12.0",
"rollup-plugin-postcss": "^4.0.2", "rollup-plugin-postcss": "^4.0.2",
@ -1734,7 +1729,6 @@
"ppc64" "ppc64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"aix" "aix"
@ -1751,7 +1745,6 @@
"arm" "arm"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"android" "android"
@ -1768,7 +1761,6 @@
"arm64" "arm64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"android" "android"
@ -1785,7 +1777,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"android" "android"
@ -1802,7 +1793,6 @@
"arm64" "arm64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"darwin" "darwin"
@ -1819,7 +1809,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"darwin" "darwin"
@ -1836,7 +1825,6 @@
"arm64" "arm64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"freebsd" "freebsd"
@ -1853,7 +1841,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"freebsd" "freebsd"
@ -1870,7 +1857,6 @@
"arm" "arm"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1887,7 +1873,6 @@
"arm64" "arm64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1904,7 +1889,6 @@
"ia32" "ia32"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1921,7 +1905,6 @@
"loong64" "loong64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1938,7 +1921,6 @@
"mips64el" "mips64el"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1955,7 +1937,6 @@
"ppc64" "ppc64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1972,7 +1953,6 @@
"riscv64" "riscv64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -1989,7 +1969,6 @@
"s390x" "s390x"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -2006,7 +1985,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"linux" "linux"
@ -2023,7 +2001,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"netbsd" "netbsd"
@ -2040,7 +2017,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"openbsd" "openbsd"
@ -2057,7 +2033,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"sunos" "sunos"
@ -2074,7 +2049,6 @@
"arm64" "arm64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"win32" "win32"
@ -2091,7 +2065,6 @@
"ia32" "ia32"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"win32" "win32"
@ -2108,7 +2081,6 @@
"x64" "x64"
], ],
"dev": true, "dev": true,
"license": "MIT",
"optional": true, "optional": true,
"os": [ "os": [
"win32" "win32"
@ -2939,17 +2911,6 @@
"win32" "win32"
] ]
}, },
"node_modules/@sindresorhus/merge-streams": {
"version": "2.3.0",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/@surma/rollup-plugin-off-main-thread": { "node_modules/@surma/rollup-plugin-off-main-thread": {
"version": "2.2.3", "version": "2.2.3",
"dev": true, "dev": true,
@ -4442,23 +4403,6 @@
"node": ">= 6" "node": ">= 6"
} }
}, },
"node_modules/cross-env": {
"version": "7.0.3",
"dev": true,
"license": "MIT",
"dependencies": {
"cross-spawn": "^7.0.1"
},
"bin": {
"cross-env": "src/bin/cross-env.js",
"cross-env-shell": "src/bin/cross-env-shell.js"
},
"engines": {
"node": ">=10.14",
"npm": ">=6",
"yarn": ">=1"
}
},
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "7.0.6", "version": "7.0.6",
"license": "MIT", "license": "MIT",
@ -4700,14 +4644,6 @@
"dev": true, "dev": true,
"license": "BSD-2-Clause" "license": "BSD-2-Clause"
}, },
"node_modules/date-fns": {
"version": "4.1.0",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/kossnocorp"
}
},
"node_modules/dayjs": { "node_modules/dayjs": {
"version": "1.11.13", "version": "1.11.13",
"license": "MIT" "license": "MIT"
@ -4822,14 +4758,6 @@
"node": ">=0.4.0" "node": ">=0.4.0"
} }
}, },
"node_modules/dependency-graph": {
"version": "0.11.0",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 0.6.0"
}
},
"node_modules/detect-node": { "node_modules/detect-node": {
"version": "2.1.0", "version": "2.1.0",
"license": "MIT" "license": "MIT"
@ -5310,7 +5238,6 @@
"integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
"dev": true, "dev": true,
"hasInstallScript": true, "hasInstallScript": true,
"license": "MIT",
"bin": { "bin": {
"esbuild": "bin/esbuild" "esbuild": "bin/esbuild"
}, },
@ -6291,21 +6218,6 @@
"version": "1.0.0", "version": "1.0.0",
"license": "MIT" "license": "MIT"
}, },
"node_modules/fs-extra": {
"version": "11.3.1",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.1.tgz",
"integrity": "sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==",
"dev": true,
"license": "MIT",
"dependencies": {
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
},
"engines": {
"node": ">=14.14"
}
},
"node_modules/fs.realpath": { "node_modules/fs.realpath": {
"version": "1.0.0", "version": "1.0.0",
"license": "ISC" "license": "ISC"
@ -6441,17 +6353,6 @@
"node": ">= 0.4" "node": ">= 0.4"
} }
}, },
"node_modules/get-stdin": {
"version": "9.0.0",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/get-symbol-description": { "node_modules/get-symbol-description": {
"version": "1.0.0", "version": "1.0.0",
"dev": true, "dev": true,
@ -6651,13 +6552,6 @@
"version": "1.2.2", "version": "1.2.2",
"license": "MIT" "license": "MIT"
}, },
"node_modules/history": {
"version": "5.3.0",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.7.6"
}
},
"node_modules/hoist-non-react-statics": { "node_modules/hoist-non-react-statics": {
"version": "3.3.2", "version": "3.3.2",
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
@ -8221,89 +8115,6 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/postcss-cli": {
"version": "11.0.0",
"dev": true,
"license": "MIT",
"dependencies": {
"chokidar": "^3.3.0",
"dependency-graph": "^0.11.0",
"fs-extra": "^11.0.0",
"get-stdin": "^9.0.0",
"globby": "^14.0.0",
"picocolors": "^1.0.0",
"postcss-load-config": "^5.0.0",
"postcss-reporter": "^7.0.0",
"pretty-hrtime": "^1.0.3",
"read-cache": "^1.0.0",
"slash": "^5.0.0",
"yargs": "^17.0.0"
},
"bin": {
"postcss": "index.js"
},
"engines": {
"node": ">=18"
},
"peerDependencies": {
"postcss": "^8.0.0"
}
},
"node_modules/postcss-cli/node_modules/globby": {
"version": "14.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz",
"integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@sindresorhus/merge-streams": "^2.1.0",
"fast-glob": "^3.3.3",
"ignore": "^7.0.3",
"path-type": "^6.0.0",
"slash": "^5.1.0",
"unicorn-magic": "^0.3.0"
},
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/postcss-cli/node_modules/ignore": {
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
"integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 4"
}
},
"node_modules/postcss-cli/node_modules/path-type": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz",
"integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/postcss-cli/node_modules/slash": {
"version": "5.1.0",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=14.16"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/postcss-colormin": { "node_modules/postcss-colormin": {
"version": "6.1.0", "version": "6.1.0",
"resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz",
@ -8424,55 +8235,6 @@
"postcss": "^8.4.21" "postcss": "^8.4.21"
} }
}, },
"node_modules/postcss-load-config": {
"version": "5.1.0",
"dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"license": "MIT",
"dependencies": {
"lilconfig": "^3.1.1",
"yaml": "^2.4.2"
},
"engines": {
"node": ">= 18"
},
"peerDependencies": {
"jiti": ">=1.21.0",
"postcss": ">=8.0.9",
"tsx": "^4.8.1"
},
"peerDependenciesMeta": {
"jiti": {
"optional": true
},
"postcss": {
"optional": true
},
"tsx": {
"optional": true
}
}
},
"node_modules/postcss-load-config/node_modules/lilconfig": {
"version": "3.1.3",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=14"
},
"funding": {
"url": "https://github.com/sponsors/antonk52"
}
},
"node_modules/postcss-merge-longhand": { "node_modules/postcss-merge-longhand": {
"version": "6.0.5", "version": "6.0.5",
"resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz",
@ -8743,86 +8505,6 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/postcss-nesting": {
"version": "12.1.5",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/csstools"
},
{
"type": "opencollective",
"url": "https://opencollective.com/csstools"
}
],
"license": "MIT-0",
"dependencies": {
"@csstools/selector-resolve-nested": "^1.1.0",
"@csstools/selector-specificity": "^3.1.1",
"postcss-selector-parser": "^6.1.0"
},
"engines": {
"node": "^14 || ^16 || >=18"
},
"peerDependencies": {
"postcss": "^8.4"
}
},
"node_modules/postcss-nesting/node_modules/@csstools/selector-resolve-nested": {
"version": "1.1.0",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/csstools"
},
{
"type": "opencollective",
"url": "https://opencollective.com/csstools"
}
],
"license": "MIT-0",
"engines": {
"node": "^14 || ^16 || >=18"
},
"peerDependencies": {
"postcss-selector-parser": "^6.0.13"
}
},
"node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": {
"version": "3.1.1",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/csstools"
},
{
"type": "opencollective",
"url": "https://opencollective.com/csstools"
}
],
"license": "MIT-0",
"engines": {
"node": "^14 || ^16 || >=18"
},
"peerDependencies": {
"postcss-selector-parser": "^6.0.13"
}
},
"node_modules/postcss-nesting/node_modules/postcss-selector-parser": {
"version": "6.1.2",
"dev": true,
"license": "MIT",
"dependencies": {
"cssesc": "^3.0.0",
"util-deprecate": "^1.0.2"
},
"engines": {
"node": ">=4"
}
},
"node_modules/postcss-normalize-charset": { "node_modules/postcss-normalize-charset": {
"version": "6.0.2", "version": "6.0.2",
"resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz",
@ -9015,25 +8697,6 @@
"postcss": "^8.4.31" "postcss": "^8.4.31"
} }
}, },
"node_modules/postcss-reporter": {
"version": "7.0.5",
"dev": true,
"license": "MIT",
"dependencies": {
"picocolors": "^1.0.0",
"thenby": "^1.3.4"
},
"engines": {
"node": ">=10"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
"peerDependencies": {
"postcss": "^8.1.0"
}
},
"node_modules/postcss-selector-parser": { "node_modules/postcss-selector-parser": {
"version": "6.0.10", "version": "6.0.10",
"dev": true, "dev": true,
@ -9154,14 +8817,6 @@
"url": "https://github.com/sponsors/sindresorhus" "url": "https://github.com/sponsors/sindresorhus"
} }
}, },
"node_modules/pretty-hrtime": {
"version": "1.0.3",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/process-nextick-args": { "node_modules/process-nextick-args": {
"version": "2.0.1", "version": "2.0.1",
"license": "MIT" "license": "MIT"
@ -11361,11 +11016,6 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/thenby": {
"version": "1.3.4",
"dev": true,
"license": "Apache-2.0"
},
"node_modules/thenify": { "node_modules/thenify": {
"version": "3.3.1", "version": "3.3.1",
"license": "MIT", "license": "MIT",
@ -11675,19 +11325,6 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/unicorn-magic": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
"integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/unique-string": { "node_modules/unique-string": {
"version": "2.0.0", "version": "2.0.0",
"dev": true, "dev": true,
@ -11813,7 +11450,6 @@
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.19.tgz", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.19.tgz",
"integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==", "integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==",
"dev": true, "dev": true,
"license": "MIT",
"dependencies": { "dependencies": {
"esbuild": "^0.21.3", "esbuild": "^0.21.3",
"postcss": "^8.4.43", "postcss": "^8.4.43",

View file

@ -34,7 +34,6 @@
"@tanstack/react-table": "^8.8.5", "@tanstack/react-table": "^8.8.5",
"axios": "^1.7.9", "axios": "^1.7.9",
"classnames": "^2.5.1", "classnames": "^2.5.1",
"date-fns": "^4.1.0",
"dayjs": "^1.11.13", "dayjs": "^1.11.13",
"devextreme": "^23.2.11", "devextreme": "^23.2.11",
"devextreme-react": "^23.2.11", "devextreme-react": "^23.2.11",
@ -43,7 +42,6 @@
"file-saver": "^2.0.2", "file-saver": "^2.0.2",
"formik": "^2.4.6", "formik": "^2.4.6",
"framer-motion": "^11.15.0", "framer-motion": "^11.15.0",
"history": "^5.3.0",
"jspdf": "^3.0.1", "jspdf": "^3.0.1",
"jwt-decode": "^4.0.0", "jwt-decode": "^4.0.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
@ -83,7 +81,6 @@
"autoprefixer": "^10.4.14", "autoprefixer": "^10.4.14",
"browserslist": "^4.25.2", "browserslist": "^4.25.2",
"caniuse-lite": "^1.0.30001734", "caniuse-lite": "^1.0.30001734",
"cross-env": "^7.0.3",
"cssnano": "^6.0.1", "cssnano": "^6.0.1",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"eslint": "^8.36.0", "eslint": "^8.36.0",
@ -99,8 +96,6 @@
"eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.1", "eslint-plugin-react-refresh": "^0.4.1",
"postcss": "^8.4.21", "postcss": "^8.4.21",
"postcss-cli": "^11.0.0",
"postcss-nesting": "^12.0.2",
"prettier": "^3.1.1", "prettier": "^3.1.1",
"rollup-plugin-polyfill-node": "^0.12.0", "rollup-plugin-polyfill-node": "^0.12.0",
"rollup-plugin-postcss": "^4.0.2", "rollup-plugin-postcss": "^4.0.2",

View file

@ -5,9 +5,4 @@ module.exports = {
autoprefixer: {}, autoprefixer: {},
cssnano: {}, cssnano: {},
}, },
} }
// require('postcss-import'),
// require('tailwindcss/nesting'),
// require('tailwindcss'),
// require('postcss-preset-env'),
// require('cssnano'),

View file

@ -1,3 +0,0 @@
import * as history from 'history'
export default history.createBrowserHistory()

View file

@ -1,7 +1,9 @@
import { Folder, MessageSquare, FileText, TrendingUp } from 'lucide-react' import { Folder, MessageSquare, FileText, TrendingUp } from 'lucide-react'
import { ForumCategory, ForumPost, ForumTopic } from '@/proxy/forum/forum' import { ForumCategory, ForumPost, ForumTopic } from '@/proxy/forum/forum'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
import { formatDistanceToNow } from 'date-fns' import dayjs from 'dayjs'
import relativeTime from 'dayjs/plugin/relativeTime'
import 'dayjs/locale/tr'
interface AdminStatsProps { interface AdminStatsProps {
categories: ForumCategory[] categories: ForumCategory[]
@ -57,6 +59,9 @@ export function AdminStats({ categories, topics, posts }: AdminStatsProps) {
const recentActivities: Activity[] = [] const recentActivities: Activity[] = []
dayjs.extend(relativeTime)
dayjs.locale('tr')
// Topics -> "New topic created in {categoryName}" // Topics -> "New topic created in {categoryName}"
topics.forEach((topic) => { topics.forEach((topic) => {
const category = categories.find((c) => c.id === topic.categoryId) const category = categories.find((c) => c.id === topic.categoryId)
@ -137,9 +142,7 @@ export function AdminStats({ categories, topics, posts }: AdminStatsProps) {
<div className={`w-2 h-2 ${activity.color} rounded-full mt-2`} /> <div className={`w-2 h-2 ${activity.color} rounded-full mt-2`} />
<div> <div>
<p className="text-sm text-gray-900">{activity.message}</p> <p className="text-sm text-gray-900">{activity.message}</p>
<p className="text-xs text-gray-500"> <p className="text-xs text-gray-500">{dayjs(activity.date).fromNow()}</p>
{formatDistanceToNow(activity.date, { addSuffix: true })}
</p>
</div> </div>
</div> </div>
))} ))}

View file

@ -1,8 +1,8 @@
import React, { useEffect, useState } from 'react' import React, { useEffect, useState } from 'react'
import { Link } from 'react-router-dom' import { Link } from 'react-router-dom'
import { Calendar, Clock, User, Tag, Search } from 'lucide-react' import { Calendar, Clock, User, Tag, Search } from 'lucide-react'
import { format } from 'date-fns' import dayjs from 'dayjs'
import { tr } from 'date-fns/locale' import 'dayjs/locale/tr'
import { BlogCategory, BlogPost } from '@/proxy/blog/blog' import { BlogCategory, BlogPost } from '@/proxy/blog/blog'
import { blogService } from '@/services/blog.service' import { blogService } from '@/services/blog.service'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
@ -19,6 +19,8 @@ const Blog = () => {
const [currentPage, setCurrentPage] = useState(1) const [currentPage, setCurrentPage] = useState(1)
const [totalPages, setTotalPages] = useState(1) const [totalPages, setTotalPages] = useState(1)
dayjs.locale('tr')
useEffect(() => { useEffect(() => {
loadBlogData() loadBlogData()
}, [currentPage, selectedCategory]) }, [currentPage, selectedCategory])
@ -193,9 +195,7 @@ const Blog = () => {
</div> </div>
<div className="flex items-center"> <div className="flex items-center">
<Calendar size={16} className="mr-1" /> <Calendar size={16} className="mr-1" />
{format(new Date(post.publishedAt || post.creationTime), 'dd MMM yyyy', { {dayjs(post.publishedAt || post.creationTime).format('DD MMM YYYY')}
locale: tr,
})}
</div> </div>
</div> </div>
</div> </div>

View file

@ -1,7 +1,7 @@
import React, { useState, useEffect } from 'react' import React, { useState, useEffect } from 'react'
import { Link, useParams } from 'react-router-dom' import { Link, useParams } from 'react-router-dom'
import { format } from 'date-fns' import dayjs from 'dayjs'
import { tr } from 'date-fns/locale' import 'dayjs/locale/tr'
import { BlogPost } from '@/proxy/blog/blog' import { BlogPost } from '@/proxy/blog/blog'
import { blogService } from '@/services/blog.service' import { blogService } from '@/services/blog.service'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
@ -28,6 +28,8 @@ const BlogDetail: React.FC = () => {
const [loading, setLoading] = useState(true) const [loading, setLoading] = useState(true)
const [error, setError] = useState<string | null>(null) const [error, setError] = useState<string | null>(null)
dayjs.locale('tr')
useEffect(() => { useEffect(() => {
const fetchBlogPost = async () => { const fetchBlogPost = async () => {
setLoading(true) setLoading(true)
@ -107,19 +109,14 @@ const BlogDetail: React.FC = () => {
<span>{postData.author?.name}</span> <span>{postData.author?.name}</span>
</div> </div>
<div className="flex items-center"> <div className="flex items-center">
{blogPost.publishedAt && {blogPost.publishedAt && dayjs(blogPost.publishedAt).format('DD MMM YYYY')}
format(new Date(blogPost.publishedAt), 'dd MMM yyyy', {
locale: tr,
})}
</div> </div>
</div> </div>
<div <div
className="prose max-w-none text-gray-800" className="prose max-w-none text-gray-800"
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{
__html: __html:
currentLang == 'tr' currentLang == 'tr' ? translate(blogPost.contentTr!) : translate(blogPost.contentEn!),
? translate(blogPost.contentTr!!)
: translate(blogPost.contentEn!!),
}} }}
/> />
</div> </div>