From 04e3a9d5ada5deab10fa75556d6a9cafc241a087 Mon Sep 17 00:00:00 2001 From: Asep Septiadi <98740335+aspsptyd@users.noreply.github.com> Date: Thu, 2 Nov 2023 19:58:48 +0700 Subject: [PATCH 1/7] Update README.md --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9df76fe..f23407e 100644 --- a/README.md +++ b/README.md @@ -83,4 +83,8 @@ Step 9: Akses Aplikasi & Have fun! ```sh INFO Server running on [http://127.0.0.1:8000]. -``` \ No newline at end of file +``` + +## Record Overview Fitur Reminder + +https://user-images.githubusercontent.com/98740335/279990664-cd3b8dbc-6b97-4bed-9b67-596690f4a0b6.mp4 From b0d966f62270f3aaff9720760ada096c833b71b1 Mon Sep 17 00:00:00 2001 From: Asep Septiadi <98740335+aspsptyd@users.noreply.github.com> Date: Thu, 2 Nov 2023 20:00:12 +0700 Subject: [PATCH 2/7] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index f23407e..5e9c58e 100644 --- a/README.md +++ b/README.md @@ -88,3 +88,5 @@ Step 9: Akses Aplikasi & Have fun! ## Record Overview Fitur Reminder https://user-images.githubusercontent.com/98740335/279990664-cd3b8dbc-6b97-4bed-9b67-596690f4a0b6.mp4 + +Copyright © 2023 Asep Septiadi. All right reserved. Build with Love ❤️ From d9a2f58b50947004f4c6072077bd683f3ee93475 Mon Sep 17 00:00:00 2001 From: nothing628 Date: Thu, 2 Nov 2023 21:53:01 +0700 Subject: [PATCH 3/7] tambah gitignore - menambahkan file .gitignore untuk mengabaikan folder node_modules & vendor - menambahkan docker-compose untuk mempermudah deploy instance db baru tanpa menggangu db project lain - menambahkan pnpm-lock.yaml (pnpm lebih cepat soalnya dan bisa bekerja dengan npm) --- .env.example | 10 +- .gitignore | 19 ++ docker-compose.yml | 21 ++ pnpm-lock.yaml | 465 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 510 insertions(+), 5 deletions(-) create mode 100644 .gitignore create mode 100644 docker-compose.yml create mode 100644 pnpm-lock.yaml diff --git a/.env.example b/.env.example index 478972c..db07429 100644 --- a/.env.example +++ b/.env.example @@ -8,12 +8,12 @@ LOG_CHANNEL=stack LOG_DEPRECATIONS_CHANNEL=null LOG_LEVEL=debug -DB_CONNECTION=mysql +DB_CONNECTION=pgsql DB_HOST=127.0.0.1 -DB_PORT=3306 -DB_DATABASE=laravel -DB_USERNAME=root -DB_PASSWORD= +DB_PORT=5432 +DB_DATABASE=recompose +DB_USERNAME=recompose +DB_PASSWORD=secret BROADCAST_DRIVER=log CACHE_DRIVER=file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f2d197b --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +/.phpunit.cache +/node_modules +/public/build +/public/hot +/public/storage +/storage/*.key +/vendor +.env +.env.backup +.env.production +.phpunit.result.cachecp +Homestead.json +Homestead.yaml +auth.json +npm-debug.log +yarn-error.log +/.fleet +/.idea +/.vscode diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..a33465b --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,21 @@ +version: "3.5" +services: + postgres: + image: postgres:14 + environment: + - POSTGRES_USER=recompose + - POSTGRES_PASSWORD=secret + - POSTGRES_DB=recompose + - PGDATA=/var/lib/postgresql/data + networks: + - testing_network + volumes: + - pgsqldata:/var/lib/postgresql/data + ports: + - 5432:5432 + +networks: + testing_network: + +volumes: + pgsqldata: diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..e7dad55 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,465 @@ +lockfileVersion: '6.0' + +devDependencies: + axios: + specifier: ^1.1.2 + version: 1.1.2 + laravel-vite-plugin: + specifier: ^0.7.2 + version: 0.7.2(vite@4.0.0) + lodash: + specifier: ^4.17.19 + version: 4.17.19 + postcss: + specifier: ^8.1.14 + version: 8.1.14 + vite: + specifier: ^4.0.0 + version: 4.0.0 + +packages: + + /@esbuild/android-arm64@0.16.17: + resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.16.17: + resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.16.17: + resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.16.17: + resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.16.17: + resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.16.17: + resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.16.17: + resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.16.17: + resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.16.17: + resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.16.17: + resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.16.17: + resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.16.17: + resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.16.17: + resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.16.17: + resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.16.17: + resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.16.17: + resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.16.17: + resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.16.17: + resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.16.17: + resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.16.17: + resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.16.17: + resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.16.17: + resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: true + + /axios@1.1.2: + resolution: {integrity: sha512-bznQyETwElsXl2RK7HLLwb5GPpOLlycxHCtrpDR/4RqqBzjARaOTo3jz4IgtntWUYee7Ne4S8UHd92VCuzPaWA==} + dependencies: + follow-redirects: 1.15.3 + form-data: 4.0.0 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + dev: true + + /colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + dev: true + + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: 1.0.0 + dev: true + + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: true + + /esbuild@0.16.17: + resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.16.17 + '@esbuild/android-arm64': 0.16.17 + '@esbuild/android-x64': 0.16.17 + '@esbuild/darwin-arm64': 0.16.17 + '@esbuild/darwin-x64': 0.16.17 + '@esbuild/freebsd-arm64': 0.16.17 + '@esbuild/freebsd-x64': 0.16.17 + '@esbuild/linux-arm': 0.16.17 + '@esbuild/linux-arm64': 0.16.17 + '@esbuild/linux-ia32': 0.16.17 + '@esbuild/linux-loong64': 0.16.17 + '@esbuild/linux-mips64el': 0.16.17 + '@esbuild/linux-ppc64': 0.16.17 + '@esbuild/linux-riscv64': 0.16.17 + '@esbuild/linux-s390x': 0.16.17 + '@esbuild/linux-x64': 0.16.17 + '@esbuild/netbsd-x64': 0.16.17 + '@esbuild/openbsd-x64': 0.16.17 + '@esbuild/sunos-x64': 0.16.17 + '@esbuild/win32-arm64': 0.16.17 + '@esbuild/win32-ia32': 0.16.17 + '@esbuild/win32-x64': 0.16.17 + dev: true + + /follow-redirects@1.15.3: + resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: true + + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: true + + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + dev: true + + /hasown@2.0.0: + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 + dev: true + + /is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + dependencies: + hasown: 2.0.0 + dev: true + + /laravel-vite-plugin@0.7.2(vite@4.0.0): + resolution: {integrity: sha512-MEAGEEOrDk46PnoUPLAhHxM1ATEdRYKyDtN8DT/PLTDnO/HY6JZpRZpeC+Q0fiYzbzg+6OH0nlhuSRKbBaCLcw==} + engines: {node: '>=14'} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 + dependencies: + picocolors: 1.0.0 + vite: 4.0.0 + vite-plugin-full-reload: 1.0.5(vite@4.0.0) + dev: true + + /lodash@4.17.19: + resolution: {integrity: sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==} + dev: true + + /mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + dev: true + + /mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + dependencies: + mime-db: 1.52.0 + dev: true + + /nanoid@3.3.6: + resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true + + /path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: true + + /picocolors@1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + dev: true + + /picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: true + + /postcss@8.1.14: + resolution: {integrity: sha512-KatkyVPBKfENS+c3dpXJoDXnDD5UZs5exAnDksLqaRJPKwYphEPZt4N0m0i049v2/BtWVQibAhxW4ilXXcolpA==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + colorette: 1.4.0 + nanoid: 3.3.6 + source-map: 0.6.1 + dev: true + + /postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.6 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + + /proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + dev: true + + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + hasBin: true + dependencies: + is-core-module: 2.13.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /rollup@3.29.4: + resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==} + engines: {node: '>=14.18.0', npm: '>=8.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /source-map-js@1.0.2: + resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} + engines: {node: '>=0.10.0'} + dev: true + + /source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: true + + /supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + dev: true + + /vite-plugin-full-reload@1.0.5(vite@4.0.0): + resolution: {integrity: sha512-kVZFDFWr0DxiHn6MuDVTQf7gnWIdETGlZh0hvTiMXzRN80vgF4PKbONSq8U1d0WtHsKaFODTQgJeakLacoPZEQ==} + peerDependencies: + vite: ^2 || ^3 || ^4 + dependencies: + picocolors: 1.0.0 + picomatch: 2.3.1 + vite: 4.0.0 + dev: true + + /vite@4.0.0: + resolution: {integrity: sha512-ynad+4kYs8Jcnn8J7SacS9vAbk7eMy0xWg6E7bAhS1s79TK+D7tVFGXVZ55S7RNLRROU1rxoKlvZ/qjaB41DGA==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.16.17 + postcss: 8.4.31 + resolve: 1.22.8 + rollup: 3.29.4 + optionalDependencies: + fsevents: 2.3.3 + dev: true From e4e758860f7dcee9ee66b933b69b7a1ea102371d Mon Sep 17 00:00:00 2001 From: nothing628 Date: Thu, 2 Nov 2023 22:07:00 +0700 Subject: [PATCH 4/7] modifikasi field `status_notes` - ubah tipe data `status_notes` jadi string - menambahkan enum status --- app/Lib/ReminderStatus.php | 9 +++++ ...11_02_215434_modify_status_notes_field.php | 39 +++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 app/Lib/ReminderStatus.php create mode 100644 database/migrations/2023_11_02_215434_modify_status_notes_field.php diff --git a/app/Lib/ReminderStatus.php b/app/Lib/ReminderStatus.php new file mode 100644 index 0000000..c4d1251 --- /dev/null +++ b/app/Lib/ReminderStatus.php @@ -0,0 +1,9 @@ +dropColumn('status_notes'); + }); + Schema::table('reminder', function (Blueprint $table) { + $table->string('status_notes')->default(ReminderStatus::PENDING->value); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('reminder', function (Blueprint $table) { + $table->dropColumn('status_notes'); + }); + Schema::table('reminder', function (Blueprint $table) { + $table->integer('status_notes')->nullable(); + }); + } +}; From 29c2cf70b477470f65b270b833f8f03d290db8da Mon Sep 17 00:00:00 2001 From: nothing628 Date: Thu, 2 Nov 2023 22:18:03 +0700 Subject: [PATCH 5/7] ubah reminder create form - ubah input `status_notes` menjadi selected option --- app/Http/Controllers/ReminderController.php | 23 ++++++++++++--------- resources/views/reminder/form.blade.php | 8 +++++-- resources/views/reminder/index.blade.php | 8 +++---- 3 files changed, 23 insertions(+), 16 deletions(-) diff --git a/app/Http/Controllers/ReminderController.php b/app/Http/Controllers/ReminderController.php index 84e5df9..3b7c737 100644 --- a/app/Http/Controllers/ReminderController.php +++ b/app/Http/Controllers/ReminderController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Models\Reminder as ModelReminder; +use App\Lib\ReminderStatus; use Illuminate\Http\Request; class ReminderController extends Controller @@ -15,17 +16,19 @@ public function index() public function create() { - return view('reminder.form'); + return view('reminder.form', [ + 'status_cases' => ReminderStatus::cases(), + ]); } public function store(Request $request) { - $data = [ - 'reminder_title' =>$request->reminder_title, - 'reminder_detail' =>$request->reminder_detail, - 'created_by' =>$request->created_by, - 'status_notes' =>$request->status_notes, - ]; + $data = $request->only([ + 'reminder_title', + 'reminder_detail', + 'created_by', + 'status_notes', + ]); ModelReminder::create($data); @@ -40,7 +43,7 @@ public function show() public function edit($id) { $reminder = ModelReminder::find($id); - return view('reminder.form', ['reminder' => $reminder]); + return view('reminder.form', ['reminder' => $reminder]); } public function update(Request $request, $id) @@ -69,7 +72,7 @@ public function delete($id) return redirect()->route('reminder'); } - public function close($id) + public function close($id) { $data = [ 'status_notes' => 0, @@ -80,7 +83,7 @@ public function close($id) return redirect()->route('reminder'); } - public function open($id) + public function open($id) { $data = [ 'status_notes' => 1, diff --git a/resources/views/reminder/form.blade.php b/resources/views/reminder/form.blade.php index f0c72d7..59cec56 100644 --- a/resources/views/reminder/form.blade.php +++ b/resources/views/reminder/form.blade.php @@ -27,7 +27,11 @@
- +
-@endsection \ No newline at end of file +@endsection diff --git a/resources/views/reminder/index.blade.php b/resources/views/reminder/index.blade.php index 739fd3f..253124c 100644 --- a/resources/views/reminder/index.blade.php +++ b/resources/views/reminder/index.blade.php @@ -36,7 +36,7 @@ @if ($item->status_notes == 1) Open @else - Close + Close @endif {{ $item->created_at }} @@ -44,7 +44,7 @@ @if ($item->status_notes == 1) Close @else - Open + Open @endif Hapus Rekap @@ -54,7 +54,7 @@ @else Tidak ada data terecord dalam database - + @endif @@ -62,4 +62,4 @@ -@endsection \ No newline at end of file +@endsection From 3068c4bbed7de1fb39dedf30e59d31bcb1908f4e Mon Sep 17 00:00:00 2001 From: nothing628 Date: Thu, 2 Nov 2023 22:23:53 +0700 Subject: [PATCH 6/7] ubah penggunaan field `status_notes` - Mengubah penggunaan status 0 dan 1 menjadi OPEN dan CLOSE --- app/Http/Controllers/DashboardController.php | 3 ++- app/Http/Controllers/ReminderController.php | 4 ++-- app/Lib/ReminderStatus.php | 5 ++--- .../2023_11_02_215434_modify_status_notes_field.php | 2 +- resources/views/reminder/index.blade.php | 7 +++++-- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/app/Http/Controllers/DashboardController.php b/app/Http/Controllers/DashboardController.php index 2c9605e..c59a9b7 100644 --- a/app/Http/Controllers/DashboardController.php +++ b/app/Http/Controllers/DashboardController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Lib\ReminderStatus; use App\Models\Reminder as ModelReminder; use Illuminate\Http\Request; @@ -9,7 +10,7 @@ class DashboardController extends Controller { public function index() { - $countReminder = ModelReminder::where('status_notes', 1)->count(); + $countReminder = ModelReminder::where('status_notes', ReminderStatus::OPEN)->count(); $data = [ 'reminderCount' => $countReminder, diff --git a/app/Http/Controllers/ReminderController.php b/app/Http/Controllers/ReminderController.php index 3b7c737..d600505 100644 --- a/app/Http/Controllers/ReminderController.php +++ b/app/Http/Controllers/ReminderController.php @@ -75,7 +75,7 @@ public function delete($id) public function close($id) { $data = [ - 'status_notes' => 0, + 'status_notes' => ReminderStatus::CLOSE, ]; ModelReminder::find($id)->update($data); @@ -86,7 +86,7 @@ public function close($id) public function open($id) { $data = [ - 'status_notes' => 1, + 'status_notes' => ReminderStatus::OPEN, ]; ModelReminder::find($id)->update($data); diff --git a/app/Lib/ReminderStatus.php b/app/Lib/ReminderStatus.php index c4d1251..d67cc28 100644 --- a/app/Lib/ReminderStatus.php +++ b/app/Lib/ReminderStatus.php @@ -3,7 +3,6 @@ namespace App\Lib; enum ReminderStatus: string { - case PENDING = "pending"; - case INPROGRESS = "inprogress"; - case COMPLETE = "complete"; + case OPEN = "open"; + case CLOSE = "close"; } diff --git a/database/migrations/2023_11_02_215434_modify_status_notes_field.php b/database/migrations/2023_11_02_215434_modify_status_notes_field.php index 968802c..41ecfdc 100644 --- a/database/migrations/2023_11_02_215434_modify_status_notes_field.php +++ b/database/migrations/2023_11_02_215434_modify_status_notes_field.php @@ -18,7 +18,7 @@ public function up() $table->dropColumn('status_notes'); }); Schema::table('reminder', function (Blueprint $table) { - $table->string('status_notes')->default(ReminderStatus::PENDING->value); + $table->string('status_notes')->default(ReminderStatus::OPEN->value); }); } diff --git a/resources/views/reminder/index.blade.php b/resources/views/reminder/index.blade.php index 253124c..aa67d9a 100644 --- a/resources/views/reminder/index.blade.php +++ b/resources/views/reminder/index.blade.php @@ -1,6 +1,9 @@ @extends('layouts.app') @section('title','Data Reminder') +@php +use App\Lib\ReminderStatus; +@endphp @section('contents')
@@ -33,7 +36,7 @@ {{ $item->reminder_title }} {{ $item->reminder_detail }} {{ $item->created_by }} - @if ($item->status_notes == 1) + @if ($item->status_notes == ReminderStatus::OPEN->value) Open @else Close @@ -41,7 +44,7 @@ {{ $item->created_at }} Edit - @if ($item->status_notes == 1) + @if ($item->status_notes == ReminderStatus::OPEN->value) Close @else Open From f26427af197e4d84857bc2091fae16b4681054c6 Mon Sep 17 00:00:00 2001 From: nothing628 Date: Fri, 3 Nov 2023 07:28:16 +0700 Subject: [PATCH 7/7] mengubah step install ke readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5e9c58e..0d4692c 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ $ git clone https://github.com/aspsptyd/recompose-job.git Step 2: Open Project dengan VScode kemudian copy file `.env.example` dan rename file menjadi `.env` -Step 3: Buat Database di Local Database Server dengan nama `db_recomposejob` +Step 3: Buat Database di Local Database Server dengan nama `db_recomposejob`. Jika sudah menginstall `docker-compose` maka cukup menjalankan perintah `docker-compose up -d` dan langsung ke step 5. Step 4: Setup Nama Database pada file .env