chore: prettier format

This commit is contained in:
rstubryan
2025-11-13 14:08:35 +07:00
parent 57ca050100
commit c2479ad248
10 changed files with 127 additions and 111 deletions
+10 -11
View File
@@ -10,15 +10,15 @@ stages:
paths: paths:
- node_modules/ - node_modules/
variables: variables:
NPM_CONFIG_PRODUCTION: "false" NPM_CONFIG_PRODUCTION: 'false'
NODE_ENV: "" NODE_ENV: ''
script: script:
- echo "Installing dependencies..." - echo "Installing dependencies..."
- npm ci --no-audit --no-fund - npm ci --no-audit --no-fund
- echo "Building Next.js static export..." - echo "Building Next.js static export..."
- npx next build - npx next build
artifacts: artifacts:
name: "out-$CI_COMMIT_SHORT_SHA" name: 'out-$CI_COMMIT_SHORT_SHA'
paths: paths:
- out/ - out/
expire_in: 1 week expire_in: 1 week
@@ -27,7 +27,7 @@ stages:
stage: deploy stage: deploy
image: image:
name: amazon/aws-cli:latest name: amazon/aws-cli:latest
entrypoint: ["/bin/sh", "-c"] entrypoint: ['/bin/sh', '-c']
script: script:
- set -e - set -e
- aws --version - aws --version
@@ -106,22 +106,21 @@ build:dev:
environment: environment:
name: development name: development
variables: variables:
NEXT_PUBLIC_API_BASE_URL: "https://dev-api-lti.mbugroup.id" NEXT_PUBLIC_API_BASE_URL: 'https://dev-api-lti.mbugroup.id'
NEXT_PUBLIC_SSO_LOGIN_URL: "https://dev-api-sso.mbugroup.id" NEXT_PUBLIC_SSO_LOGIN_URL: 'https://dev-api-sso.mbugroup.id'
deploy:dev: deploy:dev:
<<: *deploy_template <<: *deploy_template
needs: ["build:dev"] needs: ['build:dev']
rules: rules:
- if: '$CI_COMMIT_BRANCH == "development"' - if: '$CI_COMMIT_BRANCH == "development"'
variables: variables:
S3_BUCKET: "dev-lti-erp.mbugroup.id" S3_BUCKET: 'dev-lti-erp.mbugroup.id'
AWS_REGION: "ap-southeast-3" AWS_REGION: 'ap-southeast-3'
CLOUDFRONT_DISTRIBUTION_ID: "E1Z8XTA8XF1GIV" CLOUDFRONT_DISTRIBUTION_ID: 'E1Z8XTA8XF1GIV'
environment: environment:
name: development name: development
url: https://dev-lti-erp.mbugroup.id url: https://dev-lti-erp.mbugroup.id
# ====== PRODUCTION ====== # ====== PRODUCTION ======
# build:production: # build:production:
# <<: *build_template # <<: *build_template
+5 -5
View File
@@ -1,4 +1,4 @@
version: "3.9" version: '3.9'
services: services:
dev-web-lti: dev-web-lti:
@@ -7,7 +7,7 @@ services:
context: . context: .
dockerfile: Dockerfile dockerfile: Dockerfile
ports: ports:
- "3002:3000" - '3002:3000'
env_file: env_file:
- .env - .env
environment: environment:
@@ -19,13 +19,13 @@ services:
deploy: deploy:
resources: resources:
limits: limits:
cpus: "3.0" cpus: '3.0'
memory: 3G memory: 3G
reservations: reservations:
cpus: "1.0" cpus: '1.0'
memory: 512M memory: 512M
extra_hosts: extra_hosts:
- "host.docker.internal:host-gateway" - 'host.docker.internal:host-gateway'
# Optional: aktifkan healthcheck jika punya endpoint # Optional: aktifkan healthcheck jika punya endpoint
# healthcheck: # healthcheck:
# test: ["CMD-SHELL", "curl -fsS http://localhost:3000/api/healthz || exit 1"] # test: ["CMD-SHELL", "curl -fsS http://localhost:3000/api/healthz || exit 1"]
@@ -35,7 +35,12 @@ const AddGrading = () => {
{(!recordingId || {(!recordingId ||
recordingId === 'new' || recordingId === 'new' ||
(!isLoadingRecording && recording && isResponseSuccess(recording))) && ( (!isLoadingRecording && recording && isResponseSuccess(recording))) && (
<GradingForm type='add' initialValues={isResponseSuccess(recording) ? recording.data?.eggs?.[0] : undefined} /> <GradingForm
type='add'
initialValues={
isResponseSuccess(recording) ? recording.data?.eggs?.[0] : undefined
}
/>
)} )}
</div> </div>
); );
+3 -1
View File
@@ -64,7 +64,9 @@ export const FormActions = <T,>({
Edit Edit
</Button> </Button>
)} )}
{type === 'detail' && showApproveReject && (onApprove || onReject) && ( {type === 'detail' &&
showApproveReject &&
(onApprove || onReject) && (
<> <>
{onApprove && ( {onApprove && (
<Button <Button
@@ -150,7 +150,8 @@ const DeliveryObjectSchema: Yup.ObjectSchema<DeliverySchema> = Yup.object({
.required('Produk wajib diisi!'), .required('Produk wajib diisi!'),
}); });
export const MovementFormSchema: Yup.ObjectSchema<MovementFormSchemaType> = Yup.object({ export const MovementFormSchema: Yup.ObjectSchema<MovementFormSchemaType> =
Yup.object({
transfer_reason: Yup.string().required('Alasan transfer wajib diisi!'), transfer_reason: Yup.string().required('Alasan transfer wajib diisi!'),
transfer_date: Yup.string().required('Tanggal transfer wajib diisi!'), transfer_date: Yup.string().required('Tanggal transfer wajib diisi!'),
source_warehouse: Yup.object({ source_warehouse: Yup.object({
@@ -15,4 +15,6 @@ export const ProductCategoryFormSchema: Yup.ObjectSchema<ProductCategoryFormSche
export const UpdateProductCategoryFormSchema = ProductCategoryFormSchema; export const UpdateProductCategoryFormSchema = ProductCategoryFormSchema;
export type ProductCategoryFormValues = Yup.InferType<typeof ProductCategoryFormSchema>; export type ProductCategoryFormValues = Yup.InferType<
typeof ProductCategoryFormSchema
>;
@@ -31,7 +31,9 @@ export const ProductFormSchema: Yup.ObjectSchema<ProductFormSchemaType> =
uom: Yup.object({ uom: Yup.object({
value: Yup.number().min(1).required(), value: Yup.number().min(1).required(),
label: Yup.string().required(), label: Yup.string().required(),
}).nullable().required('Satuan wajib diisi!'), })
.nullable()
.required('Satuan wajib diisi!'),
uom_id: Yup.number() uom_id: Yup.number()
.required('Satuan wajib diisi!') .required('Satuan wajib diisi!')
@@ -40,7 +42,9 @@ export const ProductFormSchema: Yup.ObjectSchema<ProductFormSchemaType> =
product_category: Yup.object({ product_category: Yup.object({
value: Yup.number().min(1).required(), value: Yup.number().min(1).required(),
label: Yup.string().required(), label: Yup.string().required(),
}).nullable().required('Kategori produk wajib diisi!'), })
.nullable()
.required('Kategori produk wajib diisi!'),
product_category_id: Yup.number() product_category_id: Yup.number()
.required('Kategori produk wajib diisi!') .required('Kategori produk wajib diisi!')
@@ -121,9 +121,7 @@ const ProductForm = ({ type = 'add', initialValues }: ProductFormProps) => {
supplier_ids: values.supplier_ids.filter( supplier_ids: values.supplier_ids.filter(
(id): id is number => typeof id === 'number' (id): id is number => typeof id === 'number'
), ),
flags: values.flags.filter( flags: values.flags.filter((f): f is string => typeof f === 'string'),
(f): f is string => typeof f === 'string'
),
}; };
switch (type) { switch (type) {
case 'add': case 'add':
@@ -236,7 +236,9 @@ export type RecordingGradingFormValues = Yup.InferType<
type RecordingFormData = Partial<Recording> & { type RecordingFormData = Partial<Recording> & {
body_weights?: CreateGrowingRecordingPayload['body_weights']; body_weights?: CreateGrowingRecordingPayload['body_weights'];
stocks?: CreateGrowingRecordingPayload['stocks'] | Recording['stocks']; stocks?: CreateGrowingRecordingPayload['stocks'] | Recording['stocks'];
depletions?: CreateGrowingRecordingPayload['depletions'] | Recording['depletions']; depletions?:
| CreateGrowingRecordingPayload['depletions']
| Recording['depletions'];
eggs?: CreateLayingRecordingPayload['eggs'] | Recording['eggs']; eggs?: CreateLayingRecordingPayload['eggs'] | Recording['eggs'];
project_flock_kandang_id?: number; project_flock_kandang_id?: number;
project_flock_category?: string; project_flock_category?: string;
@@ -269,7 +271,10 @@ export const getRecordingGrowingFormInitialValues = (
], ],
stocks: initialValues?.stocks?.map((stock) => ({ stocks: initialValues?.stocks?.map((stock) => ({
product_warehouse_id: stock.product_warehouse_id, product_warehouse_id: stock.product_warehouse_id,
qty: (stock as { qty?: number; usage_amount?: number }).qty || (stock as { qty?: number; usage_amount?: number }).usage_amount || '', qty:
(stock as { qty?: number; usage_amount?: number }).qty ||
(stock as { qty?: number; usage_amount?: number }).usage_amount ||
'',
})) ?? [ })) ?? [
{ {
product_warehouse_id: 0, product_warehouse_id: 0,