diff --git a/.github/workflows/docker-image-development.yml b/.github/workflows/docker-image-development.yml index 8076f21..ce1d178 100755 --- a/.github/workflows/docker-image-development.yml +++ b/.github/workflows/docker-image-development.yml @@ -21,5 +21,5 @@ jobs: - uses: actions/checkout@v3 - name: Build the Docker image run: | - docker build . -t defuj/apkt-eis:v0.0.25-dev - docker push defuj/apkt-eis:v0.0.25-dev + docker build . --file Dockerfile --tag defuj/apkt-eis:v0.0.5-vm + docker push defuj/apkt-eis:v0.0.5-vm diff --git a/.github/workflows/docker-image-release.yml b/.github/workflows/docker-image-release.yml index b9b2a12..25b28e0 100755 --- a/.github/workflows/docker-image-release.yml +++ b/.github/workflows/docker-image-release.yml @@ -23,8 +23,7 @@ jobs: - name: Build the Docker image run: | - docker build . -t defuj/apkt-eis - docker image tag defuj/apkt-eis defuj/apkt-eis:v1.0.1-release + docker build . --file Dockerfile --tag defuj/apkt-eis:v1.0.1-release docker push defuj/apkt-eis:v1.0.1-release diff --git a/.gitignore b/.gitignore index 08910b9..3f04968 100755 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ lerna-debug.log* node_modules .DS_Store dist +build dist-ssr coverage *.local diff --git a/Dockerfile b/Dockerfile index 9d8c259..2e6a78e 100755 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,18 @@ -FROM node:lts-alpine as build-stage -WORKDIR /app +# FROM node:lts-alpine as build-stage +# WORKDIR /app # COPY package*.json ./ # RUN npm install -COPY . . -RUN npm run build +# COPY . . +# RUN npm run build -# tahap produksi -FROM nginx:stable-alpine as production-stage -COPY --from=build-stage /app/dist /usr/share/nginx/html -COPY --from=build-stage /app/nginx.conf /etc/nginx/nginx.conf +# FROM nginx:stable-alpine as production-stage +# COPY --from=build-stage /app/build /usr/share/nginx/html +# COPY --from=build-stage /app/nginx.conf /etc/nginx/nginx.conf +# EXPOSE 32166 +# CMD ["nginx", "-g", "daemon off;"] + +FROM nginx:stable-alpine +COPY /build /usr/share/nginx/html +COPY /nginx.conf /etc/nginx/nginx.conf EXPOSE 32166 CMD ["nginx", "-g", "daemon off;"] - -# FROM nginx:stable-alpine -# COPY /dist /usr/share/nginx/html -# COPY /nginx.conf /etc/nginx/nginx.conf -# EXPOSE 32166 -# CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/README.md b/README.md index b3541a9..e04f99c 100755 --- a/README.md +++ b/README.md @@ -1,52 +1,26 @@ -# Executive Information System +# TABLE MENU DOCUMENTATION +## Monalisa +### Gangguan > Rekapitulasi +| CODE | MENU | FILE | +| ------- | ---------------------------------------- | ------------ | +| MON0001 | Jumlah Kali Gangguan | Table_36.vue | +| MON0002 | Dispacthing Time (DT) Gangguan | Table_37.vue | +| MON0003 | Recovery Time (RCT) Gangguan | Table_38.vue | +| MON0004 | Response Time (RPT) Gangguan | Table_39.vue | +| MON0005 | Jumlah dan Durasi RPT RCT Gangguan | Table_40.vue | +| MON0006 | Rekapitulasi Gangguan Per Jenis Gangguan | Table_41.vue | +| MON0007 | Rekapitulasi Lapor Ulang Gangguan | Table_42.vue | +| MON0008 | Rekapitulasi ENS Gangguan | Table_43.vue | +| MON0009 | Rekapitulasi Gangguan Belum Selesai | Table_44.vue | +| MON0010 | Jumlah Kali Keluhan | Table_45.vue | +| MON0011 | Recovery Time (RCT) Keluhan | Table_46.vue | +| MON0012 | Response Time (RPT) Keluhan | Table_47.vue | +| MON0013 | Jumlah dan Durasi RPT RCT Keluhan | Table_48.vue | +| MON0014 | Rekapitulasi Gangguan Per Jenis Keluhan | Table_49.vue | +| MON0015 | Rekapitulasi Lapor Ulang Keluhan | Table_50.vue | +| MON0016 | Rekapitulasi Gangguan Belum Selesai | Table_51.vue | -This template should help get you started developing with Vue 3 in Vite. - -## Recommended IDE Setup - -[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin). - -## Type Support for `.vue` Imports in TS - -TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types. - -If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps: - -1. Disable the built-in TypeScript Extension - 1) Run `Extensions: Show Built-in Extensions` from VSCode's command palette - 2) Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)` -2. Reload the VSCode window by running `Developer: Reload Window` from the command palette. - -## Customize configuration - -See [Vite Configuration Reference](https://vitejs.dev/config/). - -## Project Setup - -```sh -npm install -``` - -### Compile and Hot-Reload for Development - -```sh -npm run dev -``` - -### Type-Check, Compile and Minify for Production - -```sh -npm run build -``` - -### Run Unit Tests with [Vitest](https://vitest.dev/) - -```sh -npm run test:unit -``` - -### Lint with [ESLint](https://eslint.org/) - -```sh -npm run lint -``` \ No newline at end of file +### Keluhan > Rekapitulasi +| CODE | MENU | FILE | +| ------- | ------------------- | ------------ | +| MON0010 | Jumlah Kali Keluhan | Table_45.vue | \ No newline at end of file diff --git a/deployment.yaml b/deployment.yaml index 8319df0..2994a8c 100755 --- a/deployment.yaml +++ b/deployment.yaml @@ -1,22 +1,22 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: apkt-eis + name: apkt-eis spec: - replicas: 3 - selector: - matchLabels: - app: apkt-eis - template: - metadata: - labels: - app: apkt-eis - spec: - containers: - - name: apkt-eis - image: defuj/apkt-eis:v0.0.23-dev - ports: - - containerPort: 80 + replicas: 3 + selector: + matchLabels: + app: apkt-eis + template: + metadata: + labels: + app: apkt-eis + spec: + containers: + - name: apkt-eis + image: defuj/apkt-eis:v0.0.5-vm + ports: + - containerPort: 80 --- apiVersion: v1 kind: Service @@ -44,4 +44,3 @@ spec: port: 32166 targetPort: 80 type: ClusterIP - \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 42bc222..eb6fe86 100755 --- a/package-lock.json +++ b/package-lock.json @@ -71,7 +71,6 @@ "tailwindcss": "^3.3.2", "tailwindcss-patch": "^2.2.2", "typescript": "~5.2.2", - "unplugin-tailwindcss-mangle": "^2.2.2", "vite": "^4.3.9", "vitest": "^0.34.6", "vue-tsc": "^1.6.5" @@ -166,12 +165,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@ast-core/escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ast-core/escape/-/escape-1.0.1.tgz", - "integrity": "sha512-/kVjBkDzYrSW1S+gTBCuOfhnNkge9qZFJgLT+MOZdmPN4Vts36S60uU5br3ozoxpJ1eRGe6pGy7/EfcOpFFHlA==", - "dev": true - }, "node_modules/@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -537,23 +530,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz", - "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-transform-typescript": { "version": "7.23.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz", @@ -572,25 +548,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-typescript": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz", - "integrity": "sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.15", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/plugin-transform-modules-commonjs": "^7.23.3", - "@babel/plugin-transform-typescript": "^7.23.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/runtime": { "version": "7.23.9", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", @@ -1528,40 +1485,6 @@ "dedent": "^1.5.1" } }, - "node_modules/@tailwindcss-mangle/core": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tailwindcss-mangle/core/-/core-2.2.2.tgz", - "integrity": "sha512-CFPQhX5xv+ru96Ty2l9gftL70EkVliU/HB8KKxW5O11CVSGKYU6+d6FFnWBFDq6yugArnlKle5q07U8J4Tj8aw==", - "dev": true, - "dependencies": { - "@ast-core/escape": "^1.0.1", - "@babel/core": "^7.22.20", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/preset-typescript": "^7.22.15", - "@babel/types": "^7.22.19", - "@tailwindcss-mangle/config": "^2.2.2", - "@tailwindcss-mangle/shared": "^2.2.2", - "fast-sort": "^3.4.0", - "magic-string": "^0.30.3", - "micromatch": "^4.0.5", - "parse5": "^7.1.2", - "postcss": "^8.4.30", - "postcss-selector-parser": "^6.0.13" - } - }, - "node_modules/@tailwindcss-mangle/core/node_modules/postcss-selector-parser": { - "version": "6.0.15", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz", - "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@tailwindcss-mangle/shared": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@tailwindcss-mangle/shared/-/shared-2.2.2.tgz", @@ -4980,12 +4903,6 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/fast-sort": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/fast-sort/-/fast-sort-3.4.0.tgz", - "integrity": "sha512-c/cMBGA5mH3OYjaXedtLIM3hQjv+KuZuiD2QEH5GofNOZeQVDIYIN7Okc2AW1KPhk44g5PTZnXp8t2lOMl8qhQ==", - "dev": true - }, "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -9344,31 +9261,6 @@ "node": ">= 4.0.0" } }, - "node_modules/unplugin": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.7.1.tgz", - "integrity": "sha512-JqzORDAPxxs8ErLV4x+LL7bk5pk3YlcWqpSNsIkAZj972KzFZLClc/ekppahKkOczGkwIG6ElFgdOgOlK4tXZw==", - "dev": true, - "dependencies": { - "acorn": "^8.11.3", - "chokidar": "^3.5.3", - "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.1" - } - }, - "node_modules/unplugin-tailwindcss-mangle": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/unplugin-tailwindcss-mangle/-/unplugin-tailwindcss-mangle-2.2.2.tgz", - "integrity": "sha512-tbfva7OEQfY3SN/gT6a084Qqm/CvUdrQgrXIDeQPJGmRxH+mHeYP8WA49sGl0yz5LvSUKskneq1ylc4LOOmaYA==", - "dev": true, - "dependencies": { - "@tailwindcss-mangle/config": "^2.2.2", - "@tailwindcss-mangle/core": "^2.2.2", - "@tailwindcss-mangle/shared": "^2.2.2", - "magic-string": "^0.30.3", - "unplugin": "^1.5.0" - } - }, "node_modules/unzipper": { "version": "0.10.14", "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.14.tgz", @@ -9884,21 +9776,6 @@ "node": ">=12" } }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.1.tgz", - "integrity": "sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==", - "dev": true - }, "node_modules/whatwg-encoding": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", diff --git a/package.json b/package.json index 76301b0..34ee9ff 100755 --- a/package.json +++ b/package.json @@ -11,8 +11,7 @@ "build-only": "vite build", "type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false", "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", - "format": "prettier --write src/", - "prepare": "tw-patch install" + "format": "prettier --write src/" }, "dependencies": { "@apollo/client": "^3.8.10", @@ -78,9 +77,8 @@ "tailwindcss": "^3.3.2", "tailwindcss-patch": "^2.2.2", "typescript": "~5.2.2", - "unplugin-tailwindcss-mangle": "^2.2.2", "vite": "^4.3.9", "vitest": "^0.34.6", "vue-tsc": "^1.6.5" } -} +} \ No newline at end of file diff --git a/src/assets/css/style.css b/src/assets/css/style.css index a93e16b..41362eb 100755 --- a/src/assets/css/style.css +++ b/src/assets/css/style.css @@ -5898,6 +5898,10 @@ body { width: 2.5rem; } + .lg\:w-2\/6 { + width: 33.333333%; + } + .lg\:w-80 { width: 20rem; } @@ -5906,10 +5910,24 @@ body { grid-template-columns: repeat(3, minmax(0, 1fr)); } + .lg\:flex-row { + flex-direction: row; + } + .lg\:flex-nowrap { flex-wrap: nowrap; } + .lg\:justify-between { + justify-content: space-between; + } + + .lg\:space-x-4 > :not([hidden]) ~ :not([hidden]) { + --tw-space-x-reverse: 0; + margin-right: calc(1rem * var(--tw-space-x-reverse)); + margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); + } + .lg\:border-b-0 { border-bottom-width: 0px; } diff --git a/src/components/DatePicker.vue b/src/components/DatePicker.vue index 80a2f66..a906023 100755 --- a/src/components/DatePicker.vue +++ b/src/components/DatePicker.vue @@ -36,22 +36,12 @@ watch(dateValue, (newValue) => {