Merge remote-tracking branch 'origin/staging' into origin/production

This commit is contained in:
Linksehat Staging Server
2024-06-20 16:10:13 +07:00
309 changed files with 1622 additions and 1651 deletions

View File

@@ -9,6 +9,7 @@ use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Symfony\Component\HttpFoundation\Response;
use Illuminate\Support\Facades\View;
class AuthController extends Controller
{
@@ -31,17 +32,21 @@ class AuthController extends Controller
return Helper::responseJson(statusCode: Response::HTTP_NOT_FOUND, message: $message);
}
$token = rand(1000, 9999); // Menghasilkan angka acak antara 100000 dan 999999
if($request->phoneOrEmail == 'manager+one@gmail.com' || $request->phoneOrEmail == 'manager+two@gmail.com')
{
$token = 4444;
}
if (filter_var($request->phoneOrEmail, FILTER_VALIDATE_EMAIL)) {
User::query()->find($user->id)->update([
'email' => $request->phoneOrEmail,
'otp' => 4444, //rand(1000, 9999),
'otp' => $token,
'otp_created_at' => now()
]);
} else {
User::query()->find($user->id)->update([
'phone' => $request->phoneOrEmail,
'otp' => 4444,//rand(1000, 9999),
'otp' => $token,
'otp_created_at' => now()
]);
}
@@ -49,6 +54,18 @@ class AuthController extends Controller
// TODO Send the OTP
if (filter_var($request->phoneOrEmail, FILTER_VALIDATE_EMAIL)) {
// Send Email
//send to alarm
if($request->phoneOrEmail != 'manager+one@gmail.com' && $request->phoneOrEmail != 'manager+two@gmail.com')
{
$nameTo = 'User';
$dataEmail = [
'email' => $request->phoneOrEmail,
'name' => $nameTo,
'subject' => 'OTP Login Client Portal Tanggal '. date('Y-m-d H:i:s'),
'body' => View::make('email/forgot_password', ['token' => $token])->render(),
];
Helper::sendEmail($dataEmail);
}
} else {
// Send Whatsapp
}

View File

@@ -21,6 +21,7 @@ use Modules\Client\Transformers\Dashboard\MemberEmployeeDataResources as Dashboa
use Box\Spout\Writer\Common\Creator\WriterEntityFactory;
use Modules\Client\Transformers\EmployeeData\UserProfile\DataMemberResource as EmployeeDataProfileMemberResource;
use Modules\Internal\Services\MemberEnrollmentService;
use Illuminate\Support\Facades\DB;
class CorporateMemberController extends Controller
{
@@ -255,4 +256,84 @@ class CorporateMemberController extends Controller
return Helper::responseJson(DataServiceMonitoring::make($data));
}
public function getDeposit($corporate_id)
{
$deposit = DB::table('corporate_policies')
->select('total_premi')
->where('corporate_id','=', $corporate_id)
->first();
$usage = DB::table('corporate_employees')
->join('request_logs', 'request_logs.member_id', '=', 'corporate_employees.member_id')
->join('request_log_benefits', 'request_log_benefits.request_log_id', '=', 'request_logs.id')
->where('corporate_employees.corporate_id', '=', $corporate_id)
->sum('request_log_benefits.amount_approved');
// Ganti dengan logika Anda untuk mendapatkan data deposit
$deposit = [
'deposit' => $deposit->total_premi,
'limit' => $deposit->total_premi - $usage,
'usage' => $usage
];
return response()->json($deposit);
}
public function getLimits($corporate_id, $member_id)
{
$deposit = DB::table('corporate_policies')
->select('total_premi')
->where('corporate_id','=', $corporate_id)
->first();
$usage = DB::table('corporate_employees')
->join('request_logs', 'request_logs.member_id', '=', 'corporate_employees.member_id')
->join('request_log_benefits', 'request_log_benefits.request_log_id', '=', 'request_logs.id')
->where('corporate_employees.corporate_id', '=', $corporate_id)
->where('request_logs.member_id', '=', $member_id)
->sum('request_log_benefits.amount_approved');
$services = DB::table('member_plans')
->leftJoin('plans', 'plans.id', '=', 'member_plans.plan_id')
->leftJoin('services', 'services.code', '=', 'plans.service_code')
->where('member_plans.member_id', '=', $member_id)
->whereNull('member_plans.deleted_at')
->select(
'plans.service_code',
'services.name as title',
'plans.limit_rules as total',
DB::raw("
(
IFNULL((SELECT SUM(request_log_benefits.amount_approved)
FROM request_logs
INNER JOIN request_log_benefits
ON request_log_benefits.request_log_id = request_logs.id
WHERE request_logs.member_id = $member_id
AND request_logs.service_code = plans.service_code),0)
) as current
")
)
->get();
$total_premi = 0;
foreach ($services as $value)
{
if($value->total > 0 && $value->total != 999999999)
{
$total_premi += $value->total;
}
else if($value->total == 999999999)
{
$total_premi = 999999999;
}
}
// Ganti dengan logika Anda untuk mendapatkan data deposit
$deposit = [
'deposit' => $total_premi,
'usage' => $usage,
'services' => $services
];
return response()->json($deposit);
}
}

View File

@@ -18,6 +18,7 @@ use Modules\Internal\Http\Controllers\Api\FormulariumController;
use Modules\Internal\Http\Controllers\Api\FormulariumTemplateController;
use Modules\Internal\Http\Controllers\Api\AuditTrailController;
use Modules\Internal\Http\Controllers\Api\CorporateController;
use Modules\Internal\Http\Controllers\Api\NavigationController;
/*
|--------------------------------------------------------------------------
@@ -70,6 +71,9 @@ Route::prefix('client')->group(function () {
Route::get('corporate', [CorporateCurrentController::class, 'index']);
Route::put('corporate-update', [CorporateCurrentController::class, 'update']);
Route::get('get-deposits', [CorporateMemberController::class, 'getDeposit']);
Route::get('get-limits/{member_id}', [CorporateMemberController::class, 'getLimits']);
});
Route::get('claims/{id}', [ClaimController::class, 'show']);
@@ -90,5 +94,8 @@ Route::prefix('client')->group(function () {
Route::get('audittrail/{corporate_id}', [AuditTrailController::class, 'index']);
Route::get('corporates/import-document-example/{document_type}', [CorporateController::class, 'importDocumentExample']);
// Navigation
Route::get('navigations', [NavigationController::class, 'index']);
});
});

View File

@@ -86,6 +86,7 @@ class DataServiceMonitoring extends JsonResource
return [
'companyName' => $this->member->currentCorporate->name ?? null,
'serviceCode' => $this->service_code ?? null,
'member_id' => $this->member->id ?? null,
'memberId' => $this->member->member_id ?? null,
'fullName' => $this->member->full_name ?? null,
'dateOfBirth' => $this->member->birth_date ?? null,

View File

@@ -28,7 +28,17 @@ class UserManagementController extends Controller
public function permission_list(Request $request)
{
$permissions = Permission::all();
// Ambil nilai guard_name dari query string
$guardName = $request->query('guard_name');
// Jika guard_name ada dalam query, filter berdasarkan guard_name
if ($guardName) {
$permissions = Permission::where('guard_name', $guardName)->orderBy('name','asc')->get();
} else {
// Jika guard_name tidak ada, ambil semua permissions
$permissions = Permission::all();
}
return response()->json($permissions);
}
@@ -73,7 +83,7 @@ class UserManagementController extends Controller
]);
if (isset($validated['permission_check'])) {
$permissions = Permission::whereIn('id', $validated['permission_check'])
->where('guard_name', $validated['guard_name'])
->get();
@@ -145,7 +155,7 @@ class UserManagementController extends Controller
if ($request->password){
$userAccess->password = Hash::make($request->password);
}
}
$person = Person::updateOrCreate(
[

View File

@@ -387,4 +387,5 @@ Route::prefix('internal')->group(function () {
Route::get('options', [OptionController::class, 'index']);
Route::get('final-log/{id}', [ClaimController::class, 'downloadFinalLog'])->name('claim.download-final-log');
Route::get('hospitals', [RequestLogController::class, 'hospitals']);
});

View File

@@ -23,6 +23,8 @@ use Box\Spout\Common\Entity\Row;
use Carbon\Carbon;
use DateTime;
use DB;
use Ramsey\Uuid\Uuid;
use Str;
class MemberEnrollmentService
{
@@ -336,15 +338,16 @@ class MemberEnrollmentService
$this->member = $member;
}
public function dateParser($date_from_row) {
public function dateParser($date_from_row)
{
if ($date_from_row instanceof DateTime) {
return $date_from_row->format('Y-m-d');
} else if ($date_from_row != null) {
if (strtotime($date_from_row)){
if (strtotime($date_from_row)) {
return date('Y-m-d', strtotime($date_from_row));
} else {
// throw new ImportRowException(__('Format Date Invalid'), 0, null, $date_from_row);
// throw new ImportRowException(__('Format Date Invalid'), 0, null, $date_from_row);
return null;
}
} else {
@@ -353,18 +356,19 @@ class MemberEnrollmentService
}
}
public function validateDate($dateString, $dateFormat = 'Ymd'){
public function validateDate($dateString, $dateFormat = 'Ymd')
{
$date = DateTime::createFromFormat($dateFormat, $dateString);
if ($date && ($date->format($dateFormat) == $dateString)) {
return true;
return true;
} else {
return false;
return false;
}
}
protected function validateRow($row)
{
$title =[
$title = [
'member_effective_date' => 'Member Effective Date',
'member_expiry_date' => 'Member Expired Date',
'activation_date' => 'Activation Date',
@@ -401,13 +405,13 @@ class MemberEnrollmentService
if ($row['record_type'] == 'D') {
$member = Member::query()
->where('member_id', $row['principal_id'])
// ->whereHas('employeds', function ($query) use ($corporate) {
// $query->where('corporate_id', $corporate->id);
// })
->first();
->where('member_id', $row['principal_id'])
// ->whereHas('employeds', function ($query) use ($corporate) {
// $query->where('corporate_id', $corporate->id);
// })
->first();
if(empty($member)){
if (empty($member)) {
// throw new ImportRowException(__('enrollment.PRINCIPAL_NOT_IN_MEMBER_ID'), 0, null, $row);
} else {
// if ($member['record_type'] != 'P'){
@@ -551,11 +555,11 @@ class MemberEnrollmentService
{
try {
$activation_date = NULL;
if (!empty($row['activation_date'])){
if (!empty($row['activation_date'])) {
$activation_date = $row['activation_date'];
}
$date_terminated = NULL;
if(!empty($row['date_terminated'])){
if (!empty($row['date_terminated'])) {
$date_terminated = $row['date_terminated'];
}
@@ -627,7 +631,7 @@ class MemberEnrollmentService
$date_terminated = $this->dateParser($row['date_terminated']);
if(!empty($row['activation_date'])){
if (!empty($row['activation_date'])) {
// $activation_date = date("Y-m-d", strtotime($row['activation_date']));
// if (($activation_date == $date_terminated) && ($activation_date == $member_effective_date)) {
// throw new ImportRowException(__('enrollment.MORE_THAN', [
@@ -638,7 +642,7 @@ class MemberEnrollmentService
// ]), 0, null, $row);
// }
}
if (!empty($row['date_terminated'])){
if (!empty($row['date_terminated'])) {
// $date_terminated = date("Y-m-d", strtotime($row['date_terminated']));
// if($date_terminated){
// if ($date_terminated <= $member_effective_date && ($date_terminated != $member_effective_date)) {
@@ -712,7 +716,7 @@ class MemberEnrollmentService
// }
if($corporate->code != $row['corporate_id']){
if ($corporate->code != $row['corporate_id']) {
throw new ImportRowException(__('enrollment.CORPORATE_CODE_NOT_MATCH', [
'corporate_id' => $row['corporate_id']
]), 0, null, $row);
@@ -744,6 +748,7 @@ class MemberEnrollmentService
);
$member->person_id = $person->id;
$member->save();
throw new ImportRowException(__('enrollment.MEMBER_UNIQUE', [
'member_id' => $row['member_id'],
'policy_id' => $row['policy_number']
@@ -752,6 +757,77 @@ class MemberEnrollmentService
$member = new Member();
}
if ($row['relationship_with_principal'] == 'H') {
$sMartialStatus = 6;
$nIDHubunganKeluarga = 3;
} else if ($row['relationship_with_principal'] == 'W') {
$sMartialStatus = 7;
$nIDHubunganKeluarga = 4;
} else if ($row['relationship_with_principal'] == 'S') {
$sMartialStatus = 4;
$nIDHubunganKeluarga = 5;
} else if ($row['relationship_with_principal'] == 'D') {
$sMartialStatus = 5;
$nIDHubunganKeluarga = 5;
} else {
$sMartialStatus = 0;
$nIDHubunganKeluarga = 0;
}
if ($row['sex'] == 'M') {
$nIDJenisKelamin = 1;
} else {
$nIDJenisKelamin = 2;
};
$name = explode(" ", $row['name']);
// First name
$first_name = isset($name[0]) ? $name[0] : '';
// Middle name
$middle_name = isset($name[1]) ? $name[1] : '';
// Last name
$last_name = '';
if (count($name) > 2) {
$last_name = implode(" ", array_slice($name, 2));
}
$userLms = User::create(
[
'sFirstName' => $first_name,
'sLastName' => $middle_name . ' ' . $last_name, // Ubah ini dengan variabel yang sesuai dengan nama belakang (last name)
'sPhone' => $row['telephone_mobile'],
'sEmail' => str_replace(' ', '', $row['email']),
'nIDHubunganKeluarga' => $nIDHubunganKeluarga !== 0 ? $nIDHubunganKeluarga : null,
'dUpdateOn' => date('Y-m-d H:i:s'),
]
);
$nIDUser = $userLms->nID;
$userLmsDetail = UserDetail::create(
[
'nIDUser' => $nIDUser,
// 'dTanggalLahir' => $row['date_of_birth'],
'dTanggalLahir' => $this->dateParser($row['date_of_birth']),
'dCreateOn' => date('Y-m-d H:i:s'),
'sMartialStatus' => $sMartialStatus != 0 ? $sMartialStatus : null,
'nIDJenisKelamin' => $nIDJenisKelamin,
'sCreateBy' => $nIDUser,
'sKTP' => $row['nric'] ?? null,
]
);
UserInsurance::updateOrCreate(
['nIDUser' => $nIDUser],
[
'nIDInsurance' => 106,
'sNamaPeserta' => $row['name'],
'dStartDate' => $row['member_effective_date'],
'dExpireDate' => $row['member_expiry_date'],
'dTanggalLahir' => $row['date_of_birth'] ? $this->dateParser($row['date_of_birth']) : null,
'sNoPolis' => $row['member_id'],
'sVerificationCode' => (string) Uuid::uuid5(Uuid::NAMESPACE_DNS, $row['member_id'])
]
);
$memberPolicy = $member->policies()
->where('policy_id', $row['policy_number'])
->first();
@@ -765,13 +841,13 @@ class MemberEnrollmentService
// Validate If Plan Exist
// TODO validate corporate plan
$plans = explode(",",$row['plan_id']);
$plans = explode(",", $row['plan_id']);
if (count($plans) > 0) {
foreach($plans as $d){
foreach ($plans as $d) {
$plan = Plan::query()
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
if (!$plan) {
throw new ImportRowException(__('enrollment.PLAN_NOT_FOUND'), 0, null, $row);
}
@@ -836,13 +912,13 @@ class MemberEnrollmentService
]);
// Bisa disini penyebab data dobel
$plans = explode(",",$row['plan_id']);
$plans = explode(",", $row['plan_id']);
if (count($plans) > 0) {
foreach($plans as $d){
foreach ($plans as $d) {
$plan = Plan::query()
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
if (!$plan) {
throw new ImportRowException(__('enrollment.PLAN_NOT_FOUND'), 0, null, $row);
}
@@ -868,7 +944,6 @@ class MemberEnrollmentService
'end' => $this->dateParser($row['member_expiry_date']),
]);
}
}
DB::commit();
} catch (\Exception $e) {
@@ -967,7 +1042,7 @@ class MemberEnrollmentService
// Bisa disini penyebab data dobel
$member->employeds()->updateOrCreate([
'member_id' => $member->id
'division_id' => $division_id
],[
'corporate_id' => $corporate->id,
'branch_code' => $row['branch_code'],
@@ -979,26 +1054,28 @@ class MemberEnrollmentService
}
$plans = explode(",",$row['plan_id']);
$plans = explode(",", $row['plan_id']);
if (count($plans) > 0) {
foreach($plans as $d){
foreach ($plans as $d) {
$plan = Plan::query()
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
->where('code', $d)
->where('corporate_id', $corporate->id)
->first();
if (!$plan) {
throw new ImportRowException(__('enrollment.PLAN_NOT_FOUND'), 0, null, $row);
}
$member->memberPlans()->updateOrCreate([
'member_id' => $member->id,
'plan_id' => $plan->id,
],
[
'plan_id' => $plan->id,
'status' => 'active',
'start' => $this->dateParser($row['member_effective_date']),
'end' => $this->dateParser($row['member_expiry_date']),
]);
$member->memberPlans()->updateOrCreate(
[
'member_id' => $member->id,
'plan_id' => $plan->id,
],
[
'plan_id' => $plan->id,
'status' => 'active',
'start' => $this->dateParser($row['member_effective_date']),
'end' => $this->dateParser($row['member_expiry_date']),
]
);
}
} else {
$plan = Plan::query()
@@ -1008,16 +1085,18 @@ class MemberEnrollmentService
if (!$plan) {
throw new ImportRowException(__('enrollment.PLAN_NOT_FOUND'), 0, null, $row);
}
$member->memberPlans()->updateOrCreate([
'member_id' => $member->id,
'plan_id' => $plan->id,
],
[
'plan_id' => $plan->id,
'status' => 'active',
'start' => $this->dateParser($row['member_effective_date']),
'end' => $this->dateParser($row['member_expiry_date']),
]);
$member->memberPlans()->updateOrCreate(
[
'member_id' => $member->id,
'plan_id' => $plan->id,
],
[
'plan_id' => $plan->id,
'status' => 'active',
'start' => $this->dateParser($row['member_effective_date']),
'end' => $this->dateParser($row['member_expiry_date']),
]
);
}
// end update plan
@@ -1025,7 +1104,7 @@ class MemberEnrollmentService
$userInsuranceLms = UserInsurance::query()
->where('sNoPolis', $row['member_id'])
->first();
if ($userInsuranceLms){
if ($userInsuranceLms) {
$userInsuranceLms->sNamaPeserta = $row['name'];
$userInsuranceLms->dStartDate = $row['member_effective_date'];
$userInsuranceLms->dExpireDate = $row['member_expiry_date'];
@@ -1034,24 +1113,26 @@ class MemberEnrollmentService
UserInsurance::updateOrCreate(
['nIDUser' => $nIDUser],
[
'nIDInsurance' => 106,
'sNamaPeserta' => $row['name'],
'dStartDate' => $row['member_effective_date'],
'dExpireDate' => $row['member_expiry_date'],
'dTanggalLahir' => $row['date_of_birth'] ? $this->dateParser($row['date_of_birth']) : null,
// 'nNoKTP' => $row['nric'] ?? ,
'sNoPolis' => $row['member_id'],
'sVerificationCode' => (string) Uuid::uuid5(Uuid::NAMESPACE_DNS, $row['member_id'])
]
);
/* Lihat ID Marital status di table tm_status_pernikahan Linksehat */
if ($row['relationship_with_principal'] == 'H'){
$sMartialStatus= 6;
if ($row['relationship_with_principal'] == 'H') {
$sMartialStatus = 6;
$nIDHubunganKeluarga = 3;
} else if ($row['relationship_with_principal'] == 'W'){
} else if ($row['relationship_with_principal'] == 'W') {
$sMartialStatus = 7;
$nIDHubunganKeluarga = 4;
} else if ($row['relationship_with_principal'] == 'S'){
} else if ($row['relationship_with_principal'] == 'S') {
$sMartialStatus = 4;
$nIDHubunganKeluarga = 5;
} else if ($row['relationship_with_principal'] == 'D'){
} else if ($row['relationship_with_principal'] == 'D') {
$sMartialStatus = 5;
$nIDHubunganKeluarga = 5;
} else {
@@ -1060,7 +1141,7 @@ class MemberEnrollmentService
}
if($row['sex'] == 'M'){
if ($row['sex'] == 'M') {
$nIDJenisKelamin = 1;
} else {
$nIDJenisKelamin = 2;
@@ -1082,7 +1163,7 @@ class MemberEnrollmentService
],
[
'sFirstName' => $first_name,
'sLastName' => $middle_name . ' ' .$last_name, // Ubah ini dengan variabel yang sesuai dengan nama belakang (last name)
'sLastName' => $middle_name . ' ' . $last_name, // Ubah ini dengan variabel yang sesuai dengan nama belakang (last name)
'sPhone' => $row['telephone_mobile'],
'sEmail' => str_replace(' ', '', $row['email']),
'nIDHubunganKeluarga' => $nIDHubunganKeluarga !== 0 ? $nIDHubunganKeluarga : null,
@@ -1105,7 +1186,6 @@ class MemberEnrollmentService
'sKTP' => $row['nric'] ?? null,
]
);
}
if (!$memberPolicy) {
@@ -1600,11 +1680,9 @@ class MemberEnrollmentService
$value = $row_data[$this->doc_headers_to_field_map[$header]] ?? null;
if (is_string($value)) {
$cells[] = WriterEntityFactory::createCell($value);
}
else if ($value instanceof DateTime) {
} else if ($value instanceof DateTime) {
$cells[] = WriterEntityFactory::createCell(Carbon::parse($value)->format('Ymd'));
}
else {
} else {
$cells[] = WriterEntityFactory::createCell($value);
}
}
@@ -1613,13 +1691,13 @@ class MemberEnrollmentService
}
// This validation for range date in period corporate // validasi untuk range tanggal dalam period corporate yang ditentukan
public function validateRangePeriode($dates){
public function validateRangePeriode($dates)
{
$date = date("Y-m-d", strtotime($dates));
if (!isset($corporate->currentPolicy) || $corporate->currentPolicy->start <= $date) {
}
if (!isset($corporate->currentPolicy) || $corporate->currentPolicy->end >= $date) {
dd($corporate->currentPolicy->end, $dates);
dd($corporate->currentPolicy->end, $dates);
}
}

View File

@@ -86,6 +86,9 @@ class ChatController extends Controller
foreach($dataChannel as $d){
$user = User::with('detail')->where('nID', $d['member_id'])->first();
$lastMessage = Message::where('channel_id', $d['id'])
->where('type', '!=', 'summary')
->where('type', '!=', 'trigger')
->latest('created_at')
->first();
$urlAvatarDefault = $user->detail->nIDJenisKelamin == 1 ? 'https://linksehat.dev/assets/img/users/male-avatar.png' : 'https://linksehat.dev/assets/img/users/female-avatar.png';
@@ -262,9 +265,9 @@ class ChatController extends Controller
}
$prescription = Prescription::where('livechat_id', $livechat->id)->first();
$prescriptionItems = PrescriptionItem::with('drug')->where('prescription_id',$prescription->id)->get();
$prescriptions = [];
if ($prescriptionItems){
if ($prescription){
$prescriptionItems = PrescriptionItem::with('drug')->where('prescription_id',$prescription->id)->get();
foreach($prescriptionItems as $item){
$row['medicine'] = $item->drug->name;
$row['direction'] = $item->direction;

View File

@@ -88,8 +88,15 @@ class Helper
public static function principalName($code)
{
$principalName = Member::where('member_id', $code)->get()->first();
return $principalName->name;
$principalName = Member::where('member_id', $code)->first();
if ($principalName !== null) {
return $principalName->name;
} else {
// Tangani situasi di mana member_id tidak ditemukan
return 'Member not found'; // Atau berikan nilai default atau pesan error yang sesuai
}
}
public static function userName($id)

View File

@@ -1,6 +1,7 @@
<?php
namespace App\Models\OLDLMS;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
@@ -77,4 +78,17 @@ class User extends Authenticatable
{
return $this->notificationTokens()->pluck('token')->toArray();
}
protected static function boot()
{
parent::boot();
static::creating(function ($user) {
$user->sIPAddress = request()->ip();
});
static::updating(function ($user) {
$user->sIPAddress = request()->ip();
});
}
}

View File

@@ -26,6 +26,7 @@ class UserInsurance extends Model
'dTanggalLahir',
'nNoKTP',
'sNoPolis',
'sVerificationCode',
'nIDInsurance',
'sLayanan',
];

View File

@@ -26,6 +26,7 @@
"phpmailer/phpmailer": "^6.9",
"psr/simple-cache": "^1.0",
"pusher/pusher-php-server": "^7.2",
"ramsey/uuid": "^4.7",
"spatie/browsershot": "^3.61",
"spatie/laravel-permission": "^5.9"
},

16
composer.lock generated
View File

@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "376b19f2ad42a940a917ec375fdd6c9d",
"content-hash": "15904ea4b6523bc5ea58867fe9c90f5a",
"packages": [
{
"name": "barryvdh/laravel-dompdf",
@@ -6358,20 +6358,20 @@
},
{
"name": "ramsey/uuid",
"version": "4.7.5",
"version": "4.7.6",
"source": {
"type": "git",
"url": "https://github.com/ramsey/uuid.git",
"reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e"
"reference": "91039bc1faa45ba123c4328958e620d382ec7088"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ramsey/uuid/zipball/5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e",
"reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e",
"url": "https://api.github.com/repos/ramsey/uuid/zipball/91039bc1faa45ba123c4328958e620d382ec7088",
"reference": "91039bc1faa45ba123c4328958e620d382ec7088",
"shasum": ""
},
"require": {
"brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11",
"brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12",
"ext-json": "*",
"php": "^8.0",
"ramsey/collection": "^1.2 || ^2.0"
@@ -6434,7 +6434,7 @@
],
"support": {
"issues": "https://github.com/ramsey/uuid/issues",
"source": "https://github.com/ramsey/uuid/tree/4.7.5"
"source": "https://github.com/ramsey/uuid/tree/4.7.6"
},
"funding": [
{
@@ -6446,7 +6446,7 @@
"type": "tidelift"
}
],
"time": "2023-11-08T05:53:05+00:00"
"time": "2024-04-27T21:32:50+00:00"
},
{
"name": "riverline/multipart-parser",

View File

@@ -27,12 +27,12 @@ class NavigationSeeder extends Seeder
'title' => 'DOCTORS & HOSPITALS',
'children' => [
[
'title' => 'Doctors',
'path' => '/master/doctors',
'title' => 'Doctors',
'path' => '/master/doctors',
'permission' => 'doctor-list'
],
[
'title' => 'Hospitals',
'title' => 'Hospitals',
'path' => '/master/hospitals',
'permission' => 'hospital-list'
],
@@ -44,17 +44,17 @@ class NavigationSeeder extends Seeder
'title' => 'PHARMACY & DELIVERY MANAGEMENT',
'children' => [
[
'title' => 'Drug',
'title' => 'Drug',
'path' => '/master/drugs',
'permission' => 'drug-list'
],
[
'title' => 'Inventory',
'title' => 'Inventory',
'path' => '/inventory',
'permission' => null
],
[
'title' => 'Delivery Services',
'title' => 'Delivery Services',
'path' => '/delivery',
'permission' => null
],
@@ -67,23 +67,23 @@ class NavigationSeeder extends Seeder
'openWhen' => ['/corporates', '/formularium', '/diagnosis', '/hospitals'],
'children' => [
[
'title' => 'Corporate',
'title' => 'Corporate',
'path' => '/corporates',
'permission' => 'corporate-list',
],
// ['title' => 'Corporate Create', 'path' => '/corporates/create'],
[
'title' => 'Formularium',
'title' => 'Formularium',
'path' => '/master/formularium-template-v2',
'permission' => 'formularium-list',
],
[
'title' => 'Master ICD-10 Diagnosis',
'title' => 'Master ICD-10 Diagnosis',
'path' => '/master/diagnosis',
'permission' => 'diagnosis-list',
],
[
'title' => 'Hospitals',
'title' => 'Hospitals',
'path' => '/hospitals',
'permission' => null,
],
@@ -92,13 +92,13 @@ class NavigationSeeder extends Seeder
],
// CLAIM REQUEST
[
'title' => 'CLAIM REQUEST',
'title' => 'CLAIM REQUEST',
'path' => '/claim-requests',
'permission' => 'claim-request-list'
],
// CLAIM MANAGEMENT
[
'title' => 'CLAIM MANAGEMENT',
'title' => 'CLAIM MANAGEMENT',
'path' => '/claims',
'permission' => 'claim-management-list'
],
@@ -107,13 +107,13 @@ class NavigationSeeder extends Seeder
'title' => 'CASE MANAGEMENT',
'children' => [
[
'title' => 'Daily Monitoring',
'title' => 'Daily Monitoring',
'path' => '/case_management/daily_monitoring',
'permission' => 'daily-monitoring-list'
],
// ['title' => 'Laboratorium Result', 'path' => '/case_management/laboratorium_result'],
[
'title' => 'Inpatient Monitoring',
'title' => 'Inpatient Monitoring',
'path' => '/case_management/inpatient_monitoring',
'permission' => 'final-log-list'
],
@@ -125,13 +125,13 @@ class NavigationSeeder extends Seeder
'title' => 'CUSTOMER SERVICES',
'children' => [
[
'title' => 'Request',
'title' => 'Request',
'path' => '/custormer-service/request',
'permission' => 'request-log-list'
],
// ['title' => 'Membership', 'path' => '/cs-membership'],
[
'title' => 'Final LOG',
'title' => 'Final LOG',
'path' => '/custormer-service/final-log',
'permission' => 'final-log-list'
],
@@ -143,33 +143,33 @@ class NavigationSeeder extends Seeder
'title' => 'REPORT',
'children' => [
[
'title' => 'Files Provider',
'title' => 'Files Provider',
'path' => 'report/files-provider',
'permission' => 'report-files-provider-list'
],
[
'title' => 'Letter of Guarantee',
'title' => 'Letter of Guarantee',
'path' => '/report/logs',
'permission' => 'report-log-list'
],
[
'title' => 'Appointment',
'title' => 'Appointment',
'path' => '/report/appointments',
'permission' => 'report-appointment-list'
],
[
'title' => 'Live Chat',
'title' => 'Live Chat',
'path' => '/report/live-chat',
'permission' => 'report-livechat-list'
],
[
'title' => 'Linksehat Payment',
'title' => 'Linksehat Payment',
'path' => '/report/linksehat-payments',
'permission' => 'report-livechat-payment'
],
// ['title' => 'Prescription', 'path' => '/report/prescription'],
[
'title' => 'Doctor Rating',
'title' => 'Doctor Rating',
'path' => '/report/doctorrating',
'permission' => 'report-doctor-rating'
],
@@ -181,7 +181,7 @@ class NavigationSeeder extends Seeder
'title' => 'MASTER',
'children' => [
[
'title' => 'Diagnosis',
'title' => 'Diagnosis',
'path' => '/master/diagnosis',
'permission' => 'diagnosis-list'
],
@@ -193,12 +193,12 @@ class NavigationSeeder extends Seeder
'title' => 'USER MANAGEMENT',
'children' => [
[
'title' => 'User Role',
'title' => 'User Role',
'path' => '/user-role',
'permission' => 'user-role-list'
],
[
'title' => 'User Access',
'title' => 'User Access',
'path' => '/user-access',
'permission' => 'user-access-list'
],
@@ -207,21 +207,66 @@ class NavigationSeeder extends Seeder
],
// LINKING TOOLS
[
'title' => 'LINKING TOOLS',
'title' => 'LINKING TOOLS',
'path' => '/linking',
'permission' => 'linkking-list'
],
// E-PRESCRIPTION
[
'title' => 'E-PRESCRIPTION',
'title' => 'E-PRESCRIPTION',
'path' => '/e-prescription/live-chat',
'permission' => 'prescription-list'
],
####################### CLIENT PORTAL #########################
[
'title' => 'Dashboard',
'children' => [
[
'title' => 'Usage Dashboard',
'path' => '/dashboard',
'permission' => 'dashboard-list-client-portal'
],
],
'permission' => 'dashboard-client-portal'
],
[
'title' => 'Corporate',
'children' => [
[
'title' => 'Corporate',
'path' => '/corporate',
'permission' => 'corporate-list-client-portal'
],
[
'title' => 'Employee Data',
'path' => '/employee-data',
'permission' => 'employee-data-list-client-portal'
],
],
'permission' => 'corporate-client-portal'
],
[
'title' => 'Case Management',
'children' => [
[
'title' => 'Alarm Center',
'path' => '/alarm-center',
'permission' => 'alarm-center-list-client-portal'
],
[
'title' => 'Formularium',
'path' => '/master/formularium-template-v2',
'permission' => 'formularium-list-client-portal'
],
],
'permission' => 'case-management-client-portal'
],
];
foreach ($menuItems as $menuItemData) {
$menuItem = Navigations::updateOrCreate([
'title' => $menuItemData['title']
'title' => $menuItemData['title'],
'permission' => $menuItemData['permission']
],
[
'title' => $menuItemData['title'],
@@ -232,7 +277,8 @@ class NavigationSeeder extends Seeder
if (isset($menuItemData['children'])) {
foreach ($menuItemData['children'] as $childData) {
$menuItemChildren = Navigations::updateOrCreate([
'title' => $childData['title']
'title' => $childData['title'],
'permission' => $childData['permission']
],
[
'title' => $childData['title'],

View File

@@ -17,65 +17,87 @@ class PermissionTableSeeder extends Seeder
public function run()
{
$permissions = [
'dashboard',
'doctor-list',
'doctor-create',
'doctor-edit',
'doctor-delete',
'hospital-list',
'hospital-create',
'hospital-edit',
'hospital-delete',
'drug-list',
'drug-create',
'drug-edit',
'drug-delete',
'corporate-list',
'corporate-create',
'corporate-edit',
'corporate-delete',
'formularium-list',
'formularium-create',
'formularium-edit',
'formularium-delete',
'diagnosis-list',
'diagnosis-create',
'diagnosis-edit',
'diagnosis-delete',
'claim-request-list',
'claim-request-create',
'claim-request-edit',
'claim-request-delete',
'claim-management-list',
'claim-management-create',
'claim-management-edit',
'claim-management-delete',
'daily-monitoring-list',
'request-log-list',
'request-log-create',
'request-log-edit',
'request-log-delete',
'final-log-list',
'final-log-create',
'final-log-edit',
'final-log-delete',
'report-files-provider-list',
'report-letter-of-guarante-list',
'report-log-list',
'report-appointment-list',
'report-livechat-list',
'report-livechat-payment',
'report-doctor-rating',
'user-role-list',
'user-access-list'
[
'type' => 'web',
'datas' => [
'dashboard',
'doctor-list',
'doctor-create',
'doctor-edit',
'doctor-delete',
'hospital-list',
'hospital-create',
'hospital-edit',
'hospital-delete',
'drug-list',
'drug-create',
'drug-edit',
'drug-delete',
'corporate-list',
'corporate-create',
'corporate-edit',
'corporate-delete',
'formularium-list',
'formularium-create',
'formularium-edit',
'formularium-delete',
'diagnosis-list',
'diagnosis-create',
'diagnosis-edit',
'diagnosis-delete',
'claim-request-list',
'claim-request-create',
'claim-request-edit',
'claim-request-delete',
'claim-management-list',
'claim-management-create',
'claim-management-edit',
'claim-management-delete',
'daily-monitoring-list',
'request-log-list',
'request-log-create',
'request-log-edit',
'request-log-delete',
'final-log-list',
'final-log-create',
'final-log-edit',
'final-log-delete',
'report-files-provider-list',
'report-letter-of-guarante-list',
'report-log-list',
'report-appointment-list',
'report-livechat-list',
'report-livechat-payment',
'report-doctor-rating',
'user-role-list',
'user-access-list'
]
],
####################### CLIENT PORTAL #########################
[
'type' => 'client-portal',
'datas' => [
'dashboard-client-portal',
'dashboard-list-client-portal',
'corporate-list-client-portal',
'employee-data-list-client-portal',
'corporate-client-portal',
'alarm-center-list-client-portal',
'formularium-list-client-portal',
'case-management-client-portal',
'service-monitoring-limit-client-portal',
]
]
];
foreach ($permissions as $permission) {
Permission::updateOrCreate(['name' => $permission],
[
'name' => $permission,
'guard_name' => 'web'
]);
foreach ($permissions as $values) {
foreach ($values['datas'] as $value) {
Permission::updateOrCreate(['name' => $value],
[
'name' => $value,
'guard_name' => $values['type']
]);
}
}
}
}

View File

@@ -32,18 +32,16 @@ export default function NavSectionVertical({
<Box {...other}>
{navConfig.map((group, index) => (
<List key={index} disablePadding sx={{ px: 2 }}>
{group.subheader && (
<ListSubheaderStyle
key={index}
sx={{
...(isCollapse && {
opacity: 0,
}),
}}
>
{group.subheader}
</ListSubheaderStyle>
)}
<ListSubheaderStyle
key={index}
sx={{
...(isCollapse && {
opacity: 0,
}),
}}
>
{group.subheader}
</ListSubheaderStyle>
{group.items.map((list) => (
<NavListRoot key={list.title} list={list} isCollapse={isCollapse} />

View File

@@ -1,4 +1,4 @@
import { useEffect } from 'react';
import { useEffect, useState } from 'react';
import { useLocation } from 'react-router-dom';
// @mui
import { styled, useTheme } from '@mui/material/styles';
@@ -15,9 +15,11 @@ import Logo from '../../../components/Logo';
import Scrollbar from '../../../components/Scrollbar';
import { NavSectionVertical } from '../../../components/nav-section';
//
import navConfig from './NavConfig';
// import navConfig from './NavConfig';
import NavbarAccount from './NavbarAccount';
import CollapseButton from './CollapseButton';
import useAuth from '@/hooks/useAuth';
import axios from '@/utils/axios';
// ----------------------------------------------------------------------
@@ -42,10 +44,54 @@ export default function NavbarVertical({ isOpenSidebar, onCloseSidebar }: Props)
const { pathname } = useLocation();
const {user} = useAuth()
const isDesktop = useResponsive('up', 'lg');
const { isCollapse, collapseClick, collapseHover, onToggleCollapse, onHoverEnter, onHoverLeave } =
useCollapseDrawer();
const [navConfig, setNavConfig] = useState([]);
useEffect(() => {
const fetchNavConfig = async () => {
try {
const response = await axios.get('/navigations');
const data = response.data.items;
// Pastikan user dan user.permissions terdefinisi dan merupakan array
const userPermissions = user.user?.permissions?.map(permission => permission.name) || [];
// Fungsi untuk memeriksa apakah pengguna memiliki izin untuk item tertentu
const hasPermission = (permission) => {
return userPermissions.includes(permission);
};
// Filter data berdasarkan izin pengguna
const filteredNavConfig = data.map(section => {
if (section.children && section.children.length > 0) {
// Cek apakah ada satu atau lebih children yang memiliki izin
const filteredChildren = section.children.filter(child => hasPermission(child.permission));
if (filteredChildren.length > 0) {
return {
...section,
children: filteredChildren
};
} else {
return null; // Lewati bagian yang tidak memiliki children dengan izin
}
}
// Jika tidak ada children, cek izin untuk section itu sendiri
return hasPermission(section.permission) ? section : null;
}).filter(section => section !== null);
setNavConfig([{ items: filteredNavConfig }]);
} catch (error) {
console.error('Gagal mengambil konfigurasi navigasi:', error);
}
};
fetchNavConfig();
}, [user]);
useEffect(() => {
if (isOpenSidebar) {

View File

@@ -20,11 +20,14 @@ import {
ListItemText,
ListItemButton,
Divider,
CardContent,
LinearProgress
} from '@mui/material';
import { styled } from '@mui/material/styles';
import { Download as DownloadIcon, Circle as CircleIcon, TableView } from '@mui/icons-material';
// components
import Page from '../../components/Page';
import { fCurrency } from '../../utils/formatNumber';
// utils
import { useState, SyntheticEvent, useContext, useEffect } from 'react';
import { UserCurrentCorporateContext } from '../../contexts/UserCurrentCorporate';
@@ -45,6 +48,8 @@ import TableMoreMenu from '../../components/table/TableMoreMenu';
import Label from '../../components/Label';
import { fSplit } from '../../utils/formatNumber';
import useAuth from '../../hooks/useAuth';
interface TabPanelProps {
children?: React.ReactNode;
index: number;
@@ -208,6 +213,13 @@ type ServiceMonitoringProps = {
};
export default function ServiceMonitoring() {
const {user} = useAuth();
const checkIfNameExists = (name) => {
return user.user.permissions.some(item => item.name === name);
};
const nameToCheck = 'service-monitoring-limit-client-portal';
const doesNameExist = checkIfNameExists(nameToCheck);
const navigate = useNavigate();
const controller = new AbortController();
@@ -221,7 +233,7 @@ export default function ServiceMonitoring() {
const { corporateValue } = useContext(UserCurrentCorporateContext);
const { memberId, requestLogId } = useParams();
const [depositData, setDepositData] = useState({ deposit: 0, limit: 0, usage: 0 });
useEffect(() => {
(async () => {
try {
@@ -236,6 +248,18 @@ export default function ServiceMonitoring() {
if (response.data.data.serviceCode !== 'IP') {
setValue(1);
}
var member_id = response.data.data.member_id;
const fetchDepositData = async () => {
try {
const response = await axios.get(`${corporateValue}/get-limits/${member_id}`);
setDepositData(response.data);
} catch (error) {
console.error('Failed to fetch deposit data:', error);
}
};
fetchDepositData();
} catch (error: any) {
console.error('Error fetching data:', error.message);
} finally {
@@ -248,7 +272,7 @@ export default function ServiceMonitoring() {
};
}, [corporateValue]);
const renderHTML = (data:string) => {
return (
<div style={{marginLeft: 20}}
@@ -256,7 +280,32 @@ export default function ServiceMonitoring() {
/>
);
}
const formatNumber = (number) => {
return new Intl.NumberFormat('id-ID').format(number);
};
const LimitPlanCard = ({ title, current, total }) => (
<Card variant="outlined" sx={{ minWidth: 200, m: 1 }}>
<CardContent>
<Typography variant="h6" component="div">
{title}
</Typography>
<Typography variant="subtitle2" color="text.secondary">
Yearly Limits
</Typography>
<Typography variant="subtitle1">
{formatNumber(current)} / {formatNumber(total)}
</Typography>
<LinearProgress variant="determinate" value={(current / total) * 100} />
</CardContent>
</Card>
);
const plans = [
{ title: 'Outpatient', current: 200000, total: 1000000 },
{ title: 'Inpatient', current: 1000000, total: 5000000 },
{ title: 'Dental', current: 250000, total: 1000000 },
{ title: 'Maternity', current: 0, total: 3000000 },
];
return (
<Page title="Service Monitoring">
@@ -277,14 +326,14 @@ export default function ServiceMonitoring() {
<Grid item xs={12}>
<Card sx={{ borderRadius: 2, padding: 3 }}>
<Grid container spacing={5}>
<Grid item xs={12}>
<Typography component={'h6'} fontWeight={700} fontSize={18}>
{loading ? <Skeleton animation="wave" width={175} /> : 'Employee Profile'}
</Typography>
</Grid>
<Grid item xs={12} container spacing={3}>
<Grid item container spacing={3}>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Grid item xs={12}>
<Typography component={'h6'} fontWeight={700} fontSize={18}>
{loading ? <Skeleton animation="wave" width={175} /> : 'Employee Profile'}
</Typography>
</Grid>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Company Name'}
</Typography>
@@ -300,8 +349,6 @@ export default function ServiceMonitoring() {
)}
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Member ID'}
@@ -318,8 +365,6 @@ export default function ServiceMonitoring() {
)}
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Full Name'}
@@ -336,8 +381,6 @@ export default function ServiceMonitoring() {
)}
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Date of Birth'}
@@ -354,8 +397,6 @@ export default function ServiceMonitoring() {
)}
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Phone Number'}
@@ -372,8 +413,6 @@ export default function ServiceMonitoring() {
)}
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
<Grid item xs={12}>
<Typography variant="subtitle2" color={'grey.600'}>
{loading ? <Skeleton animation={'wave'} width={200} /> : 'Email'}
@@ -391,6 +430,43 @@ export default function ServiceMonitoring() {
</Typography>
</Grid>
</Grid>
<Grid item container xs={12} md={6} spacing={1.5}>
{doesNameExist ? (
<Stack direction="column" style={{width:'100%'}}>
<Box flexWrap="wrap" justifyContent="left">
<Card variant="outlined" sx={{ minWidth: 200, marginBottom: 1, borderRadius: 2, padding: 0 }}>
<CardContent>
<Typography variant="h6" component="div">
Total Limit
</Typography>
<Typography variant="subtitle2" color="text.secondary">
Yearly Limits
</Typography>
<Typography variant="subtitle1">
{formatNumber(depositData.usage)} / {formatNumber(depositData.deposit)}
</Typography>
<LinearProgress variant="determinate" value={(depositData.usage / depositData.deposit) * 100} />
</CardContent>
</Card>
</Box>
<Card sx={{ borderRadius: 2, padding: 3 }}>
<Typography component={'h6'} fontWeight={700} fontSize={18}>
Limit Plan
</Typography>
<Box display="flex" flexWrap="wrap" justifyContent="left">
{depositData.services?.map((plan) => (
<LimitPlanCard
key={plan.title}
title={plan.title}
current={plan.current}
total={plan.total}
/>
))}
</Box>
</Card>
</Stack>
) : ''}
</Grid>
</Grid>
<Grid item xs={12} paddingY={2}>
<Typography component={'h6'} fontWeight={700} fontSize={18}>
@@ -400,7 +476,7 @@ export default function ServiceMonitoring() {
</Grid>
</Card>
</Grid>
<Grid item container xs={12} spacing={5}>
<Grid item container xs={12} md={6}>
@@ -501,9 +577,9 @@ export default function ServiceMonitoring() {
<Grid item>
{loading ? (
<Skeleton animation="wave" width={300} />
) : data && data.files && data.files.result.length > 0 ?
) : data && data.files && data.files.result.length > 0 ?
(
data.files.result.map((file, index) =>
data.files.result.map((file, index) =>
(
(
<Stack direction="column" spacing={2} key={index}>
@@ -539,9 +615,9 @@ export default function ServiceMonitoring() {
<Grid item>
{loading ? (
<Skeleton animation="wave" width={300} />
) : data && data.files && data.files.diagnosis.length > 0 ?
) : data && data.files && data.files.diagnosis.length > 0 ?
(
data.files.diagnosis.map((file, index) =>
data.files.diagnosis.map((file, index) =>
(
(
<Stack direction="column" spacing={2} key={index}>
@@ -577,9 +653,9 @@ export default function ServiceMonitoring() {
{/* <Grid item>
{loading ? (
<Skeleton animation="wave" width={300} />
) : data && data.files && data.files.kondisi.length > 0 ?
) : data && data.files && data.files.kondisi.length > 0 ?
(
data.files.kondisi.map((file, index) =>
data.files.kondisi.map((file, index) =>
(
(
<Stack direction="column" spacing={2} key={index}>
@@ -1180,7 +1256,7 @@ export default function ServiceMonitoring() {
{file.original_name}
</a>
</li>
)
)
)
) : (
<li>-</li>
@@ -1259,7 +1335,7 @@ export default function ServiceMonitoring() {
{file.original_name}
</a>
</li>
)
)
)
) : (
<li>-</li>

View File

@@ -1,278 +1,174 @@
// @mui
import { Typography, Container, Grid, Button, SelectChangeEvent } from '@mui/material';
import { Box,CardContent,Button, Container, Grid, styled, Typography, Card, Stack } from '@mui/material';
// hooks
import useSettings from '../../hooks/useSettings';
// components
import Page from '../../components/Page';
// theme
import { useContext, useEffect, useState } from 'react';
import axios from '../../utils/axios';
import { Stack } from '@mui/system';
import useAuth from '../../hooks/useAuth';
import SomethingUsage from '../../sections/dashboard/SomethingUsage';
import { fCurrency } from '../../utils/formatNumber';
import AccountBalanceWalletIcon from '@mui/icons-material/AccountBalanceWallet';
import TrendingUpIcon from '@mui/icons-material/TrendingUp';
import MonetizationOnIcon from '@mui/icons-material/MonetizationOn';
import { useContext, useEffect, useState } from 'react';
import { UserCurrentCorporateContext } from '../../contexts/UserCurrentCorporate';
import Table from '../../components/Table';
import { HeadCell, Order, PaginationTableProps } from '../../@types/table';
import { useSearchParams } from 'react-router-dom';
import palette from '../../theme/palette';
export default function Index() {
import { useNavigate, useParams } from 'react-router-dom';
// ----------------------------------------------------------------------
export default function Dashboard() {
const navigate = useNavigate();
const { themeStretch } = useSettings();
const { corporateValue } = useContext(UserCurrentCorporateContext);
const controller = new AbortController();
const [memberData, setMemberData] = useState([]);
const { user } = useAuth();
/* -------------------------------------------------------------------------- */
/* setting up for the table */
/* -------------------------------------------------------------------------- */
const [isLoading, setIsLoading] = useState(true);
const loadings = {
isLoading: isLoading,
setIsLoading: setIsLoading,
};
/* ------------------------------ handle params ----------------------------- */
const [searchParams, setSearchParams] = useSearchParams();
const [appliedParams, setAppliedParams] = useState({});
const params = {
searchParams: searchParams,
setSearchParams: setSearchParams,
appliedParams: appliedParams,
setAppliedParams: setAppliedParams,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle order ------------------------------ */
const [order, setOrder] = useState<Order>('asc');
const [orderBy, setOrderBy] = useState('fullName');
const orders = {
order: order,
setOrder: setOrder,
orderBy: orderBy,
setOrderBy: setOrderBy,
};
/* -------------------------------------------------------------------------- */
/* ---------------------------- handle pagination --------------------------- */
const [page, setPage] = useState(0);
const [rowsPerPage, setRowsPerPage] = useState(10);
const [paginationTable, setPaginationTable] = useState<PaginationTableProps>({
current_page: 0,
from: 0,
last_page: 0,
links: [],
path: '',
per_page: 0,
to: 0,
total: 0,
});
const paginations = {
page: page,
setPage: setPage,
rowsPerPage: rowsPerPage,
setRowsPerPage: setRowsPerPage,
paginationTable: paginationTable,
setPaginationTable: setPaginationTable,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle search ----------------------------- */
const [searchText, setSearchText] = useState('');
const handleSearchSubmit = async (event: React.FormEvent<HTMLFormElement>) => {
event.preventDefault();
if (searchText === '') {
searchParams.delete('search');
const params = Object.fromEntries([...searchParams.entries()]);
setAppliedParams(params);
} else {
const params = Object.fromEntries([...searchParams.entries(), ['search', searchText]]);
setAppliedParams(params);
}
};
const searchs = {
useSearchs: false,
searchText: searchText,
setSearchText: setSearchText,
handleSearchSubmit: handleSearchSubmit,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle filter ----------------------------- */
const [divisionValue, setDivisionValue] = useState('all');
const [divisionData, setDivisionData] = useState([]);
const handleDivisionChange = (event: SelectChangeEvent) => {
setDivisionValue(event.target.value as string);
if (event.target.value === 'all') {
searchParams.delete('division');
const params = Object.fromEntries([...searchParams.entries()]);
setAppliedParams(params);
} else {
const params = Object.fromEntries([
...searchParams.entries(),
['division', event.target.value as string],
]);
setAppliedParams(params);
}
};
const filters = {
useFilter: true,
config: {
label: 'Division',
divisionValue: divisionValue,
divisionData: divisionData,
handleDivisionChange: handleDivisionChange,
},
};
/* -------------------------------------------------------------------------- */
/* -------------------------------- headCell -------------------------------- */
const headCells: HeadCell<never>[] = [
{
id: 'memberId',
align: 'left',
label: 'Member ID',
isSort: true,
},
{
id: 'fullName',
align: 'center',
label: 'Name',
isSort: true,
},
{
id: 'division',
align: 'center',
label: 'Divisi',
isSort: true,
},
{
id: 'status',
align: 'center',
label: 'Status',
isSort: true,
},
{
id: 'action',
align: 'right',
label: '',
isSort: false,
},
];
/* -------------------------------------------------------------------------- */
useEffect(() => {
(async () => {
try {
setIsLoading(true);
const parameters =
Object.keys(appliedParams).length !== 0
? appliedParams
: Object.fromEntries([
...searchParams.entries(),
['order', order],
['orderBy', orderBy],
]);
const [divisionResponse, membersResponse] = await Promise.all([
axios.get(`${corporateValue}/division`, { signal: controller.signal }),
axios.get(`${corporateValue}/members`, {
params: { ...parameters },
signal: controller.signal,
}),
]);
setSearchParams(parameters);
setDivisionData(divisionResponse.data);
setMemberData(
membersResponse.data.data.map((obj: any) => ({
...obj,
status:
obj.status === 1 ? (
<Button
sx={{
backgroundColor: 'rgba(84, 214, 44, 0.16)',
color: palette.dark.success.dark,
paddingY: 0,
'&:hover': {
backgroundColor: 'rgba(84, 214, 44, 0.32)',
color: palette.dark.success.darker,
},
}}
>
Active
</Button>
) : (
<Button
sx={{
backgroundColor: 'rgba(255, 72, 66, 0.16)',
color: palette.dark.error.dark,
paddingY: 0,
'&:hover': {
backgroundColor: 'rgba(255, 72, 66, 0.32)',
color: palette.dark.error.darker,
},
}}
>
Inactive
</Button>
),
}))
);
setPaginationTable(membersResponse.data);
setRowsPerPage(membersResponse.data.per_page);
if (searchParams.get('page')) {
// @ts-ignore
const currentPage = parseInt(searchParams.get('page')) - 1;
paginationTable.current_page = currentPage;
setPage(currentPage);
}
setIsLoading(false);
} catch (error: any) {
console.error('Error fetching data:', error.message);
}
})();
return () => {
controller.abort();
const checkIfNameExists = (name) => {
return user.user.permissions.some(item => item.name === name);
};
}, [appliedParams, searchParams, order, orderBy, setSearchParams, corporateValue]);
const nameToCheck = 'dashboard-list-client-portal';
const doesNameExist = checkIfNameExists(nameToCheck);
useEffect(() => {
const doesNameExist = checkIfNameExists(nameToCheck);
if (!doesNameExist) {
navigate('/corporate');
}
}, [nameToCheck, user, navigate]);
// const loadSomething = () => {
// axios.get('/user')
// };
const Wallet = styled(AccountBalanceWalletIcon)(({ theme }) => ({
color: 'orange',
marginRight: theme.spacing(1),
}));
const TrendUp = styled(TrendingUpIcon)(({ theme }) => ({
color: 'blue',
marginRight: theme.spacing(1),
}));
const Monet = styled(MonetizationOnIcon)(({ theme }) => ({
color: 'orange',
marginRight: theme.spacing(1),
}));
const DangerCard = styled(Card)(({ theme }) => ({
boxShadow: 'none',
padding: theme.spacing(3),
color: theme.palette.error.main,
backgroundColor: theme.palette.error.lighter,
}));
const SuccessCard = styled(Card)(({ theme }) => ({
boxShadow: 'none',
padding: theme.spacing(3),
color: theme.palette.success.darker,
backgroundColor: theme.palette.success.lighter,
}));
const DefaultCard = styled(Card)(({ theme }) => ({
boxShadow: theme.shadows[3], // Menggunakan bayangan standar dari tema
padding: theme.spacing(3),
color: theme.palette.text.primary,
backgroundColor: theme.palette.background.paper, // Latar belakang putih
}));
const { corporateValue } = useContext(UserCurrentCorporateContext);
const [depositData, setDepositData] = useState({ deposit: 0, limit: 0, usage: 0 });
useEffect(() => {
const fetchDepositData = async () => {
try {
const response = await axios.get(`${corporateValue}/get-deposits`);
setDepositData(response.data);
} catch (error) {
console.error('Failed to fetch deposit data:', error);
}
};
fetchDepositData();
}, [corporateValue]);
const handleGoBack = () => {
// Logic untuk kembali ke halaman sebelumnya atau halaman utama
navigate('/corporate')
};
return (
<Page title="Dashboard">
<Container maxWidth={themeStretch ? false : 'xl'}>
<Stack direction="row" justifyContent="space-between">
<Typography variant="h3" component="h1" paragraph>
Dashboard
</Typography>
</Stack>
<Typography variant="h3" component="h1" paragraph>
Dashboard
</Typography>
{doesNameExist ? (
<Grid container spacing={2}>
<Grid item xs={4}>
{/* <SomethingUsage /> */}
<DefaultCard>
<CardContent>
<Stack direction="column" alignItems="flex-start" justifyContent="space-between" sx={{ mb: 0.6 }}>
<Stack direction="row" alignItems="center" justifyContent="space-between" sx={{ width: '100%' }}>
<Typography variant='h4'>{fCurrency(depositData.deposit)}</Typography>
<Wallet />
</Stack>
<Typography variant='h6'>Deposit</Typography>
</Stack>
</CardContent>
</DefaultCard>
</Grid>
<Grid item xs={4}>
<DefaultCard>
<CardContent>
<Stack direction="column" alignItems="flex-start" justifyContent="space-between" sx={{ mb: 0.6 }}>
<Stack direction="row" alignItems="center" justifyContent="space-between" sx={{ width: '100%' }}>
<Typography variant='h4'>{fCurrency(depositData.limit)}</Typography>
<TrendUp />
</Stack>
<Typography variant='h6'>Limit</Typography>
</Stack>
</CardContent>
</DefaultCard>
</Grid>
<Grid item xs={4}>
<DefaultCard>
<CardContent>
<Stack direction="column" alignItems="flex-start" justifyContent="space-between" sx={{ mb: 0.6 }}>
<Stack direction="row" alignItems="center" justifyContent="space-between" sx={{ width: '100%' }}>
<Typography variant='h4'>{fCurrency(depositData.usage)}</Typography>
<Monet />
</Stack>
<Typography variant='h6'>This Year Usage</Typography>
</Stack>
</CardContent>
</DefaultCard>
</Grid>
</Grid>
):(
<Box
display="flex"
flexDirection="column"
alignItems="center"
justifyContent="center"
minHeight="55vh"
textAlign="center"
padding={2}
>
<Typography variant="body1" color="textSecondary" paragraph>
Maaf, halaman ini tidak bisa diakses atau tidak ada.
</Typography>
<Button variant="contained" color="primary" onClick={handleGoBack}>
Kembali
</Button>
</Box>
)}
<Grid container spacing={2}>
<Grid item xs={12} lg={12} md={12}>
<Table
headCells={headCells}
rows={memberData}
orders={orders}
paginations={paginations}
loadings={loadings}
params={params}
searchs={searchs}
filters={filters}
/>
</Grid>
</Grid>
</Container>
</Page>
);

View File

@@ -0,0 +1,279 @@
// @mui
import { Typography, Container, Grid, Button, SelectChangeEvent } from '@mui/material';
// hooks
import useSettings from '../../hooks/useSettings';
// components
import Page from '../../components/Page';
// theme
import { useContext, useEffect, useState } from 'react';
import axios from '../../utils/axios';
import { Stack } from '@mui/system';
import { UserCurrentCorporateContext } from '../../contexts/UserCurrentCorporate';
import Table from '../../components/Table';
import { HeadCell, Order, PaginationTableProps } from '../../@types/table';
import { useSearchParams } from 'react-router-dom';
import palette from '../../theme/palette';
export default function Index_() {
const { themeStretch } = useSettings();
const { corporateValue } = useContext(UserCurrentCorporateContext);
const controller = new AbortController();
const [memberData, setMemberData] = useState([]);
/* -------------------------------------------------------------------------- */
/* setting up for the table */
/* -------------------------------------------------------------------------- */
const [isLoading, setIsLoading] = useState(true);
const loadings = {
isLoading: isLoading,
setIsLoading: setIsLoading,
};
/* ------------------------------ handle params ----------------------------- */
const [searchParams, setSearchParams] = useSearchParams();
const [appliedParams, setAppliedParams] = useState({});
const params = {
searchParams: searchParams,
setSearchParams: setSearchParams,
appliedParams: appliedParams,
setAppliedParams: setAppliedParams,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle order ------------------------------ */
const [order, setOrder] = useState<Order>('asc');
const [orderBy, setOrderBy] = useState('fullName');
const orders = {
order: order,
setOrder: setOrder,
orderBy: orderBy,
setOrderBy: setOrderBy,
};
/* -------------------------------------------------------------------------- */
/* ---------------------------- handle pagination --------------------------- */
const [page, setPage] = useState(0);
const [rowsPerPage, setRowsPerPage] = useState(10);
const [paginationTable, setPaginationTable] = useState<PaginationTableProps>({
current_page: 0,
from: 0,
last_page: 0,
links: [],
path: '',
per_page: 0,
to: 0,
total: 0,
});
const paginations = {
page: page,
setPage: setPage,
rowsPerPage: rowsPerPage,
setRowsPerPage: setRowsPerPage,
paginationTable: paginationTable,
setPaginationTable: setPaginationTable,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle search ----------------------------- */
const [searchText, setSearchText] = useState('');
const handleSearchSubmit = async (event: React.FormEvent<HTMLFormElement>) => {
event.preventDefault();
if (searchText === '') {
searchParams.delete('search');
const params = Object.fromEntries([...searchParams.entries()]);
setAppliedParams(params);
} else {
const params = Object.fromEntries([...searchParams.entries(), ['search', searchText]]);
setAppliedParams(params);
}
};
const searchs = {
useSearchs: false,
searchText: searchText,
setSearchText: setSearchText,
handleSearchSubmit: handleSearchSubmit,
};
/* -------------------------------------------------------------------------- */
/* ------------------------------ handle filter ----------------------------- */
const [divisionValue, setDivisionValue] = useState('all');
const [divisionData, setDivisionData] = useState([]);
const handleDivisionChange = (event: SelectChangeEvent) => {
setDivisionValue(event.target.value as string);
if (event.target.value === 'all') {
searchParams.delete('division');
const params = Object.fromEntries([...searchParams.entries()]);
setAppliedParams(params);
} else {
const params = Object.fromEntries([
...searchParams.entries(),
['division', event.target.value as string],
]);
setAppliedParams(params);
}
};
const filters = {
useFilter: true,
config: {
label: 'Division',
divisionValue: divisionValue,
divisionData: divisionData,
handleDivisionChange: handleDivisionChange,
},
};
/* -------------------------------------------------------------------------- */
/* -------------------------------- headCell -------------------------------- */
const headCells: HeadCell<never>[] = [
{
id: 'memberId',
align: 'left',
label: 'Member ID',
isSort: true,
},
{
id: 'fullName',
align: 'center',
label: 'Name',
isSort: true,
},
{
id: 'division',
align: 'center',
label: 'Divisi',
isSort: true,
},
{
id: 'status',
align: 'center',
label: 'Status',
isSort: true,
},
{
id: 'action',
align: 'right',
label: '',
isSort: false,
},
];
/* -------------------------------------------------------------------------- */
useEffect(() => {
(async () => {
try {
setIsLoading(true);
const parameters =
Object.keys(appliedParams).length !== 0
? appliedParams
: Object.fromEntries([
...searchParams.entries(),
['order', order],
['orderBy', orderBy],
]);
const [divisionResponse, membersResponse] = await Promise.all([
axios.get(`${corporateValue}/division`, { signal: controller.signal }),
axios.get(`${corporateValue}/members`, {
params: { ...parameters },
signal: controller.signal,
}),
]);
setSearchParams(parameters);
setDivisionData(divisionResponse.data);
setMemberData(
membersResponse.data.data.map((obj: any) => ({
...obj,
status:
obj.status === 1 ? (
<Button
sx={{
backgroundColor: 'rgba(84, 214, 44, 0.16)',
color: palette.dark.success.dark,
paddingY: 0,
'&:hover': {
backgroundColor: 'rgba(84, 214, 44, 0.32)',
color: palette.dark.success.darker,
},
}}
>
Active
</Button>
) : (
<Button
sx={{
backgroundColor: 'rgba(255, 72, 66, 0.16)',
color: palette.dark.error.dark,
paddingY: 0,
'&:hover': {
backgroundColor: 'rgba(255, 72, 66, 0.32)',
color: palette.dark.error.darker,
},
}}
>
Inactive
</Button>
),
}))
);
setPaginationTable(membersResponse.data);
setRowsPerPage(membersResponse.data.per_page);
if (searchParams.get('page')) {
// @ts-ignore
const currentPage = parseInt(searchParams.get('page')) - 1;
paginationTable.current_page = currentPage;
setPage(currentPage);
}
setIsLoading(false);
} catch (error: any) {
console.error('Error fetching data:', error.message);
}
})();
return () => {
controller.abort();
};
}, [appliedParams, searchParams, order, orderBy, setSearchParams, corporateValue]);
return (
<Page title="Dashboard">
<Container maxWidth={themeStretch ? false : 'xl'}>
<Stack direction="row" justifyContent="space-between">
<Typography variant="h3" component="h1" paragraph>
Dashboard
</Typography>
</Stack>
<Grid container spacing={2}>
<Grid item xs={12} lg={12} md={12}>
<Table
headCells={headCells}
rows={memberData}
orders={orders}
paginations={paginations}
loadings={loadings}
params={params}
searchs={searchs}
filters={filters}
/>
</Grid>
</Grid>
</Container>
</Page>
);
}

View File

@@ -9,7 +9,10 @@ import Iconify from '../../components/Iconify';
import useLocalStorage from '../../hooks/useLocalStorage';
/* -------------------------------- sections -------------------------------- */
import { LoginEmailForm, LoginPhoneForm, VerifyCodeForm } from '../../sections/auth/login';
import React, { useState, useEffect } from 'react';
import axios from '../../utils/axios';
import { enqueueSnackbar } from 'notistack';
/* --------------------------------- styled --------------------------------- */
const RootStyle = styled('div')(({ theme }) => ({
@@ -36,6 +39,46 @@ export default function Login() {
const [emailOrPhoneForm, setEmailOrPhoneForm] = useLocalStorage('emailOrPhoneForm', false);
const [loginOrVerifyCode, setLoginOrVerifyCode] = useLocalStorage('loginOrVerifyCode', false);
const [lastSentTime, setLastSentTime] = useState(null);
const [canSendOTP, setCanSendOTP] = useState(true);
useEffect(() => {
let timer;
if (lastSentTime) {
timer = setInterval(() => {
const timeDiff = Math.floor((new Date() - lastSentTime) / 1000);
if (timeDiff >= 60) {
setCanSendOTP(true);
clearInterval(timer);
}
}, 1000);
}
return () => clearInterval(timer);
}, [lastSentTime]);
const sendOTP = (phoneOrEmail: string) => {
if (canSendOTP) {
// Logic untuk mengirim OTP
axios
.post('/login', { phoneOrEmail })
.then(() => {
enqueueSnackbar('Kode OTP telah dikirim, silahkan cek email dan spam folder', {
variant: 'success',
autoHideDuration: 5000,
});
})
.catch((error) => {
if (error.response.status !== 404) throw error.response;
if (error.response.status !== 422) throw error.response;
});
setLastSentTime(new Date());
setCanSendOTP(false);
} else {
alert('You can only send OTP once every minute.');
}
}
return (
<Page title="Login">
<RootStyle>
@@ -87,7 +130,12 @@ export default function Login() {
<Stack sx={{ marginTop: 5 }} spacing={1} alignItems="center">
<Typography>Tidak mendapatkan kode?</Typography>
<Link sx={{ cursor: 'pointer' }}>Kirim Ulang Kode OTP</Link>
<Link
sx={{ cursor: 'pointer' }}
onClick={() => {
sendOTP(emailOrPhone);
}}
>Kirim Ulang Kode OTP</Link>
</Stack>
</>
) : (
@@ -118,7 +166,7 @@ export default function Login() {
</>
)}
<Divider sx={{ marginTop: 5 }}>Atau</Divider>
{/* <Divider sx={{ marginTop: 5 }}>Atau</Divider>
<Stack sx={{ marginTop: 5 }}>
{emailOrPhoneForm ? (
@@ -148,7 +196,7 @@ export default function Login() {
Masuk menggunakan nomor handphone
</Link>
)}
</Stack>
</Stack> */}
</Grid>
</Grid>
</ContentStyle>

View File

@@ -57,9 +57,9 @@ export default function LoginForm({ setEmailOrPhone, setLoginOrVerifyCode }: Log
setEmailOrPhone(data.email);
setLoginOrVerifyCode(true);
reset();
enqueueSnackbar('Kode OTP telah dikirim, silahkan cek email yang login', {
enqueueSnackbar('Kode OTP telah dikirim, silahkan cek email dan spam folder', {
variant: 'success',
autoHideDuration: 2000,
autoHideDuration: 5000,
});
} catch (error: any) {
reset();

View File

@@ -0,0 +1,80 @@
import merge from 'lodash/merge';
import ReactApexChart from 'react-apexcharts';
// @mui
import { styled } from '@mui/material/styles';
import { Card, Typography, Stack } from '@mui/material';
// utils
import { fCurrency, fPercent } from '../../utils/formatNumber';
// components
import Iconify from '../../components/Iconify';
import BaseOptionChart from '../../components/chart/BaseOptionChart';
// ----------------------------------------------------------------------
const RootStyle = styled(Card)(({ theme }) => ({
boxShadow: 'none',
padding: theme.spacing(3),
color: theme.palette.primary.darker,
backgroundColor: theme.palette.primary.lighter,
}));
// ----------------------------------------------------------------------
const INITIAL = 500000000
const TOTAL = 257907000;
const PERCENT = -3;
const CHART_DATA = [{ data: [100, 99, 99, 85, 74, 57, 54, 51] }];
export default function SomethingUsage() {
const chartOptions = merge(BaseOptionChart(), {
chart: { sparkline: { enabled: true } },
xaxis: { labels: { show: true } },
yaxis: { labels: { show: false } },
stroke: { width: 4 },
legend: { show: false },
grid: { show: false },
tooltip: {
marker: { show: false },
y: {
formatter: (seriesName: string) => (seriesName) + "%",
title: {
formatter: () => '',
},
},
},
fill: { gradient: { opacityFrom: 0, opacityTo: 0 } },
});
return (
<RootStyle>
<Stack direction="row" justifyContent="space-between" sx={{ mb: 3 }}>
<div>
<Typography variant="body2" component="span" sx={{ opacity: 0.72 }}>
{fCurrency(INITIAL)}
</Typography>
<Typography sx={{ typography: 'subtitle2' }}>Remaining Balance</Typography>
<Typography sx={{ typography: 'h3' }}>{fCurrency(TOTAL)}</Typography>
</div>
<div>
<Stack direction="row" alignItems="center" justifyContent="flex-end" sx={{ mb: 0.6 }}>
<Iconify
width={20}
height={20}
icon={PERCENT >= 0 ? 'eva:trending-up-fill' : 'eva:trending-down-fill'}
/>
<Typography variant="subtitle2" component="span" sx={{ ml: 0.5 }}>
{PERCENT > 0 && '+'}
{fPercent(PERCENT)}
</Typography>
</Stack>
<Typography variant="body2" component="span" sx={{ opacity: 0.72 }}>
&nbsp;than last month
</Typography>
</div>
</Stack>
<ReactApexChart type="area" series={CHART_DATA} options={chartOptions} height={100} />
</RootStyle>
);
}

View File

@@ -37,6 +37,17 @@ export default function PlanCreate() {
axios.get('/user/role/'+id)
.then((res) => {
setCurrentUserRole(res.data);
axios.get('/permission_list?guard_name='+res.data.guard_name)
.then((res) => {
setPermissions(res.data);
})
.catch((err) => {
if (err.response && err.response.status === 404) {
navigate('/404');
} else {
console.error('Error fetching permissions:', err);
}
});
})
.catch((err) => {
if (err.response.status === 404) {
@@ -44,17 +55,7 @@ export default function PlanCreate() {
}
})
}
axios.get('/permission_list')
.then((res) => {
setPermissions(res.data);
})
.catch((err) => {
if (err.response && err.response.status === 404) {
navigate('/404');
} else {
console.error('Error fetching permissions:', err);
}
});
}, [corporate_id, id]);

View File

@@ -27,6 +27,8 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
const { enqueueSnackbar } = useSnackbar();
const navigate = useNavigate();
const { corporate_id } = useParams();
const [guardName, setGuardName] = useState(currentUserRole?.guard_name || '');
const [filteredPermissions, setFilteredPermissions] = useState(permissions);
const NewUserRoleSchema = Yup.object().shape({
name: Yup.string().required('Name is required'),
@@ -37,7 +39,7 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
name: currentUserRole?.name || '',
guard_name: currentUserRole?.guard_name || '',
permission_check: currentUserRole?.permissions?.map(permission => permission.id) || []
}),
[currentUserRole, permissions]
);
@@ -55,7 +57,7 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
resolver: yupResolver(NewUserRoleSchema),
defaultValues,
});
const {
reset,
watch,
@@ -122,6 +124,27 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
}
};
useEffect(() => {
// Fetch permissions based on guard_name
if (guardName) {
axios.get(`/permission_list?guard_name=${guardName}`)
.then((res) => {
setFilteredPermissions(res.data);
})
.catch((err) => {
console.error('Error fetching permissions:', err);
});
} else {
setFilteredPermissions(permissions);
}
}, [guardName,permissions]);
const handleGuardNameChange = (event) => {
console.log("ivan")
setGuardName(event.target.value);
setValue('guard_name', event.target.value);
};
return (
<FormProvider methods={methods} onSubmit={handleSubmit(onSubmit)}>
<Box sx={{ px: 2 }}>
@@ -131,7 +154,7 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
<Stack spacing={2}>
<Typography variant="h6" color={palette.light.primary.main}>User Role</Typography>
<RHFTextField name="name" label="Name" />
<RHFSelect name="guard_name" label="Guard Name">
<RHFSelect name="guard_name" label="Guard Name" onChange={handleGuardNameChange}>
{guard_name_options.map((option, index) => (
<option key={index} value={option.value}>
{option.label}
@@ -140,7 +163,7 @@ export default function UserRoleForm({ isEdit, currentUserRole, permissions }: P
</RHFSelect>
<Typography variant="h6" color={palette.light.primary.main}>Permission</Typography>
<Grid container spacing={2}>
{permissions?.map((permission, index) => (
{filteredPermissions?.map((permission, index) => (
<Grid item xs={4} key={permission.id}>
<FormControlLabel
control={

View File

@@ -1 +1 @@
import{r,i as a,a as t}from"./jsx-runtime_commonjs-proxy.08daee49.js";var e={},o=a.exports;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(r()),d=t,l=(0,i.default)((0,d.jsx)("path",{d:"M11.67 3.87 9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z"}),"ArrowBackIos");u=e.default=l;export{u as d};
import{r,i as a,a as t}from"./jsx-runtime_commonjs-proxy.b87625c0.js";var e={},o=a.exports;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,i=o(r()),d=t,l=(0,i.default)((0,d.jsx)("path",{d:"M11.67 3.87 9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z"}),"ArrowBackIos");u=e.default=l;export{u as d};

View File

@@ -1 +0,0 @@
import{a7 as o}from"./index.4524613b.js";const t=o(),r=t;export{r as B};

View File

@@ -0,0 +1 @@
import{a7 as o}from"./index.b0a49137.js";const t=o(),r=t;export{r as B};

View File

@@ -1 +1 @@
import{a as d,g as u,s as C,P as p,r as f,u as m,e as x,_ as n,j as h,h as y,i as g}from"./index.4524613b.js";function v(s){return d("MuiCard",s)}u("MuiCard",["root"]);const w=["className","raised"],M=s=>{const{classes:e}=s;return g({root:["root"]},v,e)},P=C(p,{name:"MuiCard",slot:"Root",overridesResolver:(s,e)=>e.root})(()=>({overflow:"hidden"})),R=f.exports.forwardRef(function(e,t){const o=m({props:e,name:"MuiCard"}),{className:i,raised:r=!1}=o,l=x(o,w),a=n({},o,{raised:r}),c=M(a);return h(P,n({className:y(c.root,i),elevation:r?8:void 0,ref:t,ownerState:a},l))}),_=R;export{_ as C};
import{a as d,g as u,s as C,P as p,r as f,u as m,e as x,_ as n,j as h,h as y,i as g}from"./index.b0a49137.js";function v(s){return d("MuiCard",s)}u("MuiCard",["root"]);const w=["className","raised"],M=s=>{const{classes:e}=s;return g({root:["root"]},v,e)},P=C(p,{name:"MuiCard",slot:"Root",overridesResolver:(s,e)=>e.root})(()=>({overflow:"hidden"})),R=f.exports.forwardRef(function(e,t){const o=m({props:e,name:"MuiCard"}),{className:i,raised:r=!1}=o,l=x(o,w),a=n({},o,{raised:r}),c=M(a);return h(P,n({className:y(c.root,i),elevation:r?8:void 0,ref:t,ownerState:a},l))}),_=R;export{_ as C};

View File

@@ -1 +1 @@
import{c as h,j as t,g as P,a as B,s as g,aQ as S,b as v,_ as n,a6 as M,r as d,u as _,e as H,h as R,i as O}from"./index.4524613b.js";import{S as U}from"./SwitchBase.e250c68d.js";const V=h(t("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),j=h(t("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),L=h(t("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox");function N(o){return B("MuiCheckbox",o)}const w=P("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),p=w,E=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],F=o=>{const{classes:e,indeterminate:c,color:s}=o,r={root:["root",c&&"indeterminate",`color${v(s)}`]},a=O(r,N,e);return n({},e,a)},Q=g(U,{shouldForwardProp:o=>S(o)||o==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(o,e)=>{const{ownerState:c}=o;return[e.root,c.indeterminate&&e.indeterminate,c.color!=="default"&&e[`color${v(c.color)}`]]}})(({theme:o,ownerState:e})=>n({color:(o.vars||o).palette.text.secondary},!e.disableRipple&&{"&:hover":{backgroundColor:o.vars?`rgba(${e.color==="default"?o.vars.palette.action.activeChannel:o.vars.palette.primary.mainChannel} / ${o.vars.palette.action.hoverOpacity})`:M(e.color==="default"?o.palette.action.active:o.palette[e.color].main,o.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},e.color!=="default"&&{[`&.${p.checked}, &.${p.indeterminate}`]:{color:(o.vars||o).palette[e.color].main},[`&.${p.disabled}`]:{color:(o.vars||o).palette.action.disabled}})),T=t(j,{}),W=t(V,{}),q=t(L,{}),A=d.exports.forwardRef(function(e,c){var s,r;const a=_({props:e,name:"MuiCheckbox"}),{checkedIcon:b=T,color:f="primary",icon:I=W,indeterminate:i=!1,indeterminateIcon:u=q,inputProps:z,size:l="medium",className:$}=a,y=H(a,E),m=i?u:I,C=i?u:b,k=n({},a,{color:f,indeterminate:i,size:l}),x=F(k);return t(Q,n({type:"checkbox",inputProps:n({"data-indeterminate":i},z),icon:d.exports.cloneElement(m,{fontSize:(s=m.props.fontSize)!=null?s:l}),checkedIcon:d.exports.cloneElement(C,{fontSize:(r=C.props.fontSize)!=null?r:l}),ownerState:k,ref:c,className:R(x.root,$)},y,{classes:x}))}),J=A;export{J as C};
import{c as h,j as t,g as P,a as B,s as g,aQ as S,b as v,_ as n,a6 as M,r as d,u as _,e as H,h as R,i as O}from"./index.b0a49137.js";import{S as U}from"./SwitchBase.6ffeba1b.js";const V=h(t("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),j=h(t("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),L=h(t("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox");function N(o){return B("MuiCheckbox",o)}const w=P("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),p=w,E=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],F=o=>{const{classes:e,indeterminate:c,color:s}=o,r={root:["root",c&&"indeterminate",`color${v(s)}`]},a=O(r,N,e);return n({},e,a)},Q=g(U,{shouldForwardProp:o=>S(o)||o==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(o,e)=>{const{ownerState:c}=o;return[e.root,c.indeterminate&&e.indeterminate,c.color!=="default"&&e[`color${v(c.color)}`]]}})(({theme:o,ownerState:e})=>n({color:(o.vars||o).palette.text.secondary},!e.disableRipple&&{"&:hover":{backgroundColor:o.vars?`rgba(${e.color==="default"?o.vars.palette.action.activeChannel:o.vars.palette.primary.mainChannel} / ${o.vars.palette.action.hoverOpacity})`:M(e.color==="default"?o.palette.action.active:o.palette[e.color].main,o.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},e.color!=="default"&&{[`&.${p.checked}, &.${p.indeterminate}`]:{color:(o.vars||o).palette[e.color].main},[`&.${p.disabled}`]:{color:(o.vars||o).palette.action.disabled}})),T=t(j,{}),W=t(V,{}),q=t(L,{}),A=d.exports.forwardRef(function(e,c){var s,r;const a=_({props:e,name:"MuiCheckbox"}),{checkedIcon:b=T,color:f="primary",icon:I=W,indeterminate:i=!1,indeterminateIcon:u=q,inputProps:z,size:l="medium",className:$}=a,y=H(a,E),m=i?u:I,C=i?u:b,k=n({},a,{color:f,indeterminate:i,size:l}),x=F(k);return t(Q,n({type:"checkbox",inputProps:n({"data-indeterminate":i},z),icon:d.exports.cloneElement(m,{fontSize:(s=m.props.fontSize)!=null?s:l}),checkedIcon:d.exports.cloneElement(C,{fontSize:(r=C.props.fontSize)!=null?r:l}),ownerState:k,ref:c,className:R(x.root,$)},y,{classes:x}))}),J=A;export{J as C};

View File

@@ -1 +1 @@
import{au as x,n as g,r as l,Z as b,a0 as v,f as i,F as y,S as n,T as a,j as e,B as w,D as s,q as D}from"./index.4524613b.js";import{c as d,b as C}from"./formatTime.0646b9d0.js";import{S,a as j,b as I}from"./Stepper.3a0cdbba.js";import{C as p}from"./Card.4734268d.js";import"./index.49ea62c1.js";const Y=["Review","Approval","Disbursement"],U=()=>{const{id:h}=x(),m=g(),{corporateValue:c}=l.exports.useContext(b),[f,k]=l.exports.useState(c),[t,u]=l.exports.useState(null);return l.exports.useEffect(()=>{v.get(`${c}/claim-report/${h}`).then(r=>{u(r.data.data)}).catch(r=>{console.error("Terjadi kesalahan:",r)})},[]),l.exports.useEffect(()=>{f!==c&&m("/claim-report")},[c]),i(y,{children:[i(n,{alignItems:"center",justifyContent:"space-between",direction:"row",sx:{marginTop:1},children:[i(a,{variant:"subtitle1",sx:{height:"max-content"},children:["Claim Request for ",t==null?void 0:t.fullName]}),i(n,{children:[e(a,{variant:"caption",children:"Submission date"}),e(a,{variant:"caption",children:d(t?t.submissionDate:new Date,"dd / MM / yyyy")})]})]}),e(w,{sx:{width:"100%",marginTop:2},children:e(S,{activeStep:(t==null?void 0:t.status)==="approved"?1:(t==null?void 0:t.status)==="requested"?0:2,alternativeLabel:!0,children:Y.map(r=>e(j,{children:e(I,{children:r})},r))})}),e(n,{marginTop:2,children:e(a,{variant:"subtitle1",paddingY:2,children:C(t?t==null?void 0:t.histories[0].created_at:new Date)})}),i(n,{direction:"row",spacing:2,children:[e(s,{orientation:"vertical",flexItem:!0,sx:{borderStyle:"dashed"}}),i(n,{spacing:2,sx:{flex:1,maxWidth:"100%"},children:[t==null?void 0:t.histories.map((r,o)=>i(p,{sx:{paddingY:2,paddingX:3},children:[e(n,{direction:"row",justifyContent:"space-between",alignItems:"center",children:i(a,{variant:"body1",children:[d(r.created_at,"HH:mm")," WIB"]})}),e(s,{sx:{marginY:2}}),i(n,{children:[i(a,{variant:"subtitle2",color:"#404040",children:["Details : ",r.description]}),e(a,{variant:"caption",color:"#757575",sx:{marginTop:2,marginBottom:1},children:r.title})]})]},`${r.title}-${o}`)),i(p,{sx:{paddingY:2,paddingX:3},children:[e(n,{direction:"row",justifyContent:"space-between",alignItems:"center",children:i(a,{variant:"body1",fontWeight:600,children:[e(D,{icon:"eva:file-text-fill"})," Dokumen Kelengkapan"]})}),e(s,{sx:{marginY:2}}),e(a,{fontWeight:"600",children:"Kondisi"}),i(n,{children:[e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimConditions.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))}),e(a,{fontWeight:"600",children:"Diagnosa"}),e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimDiagnosis.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))}),e(a,{fontWeight:"600",children:"Hasil"}),e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimResults.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))})]})]})]})]})]})};export{U as default};
import{au as x,n as g,r as l,Z as b,a0 as v,f as i,F as y,S as n,T as a,j as e,B as w,D as s,q as D}from"./index.b0a49137.js";import{c as d,b as C}from"./formatTime.0646b9d0.js";import{S,a as j,b as I}from"./Stepper.49691c4e.js";import{C as p}from"./Card.a4168b31.js";import"./index.49ea62c1.js";const Y=["Review","Approval","Disbursement"],U=()=>{const{id:h}=x(),m=g(),{corporateValue:c}=l.exports.useContext(b),[f,k]=l.exports.useState(c),[t,u]=l.exports.useState(null);return l.exports.useEffect(()=>{v.get(`${c}/claim-report/${h}`).then(r=>{u(r.data.data)}).catch(r=>{console.error("Terjadi kesalahan:",r)})},[]),l.exports.useEffect(()=>{f!==c&&m("/claim-report")},[c]),i(y,{children:[i(n,{alignItems:"center",justifyContent:"space-between",direction:"row",sx:{marginTop:1},children:[i(a,{variant:"subtitle1",sx:{height:"max-content"},children:["Claim Request for ",t==null?void 0:t.fullName]}),i(n,{children:[e(a,{variant:"caption",children:"Submission date"}),e(a,{variant:"caption",children:d(t?t.submissionDate:new Date,"dd / MM / yyyy")})]})]}),e(w,{sx:{width:"100%",marginTop:2},children:e(S,{activeStep:(t==null?void 0:t.status)==="approved"?1:(t==null?void 0:t.status)==="requested"?0:2,alternativeLabel:!0,children:Y.map(r=>e(j,{children:e(I,{children:r})},r))})}),e(n,{marginTop:2,children:e(a,{variant:"subtitle1",paddingY:2,children:C(t?t==null?void 0:t.histories[0].created_at:new Date)})}),i(n,{direction:"row",spacing:2,children:[e(s,{orientation:"vertical",flexItem:!0,sx:{borderStyle:"dashed"}}),i(n,{spacing:2,sx:{flex:1,maxWidth:"100%"},children:[t==null?void 0:t.histories.map((r,o)=>i(p,{sx:{paddingY:2,paddingX:3},children:[e(n,{direction:"row",justifyContent:"space-between",alignItems:"center",children:i(a,{variant:"body1",children:[d(r.created_at,"HH:mm")," WIB"]})}),e(s,{sx:{marginY:2}}),i(n,{children:[i(a,{variant:"subtitle2",color:"#404040",children:["Details : ",r.description]}),e(a,{variant:"caption",color:"#757575",sx:{marginTop:2,marginBottom:1},children:r.title})]})]},`${r.title}-${o}`)),i(p,{sx:{paddingY:2,paddingX:3},children:[e(n,{direction:"row",justifyContent:"space-between",alignItems:"center",children:i(a,{variant:"body1",fontWeight:600,children:[e(D,{icon:"eva:file-text-fill"})," Dokumen Kelengkapan"]})}),e(s,{sx:{marginY:2}}),e(a,{fontWeight:"600",children:"Kondisi"}),i(n,{children:[e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimConditions.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))}),e(a,{fontWeight:"600",children:"Diagnosa"}),e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimDiagnosis.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))}),e(a,{fontWeight:"600",children:"Hasil"}),e(n,{divider:e(s,{orientation:"horizontal",flexItem:!0}),spacing:1,sx:{marginY:2},children:t&&t.files.claimResults.map((r,o)=>e(n,{direction:"row",justifyContent:"space-between",children:e("a",{href:r.fileUrl,target:"_blank",style:{textDecoration:"none"},rel:"noreferrer",children:i(a,{sx:{color:"text.secondary"},variant:"subtitle2",children:["- ",r.fileName]})})},o))})]})]})]})]})]})};export{U as default};

View File

@@ -1,4 +1,4 @@
import{c as p_,j as q,s as _e,a3 as __,_ as Rt,ad as _o,e as xo,g as d_,a as v_,T as Mi,r as ge,u as x_,ae as w_,h as A_,i as m_,z as pe,B as It,f as cr,L as Wi,ac as S_}from"./index.4524613b.js";const y_=p_(q("path",{d:"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"}),"MoreHoriz"),I_=["slots","slotProps"],R_=_e(__)(({theme:R})=>Rt({display:"flex",marginLeft:`calc(${R.spacing(1)} * 0.5)`,marginRight:`calc(${R.spacing(1)} * 0.5)`},R.palette.mode==="light"?{backgroundColor:R.palette.grey[100],color:R.palette.grey[700]}:{backgroundColor:R.palette.grey[700],color:R.palette.grey[100]},{borderRadius:2,"&:hover, &:focus":Rt({},R.palette.mode==="light"?{backgroundColor:R.palette.grey[200]}:{backgroundColor:R.palette.grey[600]}),"&:active":Rt({boxShadow:R.shadows[0]},R.palette.mode==="light"?{backgroundColor:_o(R.palette.grey[200],.12)}:{backgroundColor:_o(R.palette.grey[600],.12)})})),C_=_e(y_)({width:24,height:16});function T_(R){const{slots:D={},slotProps:o={}}=R,Z=xo(R,I_),V=R;return q("li",{children:q(R_,Rt({focusRipple:!0},Z,{ownerState:V,children:q(C_,Rt({as:D.CollapsedIcon,ownerState:V},o.collapsedIcon))}))})}function L_(R){return v_("MuiBreadcrumbs",R)}const E_=d_("MuiBreadcrumbs",["root","ol","li","separator"]),b_=E_,O_=["children","className","component","slots","slotProps","expandText","itemsAfterCollapse","itemsBeforeCollapse","maxItems","separator"],B_=R=>{const{classes:D}=R;return m_({root:["root"],li:["li"],ol:["ol"],separator:["separator"]},L_,D)},W_=_e(Mi,{name:"MuiBreadcrumbs",slot:"Root",overridesResolver:(R,D)=>[{[`& .${b_.li}`]:D.li},D.root]})({}),P_=_e("ol",{name:"MuiBreadcrumbs",slot:"Ol",overridesResolver:(R,D)=>D.ol})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"}),M_=_e("li",{name:"MuiBreadcrumbs",slot:"Separator",overridesResolver:(R,D)=>D.separator})({display:"flex",userSelect:"none",marginLeft:8,marginRight:8});function U_(R,D,o,Z){return R.reduce((V,Mn,P)=>(P<R.length-1?V=V.concat(Mn,q(M_,{"aria-hidden":!0,className:D,ownerState:Z,children:o},`separator-${P}`)):V.push(Mn),V),[])}const F_=ge.exports.forwardRef(function(D,o){const Z=x_({props:D,name:"MuiBreadcrumbs"}),{children:V,className:Mn,component:P="nav",slots:de={},slotProps:Kt={},expandText:ve="Show path",itemsAfterCollapse:nt=1,itemsBeforeCollapse:xn=1,maxItems:Ct=8,separator:Hn="/"}=Z,tt=xo(Z,O_),[ht,fn]=ge.exports.useState(!1),cn=Rt({},Z,{component:P,expanded:ht,expandText:ve,itemsAfterCollapse:nt,itemsBeforeCollapse:xn,maxItems:Ct,separator:Hn}),gt=B_(cn),wn=w_({elementType:de.CollapsedIcon,externalSlotProps:Kt.collapsedIcon,ownerState:cn}),$n=ge.exports.useRef(null),An=Y=>{const qn=()=>{fn(!0);const Tt=$n.current.querySelector("a[href],button,[tabindex]");Tt&&Tt.focus()};return xn+nt>=Y.length?Y:[...Y.slice(0,xn),q(T_,{"aria-label":ve,slots:{CollapsedIcon:de.CollapsedIcon},slotProps:{collapsedIcon:wn},onClick:qn},"ellipsis"),...Y.slice(Y.length-nt,Y.length)]},Un=ge.exports.Children.toArray(V).filter(Y=>ge.exports.isValidElement(Y)).map((Y,qn)=>q("li",{className:gt.li,children:Y},`child-${qn}`));return q(W_,Rt({ref:o,component:P,color:"text.secondary",className:A_(gt.root,Mn),ownerState:cn},tt,{children:q(P_,{className:gt.ol,ref:$n,ownerState:cn,children:U_(ht||Ct&&Un.length<=Ct?Un:An(Un),gt.separator,Hn,cn)})}))}),D_=F_;var Pi={exports:{}};/**
import{c as p_,j as q,s as _e,a3 as __,_ as Rt,ad as _o,e as xo,g as d_,a as v_,T as Mi,r as ge,u as x_,ae as w_,h as A_,i as m_,z as pe,B as It,f as cr,L as Wi,ac as S_}from"./index.b0a49137.js";const y_=p_(q("path",{d:"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"}),"MoreHoriz"),I_=["slots","slotProps"],R_=_e(__)(({theme:R})=>Rt({display:"flex",marginLeft:`calc(${R.spacing(1)} * 0.5)`,marginRight:`calc(${R.spacing(1)} * 0.5)`},R.palette.mode==="light"?{backgroundColor:R.palette.grey[100],color:R.palette.grey[700]}:{backgroundColor:R.palette.grey[700],color:R.palette.grey[100]},{borderRadius:2,"&:hover, &:focus":Rt({},R.palette.mode==="light"?{backgroundColor:R.palette.grey[200]}:{backgroundColor:R.palette.grey[600]}),"&:active":Rt({boxShadow:R.shadows[0]},R.palette.mode==="light"?{backgroundColor:_o(R.palette.grey[200],.12)}:{backgroundColor:_o(R.palette.grey[600],.12)})})),C_=_e(y_)({width:24,height:16});function T_(R){const{slots:D={},slotProps:o={}}=R,Z=xo(R,I_),V=R;return q("li",{children:q(R_,Rt({focusRipple:!0},Z,{ownerState:V,children:q(C_,Rt({as:D.CollapsedIcon,ownerState:V},o.collapsedIcon))}))})}function L_(R){return v_("MuiBreadcrumbs",R)}const E_=d_("MuiBreadcrumbs",["root","ol","li","separator"]),b_=E_,O_=["children","className","component","slots","slotProps","expandText","itemsAfterCollapse","itemsBeforeCollapse","maxItems","separator"],B_=R=>{const{classes:D}=R;return m_({root:["root"],li:["li"],ol:["ol"],separator:["separator"]},L_,D)},W_=_e(Mi,{name:"MuiBreadcrumbs",slot:"Root",overridesResolver:(R,D)=>[{[`& .${b_.li}`]:D.li},D.root]})({}),P_=_e("ol",{name:"MuiBreadcrumbs",slot:"Ol",overridesResolver:(R,D)=>D.ol})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"}),M_=_e("li",{name:"MuiBreadcrumbs",slot:"Separator",overridesResolver:(R,D)=>D.separator})({display:"flex",userSelect:"none",marginLeft:8,marginRight:8});function U_(R,D,o,Z){return R.reduce((V,Mn,P)=>(P<R.length-1?V=V.concat(Mn,q(M_,{"aria-hidden":!0,className:D,ownerState:Z,children:o},`separator-${P}`)):V.push(Mn),V),[])}const F_=ge.exports.forwardRef(function(D,o){const Z=x_({props:D,name:"MuiBreadcrumbs"}),{children:V,className:Mn,component:P="nav",slots:de={},slotProps:Kt={},expandText:ve="Show path",itemsAfterCollapse:nt=1,itemsBeforeCollapse:xn=1,maxItems:Ct=8,separator:Hn="/"}=Z,tt=xo(Z,O_),[ht,fn]=ge.exports.useState(!1),cn=Rt({},Z,{component:P,expanded:ht,expandText:ve,itemsAfterCollapse:nt,itemsBeforeCollapse:xn,maxItems:Ct,separator:Hn}),gt=B_(cn),wn=w_({elementType:de.CollapsedIcon,externalSlotProps:Kt.collapsedIcon,ownerState:cn}),$n=ge.exports.useRef(null),An=Y=>{const qn=()=>{fn(!0);const Tt=$n.current.querySelector("a[href],button,[tabindex]");Tt&&Tt.focus()};return xn+nt>=Y.length?Y:[...Y.slice(0,xn),q(T_,{"aria-label":ve,slots:{CollapsedIcon:de.CollapsedIcon},slotProps:{collapsedIcon:wn},onClick:qn},"ellipsis"),...Y.slice(Y.length-nt,Y.length)]},Un=ge.exports.Children.toArray(V).filter(Y=>ge.exports.isValidElement(Y)).map((Y,qn)=>q("li",{className:gt.li,children:Y},`child-${qn}`));return q(W_,Rt({ref:o,component:P,color:"text.secondary",className:A_(gt.root,Mn),ownerState:cn},tt,{children:q(P_,{className:gt.ol,ref:$n,ownerState:cn,children:U_(ht||Ct&&Un.length<=Ct?Un:An(Un),gt.separator,Hn,cn)})}))}),D_=F_;var Pi={exports:{}};/**
* @license
* Lodash <https://lodash.com/>
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
import{P as H}from"./Page.e9d8cc16.js";import{n as V,r,Z as $,$ as U,a0 as y,j as e,T as _,F as W,f as E,a4 as Y,S as Z,Y as q,a2 as z}from"./index.b0a49137.js";import{T as J}from"./Table.08efdc83.js";import{f as P}from"./formatTime.0646b9d0.js";import{T as K}from"./TableMoreMenu.0bdaf78f.js";import{d as Q}from"./VisibilityOutlined.ab7a612c.js";import{L as i}from"./Label.f33248ec.js";import{H as X}from"./HeaderBreadcrumbs.c70f1305.js";import{G as D}from"./Grid.97ae8bc1.js";import"./Box.c50b4a28.js";import"./TablePagination.dc161c5e.js";import"./KeyboardArrowRight.fd8a1844.js";import"./LastPage.9e90b034.js";import"./TableRow.41459f01.js";import"./useId.c3f149cd.js";import"./TextField.08c1cc6c.js";import"./InputAdornment.b72719ba.js";import"./Search.cbee36ce.js";import"./LoadingButton.6a53b4e1.js";import"./generateUtilityClasses.06032f54.js";import"./TableContainer.58606ed5.js";import"./TableHead.c7022a42.js";import"./index.49ea62c1.js";import"./jsx-runtime_commonjs-proxy.b87625c0.js";function j(){const c=V(),{corporateValue:l}=r.exports.useContext($),[T,I]=r.exports.useState([]),[C,m]=r.exports.useState(!0),w={isLoading:C,setIsLoading:m},[s,d]=U(),[n,p]=r.exports.useState({}),k={searchParams:s,setSearchParams:d,appliedParams:n,setAppliedParams:p},[u,v]=r.exports.useState("asc"),[f,N]=r.exports.useState("fullName"),O={order:u,setOrder:v,orderBy:f,setOrderBy:N},[L,g]=r.exports.useState(0),[M,S]=r.exports.useState(10),[x,b]=r.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),B={page:L,setPage:g,rowsPerPage:M,setRowsPerPage:S,paginationTable:x,setPaginationTable:b},[h,R]=r.exports.useState(""),A={useSearchs:!0,searchText:h,setSearchText:R,handleSearchSubmit:async o=>{if(o.preventDefault(),h===""){s.delete("search");const a=Object.fromEntries([...s.entries()]);p(a)}else{const a=Object.fromEntries([...s.entries(),["search",h]]);p(a)}}},F={useExport:!0,startDate:"",endDate:"",status:"all",handleExportReport:async()=>{y.get(l+"/export-members/list").then(o=>{const a=document.createElement("a");a.href=o.data.data.file_url,a.setAttribute("download",o.data.data.file_name),document.body.appendChild(a),a.click()})}},G=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"left",label:"Name",isSort:!0},{id:"start_date",align:"center",label:"Start Date",isSort:!0},{id:"end_date",align:"center",label:"End Date",isSort:!0},{id:"status",align:"center",label:"Status",isSort:!0},{id:"action",align:"center",label:"",isSort:!0}];return r.exports.useEffect(()=>{(async()=>{m(!0),await new Promise(t=>setTimeout(t,250));const o=Object.keys(n).length!==0?n:Object.fromEntries([...s.entries(),["order",u],["orderBy",f]]),a=await y.get(`${l}/members?type=employee-data`,{params:{...o}});if(d(o),I(a.data.data.map(t=>({...t,status:t.status===1?e(i,{color:"success",children:"Active"}):e(i,{color:"error",children:"Inactive"}),start_date:e(i,{children:t.start_date?P(t.start_date):""}),end_date:e(i,{children:t.end_date?P(t.end_date):""}),fullName:e(_,{variant:"body2",children:t.fullName}),memberId:e(_,{variant:"body2",children:t.memberId}),action:e(K,{actions:e(W,{children:E(Y,{onClick:()=>c("/employee-data/user-profile/"+t.personId),children:[e(Q,{}),"View"]})})})}))),b(a.data),S(a.data.per_page),s.get("page")){const t=parseInt(s.get("page"))-1;x.current_page=t,g(t)}m(!1)})()},[n,s,u,f,d,l]),e(Z,{children:e(J,{headCells:G,rows:T,orders:O,paginations:B,loadings:w,params:k,searchs:A,exportReport:F})})}function Ie(){const{themeStretch:c}=q();return e(H,{title:"Employee Data",children:E(z,{maxWidth:c?!1:"xl",children:[e(X,{heading:"Employee Data",links:[{name:"Case Management"},{name:"Employee Data",href:"/employee-data"}]}),e(D,{container:!0,children:e(D,{item:!0,xs:12,lg:12,md:12,children:e(j,{})})})]})})}export{Ie as default};

View File

@@ -1 +0,0 @@
import{P as K}from"./Page.b1f38576.js";import{n as Q,r as a,Z as X,$ as ee,a0 as _,j as s,f as g,F as te,a4 as ae,S as re,m as O,Y as se,a2 as ne}from"./index.4524613b.js";import{T as oe}from"./Table.b404960e.js";import{f as P}from"./formatTime.0646b9d0.js";import{T as ie}from"./TableMoreMenu.fbaa38aa.js";import{d as ce}from"./VisibilityOutlined.7d63b3a6.js";import{L as j}from"./Label.c0ab61c4.js";import{H as le}from"./HeaderBreadcrumbs.f593a2a7.js";import{G as v}from"./Grid.63392dc1.js";import"./Box.522fc68e.js";import"./TablePagination.a2995130.js";import"./KeyboardArrowRight.dfbe216b.js";import"./LastPage.928f2cf3.js";import"./TableRow.184bd340.js";import"./useId.5c752e65.js";import"./TextField.489cf1ea.js";import"./InputAdornment.c3b5c49a.js";import"./Search.a632f4d1.js";import"./TableContainer.e4a601db.js";import"./TableHead.2295a13e.js";import"./index.49ea62c1.js";import"./jsx-runtime_commonjs-proxy.08daee49.js";function de(){const d=Q(),{corporateValue:m}=a.exports.useContext(X),[y,T]=a.exports.useState([]),[w,p]=a.exports.useState(!0),V={isLoading:w,setIsLoading:p},[t,S]=ee(),[i,n]=a.exports.useState({}),k={searchParams:t,setSearchParams:S,appliedParams:i,setAppliedParams:n},[u,I]=a.exports.useState("desc"),[h,F]=a.exports.useState("request_date"),L={order:u,setOrder:I,orderBy:h,setOrderBy:F},[M,x]=a.exports.useState(0),[A,D]=a.exports.useState(10),[b,E]=a.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),B={page:M,setPage:x,rowsPerPage:A,setRowsPerPage:D,paginationTable:b,setPaginationTable:E},[f,G]=a.exports.useState(""),R={useSearchs:!0,searchText:f,setSearchText:G,handleSearchSubmit:async r=>{if(r.preventDefault(),f===""){t.delete("search");const e=Object.fromEntries([...t.entries()]);n(e)}else{const e=Object.fromEntries([...t.entries(),["search",f]]);n(e)}}},[C,N]=a.exports.useState("all"),[q,z]=a.exports.useState([]),H={useFilter:!1,config:{label:"Status",statusValue:C,statusData:q,handleStatusChange:r=>{if(N(r.target.value),r.target.value==="all"){t.delete("status");const e=Object.fromEntries([...t.entries()]);n(e)}else{const e=Object.fromEntries([...t.entries(),["status",r.target.value]]);n(e)}}}},[c,$]=a.exports.useState(""),U={useFilter:!0,startDate:c,setStartDate:$,handleStartDateChange:async r=>{if(r.preventDefault(),c===""){t.delete("start_date");const e=Object.fromEntries([...t.entries()]);n(e)}else{const e=Object.fromEntries([...t.entries(),["start_date",c]]);n(e)}}},[l,W]=a.exports.useState(""),Y={useFilter:!0,endDate:l,setEndDate:W,handleEndDateChange:async r=>{if(r.preventDefault(),l===""){t.delete("end_date");const e=Object.fromEntries([...t.entries()]);n(e)}else{const e=Object.fromEntries([...t.entries(),["end_date",l]]);n(e)}}},Z={useExport:!0,startDate:c,endDate:l,status:C,handleExportReport:async()=>{var r=Object.fromEntries([...t.entries()]);await _.get(m+"/claims/export",{params:r}).then(e=>{O("Data berhasil di Export",{variant:"success",anchorOrigin:{horizontal:"right",vertical:"top"}}),document.location.href=e.data.data.file_url}).catch(e=>O("Data Gagal di Export",{variant:"error",anchorOrigin:{horizontal:"right",vertical:"top"}}))}},J=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"left",label:"Name",isSort:!0},{id:"start_date",align:"center",label:"Start Date",isSort:!0},{id:"end_date",align:"center",label:"End Date",isSort:!0},{id:"action",align:"center",label:"",isSort:!1}];return a.exports.useEffect(()=>{(async()=>{p(!0),await new Promise(o=>setTimeout(o,250));const r=Object.keys(i).length!==0?i:Object.fromEntries([...t.entries(),["order",u],["orderBy",h]]),e=await _.get(`${m}/members?type=alarm-center`,{params:{...r}});if(z([{id:1,name:"Done"},{id:0,name:"On Going"}]),T(e.data.data.map(o=>({...o,start_date:s(j,{children:P(o.start_date)}),end_date:g(j,{children:[" ",P(o.end_date)]}),action:s(ie,{actions:s(te,{children:g(ae,{onClick:()=>d("member/"+o.id),children:[s(ce,{}),"View"]})})})}))),E(e.data),D(e.data.per_page),t.get("page")){const o=parseInt(t.get("page"))-1;b.current_page=o,x(o)}p(!1)})()},[i,t,u,h,S,m]),s(re,{children:s(oe,{headCells:J,rows:y,orders:L,paginations:B,loadings:V,params:k,searchs:R,filterStatus:H,filterStartDate:U,filterEndDate:Y,exportReport:Z})})}function Ge(){const{themeStretch:d}=se();return s(K,{title:"Alarm Center",children:g(ne,{maxWidth:d?!1:"xl",children:[s(le,{heading:"Alarm Center",links:[{name:"Case Management",href:"/alarm-center"},{name:"Alarm Center",href:"/alarm-center"}]}),s(v,{container:!0,children:s(v,{item:!0,xs:12,lg:12,md:12,children:s(de,{})})})]})})}export{Ge as default};

View File

@@ -1 +0,0 @@
import{P as x}from"./Page.b1f38576.js";import{n as C,r as t,Z as b,a0 as S,j as e,T as _,G as I,f as a,F as y,a4 as d,S as L,Y as T,a2 as j}from"./index.4524613b.js";import{T as k}from"./Table.b404960e.js";import{T as w}from"./TableMoreMenu.fbaa38aa.js";import{r as D,i as E,a as M}from"./jsx-runtime_commonjs-proxy.08daee49.js";import{d as q}from"./VisibilityOutlined.7d63b3a6.js";import{H as P}from"./HeaderBreadcrumbs.f593a2a7.js";import{G as p}from"./Grid.63392dc1.js";import"./Box.522fc68e.js";import"./TablePagination.a2995130.js";import"./KeyboardArrowRight.dfbe216b.js";import"./LastPage.928f2cf3.js";import"./TableRow.184bd340.js";import"./useId.5c752e65.js";import"./TextField.489cf1ea.js";import"./InputAdornment.c3b5c49a.js";import"./Search.a632f4d1.js";import"./TableContainer.e4a601db.js";import"./TableHead.2295a13e.js";var s={},R=E.exports;Object.defineProperty(s,"__esModule",{value:!0});var m=s.default=void 0,$=R(D()),A=M,G=(0,$.default)((0,A.jsx)("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z"}),"EditOutlined");m=s.default=G;function H(){const r=C(),{corporateValue:n}=t.exports.useContext(b),l=new AbortController,[u,f]=t.exports.useState([]),[g,o]=t.exports.useState(!0),h={isLoading:g,setIsLoading:o},v=[{id:"code",align:"left",label:"Code",isSort:!1},{id:"name",align:"left",label:"Name",isSort:!1},{id:"active",align:"center",label:"Status",isSort:!1},{id:"action",align:"center",label:"",isSort:!1}];return t.exports.useEffect(()=>{(async()=>{try{o(!0);const[i]=await Promise.all([S.get(`${n}/corporate`,{signal:l.signal})]);f(i.data.data.map(c=>({...c,active:c.active===1?e(_,{variant:"overline",sx:{backgroundColor:"rgba(84, 214, 44, 0.16)",color:"#229A16",paddingX:1.5,paddingY:1,display:"inline-flex",alignItems:"center",borderRadius:"10px"},children:"Active"}):e(I,{variant:"outlined",color:"error",children:"Inactive"}),action:e(w,{actions:a(y,{children:[a(d,{onClick:()=>r("/corporate/edit"),children:[e(m,{}),"Edit"]}),a(d,{onClick:()=>r("/corporate/view"),children:[e(q,{}),"View"]})]})})}))),o(!1)}catch(i){console.error("Error fetching data:",i.message)}return()=>{l.abort()}})()},[n]),e(L,{children:e(k,{headCells:v,rows:u,loadings:h})})}function ie(){const{themeStretch:r}=T();return e(x,{title:"Corporate",children:a(j,{maxWidth:r?!1:"xl",children:[e(P,{heading:"Corporate",links:[{name:"Dashboard",href:"/dashboard"},{name:"Corporates",href:"/corporates"}]}),e(p,{container:!0,children:e(p,{item:!0,xs:12,lg:12,md:12,children:e(H,{})})})]})})}export{ie as default};

View File

@@ -0,0 +1 @@
import{Y as U,r as e,Z as W,$ as Z,a0 as k,j as s,G as P,a1 as c,f as q,a2 as z,T as H}from"./index.b0a49137.js";import{P as J}from"./Page.e9d8cc16.js";import{T as K}from"./Table.08efdc83.js";import{S as Q}from"./Stack.acc67e21.js";import{G as C}from"./Grid.97ae8bc1.js";import"./Box.c50b4a28.js";import"./TablePagination.dc161c5e.js";import"./KeyboardArrowRight.fd8a1844.js";import"./LastPage.9e90b034.js";import"./TableRow.41459f01.js";import"./useId.c3f149cd.js";import"./TextField.08c1cc6c.js";import"./InputAdornment.b72719ba.js";import"./Search.cbee36ce.js";import"./LoadingButton.6a53b4e1.js";import"./generateUtilityClasses.06032f54.js";import"./TableContainer.58606ed5.js";import"./TableHead.c7022a42.js";function xe(){const{themeStretch:D}=U(),{corporateValue:l}=e.exports.useContext(W),p=new AbortController,[y,j]=e.exports.useState([]),[O,d]=e.exports.useState(!0),T={isLoading:O,setIsLoading:d},[t,m]=Z(),[n,o]=e.exports.useState({}),w={searchParams:t,setSearchParams:m,appliedParams:n,setAppliedParams:o},[u,E]=e.exports.useState("asc"),[g,I]=e.exports.useState("fullName"),_={order:u,setOrder:E,orderBy:g,setOrderBy:I},[B,f]=e.exports.useState(0),[A,S]=e.exports.useState(10),[x,v]=e.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),G={page:B,setPage:f,rowsPerPage:A,setRowsPerPage:S,paginationTable:x,setPaginationTable:v},[h,N]=e.exports.useState(""),R={useSearchs:!1,searchText:h,setSearchText:N,handleSearchSubmit:async r=>{if(r.preventDefault(),h===""){t.delete("search");const a=Object.fromEntries([...t.entries()]);o(a)}else{const a=Object.fromEntries([...t.entries(),["search",h]]);o(a)}}},[V,Y]=e.exports.useState("all"),[$,L]=e.exports.useState([]),M={useFilter:!0,config:{label:"Division",divisionValue:V,divisionData:$,handleDivisionChange:r=>{if(Y(r.target.value),r.target.value==="all"){t.delete("division");const a=Object.fromEntries([...t.entries()]);o(a)}else{const a=Object.fromEntries([...t.entries(),["division",r.target.value]]);o(a)}}}},F=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"center",label:"Name",isSort:!0},{id:"division",align:"center",label:"Divisi",isSort:!0},{id:"status",align:"center",label:"Status",isSort:!0},{id:"action",align:"right",label:"",isSort:!1}];return e.exports.useEffect(()=>((async()=>{try{d(!0);const r=Object.keys(n).length!==0?n:Object.fromEntries([...t.entries(),["order",u],["orderBy",g]]),[a,b]=await Promise.all([k.get(`${l}/division`,{signal:p.signal}),k.get(`${l}/members`,{params:{...r},signal:p.signal})]);if(m(r),L(a.data),j(b.data.data.map(i=>({...i,status:i.status===1?s(P,{sx:{backgroundColor:"rgba(84, 214, 44, 0.16)",color:c.dark.success.dark,paddingY:0,"&:hover":{backgroundColor:"rgba(84, 214, 44, 0.32)",color:c.dark.success.darker}},children:"Active"}):s(P,{sx:{backgroundColor:"rgba(255, 72, 66, 0.16)",color:c.dark.error.dark,paddingY:0,"&:hover":{backgroundColor:"rgba(255, 72, 66, 0.32)",color:c.dark.error.darker}},children:"Inactive"})}))),v(b.data),S(b.data.per_page),t.get("page")){const i=parseInt(t.get("page"))-1;x.current_page=i,f(i)}d(!1)}catch(r){console.error("Error fetching data:",r.message)}})(),()=>{p.abort()}),[n,t,u,g,m,l]),s(J,{title:"Dashboard",children:q(z,{maxWidth:D?!1:"xl",children:[s(Q,{direction:"row",justifyContent:"space-between",children:s(H,{variant:"h3",component:"h1",paragraph:!0,children:"Dashboard"})}),s(C,{container:!0,spacing:2,children:s(C,{item:!0,xs:12,lg:12,md:12,children:s(K,{headCells:F,rows:y,orders:_,paginations:G,loadings:T,params:w,searchs:R,filters:M})})})]})})}export{xe as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
import{P as H}from"./Page.b1f38576.js";import{n as V,r,Z as $,$ as U,a0 as y,j as e,T as _,F as W,f as E,a4 as Y,S as Z,Y as q,a2 as z}from"./index.4524613b.js";import{T as J}from"./Table.b404960e.js";import{f as P}from"./formatTime.0646b9d0.js";import{T as K}from"./TableMoreMenu.fbaa38aa.js";import{d as Q}from"./VisibilityOutlined.7d63b3a6.js";import{L as i}from"./Label.c0ab61c4.js";import{H as X}from"./HeaderBreadcrumbs.f593a2a7.js";import{G as D}from"./Grid.63392dc1.js";import"./Box.522fc68e.js";import"./TablePagination.a2995130.js";import"./KeyboardArrowRight.dfbe216b.js";import"./LastPage.928f2cf3.js";import"./TableRow.184bd340.js";import"./useId.5c752e65.js";import"./TextField.489cf1ea.js";import"./InputAdornment.c3b5c49a.js";import"./Search.a632f4d1.js";import"./TableContainer.e4a601db.js";import"./TableHead.2295a13e.js";import"./index.49ea62c1.js";import"./jsx-runtime_commonjs-proxy.08daee49.js";function j(){const c=V(),{corporateValue:l}=r.exports.useContext($),[T,I]=r.exports.useState([]),[C,m]=r.exports.useState(!0),w={isLoading:C,setIsLoading:m},[s,d]=U(),[n,p]=r.exports.useState({}),k={searchParams:s,setSearchParams:d,appliedParams:n,setAppliedParams:p},[u,v]=r.exports.useState("asc"),[f,N]=r.exports.useState("fullName"),O={order:u,setOrder:v,orderBy:f,setOrderBy:N},[L,g]=r.exports.useState(0),[M,S]=r.exports.useState(10),[x,b]=r.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),B={page:L,setPage:g,rowsPerPage:M,setRowsPerPage:S,paginationTable:x,setPaginationTable:b},[h,R]=r.exports.useState(""),A={useSearchs:!0,searchText:h,setSearchText:R,handleSearchSubmit:async o=>{if(o.preventDefault(),h===""){s.delete("search");const a=Object.fromEntries([...s.entries()]);p(a)}else{const a=Object.fromEntries([...s.entries(),["search",h]]);p(a)}}},F={useExport:!0,startDate:"",endDate:"",status:"all",handleExportReport:async()=>{y.get(l+"/export-members/list").then(o=>{const a=document.createElement("a");a.href=o.data.data.file_url,a.setAttribute("download",o.data.data.file_name),document.body.appendChild(a),a.click()})}},G=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"left",label:"Name",isSort:!0},{id:"start_date",align:"center",label:"Start Date",isSort:!0},{id:"end_date",align:"center",label:"End Date",isSort:!0},{id:"status",align:"center",label:"Status",isSort:!0},{id:"action",align:"center",label:"",isSort:!0}];return r.exports.useEffect(()=>{(async()=>{m(!0),await new Promise(t=>setTimeout(t,250));const o=Object.keys(n).length!==0?n:Object.fromEntries([...s.entries(),["order",u],["orderBy",f]]),a=await y.get(`${l}/members?type=employee-data`,{params:{...o}});if(d(o),I(a.data.data.map(t=>({...t,status:t.status===1?e(i,{color:"success",children:"Active"}):e(i,{color:"error",children:"Inactive"}),start_date:e(i,{children:t.start_date?P(t.start_date):""}),end_date:e(i,{children:t.end_date?P(t.end_date):""}),fullName:e(_,{variant:"body2",children:t.fullName}),memberId:e(_,{variant:"body2",children:t.memberId}),action:e(K,{actions:e(W,{children:E(Y,{onClick:()=>c("/employee-data/user-profile/"+t.personId),children:[e(Q,{}),"View"]})})})}))),b(a.data),S(a.data.per_page),s.get("page")){const t=parseInt(s.get("page"))-1;x.current_page=t,g(t)}m(!1)})()},[n,s,u,f,d,l]),e(Z,{children:e(J,{headCells:G,rows:T,orders:O,paginations:B,loadings:w,params:k,searchs:A,exportReport:F})})}function Ee(){const{themeStretch:c}=q();return e(H,{title:"Employee Data",children:E(z,{maxWidth:c?!1:"xl",children:[e(X,{heading:"Employee Data",links:[{name:"Case Management"},{name:"Employee Data",href:"/employee-data"}]}),e(D,{container:!0,children:e(D,{item:!0,xs:12,lg:12,md:12,children:e(j,{})})})]})})}export{Ee as default};

View File

@@ -1 +0,0 @@
import{Y as U,r as e,Z as W,$ as Z,a0 as k,j as s,G as P,a1 as c,f as q,a2 as z,T as H}from"./index.4524613b.js";import{P as J}from"./Page.b1f38576.js";import{T as K}from"./Table.b404960e.js";import{S as Q}from"./Stack.2fe98e42.js";import{G as C}from"./Grid.63392dc1.js";import"./Box.522fc68e.js";import"./TablePagination.a2995130.js";import"./KeyboardArrowRight.dfbe216b.js";import"./LastPage.928f2cf3.js";import"./TableRow.184bd340.js";import"./useId.5c752e65.js";import"./TextField.489cf1ea.js";import"./InputAdornment.c3b5c49a.js";import"./Search.a632f4d1.js";import"./TableContainer.e4a601db.js";import"./TableHead.2295a13e.js";function fe(){const{themeStretch:D}=U(),{corporateValue:l}=e.exports.useContext(W),p=new AbortController,[y,j]=e.exports.useState([]),[O,d]=e.exports.useState(!0),T={isLoading:O,setIsLoading:d},[t,m]=Z(),[n,o]=e.exports.useState({}),w={searchParams:t,setSearchParams:m,appliedParams:n,setAppliedParams:o},[u,E]=e.exports.useState("asc"),[g,I]=e.exports.useState("fullName"),_={order:u,setOrder:E,orderBy:g,setOrderBy:I},[B,f]=e.exports.useState(0),[A,S]=e.exports.useState(10),[x,v]=e.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),G={page:B,setPage:f,rowsPerPage:A,setRowsPerPage:S,paginationTable:x,setPaginationTable:v},[h,N]=e.exports.useState(""),R={useSearchs:!1,searchText:h,setSearchText:N,handleSearchSubmit:async r=>{if(r.preventDefault(),h===""){t.delete("search");const a=Object.fromEntries([...t.entries()]);o(a)}else{const a=Object.fromEntries([...t.entries(),["search",h]]);o(a)}}},[V,Y]=e.exports.useState("all"),[$,L]=e.exports.useState([]),M={useFilter:!0,config:{label:"Division",divisionValue:V,divisionData:$,handleDivisionChange:r=>{if(Y(r.target.value),r.target.value==="all"){t.delete("division");const a=Object.fromEntries([...t.entries()]);o(a)}else{const a=Object.fromEntries([...t.entries(),["division",r.target.value]]);o(a)}}}},F=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"center",label:"Name",isSort:!0},{id:"division",align:"center",label:"Divisi",isSort:!0},{id:"status",align:"center",label:"Status",isSort:!0},{id:"action",align:"right",label:"",isSort:!1}];return e.exports.useEffect(()=>((async()=>{try{d(!0);const r=Object.keys(n).length!==0?n:Object.fromEntries([...t.entries(),["order",u],["orderBy",g]]),[a,b]=await Promise.all([k.get(`${l}/division`,{signal:p.signal}),k.get(`${l}/members`,{params:{...r},signal:p.signal})]);if(m(r),L(a.data),j(b.data.data.map(i=>({...i,status:i.status===1?s(P,{sx:{backgroundColor:"rgba(84, 214, 44, 0.16)",color:c.dark.success.dark,paddingY:0,"&:hover":{backgroundColor:"rgba(84, 214, 44, 0.32)",color:c.dark.success.darker}},children:"Active"}):s(P,{sx:{backgroundColor:"rgba(255, 72, 66, 0.16)",color:c.dark.error.dark,paddingY:0,"&:hover":{backgroundColor:"rgba(255, 72, 66, 0.32)",color:c.dark.error.darker}},children:"Inactive"})}))),v(b.data),S(b.data.per_page),t.get("page")){const i=parseInt(t.get("page"))-1;x.current_page=i,f(i)}d(!1)}catch(r){console.error("Error fetching data:",r.message)}})(),()=>{p.abort()}),[n,t,u,g,m,l]),s(J,{title:"Dashboard",children:q(z,{maxWidth:D?!1:"xl",children:[s(Q,{direction:"row",justifyContent:"space-between",children:s(H,{variant:"h3",component:"h1",paragraph:!0,children:"Dashboard"})}),s(C,{container:!0,spacing:2,children:s(C,{item:!0,xs:12,lg:12,md:12,children:s(K,{headCells:F,rows:y,orders:_,paginations:G,loadings:T,params:w,searchs:R,filters:M})})})]})})}export{fe as default};

View File

@@ -0,0 +1 @@
import{P as x}from"./Page.e9d8cc16.js";import{n as C,r as t,Z as b,a0 as S,j as e,T as _,G as I,f as a,F as y,a4 as d,S as L,Y as T,a2 as j}from"./index.b0a49137.js";import{T as k}from"./Table.08efdc83.js";import{T as w}from"./TableMoreMenu.0bdaf78f.js";import{r as D,i as E,a as M}from"./jsx-runtime_commonjs-proxy.b87625c0.js";import{d as q}from"./VisibilityOutlined.ab7a612c.js";import{H as P}from"./HeaderBreadcrumbs.c70f1305.js";import{G as p}from"./Grid.97ae8bc1.js";import"./Box.c50b4a28.js";import"./TablePagination.dc161c5e.js";import"./KeyboardArrowRight.fd8a1844.js";import"./LastPage.9e90b034.js";import"./TableRow.41459f01.js";import"./useId.c3f149cd.js";import"./TextField.08c1cc6c.js";import"./InputAdornment.b72719ba.js";import"./Search.cbee36ce.js";import"./LoadingButton.6a53b4e1.js";import"./generateUtilityClasses.06032f54.js";import"./TableContainer.58606ed5.js";import"./TableHead.c7022a42.js";var s={},R=E.exports;Object.defineProperty(s,"__esModule",{value:!0});var m=s.default=void 0,$=R(D()),A=M,G=(0,$.default)((0,A.jsx)("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z"}),"EditOutlined");m=s.default=G;function H(){const r=C(),{corporateValue:n}=t.exports.useContext(b),l=new AbortController,[u,f]=t.exports.useState([]),[g,o]=t.exports.useState(!0),h={isLoading:g,setIsLoading:o},v=[{id:"code",align:"left",label:"Code",isSort:!1},{id:"name",align:"left",label:"Name",isSort:!1},{id:"active",align:"center",label:"Status",isSort:!1},{id:"action",align:"center",label:"",isSort:!1}];return t.exports.useEffect(()=>{(async()=>{try{o(!0);const[i]=await Promise.all([S.get(`${n}/corporate`,{signal:l.signal})]);f(i.data.data.map(c=>({...c,active:c.active===1?e(_,{variant:"overline",sx:{backgroundColor:"rgba(84, 214, 44, 0.16)",color:"#229A16",paddingX:1.5,paddingY:1,display:"inline-flex",alignItems:"center",borderRadius:"10px"},children:"Active"}):e(I,{variant:"outlined",color:"error",children:"Inactive"}),action:e(w,{actions:a(y,{children:[a(d,{onClick:()=>r("/corporate/edit"),children:[e(m,{}),"Edit"]}),a(d,{onClick:()=>r("/corporate/view"),children:[e(q,{}),"View"]})]})})}))),o(!1)}catch(i){console.error("Error fetching data:",i.message)}return()=>{l.abort()}})()},[n]),e(L,{children:e(k,{headCells:v,rows:u,loadings:h})})}function ne(){const{themeStretch:r}=T();return e(x,{title:"Corporate",children:a(j,{maxWidth:r?!1:"xl",children:[e(P,{heading:"Corporate",links:[{name:"Dashboard",href:"/dashboard"},{name:"Corporates",href:"/corporates"}]}),e(p,{container:!0,children:e(p,{item:!0,xs:12,lg:12,md:12,children:e(H,{})})})]})})}export{ne as default};

View File

@@ -0,0 +1 @@
import{P as X}from"./Page.e9d8cc16.js";import{n as ee,r,Z as te,$ as ae,a0 as O,j as n,f as m,F as re,a4 as P,S as se,m as v,Y as ne,a2 as oe}from"./index.b0a49137.js";import{D as ie,T as le}from"./Table.08efdc83.js";import{f as w}from"./formatTime.0646b9d0.js";import{T as ce}from"./TableMoreMenu.0bdaf78f.js";import{d as de}from"./VisibilityOutlined.ab7a612c.js";import{L as k}from"./Label.f33248ec.js";import{H as me}from"./HeaderBreadcrumbs.c70f1305.js";import{G as y}from"./Grid.97ae8bc1.js";import"./Box.c50b4a28.js";import"./TablePagination.dc161c5e.js";import"./KeyboardArrowRight.fd8a1844.js";import"./LastPage.9e90b034.js";import"./TableRow.41459f01.js";import"./useId.c3f149cd.js";import"./TextField.08c1cc6c.js";import"./InputAdornment.b72719ba.js";import"./Search.cbee36ce.js";import"./LoadingButton.6a53b4e1.js";import"./generateUtilityClasses.06032f54.js";import"./TableContainer.58606ed5.js";import"./TableHead.c7022a42.js";import"./index.49ea62c1.js";import"./jsx-runtime_commonjs-proxy.b87625c0.js";function pe(){const p=ee(),{corporateValue:u}=r.exports.useContext(te),[T,V]=r.exports.useState([]),j=a=>{window.open(a,"_blank")},[S,c]=r.exports.useState(!0),I={isLoading:S,setIsLoading:c},[t,D]=ae(),[d,o]=r.exports.useState({}),L={searchParams:t,setSearchParams:D,appliedParams:d,setAppliedParams:o},[h,M]=r.exports.useState("desc"),[f,A]=r.exports.useState("request_date"),F={order:h,setOrder:M,orderBy:f,setOrderBy:A},[B,x]=r.exports.useState(0),[G,b]=r.exports.useState(10),[_,C]=r.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),R={page:B,setPage:x,rowsPerPage:G,setRowsPerPage:b,paginationTable:_,setPaginationTable:C},[g,N]=r.exports.useState(""),q={useSearchs:!0,searchText:g,setSearchText:N,handleSearchSubmit:async a=>{if(a.preventDefault(),g===""){t.delete("search");const e=Object.fromEntries([...t.entries()]);o(e)}else{const e=Object.fromEntries([...t.entries(),["search",g]]);o(e)}}},[E,z]=r.exports.useState("all"),[H,$]=r.exports.useState([]),U={useFilter:!1,config:{label:"Status",statusValue:E,statusData:H,handleStatusChange:a=>{if(z(a.target.value),a.target.value==="all"){t.delete("status");const e=Object.fromEntries([...t.entries()]);o(e)}else{const e=Object.fromEntries([...t.entries(),["status",a.target.value]]);o(e)}}}},[i,W]=r.exports.useState(""),Y={useFilter:!0,startDate:i,setStartDate:W,handleStartDateChange:async a=>{if(a.preventDefault(),i===""){t.delete("start_date");const e=Object.fromEntries([...t.entries()]);o(e)}else{const e=Object.fromEntries([...t.entries(),["start_date",i]]);o(e)}}},[l,Z]=r.exports.useState(""),J={useFilter:!0,endDate:l,setEndDate:Z,handleEndDateChange:async a=>{if(a.preventDefault(),l===""){t.delete("end_date");const e=Object.fromEntries([...t.entries()]);o(e)}else{const e=Object.fromEntries([...t.entries(),["end_date",l]]);o(e)}}},K={useExport:!0,startDate:i,endDate:l,status:E,handleExportReport:async()=>{var a=Object.fromEntries([...t.entries()]);c(!0),await O.get(u+"/claims/exportAlrmCenter/"+(i||"all")+"/"+(l||"all"),{params:a}).then(e=>{v("Data berhasil di Export",{variant:"success",anchorOrigin:{horizontal:"right",vertical:"top"}}),c(!1),document.location.href=e.data.data.file_url}).catch(e=>v("Data Gagal di Export",{variant:"error",anchorOrigin:{horizontal:"right",vertical:"top"}}))}},Q=[{id:"memberId",align:"left",label:"Member ID",isSort:!0},{id:"fullName",align:"left",label:"Name",isSort:!0},{id:"start_date",align:"center",label:"Start Date",isSort:!0},{id:"end_date",align:"center",label:"End Date",isSort:!0},{id:"action",align:"center",label:"",isSort:!1}];return r.exports.useEffect(()=>{(async()=>{c(!0),await new Promise(s=>setTimeout(s,250));const a=Object.keys(d).length!==0?d:Object.fromEntries([...t.entries(),["order",h],["orderBy",f]]),e=await O.get(`${u}/members?type=alarm-center`,{params:{...a}});if($([{id:1,name:"Done"},{id:0,name:"On Going"}]),V(e.data.data.map(s=>({...s,start_date:s.start_date&&s.start_date!="0000-00-00"?n(k,{children:w(s.start_date)}):"-",end_date:s.end_date&&s.end_date!="0000-00-00"?n(k,{children:w(s.end_date)}):"-",action:n(ce,{actions:m(re,{children:[m(P,{onClick:()=>p("member/"+s.id),children:[n(de,{}),"View"]}),m(P,{onClick:()=>j(s.link_document),children:[n(ie,{}),"Document Member"]})]})})}))),C(e.data),b(e.data.per_page),t.get("page")){const s=parseInt(t.get("page"))-1;_.current_page=s,x(s)}c(!1)})()},[d,t,h,f,D,u]),n(se,{children:n(le,{headCells:Q,rows:T,orders:F,paginations:R,loadings:I,params:L,searchs:q,filterStatus:U,filterStartDate:Y,filterEndDate:J,exportReport:K,exportLoading:S})})}function ze(){const{themeStretch:p}=ne();return n(X,{title:"Alarm Center",children:m(oe,{maxWidth:p?!1:"xl",children:[n(me,{heading:"Alarm Center",links:[{name:"Case Management",href:"/alarm-center"},{name:"Alarm Center",href:"/alarm-center"}]}),n(y,{container:!0,children:n(y,{item:!0,xs:12,lg:12,md:12,children:n(pe,{})})})]})})}export{ze as default};

View File

@@ -1 +1 @@
import{g as A,a as C,s as I,_ as c,r as b,u as E,e as L,H as $,j as r,J as z,h as T,T as R,f as _,b as m,i as j}from"./index.4524613b.js";function F(e){return C("MuiInputAdornment",e)}const M=A("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]),f=M;var g;const N=["children","className","component","disablePointerEvents","disableTypography","position","variant"],S=(e,t)=>{const{ownerState:n}=e;return[t.root,t[`position${m(n.position)}`],n.disablePointerEvents===!0&&t.disablePointerEvents,t[n.variant]]},U=e=>{const{classes:t,disablePointerEvents:n,hiddenLabel:o,position:s,size:a,variant:l}=e,d={root:["root",n&&"disablePointerEvents",s&&`position${m(s)}`,l,o&&"hiddenLabel",a&&`size${m(a)}`]};return j(d,F,t)},w=I("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:S})(({theme:e,ownerState:t})=>c({display:"flex",height:"0.01em",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(e.vars||e).palette.action.active},t.variant==="filled"&&{[`&.${f.positionStart}&:not(.${f.hiddenLabel})`]:{marginTop:16}},t.position==="start"&&{marginRight:8},t.position==="end"&&{marginLeft:8},t.disablePointerEvents===!0&&{pointerEvents:"none"})),H=b.exports.forwardRef(function(t,n){const o=E({props:t,name:"MuiInputAdornment"}),{children:s,className:a,component:l="div",disablePointerEvents:d=!1,disableTypography:x=!1,position:u,variant:v}=o,P=L(o,N),i=$()||{};let p=v;v&&i.variant,i&&!p&&(p=i.variant);const h=c({},o,{hiddenLabel:i.hiddenLabel,size:i.size,disablePointerEvents:d,position:u,variant:p}),y=U(h);return r(z.Provider,{value:null,children:r(w,c({as:l,ownerState:h,className:T(y.root,a),ref:n},P,{children:typeof s=="string"&&!x?r(R,{color:"text.secondary",children:s}):_(b.exports.Fragment,{children:[u==="start"?g||(g=r("span",{className:"notranslate",children:"\u200B"})):null,s]})}))})}),J=H;export{J as I};
import{g as A,a as C,s as I,_ as c,r as b,u as E,e as L,H as $,j as r,J as z,h as T,T as R,f as _,b as m,i as j}from"./index.b0a49137.js";function F(e){return C("MuiInputAdornment",e)}const M=A("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]),f=M;var g;const N=["children","className","component","disablePointerEvents","disableTypography","position","variant"],S=(e,t)=>{const{ownerState:n}=e;return[t.root,t[`position${m(n.position)}`],n.disablePointerEvents===!0&&t.disablePointerEvents,t[n.variant]]},U=e=>{const{classes:t,disablePointerEvents:n,hiddenLabel:o,position:s,size:a,variant:l}=e,d={root:["root",n&&"disablePointerEvents",s&&`position${m(s)}`,l,o&&"hiddenLabel",a&&`size${m(a)}`]};return j(d,F,t)},w=I("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:S})(({theme:e,ownerState:t})=>c({display:"flex",height:"0.01em",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(e.vars||e).palette.action.active},t.variant==="filled"&&{[`&.${f.positionStart}&:not(.${f.hiddenLabel})`]:{marginTop:16}},t.position==="start"&&{marginRight:8},t.position==="end"&&{marginLeft:8},t.disablePointerEvents===!0&&{pointerEvents:"none"})),H=b.exports.forwardRef(function(t,n){const o=E({props:t,name:"MuiInputAdornment"}),{children:s,className:a,component:l="div",disablePointerEvents:d=!1,disableTypography:x=!1,position:u,variant:v}=o,P=L(o,N),i=$()||{};let p=v;v&&i.variant,i&&!p&&(p=i.variant);const h=c({},o,{hiddenLabel:i.hiddenLabel,size:i.size,disablePointerEvents:d,position:u,variant:p}),y=U(h);return r(z.Provider,{value:null,children:r(w,c({as:l,ownerState:h,className:T(y.root,a),ref:n},P,{children:typeof s=="string"&&!x?r(R,{color:"text.secondary",children:s}):_(b.exports.Fragment,{children:[u==="start"?g||(g=r("span",{className:"notranslate",children:"\u200B"})):null,s]})}))})}),J=H;export{J as I};

View File

@@ -1 +1 @@
import{c as r,j as o}from"./index.4524613b.js";const t=r(o("path",{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}),"KeyboardArrowLeft"),e=r(o("path",{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}),"KeyboardArrowRight");export{e as K,t as a};
import{c as r,j as o}from"./index.b0a49137.js";const t=r(o("path",{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}),"KeyboardArrowLeft"),e=r(o("path",{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}),"KeyboardArrowRight");export{e as K,t as a};

View File

@@ -1 +1 @@
import{v as p,j as d,s as g,a6 as c}from"./index.4524613b.js";const y=g("span")(({theme:t,ownerState:r})=>{const n=t.palette.mode==="light",{color:l,variant:a}=r,e=o=>({color:t.palette[o].contrastText,backgroundColor:t.palette[o].main}),i=o=>({color:t.palette[o].main,backgroundColor:"transparent",border:`1px solid ${t.palette[o].main}`}),s=o=>({color:t.palette[o][n?"dark":"light"],backgroundColor:c(t.palette[o].main,.16)});return{height:22,minWidth:22,lineHeight:0,borderRadius:6,alignItems:"center",whiteSpace:"nowrap",display:"inline-flex",justifyContent:"center",padding:t.spacing(0,1),color:t.palette.grey[800],fontSize:t.typography.pxToRem(12),fontFamily:t.typography.fontFamily,backgroundColor:t.palette.grey[300],fontWeight:t.typography.fontWeightBold,...l!=="default"?{...a==="filled"&&{...e(l)},...a==="outlined"&&{...i(l)},...a==="ghost"&&{...s(l)}}:{...a==="outlined"&&{backgroundColor:"transparent",color:t.palette.text.primary,border:`1px solid ${t.palette.grey[50032]}`},...a==="ghost"&&{color:n?t.palette.text.secondary:t.palette.common.white,backgroundColor:t.palette.grey[50016]}}}});function f({color:t="default",variant:r="ghost",children:n,sx:l}){const a=p();return d(y,{ownerState:{color:t,variant:r},sx:l,theme:a,children:n})}export{f as L};
import{v as p,j as d,s as g,a6 as c}from"./index.b0a49137.js";const y=g("span")(({theme:t,ownerState:r})=>{const n=t.palette.mode==="light",{color:l,variant:a}=r,e=o=>({color:t.palette[o].contrastText,backgroundColor:t.palette[o].main}),i=o=>({color:t.palette[o].main,backgroundColor:"transparent",border:`1px solid ${t.palette[o].main}`}),s=o=>({color:t.palette[o][n?"dark":"light"],backgroundColor:c(t.palette[o].main,.16)});return{height:22,minWidth:22,lineHeight:0,borderRadius:6,alignItems:"center",whiteSpace:"nowrap",display:"inline-flex",justifyContent:"center",padding:t.spacing(0,1),color:t.palette.grey[800],fontSize:t.typography.pxToRem(12),fontFamily:t.typography.fontFamily,backgroundColor:t.palette.grey[300],fontWeight:t.typography.fontWeightBold,...l!=="default"?{...a==="filled"&&{...e(l)},...a==="outlined"&&{...i(l)},...a==="ghost"&&{...s(l)}}:{...a==="outlined"&&{backgroundColor:"transparent",color:t.palette.text.primary,border:`1px solid ${t.palette.grey[50032]}`},...a==="ghost"&&{color:n?t.palette.text.secondary:t.palette.common.white,backgroundColor:t.palette.grey[50016]}}}});function f({color:t="default",variant:r="ghost",children:n,sx:l}){const a=p();return d(y,{ownerState:{color:t,variant:r},sx:l,theme:a,children:n})}export{f as L};

View File

@@ -1 +1 @@
import{c as a,j as s}from"./index.4524613b.js";const o=a(s("path",{d:"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"}),"FirstPage"),c=a(s("path",{d:"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"}),"LastPage");export{o as F,c as L};
import{c as a,j as s}from"./index.b0a49137.js";const o=a(s("path",{d:"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"}),"FirstPage"),c=a(s("path",{d:"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"}),"LastPage");export{o as F,c as L};

View File

@@ -1,4 +1,4 @@
import{g as q,a as M,C as h,s as b,b as t,_ as s,E as C,r as z,u as D,e as T,v as j,f as U,j as p,h as O,i as A,l as K,d as w}from"./index.4524613b.js";function X(r){return M("MuiLinearProgress",r)}const E=q("MuiLinearProgress",["root","colorPrimary","colorSecondary","determinate","indeterminate","buffer","query","dashed","dashedColorPrimary","dashedColorSecondary","bar","barColorPrimary","barColorSecondary","bar1Indeterminate","bar1Determinate","bar1Buffer","bar2Indeterminate","bar2Buffer"]),er=E,S=["className","color","value","valueBuffer","variant"];let l=r=>r,x,L,k,B,I,_;const v=4,W=h(x||(x=l`
import{g as q,a as M,C as h,s as b,b as t,_ as s,E as C,r as z,u as D,e as T,v as j,f as U,j as p,h as O,i as A,l as K,d as w}from"./index.b0a49137.js";function X(r){return M("MuiLinearProgress",r)}const E=q("MuiLinearProgress",["root","colorPrimary","colorSecondary","determinate","indeterminate","buffer","query","dashed","dashedColorPrimary","dashedColorSecondary","bar","barColorPrimary","barColorSecondary","bar1Indeterminate","bar1Determinate","bar1Buffer","bar2Indeterminate","bar2Buffer"]),er=E,S=["className","color","value","valueBuffer","variant"];let l=r=>r,x,L,k,B,I,_;const v=4,W=h(x||(x=l`
0% {
left: -35%;
right: 100%;

View File

@@ -1 +0,0 @@
import{n as A,r as t,Z as E,au as F,$ as V,a0 as N,f as r,j as a,F as R,a4 as U,S as w,T as Z}from"./index.4524613b.js";import{T as q}from"./Table.b404960e.js";import{d as z}from"./ArrowBackIos.720b1306.js";import{f as T}from"./formatTime.0646b9d0.js";import{T as H}from"./TableMoreMenu.fbaa38aa.js";import{d as J}from"./VisibilityOutlined.7d63b3a6.js";import{L as n}from"./Label.c0ab61c4.js";import{G as m}from"./Grid.63392dc1.js";import"./Box.522fc68e.js";import"./TablePagination.a2995130.js";import"./KeyboardArrowRight.dfbe216b.js";import"./LastPage.928f2cf3.js";import"./TableRow.184bd340.js";import"./useId.5c752e65.js";import"./TextField.489cf1ea.js";import"./InputAdornment.c3b5c49a.js";import"./Search.a632f4d1.js";import"./TableContainer.e4a601db.js";import"./TableHead.2295a13e.js";import"./jsx-runtime_commonjs-proxy.08daee49.js";import"./index.49ea62c1.js";function fe(){const g=A(),{corporateValue:u}=t.exports.useContext(E),[f,y]=t.exports.useState({full_name:"",paginations:[]}),{id:b}=F(),[C,c]=t.exports.useState(!0),D={isLoading:C,setIsLoading:c},[s,p]=V(),[i,v]=t.exports.useState({}),k={searchParams:s,setSearchParams:p,appliedParams:i,setAppliedParams:v},[d,I]=t.exports.useState("asc"),[l,L]=t.exports.useState("admission_date"),O={order:d,setOrder:I,orderBy:l,setOrderBy:L},[$,h]=t.exports.useState(0),[B,x]=t.exports.useState(10),[S,_]=t.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),G={page:$,setPage:h,rowsPerPage:B,setRowsPerPage:x,paginationTable:S,setPaginationTable:_},M=[{id:"admission_date",align:"center",label:"Admission Date",isSort:!0},{id:"discharge_date",align:"center",label:"Discharge Date",isSort:!0},{id:"code",align:"left",label:"Code",isSort:!0},{id:"service_type",align:"center",label:"Service Type",isSort:!1},{id:"status",align:"center",label:"Status",isSort:!1},{id:"action",align:"center",label:"",isSort:!1}];return t.exports.useEffect(()=>{(async()=>{c(!0),await new Promise(e=>setTimeout(e,250));const P=Object.keys(i).length!==0?i:Object.fromEntries([...s.entries(),["order",d],["orderBy",l]]),o=await N.get(`${u}/alarm-center-members/${b}`,{params:{...P}});if(p(P),y({full_name:o.data.full_name,paginations:o.data.paginations.data.map(e=>({...e,admission_date:e.admission_date?r(n,{children:[" ",T(e.admission_date)," "]}):"",discharge_date:e.discharge_date?r(n,{children:[" ",T(e.discharge_date)," "]}):"",status:e.status==="Done"?a(n,{color:"success",children:"Done"}):a(n,{color:"warning",children:"Ongoing"}),action:a(H,{actions:a(R,{children:r(U,{onClick:()=>g("service-monitoring/"+e.id),children:[a(J,{}),"View"]})})})}))}),_(o.data.paginations),x(o.data.paginations.per_page),s.get("page")){const e=parseInt(s.get("page"))-1;S.current_page=e,h(e)}c(!1)})()},[i,s,d,l,p,u]),r(m,{container:!0,spacing:8,padding:3,children:[a(m,{item:!0,xs:12,children:r(w,{direction:"row",alignItems:"center",gap:3,children:[a(z,{onClick:()=>g("/alarm-center"),sx:{cursor:"pointer"}}),a(Z,{variant:"h5",sx:{flexGrow:1},children:f.full_name})]})}),a(m,{item:!0,xs:12,children:a(w,{children:a(q,{headCells:M,rows:f.paginations,orders:O,paginations:G,loadings:D,params:k})})})]})}export{fe as default};

View File

@@ -0,0 +1 @@
import{n as A,r as t,Z as E,au as F,$ as V,a0 as N,f as r,j as a,F as R,a4 as U,S as w,T as Z}from"./index.b0a49137.js";import{T as q}from"./Table.08efdc83.js";import{d as z}from"./ArrowBackIos.b2aa057a.js";import{f as T}from"./formatTime.0646b9d0.js";import{T as H}from"./TableMoreMenu.0bdaf78f.js";import{d as J}from"./VisibilityOutlined.ab7a612c.js";import{L as n}from"./Label.f33248ec.js";import{G as m}from"./Grid.97ae8bc1.js";import"./Box.c50b4a28.js";import"./TablePagination.dc161c5e.js";import"./KeyboardArrowRight.fd8a1844.js";import"./LastPage.9e90b034.js";import"./TableRow.41459f01.js";import"./useId.c3f149cd.js";import"./TextField.08c1cc6c.js";import"./InputAdornment.b72719ba.js";import"./Search.cbee36ce.js";import"./LoadingButton.6a53b4e1.js";import"./generateUtilityClasses.06032f54.js";import"./TableContainer.58606ed5.js";import"./TableHead.c7022a42.js";import"./jsx-runtime_commonjs-proxy.b87625c0.js";import"./index.49ea62c1.js";function xe(){const g=A(),{corporateValue:u}=t.exports.useContext(E),[f,b]=t.exports.useState({full_name:"",paginations:[]}),{id:y}=F(),[v,c]=t.exports.useState(!0),C={isLoading:v,setIsLoading:c},[s,l]=V(),[i,D]=t.exports.useState({}),k={searchParams:s,setSearchParams:l,appliedParams:i,setAppliedParams:D},[p,I]=t.exports.useState("asc"),[d,L]=t.exports.useState("admission_date"),O={order:p,setOrder:I,orderBy:d,setOrderBy:L},[$,h]=t.exports.useState(0),[B,x]=t.exports.useState(10),[S,_]=t.exports.useState({current_page:0,from:0,last_page:0,links:[],path:"",per_page:0,to:0,total:0}),G={page:$,setPage:h,rowsPerPage:B,setRowsPerPage:x,paginationTable:S,setPaginationTable:_},M=[{id:"admission_date",align:"center",label:"Admission Date",isSort:!0},{id:"discharge_date",align:"center",label:"Discharge Date",isSort:!0},{id:"code",align:"left",label:"Code",isSort:!0,width:5},{id:"provider_name",align:"left",label:"Provider",isSort:!1},{id:"service_type",align:"center",label:"Service Type",isSort:!1},{id:"status",align:"center",label:"Status",isSort:!1},{id:"action",align:"center",label:"",isSort:!1}];return t.exports.useEffect(()=>{(async()=>{c(!0),await new Promise(e=>setTimeout(e,250));const P=Object.keys(i).length!==0?i:Object.fromEntries([...s.entries(),["order",p],["orderBy",d]]),o=await N.get(`${u}/alarm-center-members/${y}`,{params:{...P}});if(l(P),b({full_name:o.data.full_name,paginations:o.data.paginations.data.map(e=>({...e,admission_date:e.admission_date?r(n,{children:[" ",T(e.admission_date)," "]}):"",discharge_date:e.discharge_date?r(n,{children:[" ",T(e.discharge_date)," "]}):"",status:e.status==="Done"?a(n,{color:"success",children:"Done"}):a(n,{color:"warning",children:"Ongoing"}),action:a(H,{actions:a(R,{children:r(U,{onClick:()=>g("service-monitoring/"+e.id),children:[a(J,{}),"View"]})})})}))}),_(o.data.paginations),x(o.data.paginations.per_page),s.get("page")){const e=parseInt(s.get("page"))-1;S.current_page=e,h(e)}c(!1)})()},[i,s,p,d,l,u]),r(m,{container:!0,spacing:8,padding:3,children:[a(m,{item:!0,xs:12,children:r(w,{direction:"row",alignItems:"center",gap:3,children:[a(z,{onClick:()=>g("/alarm-center"),sx:{cursor:"pointer"}}),a(Z,{variant:"h5",sx:{flexGrow:1},children:f.full_name})]})}),a(m,{item:!0,xs:12,children:a(w,{children:a(q,{headCells:M,rows:f.paginations,orders:O,paginations:G,loadings:C,params:k})})})]})}export{xe as default};

View File

@@ -1,4 +1,4 @@
import{a as F,g as W,C as D,s as v,b as u,_ as r,E as U,r as L,u as N,e as z,j as h,h as j,i as G,G as K,f as B}from"./index.4524613b.js";import{g as T,a as V,c as Z}from"./generateUtilityClasses.06032f54.js";import{u as q}from"./useId.5c752e65.js";function A(t){return F("MuiCircularProgress",t)}W("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);const H=["className","color","disableShrink","size","style","thickness","value","variant"];let $=t=>t,M,R,S,E;const g=44,J=D(M||(M=$`
import{a as F,g as W,C as D,s as v,b as u,_ as r,E as U,r as L,u as N,e as z,j as h,h as j,i as G,G as K,f as B}from"./index.b0a49137.js";import{g as T,a as V,c as Z}from"./generateUtilityClasses.06032f54.js";import{u as q}from"./useId.c3f149cd.js";function A(t){return F("MuiCircularProgress",t)}W("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);const H=["className","color","disableShrink","size","style","thickness","value","variant"];let $=t=>t,M,R,S,E;const g=44,J=D(M||(M=$`
0% {
transform: rotate(0deg);
}

View File

@@ -1 +1 @@
import{r as c,f as a,F as i,W as x,j as e,B as d}from"./index.4524613b.js";const f=c.exports.forwardRef(({children:r,title:s="",meta:t,...o},n)=>a(i,{children:[a(x,{children:[e("title",{children:`${s} | LinkSehat`}),t]}),e(d,{ref:n,...o,children:r})]})),l=f;export{l as P};
import{r as c,f as a,F as i,W as x,j as e,B as d}from"./index.b0a49137.js";const f=c.exports.forwardRef(({children:r,title:s="",meta:t,...o},n)=>a(i,{children:[a(x,{children:[e("title",{children:`${s} | LinkSehat`}),t]}),e(d,{ref:n,...o,children:r})]})),l=f;export{l as P};

View File

@@ -1 +1 @@
import{c,j as a}from"./index.4524613b.js";const r=c(a("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"}),"Search");export{r as S};
import{c,j as a}from"./index.b0a49137.js";const r=c(a("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"}),"Search");export{r as S};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
import{a as y,g as x,C as b,s as R,_ as o,a6 as _,E as u,r as S,u as $,e as U,j as M,h as A,i as X}from"./index.4524613b.js";function j(t){return String(t).match(/[\d.\-+]*\s*(.*)/)[1]||""}function N(t){return parseFloat(t)}function B(t){return y("MuiSkeleton",t)}x("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);const F=["animation","className","component","height","style","variant","width"];let r=t=>t,p,g,m,f;const K=t=>{const{classes:a,variant:e,animation:i,hasChildren:n,width:l,height:s}=t;return X({root:["root",e,i,n&&"withChildren",n&&!l&&"fitContent",n&&!s&&"heightAuto"]},B,a)},P=b(p||(p=r`
import{a as y,g as x,C as b,s as R,_ as o,a6 as _,E as u,r as S,u as $,e as U,j as M,h as A,i as X}from"./index.b0a49137.js";function j(t){return String(t).match(/[\d.\-+]*\s*(.*)/)[1]||""}function N(t){return parseFloat(t)}function B(t){return y("MuiSkeleton",t)}x("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);const F=["animation","className","component","height","style","variant","width"];let r=t=>t,p,g,m,f;const K=t=>{const{classes:a,variant:e,animation:i,hasChildren:n,width:l,height:s}=t;return X({root:["root",e,i,n&&"withChildren",n&&!l&&"fitContent",n&&!s&&"heightAuto"]},B,a)},P=b(p||(p=r`
0% {
opacity: 1;
}

View File

@@ -1 +0,0 @@
import{a5 as t}from"./index.4524613b.js";const a=t(),o=a;export{o as S};

View File

@@ -0,0 +1 @@
import{a5 as t}from"./index.b0a49137.js";const a=t(),o=a;export{o as S};

View File

@@ -1 +1 @@
import{a as $,g as H,s as x,a3 as W,_ as d,r as A,e as D,ao as G,H as J,f as K,j as M,h as Q,b as T,i as V}from"./index.4524613b.js";function X(e){return $("PrivateSwitchBase",e)}H("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const Y=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],Z=e=>{const{classes:a,checked:i,disabled:l,edge:o}=e,r={root:["root",i&&"checked",l&&"disabled",o&&`edge${T(o)}`],input:["input"]};return V(r,X,a)},ee=x(W)(({ownerState:e})=>d({padding:9,borderRadius:"50%"},e.edge==="start"&&{marginLeft:e.size==="small"?-3:-12},e.edge==="end"&&{marginRight:e.size==="small"?-3:-12})),se=x("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),te=A.exports.forwardRef(function(a,i){const{autoFocus:l,checked:o,checkedIcon:r,className:F,defaultChecked:h,disabled:y,disableFocusRipple:p=!1,edge:w=!1,icon:S,id:R,inputProps:I,inputRef:P,name:j,onBlur:f,onChange:g,onFocus:b,readOnly:z,required:N=!1,tabIndex:U,type:c,value:m}=a,_=D(a,Y),[k,q]=G({controlled:o,default:Boolean(h),name:"SwitchBase",state:"checked"}),t=J(),v=s=>{b&&b(s),t&&t.onFocus&&t.onFocus(s)},L=s=>{f&&f(s),t&&t.onBlur&&t.onBlur(s)},O=s=>{if(s.nativeEvent.defaultPrevented)return;const C=s.target.checked;q(C),g&&g(s,C)};let n=y;t&&typeof n>"u"&&(n=t.disabled);const E=c==="checkbox"||c==="radio",u=d({},a,{checked:k,disabled:n,disableFocusRipple:p,edge:w}),B=Z(u);return K(ee,d({component:"span",className:Q(B.root,F),centerRipple:!0,focusRipple:!p,disabled:n,tabIndex:null,role:void 0,onFocus:v,onBlur:L,ownerState:u,ref:i},_,{children:[M(se,d({autoFocus:l,checked:o,defaultChecked:h,className:B.input,disabled:n,id:E?R:void 0,name:j,onChange:O,readOnly:z,ref:P,required:N,ownerState:u,tabIndex:U,type:c},c==="checkbox"&&m===void 0?{}:{value:m},I)),k?r:S]}))}),oe=te;export{oe as S};
import{a as $,g as H,s as x,a3 as W,_ as d,r as A,e as D,ao as G,H as J,f as K,j as M,h as Q,b as T,i as V}from"./index.b0a49137.js";function X(e){return $("PrivateSwitchBase",e)}H("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const Y=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],Z=e=>{const{classes:a,checked:i,disabled:l,edge:o}=e,r={root:["root",i&&"checked",l&&"disabled",o&&`edge${T(o)}`],input:["input"]};return V(r,X,a)},ee=x(W)(({ownerState:e})=>d({padding:9,borderRadius:"50%"},e.edge==="start"&&{marginLeft:e.size==="small"?-3:-12},e.edge==="end"&&{marginRight:e.size==="small"?-3:-12})),se=x("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),te=A.exports.forwardRef(function(a,i){const{autoFocus:l,checked:o,checkedIcon:r,className:F,defaultChecked:h,disabled:y,disableFocusRipple:p=!1,edge:w=!1,icon:S,id:R,inputProps:I,inputRef:P,name:j,onBlur:f,onChange:g,onFocus:b,readOnly:z,required:N=!1,tabIndex:U,type:c,value:m}=a,_=D(a,Y),[k,q]=G({controlled:o,default:Boolean(h),name:"SwitchBase",state:"checked"}),t=J(),v=s=>{b&&b(s),t&&t.onFocus&&t.onFocus(s)},L=s=>{f&&f(s),t&&t.onBlur&&t.onBlur(s)},O=s=>{if(s.nativeEvent.defaultPrevented)return;const C=s.target.checked;q(C),g&&g(s,C)};let n=y;t&&typeof n>"u"&&(n=t.disabled);const E=c==="checkbox"||c==="radio",u=d({},a,{checked:k,disabled:n,disableFocusRipple:p,edge:w}),B=Z(u);return K(ee,d({component:"span",className:Q(B.root,F),centerRipple:!0,focusRipple:!p,disabled:n,tabIndex:null,role:void 0,onFocus:v,onBlur:L,ownerState:u,ref:i},_,{children:[M(se,d({autoFocus:l,checked:o,defaultChecked:h,className:B.input,disabled:n,id:E?R:void 0,name:j,onChange:O,readOnly:z,ref:P,required:N,ownerState:u,tabIndex:U,type:c},c==="checkbox"&&m===void 0?{}:{value:m},I)),k?r:S]}))}),oe=te;export{oe as S};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{a as u,g as p,s as C,r as m,u as T,e as b,_ as r,j as d,h as f,i as x}from"./index.4524613b.js";function h(e){return u("MuiTableContainer",e)}p("MuiTableContainer",["root"]);const v=["className","component"],w=e=>{const{classes:s}=e;return x({root:["root"]},h,s)},y=C("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:(e,s)=>s.root})({width:"100%",overflowX:"auto"}),g=m.exports.forwardRef(function(s,t){const o=T({props:s,name:"MuiTableContainer"}),{className:i,component:a="div"}=o,l=b(o,v),n=r({},o,{component:a}),c=w(n);return d(y,r({ref:t,as:a,className:f(c.root,i),ownerState:n},l))}),R=g;export{R as T};
import{a as u,g as p,s as C,r as m,u as T,e as b,_ as r,j as d,h as f,i as x}from"./index.b0a49137.js";function h(e){return u("MuiTableContainer",e)}p("MuiTableContainer",["root"]);const v=["className","component"],w=e=>{const{classes:s}=e;return x({root:["root"]},h,s)},y=C("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:(e,s)=>s.root})({width:"100%",overflowX:"auto"}),g=m.exports.forwardRef(function(s,t){const o=T({props:s,name:"MuiTableContainer"}),{className:i,component:a="div"}=o,l=b(o,v),n=r({},o,{component:a}),c=w(n);return d(y,r({ref:t,as:a,className:f(c.root,i),ownerState:n},l))}),R=g;export{R as T};

View File

@@ -1 +1 @@
import{a as u,g as m,s as b,r as T,u as h,e as H,_ as l,j as n,h as f,i as v}from"./index.4524613b.js";import{d as x}from"./TableRow.184bd340.js";function C(e){return u("MuiTableHead",e)}m("MuiTableHead",["root"]);const g=["className","component"],y=e=>{const{classes:s}=e;return v({root:["root"]},C,s)},w=b("thead",{name:"MuiTableHead",slot:"Root",overridesResolver:(e,s)=>s.root})({display:"table-header-group"}),M={variant:"head"},c="thead",R=T.exports.forwardRef(function(s,a){const o=h({props:s,name:"MuiTableHead"}),{className:d,component:t=c}=o,i=H(o,g),r=l({},o,{component:t}),p=y(r);return n(x.Provider,{value:M,children:n(w,l({as:t,className:f(p.root,d),ref:a,role:t===c?null:"rowgroup",ownerState:r},i))})}),j=R;export{j as T};
import{a as u,g as m,s as b,r as T,u as h,e as H,_ as l,j as n,h as f,i as v}from"./index.b0a49137.js";import{d as x}from"./TableRow.41459f01.js";function C(e){return u("MuiTableHead",e)}m("MuiTableHead",["root"]);const g=["className","component"],y=e=>{const{classes:s}=e;return v({root:["root"]},C,s)},w=b("thead",{name:"MuiTableHead",slot:"Root",overridesResolver:(e,s)=>s.root})({display:"table-header-group"}),M={variant:"head"},c="thead",R=T.exports.forwardRef(function(s,a){const o=h({props:s,name:"MuiTableHead"}),{className:d,component:t=c}=o,i=H(o,g),r=l({},o,{component:t}),p=y(r);return n(x.Provider,{value:M,children:n(w,l({as:t,className:f(p.root,d),ref:a,role:t===c?null:"rowgroup",ownerState:r},i))})}),j=R;export{j as T};

View File

@@ -1 +1 @@
import{r as n,f as h,F as c,j as o,I as p,q as u,af as d}from"./index.4524613b.js";function f({actions:t,disableRipple:a}){const[r,e]=n.exports.useState(null);n.exports.useEffect(()=>{e(null)},[t]);const i=s=>{e(s.currentTarget)},l=()=>{e(null)};return h(c,{children:[o(p,{onClick:i,disableRipple:a,children:o(u,{icon:"eva:more-vertical-fill",width:20,height:20})}),o(d,{open:Boolean(r),anchorEl:r,onClose:l,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},arrow:"right-top",sx:{mt:-1,width:"auto",minWidth:160,"& .MuiMenuItem-root":{px:1,typography:"body2",borderRadius:.75,"& svg":{mr:2,width:20,height:20}}},children:t}),"\xA0\xA0\xA0\xA0"]})}export{f as T};
import{r as n,f as h,F as c,j as o,I as p,q as u,af as d}from"./index.b0a49137.js";function f({actions:t,disableRipple:a}){const[r,e]=n.exports.useState(null);n.exports.useEffect(()=>{e(null)},[t]);const i=s=>{e(s.currentTarget)},l=()=>{e(null)};return h(c,{children:[o(p,{onClick:i,disableRipple:a,children:o(u,{icon:"eva:more-vertical-fill",width:20,height:20})}),o(d,{open:Boolean(r),anchorEl:r,onClose:l,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},arrow:"right-top",sx:{mt:-1,width:"auto",minWidth:160,"& .MuiMenuItem-root":{px:1,typography:"body2",borderRadius:.75,"& svg":{mr:2,width:20,height:20}}},children:t}),"\xA0\xA0\xA0\xA0"]})}export{f as T};

View File

@@ -1,2 +1,2 @@
import{r as c,a as m,g as $,s as R,_ as i,u as h,e as k,j as y,h as w,i as H,b as u,l as W,a6 as T,d as L}from"./index.4524613b.js";const I=c.exports.createContext(),j=I;function J(e){return m("MuiTable",e)}$("MuiTable",["root","stickyHeader"]);const q=["className","component","padding","size","stickyHeader"],E=e=>{const{classes:o,stickyHeader:t}=e;return H({root:["root",t&&"stickyHeader"]},J,o)},F=R("table",{name:"MuiTable",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,t.stickyHeader&&o.stickyHeader]}})(({theme:e,ownerState:o})=>i({display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":i({},e.typography.body2,{padding:e.spacing(2),color:(e.vars||e).palette.text.secondary,textAlign:"left",captionSide:"bottom"})},o.stickyHeader&&{borderCollapse:"separate"})),A="table",G=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTable"}),{className:r,component:s=A,padding:l="normal",size:n="medium",stickyHeader:d=!1}=a,b=k(a,q),p=i({},a,{component:s,padding:l,size:n,stickyHeader:d}),v=E(p),M=c.exports.useMemo(()=>({padding:l,size:n,stickyHeader:d}),[l,n,d]);return y(j.Provider,{value:M,children:y(F,i({as:s,role:s===A?null:"table",ref:t,className:w(v.root,r),ownerState:p},b))})}),ye=G,K=c.exports.createContext(),z=K;function Q(e){return m("MuiTableBody",e)}$("MuiTableBody",["root"]);const V=["className","component"],X=e=>{const{classes:o}=e;return H({root:["root"]},Q,o)},Y=R("tbody",{name:"MuiTableBody",slot:"Root",overridesResolver:(e,o)=>o.root})({display:"table-row-group"}),Z={variant:"body"},_="tbody",ee=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTableBody"}),{className:r,component:s=_}=a,l=k(a,V),n=i({},a,{component:s}),d=X(n);return y(z.Provider,{value:Z,children:y(Y,i({className:w(d.root,r),as:s,ref:t,role:s===_?null:"rowgroup",ownerState:n},l))})}),ve=ee;function oe(e){return m("MuiTableCell",e)}const te=$("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"]),ae=te,se=["align","className","component","padding","scope","size","sortDirection","variant"],le=e=>{const{classes:o,variant:t,align:a,padding:r,size:s,stickyHeader:l}=e,n={root:["root",t,l&&"stickyHeader",a!=="inherit"&&`align${u(a)}`,r!=="normal"&&`padding${u(r)}`,`size${u(s)}`]};return H(n,oe,o)},re=R("td",{name:"MuiTableCell",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,o[t.variant],o[`size${u(t.size)}`],t.padding!=="normal"&&o[`padding${u(t.padding)}`],t.align!=="inherit"&&o[`align${u(t.align)}`],t.stickyHeader&&o.stickyHeader]}})(({theme:e,ownerState:o})=>i({},e.typography.body2,{display:"table-cell",verticalAlign:"inherit",borderBottom:e.vars?`1px solid ${e.vars.palette.TableCell.border}`:`1px solid
import{r as c,a as m,g as $,s as R,_ as i,u as h,e as k,j as y,h as w,i as H,b as u,l as W,a6 as T,d as L}from"./index.b0a49137.js";const I=c.exports.createContext(),j=I;function J(e){return m("MuiTable",e)}$("MuiTable",["root","stickyHeader"]);const q=["className","component","padding","size","stickyHeader"],E=e=>{const{classes:o,stickyHeader:t}=e;return H({root:["root",t&&"stickyHeader"]},J,o)},F=R("table",{name:"MuiTable",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,t.stickyHeader&&o.stickyHeader]}})(({theme:e,ownerState:o})=>i({display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":i({},e.typography.body2,{padding:e.spacing(2),color:(e.vars||e).palette.text.secondary,textAlign:"left",captionSide:"bottom"})},o.stickyHeader&&{borderCollapse:"separate"})),A="table",G=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTable"}),{className:r,component:s=A,padding:l="normal",size:n="medium",stickyHeader:d=!1}=a,b=k(a,q),p=i({},a,{component:s,padding:l,size:n,stickyHeader:d}),v=E(p),M=c.exports.useMemo(()=>({padding:l,size:n,stickyHeader:d}),[l,n,d]);return y(j.Provider,{value:M,children:y(F,i({as:s,role:s===A?null:"table",ref:t,className:w(v.root,r),ownerState:p},b))})}),ye=G,K=c.exports.createContext(),z=K;function Q(e){return m("MuiTableBody",e)}$("MuiTableBody",["root"]);const V=["className","component"],X=e=>{const{classes:o}=e;return H({root:["root"]},Q,o)},Y=R("tbody",{name:"MuiTableBody",slot:"Root",overridesResolver:(e,o)=>o.root})({display:"table-row-group"}),Z={variant:"body"},_="tbody",ee=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTableBody"}),{className:r,component:s=_}=a,l=k(a,V),n=i({},a,{component:s}),d=X(n);return y(z.Provider,{value:Z,children:y(Y,i({className:w(d.root,r),as:s,ref:t,role:s===_?null:"rowgroup",ownerState:n},l))})}),ve=ee;function oe(e){return m("MuiTableCell",e)}const te=$("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"]),ae=te,se=["align","className","component","padding","scope","size","sortDirection","variant"],le=e=>{const{classes:o,variant:t,align:a,padding:r,size:s,stickyHeader:l}=e,n={root:["root",t,l&&"stickyHeader",a!=="inherit"&&`align${u(a)}`,r!=="normal"&&`padding${u(r)}`,`size${u(s)}`]};return H(n,oe,o)},re=R("td",{name:"MuiTableCell",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,o[t.variant],o[`size${u(t.size)}`],t.padding!=="normal"&&o[`padding${u(t.padding)}`],t.align!=="inherit"&&o[`align${u(t.align)}`],t.stickyHeader&&o.stickyHeader]}})(({theme:e,ownerState:o})=>i({},e.typography.body2,{display:"table-cell",verticalAlign:"inherit",borderBottom:e.vars?`1px solid ${e.vars.palette.TableCell.border}`:`1px solid
${e.palette.mode==="light"?W(T(e.palette.divider,1),.88):L(T(e.palette.divider,1),.68)}`,textAlign:"left",padding:16},o.variant==="head"&&{color:(e.vars||e).palette.text.primary,lineHeight:e.typography.pxToRem(24),fontWeight:e.typography.fontWeightMedium},o.variant==="body"&&{color:(e.vars||e).palette.text.primary},o.variant==="footer"&&{color:(e.vars||e).palette.text.secondary,lineHeight:e.typography.pxToRem(21),fontSize:e.typography.pxToRem(12)},o.size==="small"&&{padding:"6px 16px",[`&.${ae.paddingCheckbox}`]:{width:24,padding:"0 12px 0 16px","& > *":{padding:0}}},o.padding==="checkbox"&&{width:48,padding:"0 0 0 4px"},o.padding==="none"&&{padding:0},o.align==="left"&&{textAlign:"left"},o.align==="center"&&{textAlign:"center"},o.align==="right"&&{textAlign:"right",flexDirection:"row-reverse"},o.align==="justify"&&{textAlign:"justify"},o.stickyHeader&&{position:"sticky",top:0,zIndex:2,backgroundColor:(e.vars||e).palette.background.default})),ne=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTableCell"}),{align:r="inherit",className:s,component:l,padding:n,scope:d,size:b,sortDirection:p,variant:v}=a,M=k(a,se),g=c.exports.useContext(j),x=c.exports.useContext(z),N=x&&x.variant==="head";let f;l?f=l:f=N?"th":"td";let C=d;f==="td"?C=void 0:!C&&N&&(C="col");const B=v||x&&x.variant,U=i({},a,{align:r,component:f,padding:n||(g&&g.padding?g.padding:"normal"),size:b||(g&&g.size?g.size:"medium"),sortDirection:p,stickyHeader:B==="head"&&g&&g.stickyHeader,variant:B}),D=le(U);let P=null;return p&&(P=p==="asc"?"ascending":"descending"),y(re,i({as:f,ref:t,className:w(D.root,s),"aria-sort":P,scope:C,ownerState:U},M))}),fe=ne;function ie(e){return m("MuiTableRow",e)}const ce=$("MuiTableRow",["root","selected","hover","head","footer"]),O=ce,de=["className","component","hover","selected"],pe=e=>{const{classes:o,selected:t,hover:a,head:r,footer:s}=e;return H({root:["root",t&&"selected",a&&"hover",r&&"head",s&&"footer"]},ie,o)},be=R("tr",{name:"MuiTableRow",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,t.head&&o.head,t.footer&&o.footer]}})(({theme:e})=>({color:"inherit",display:"table-row",verticalAlign:"middle",outline:0,[`&.${O.hover}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${O.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:T(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:T(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity)}}})),S="tr",ge=c.exports.forwardRef(function(o,t){const a=h({props:o,name:"MuiTableRow"}),{className:r,component:s=S,hover:l=!1,selected:n=!1}=a,d=k(a,de),b=c.exports.useContext(z),p=i({},a,{component:s,hover:l,selected:n,head:b&&b.variant==="head",footer:b&&b.variant==="footer"}),v=pe(p);return y(be,i({as:s,ref:t,className:w(v.root,r),role:s===S?null:"row",ownerState:p},d))}),xe=ge;export{ye as T,ve as a,xe as b,fe as c,z as d};

View File

@@ -1 +1 @@
import{g as q,a as S,s as N,b as L,_ as l,r as U,u as _,e as B,H as se,K as le,j as c,h as W,i as j,M as ae,f as ie,N as ne,Q as de,U as ue,V as ce,O as pe}from"./index.4524613b.js";import{u as fe}from"./useId.5c752e65.js";function me(e){return S("MuiFormHelperText",e)}const xe=q("MuiFormHelperText",["root","error","disabled","sizeSmall","sizeMedium","contained","focused","filled","required"]),M=xe;var $;const Fe=["children","className","component","disabled","error","filled","focused","margin","required","variant"],he=e=>{const{classes:o,contained:t,size:s,disabled:i,error:n,filled:d,focused:p,required:u}=e,r={root:["root",i&&"disabled",n&&"error",s&&`size${L(s)}`,t&&"contained",p&&"focused",d&&"filled",u&&"required"]};return j(r,me,o)},be=N("p",{name:"MuiFormHelperText",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,t.size&&o[`size${L(t.size)}`],t.contained&&o.contained,t.filled&&o.filled]}})(({theme:e,ownerState:o})=>l({color:(e.vars||e).palette.text.secondary},e.typography.caption,{textAlign:"left",marginTop:3,marginRight:0,marginBottom:0,marginLeft:0,[`&.${M.disabled}`]:{color:(e.vars||e).palette.text.disabled},[`&.${M.error}`]:{color:(e.vars||e).palette.error.main}},o.size==="small"&&{marginTop:4},o.contained&&{marginLeft:14,marginRight:14})),Te=U.exports.forwardRef(function(o,t){const s=_({props:o,name:"MuiFormHelperText"}),{children:i,className:n,component:d="p"}=s,p=B(s,Fe),u=se(),r=le({props:s,muiFormControl:u,states:["variant","size","disabled","error","filled","focused","required"]}),f=l({},s,{component:d,contained:r.variant==="filled"||r.variant==="outlined",variant:r.variant,size:r.size,disabled:r.disabled,error:r.error,filled:r.filled,focused:r.focused,required:r.required}),F=he(f);return c(be,l({as:d,ownerState:f,className:W(F.root,n),ref:t},p,{children:i===" "?$||($=c("span",{className:"notranslate",children:"\u200B"})):i}))}),ve=Te;function Ce(e){return S("MuiTextField",e)}q("MuiTextField",["root"]);const ge=["autoComplete","autoFocus","children","className","color","defaultValue","disabled","error","FormHelperTextProps","fullWidth","helperText","id","InputLabelProps","inputProps","InputProps","inputRef","label","maxRows","minRows","multiline","name","onBlur","onChange","onFocus","placeholder","required","rows","select","SelectProps","type","value","variant"],Re={standard:ue,filled:ce,outlined:pe},we=e=>{const{classes:o}=e;return j({root:["root"]},Ce,o)},ye=N(ae,{name:"MuiTextField",slot:"Root",overridesResolver:(e,o)=>o.root})({}),Ie=U.exports.forwardRef(function(o,t){const s=_({props:o,name:"MuiTextField"}),{autoComplete:i,autoFocus:n=!1,children:d,className:p,color:u="primary",defaultValue:r,disabled:f=!1,error:F=!1,FormHelperTextProps:V,fullWidth:T=!1,helperText:v,id:O,InputLabelProps:h,inputProps:k,InputProps:A,inputRef:E,label:m,maxRows:K,minRows:Q,multiline:w=!1,name:D,onBlur:G,onChange:J,onFocus:X,placeholder:Y,required:y=!1,rows:Z,select:C=!1,SelectProps:g,type:ee,value:I,variant:b="outlined"}=s,oe=B(s,ge),H=l({},s,{autoFocus:n,color:u,disabled:f,error:F,fullWidth:T,multiline:w,required:y,select:C,variant:b}),re=we(H),x={};b==="outlined"&&(h&&typeof h.shrink<"u"&&(x.notched=h.shrink),x.label=m),C&&((!g||!g.native)&&(x.id=void 0),x["aria-describedby"]=void 0);const a=fe(O),R=v&&a?`${a}-helper-text`:void 0,P=m&&a?`${a}-label`:void 0,te=Re[b],z=c(te,l({"aria-describedby":R,autoComplete:i,autoFocus:n,defaultValue:r,fullWidth:T,multiline:w,name:D,rows:Z,maxRows:K,minRows:Q,type:ee,value:I,id:a,inputRef:E,onBlur:G,onChange:J,onFocus:X,placeholder:Y,inputProps:k},x,A));return ie(ye,l({className:W(re.root,p),disabled:f,error:F,fullWidth:T,ref:t,required:y,color:u,variant:b,ownerState:H},oe,{children:[m!=null&&m!==""&&c(ne,l({htmlFor:a,id:P},h,{children:m})),C?c(de,l({"aria-describedby":R,id:a,labelId:P,value:I,input:z},g,{children:d})):z,v&&c(ve,l({id:R},V,{children:v}))]}))}),ze=Ie;export{ve as F,ze as T};
import{g as q,a as S,s as N,b as L,_ as l,r as U,u as _,e as B,H as se,K as le,j as c,h as W,i as j,M as ae,f as ie,N as ne,Q as de,U as ue,V as ce,O as pe}from"./index.b0a49137.js";import{u as fe}from"./useId.c3f149cd.js";function me(e){return S("MuiFormHelperText",e)}const xe=q("MuiFormHelperText",["root","error","disabled","sizeSmall","sizeMedium","contained","focused","filled","required"]),M=xe;var $;const Fe=["children","className","component","disabled","error","filled","focused","margin","required","variant"],he=e=>{const{classes:o,contained:t,size:s,disabled:i,error:n,filled:d,focused:p,required:u}=e,r={root:["root",i&&"disabled",n&&"error",s&&`size${L(s)}`,t&&"contained",p&&"focused",d&&"filled",u&&"required"]};return j(r,me,o)},be=N("p",{name:"MuiFormHelperText",slot:"Root",overridesResolver:(e,o)=>{const{ownerState:t}=e;return[o.root,t.size&&o[`size${L(t.size)}`],t.contained&&o.contained,t.filled&&o.filled]}})(({theme:e,ownerState:o})=>l({color:(e.vars||e).palette.text.secondary},e.typography.caption,{textAlign:"left",marginTop:3,marginRight:0,marginBottom:0,marginLeft:0,[`&.${M.disabled}`]:{color:(e.vars||e).palette.text.disabled},[`&.${M.error}`]:{color:(e.vars||e).palette.error.main}},o.size==="small"&&{marginTop:4},o.contained&&{marginLeft:14,marginRight:14})),Te=U.exports.forwardRef(function(o,t){const s=_({props:o,name:"MuiFormHelperText"}),{children:i,className:n,component:d="p"}=s,p=B(s,Fe),u=se(),r=le({props:s,muiFormControl:u,states:["variant","size","disabled","error","filled","focused","required"]}),f=l({},s,{component:d,contained:r.variant==="filled"||r.variant==="outlined",variant:r.variant,size:r.size,disabled:r.disabled,error:r.error,filled:r.filled,focused:r.focused,required:r.required}),F=he(f);return c(be,l({as:d,ownerState:f,className:W(F.root,n),ref:t},p,{children:i===" "?$||($=c("span",{className:"notranslate",children:"\u200B"})):i}))}),ve=Te;function Ce(e){return S("MuiTextField",e)}q("MuiTextField",["root"]);const ge=["autoComplete","autoFocus","children","className","color","defaultValue","disabled","error","FormHelperTextProps","fullWidth","helperText","id","InputLabelProps","inputProps","InputProps","inputRef","label","maxRows","minRows","multiline","name","onBlur","onChange","onFocus","placeholder","required","rows","select","SelectProps","type","value","variant"],Re={standard:ue,filled:ce,outlined:pe},we=e=>{const{classes:o}=e;return j({root:["root"]},Ce,o)},ye=N(ae,{name:"MuiTextField",slot:"Root",overridesResolver:(e,o)=>o.root})({}),Ie=U.exports.forwardRef(function(o,t){const s=_({props:o,name:"MuiTextField"}),{autoComplete:i,autoFocus:n=!1,children:d,className:p,color:u="primary",defaultValue:r,disabled:f=!1,error:F=!1,FormHelperTextProps:V,fullWidth:T=!1,helperText:v,id:O,InputLabelProps:h,inputProps:k,InputProps:A,inputRef:E,label:m,maxRows:K,minRows:Q,multiline:w=!1,name:D,onBlur:G,onChange:J,onFocus:X,placeholder:Y,required:y=!1,rows:Z,select:C=!1,SelectProps:g,type:ee,value:I,variant:b="outlined"}=s,oe=B(s,ge),H=l({},s,{autoFocus:n,color:u,disabled:f,error:F,fullWidth:T,multiline:w,required:y,select:C,variant:b}),re=we(H),x={};b==="outlined"&&(h&&typeof h.shrink<"u"&&(x.notched=h.shrink),x.label=m),C&&((!g||!g.native)&&(x.id=void 0),x["aria-describedby"]=void 0);const a=fe(O),R=v&&a?`${a}-helper-text`:void 0,P=m&&a?`${a}-label`:void 0,te=Re[b],z=c(te,l({"aria-describedby":R,autoComplete:i,autoFocus:n,defaultValue:r,fullWidth:T,multiline:w,name:D,rows:Z,maxRows:K,minRows:Q,type:ee,value:I,id:a,inputRef:E,onBlur:G,onChange:J,onFocus:X,placeholder:Y,inputProps:k},x,A));return ie(ye,l({className:W(re.root,p),disabled:f,error:F,fullWidth:T,ref:t,required:y,color:u,variant:b,ownerState:H},oe,{children:[m!=null&&m!==""&&c(ne,l({htmlFor:a,id:P},h,{children:m})),C?c(de,l({"aria-describedby":R,id:a,labelId:P,value:I,input:z},g,{children:d})):z,v&&c(ve,l({id:R},V,{children:v}))]}))}),ze=Ie;export{ve as F,ze as T};

View File

@@ -1 +1 @@
import{r,i as t,a}from"./jsx-runtime_commonjs-proxy.08daee49.js";var e={},i=t.exports;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,s=i(r()),l=a,d=(0,s.default)((0,l.jsx)("path",{d:"M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z"}),"VisibilityOutlined");u=e.default=d;export{u as d};
import{r,i as t,a}from"./jsx-runtime_commonjs-proxy.b87625c0.js";var e={},i=t.exports;Object.defineProperty(e,"__esModule",{value:!0});var u=e.default=void 0,s=i(r()),l=a,d=(0,s.default)((0,l.jsx)("path",{d:"M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z"}),"VisibilityOutlined");u=e.default=d;export{u as d};

View File

@@ -1 +1 @@
import{ag as u,b as s,ah as c,c as i,ai as l,aj as p,ak as f,al as d,am as m,an as _,ao as g,ap as v,aq as b,ar as I,as as o,at as q}from"./index.4524613b.js";import{u as C}from"./useId.5c752e65.js";function S(e,r){return()=>null}function E(e,r){return()=>null}function N(e,r,a,h,F){return null}const x={configure:e=>{u.configure(e)}},y=Object.freeze(Object.defineProperty({__proto__:null,unstable_ClassNameGenerator:x,capitalize:s,createChainedFunction:c,createSvgIcon:i,debounce:l,deprecatedPropType:S,isMuiElement:p,ownerDocument:f,ownerWindow:d,requirePropFactory:E,setRef:m,unstable_useEnhancedEffect:_,unstable_useId:C,unsupportedProp:N,useControlled:g,useEventCallback:v,useForkRef:b,useIsFocusVisible:I},Symbol.toStringTag,{value:"Module"}));var P={exports:{}};(function(e){function r(a){return a&&a.__esModule?a:{default:a}}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports})(P);var t={};const R=o(y);var n;function O(){return n||(n=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=R}(t)),t}const j=o(q);export{j as a,P as i,O as r};
import{ag as u,b as s,ah as c,c as i,ai as l,aj as p,ak as f,al as d,am as m,an as _,ao as g,ap as v,aq as b,ar as I,as as o,at as q}from"./index.b0a49137.js";import{u as C}from"./useId.c3f149cd.js";function S(e,r){return()=>null}function E(e,r){return()=>null}function N(e,r,a,h,F){return null}const x={configure:e=>{u.configure(e)}},y=Object.freeze(Object.defineProperty({__proto__:null,unstable_ClassNameGenerator:x,capitalize:s,createChainedFunction:c,createSvgIcon:i,debounce:l,deprecatedPropType:S,isMuiElement:p,ownerDocument:f,ownerWindow:d,requirePropFactory:E,setRef:m,unstable_useEnhancedEffect:_,unstable_useId:C,unsupportedProp:N,useControlled:g,useEventCallback:v,useForkRef:b,useIsFocusVisible:I},Symbol.toStringTag,{value:"Module"}));var P={exports:{}};(function(e){function r(a){return a&&a.__esModule?a:{default:a}}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports})(P);var t={};const R=o(y);var n;function O(){return n||(n=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=R}(t)),t}const j=o(q);export{j as a,P as i,O as r};

View File

@@ -1 +1 @@
import{r as u,X as c}from"./index.4524613b.js";let s=0;function l(t){const[e,a]=u.exports.useState(t),o=t||e;return u.exports.useEffect(()=>{e==null&&(s+=1,a(`mui-${s}`))},[e]),o}const n=c["useId"];function r(t){if(n!==void 0){const e=n();return t!=null?t:e}return l(t)}export{r as u};
import{r as u,X as c}from"./index.b0a49137.js";let s=0;function l(t){const[e,a]=u.exports.useState(t),o=t||e;return u.exports.useEffect(()=>{e==null&&(s+=1,a(`mui-${s}`))},[e]),o}const n=c["useId"];function r(t){if(n!==void 0){const e=n();return t!=null?t:e}return l(t)}export{r as u};

View File

@@ -27,7 +27,7 @@
content="The starting point for your next project with Minimal UI Kit, built on the newest version of Material-UI ©, ready to be customized to your style" />
<meta name="keywords" content="react,material,kit,application,dashboard,admin,template" />
<meta name="author" content="Minimal UI Kit" />
<script type="module" crossorigin src="/assets/index.4524613b.js"></script>
<script type="module" crossorigin src="/assets/index.b0a49137.js"></script>
<link rel="stylesheet" href="/assets/index.d13d3ea4.css">
<link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>

View File

@@ -1 +1 @@
if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise((e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()})).then((()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didnt register its module`);return s})));self.define=(i,r)=>{const n=s||("document"in self?document.currentScript.src:"")||location.href;if(e[n])return;let u={};const a=s=>l(s,n),t={module:{uri:n},exports:u,require:a};e[n]=Promise.all(i.map((s=>t[s]||a(s)))).then((s=>(r(...s),u)))}}define(["./workbox-e0782b83"],(function(s){"use strict";self.addEventListener("message",(s=>{s.data&&"SKIP_WAITING"===s.data.type&&self.skipWaiting()})),s.precacheAndRoute([{url:"assets/ArrowBackIos.720b1306.js",revision:null},{url:"assets/Box.522fc68e.js",revision:null},{url:"assets/Card.4734268d.js",revision:null},{url:"assets/Checkbox.e8ad52b3.js",revision:null},{url:"assets/Close.10859109.js",revision:null},{url:"assets/Detail.47a133d1.js",revision:null},{url:"assets/DetailHistory.165c4876.js",revision:null},{url:"assets/DialogDetailClaim.36d22b6d.js",revision:null},{url:"assets/DialogDetailClaim.52b819df.js",revision:null},{url:"assets/Form.a56fd31b.js",revision:null},{url:"assets/formatNumber.e535a2a3.js",revision:null},{url:"assets/formatTime.0646b9d0.js",revision:null},{url:"assets/generateUtilityClasses.06032f54.js",revision:null},{url:"assets/Grid.63392dc1.js",revision:null},{url:"assets/HeaderBreadcrumbs.f593a2a7.js",revision:null},{url:"assets/Index.0c12c5d1.js",revision:null},{url:"assets/Index.1aa270d9.js",revision:null},{url:"assets/Index.2d5138ff.js",revision:null},{url:"assets/index.4524613b.js",revision:null},{url:"assets/index.49ea62c1.js",revision:null},{url:"assets/Index.7c3e31bb.js",revision:null},{url:"assets/Index.b9875b0b.js",revision:null},{url:"assets/index.d13d3ea4.css",revision:null},{url:"assets/Index.da883486.js",revision:null},{url:"assets/Index.e38eb6a9.js",revision:null},{url:"assets/InputAdornment.c3b5c49a.js",revision:null},{url:"assets/isObject.095d1ac4.js",revision:null},{url:"assets/jsx-runtime_commonjs-proxy.08daee49.js",revision:null},{url:"assets/KeyboardArrowRight.dfbe216b.js",revision:null},{url:"assets/Label.c0ab61c4.js",revision:null},{url:"assets/LastPage.928f2cf3.js",revision:null},{url:"assets/LinearProgress.9a82ef9e.js",revision:null},{url:"assets/ListMember.e89bdca7.js",revision:null},{url:"assets/LoadingButton.1d571e70.js",revision:null},{url:"assets/Login.6480bcbf.js",revision:null},{url:"assets/Page.b1f38576.js",revision:null},{url:"assets/Page404.025eccc4.js",revision:null},{url:"assets/RHFTextField.595782a5.css",revision:null},{url:"assets/RHFTextField.8217bd7f.js",revision:null},{url:"assets/Search.a632f4d1.js",revision:null},{url:"assets/ServiceMonitoring.58b537ac.js",revision:null},{url:"assets/Show.2b72d98f.js",revision:null},{url:"assets/Show.628bd514.js",revision:null},{url:"assets/Skeleton.a14cd0e0.js",revision:null},{url:"assets/Stack.2fe98e42.js",revision:null},{url:"assets/Stepper.3a0cdbba.js",revision:null},{url:"assets/SwitchBase.e250c68d.js",revision:null},{url:"assets/Table.b404960e.js",revision:null},{url:"assets/TableContainer.e4a601db.js",revision:null},{url:"assets/TableHead.2295a13e.js",revision:null},{url:"assets/TableMoreMenu.fbaa38aa.js",revision:null},{url:"assets/TablePagination.a2995130.js",revision:null},{url:"assets/TableRow.184bd340.js",revision:null},{url:"assets/TextField.489cf1ea.js",revision:null},{url:"assets/TimelineSeparator.a58cb5be.js",revision:null},{url:"assets/useId.5c752e65.js",revision:null},{url:"assets/UserProfile.16d07aad.js",revision:null},{url:"assets/UserProfile.727584d1.js",revision:null},{url:"assets/VisibilityOutlined.7d63b3a6.js",revision:null},{url:"fonts/index.css",revision:"8711e169f3dc54f34d839f18d7acef21"},{url:"index.html",revision:"637f486e8521cd2b48b3cd0dd423346b"},{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"manifest.webmanifest",revision:"ced57fe94e88ec3187bcd0a36e2e178f"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html")))}));
if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise((e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()})).then((()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didnt register its module`);return s})));self.define=(i,r)=>{const n=s||("document"in self?document.currentScript.src:"")||location.href;if(e[n])return;let u={};const a=s=>l(s,n),t={module:{uri:n},exports:u,require:a};e[n]=Promise.all(i.map((s=>t[s]||a(s)))).then((s=>(r(...s),u)))}}define(["./workbox-e0782b83"],(function(s){"use strict";self.addEventListener("message",(s=>{s.data&&"SKIP_WAITING"===s.data.type&&self.skipWaiting()})),s.precacheAndRoute([{url:"assets/ArrowBackIos.b2aa057a.js",revision:null},{url:"assets/Box.c50b4a28.js",revision:null},{url:"assets/Card.a4168b31.js",revision:null},{url:"assets/Checkbox.362ad1e0.js",revision:null},{url:"assets/Close.6dbec378.js",revision:null},{url:"assets/Detail.2294ea3c.js",revision:null},{url:"assets/DetailHistory.a6f310d0.js",revision:null},{url:"assets/DialogDetailClaim.42799191.js",revision:null},{url:"assets/DialogDetailClaim.e074ae9e.js",revision:null},{url:"assets/Form.7231f39a.js",revision:null},{url:"assets/formatNumber.0b88db94.js",revision:null},{url:"assets/formatTime.0646b9d0.js",revision:null},{url:"assets/generateUtilityClasses.06032f54.js",revision:null},{url:"assets/Grid.97ae8bc1.js",revision:null},{url:"assets/HeaderBreadcrumbs.c70f1305.js",revision:null},{url:"assets/Index.11d3e7d2.js",revision:null},{url:"assets/index.49ea62c1.js",revision:null},{url:"assets/Index.60f44b5c.js",revision:null},{url:"assets/Index.7878a302.js",revision:null},{url:"assets/index.b0a49137.js",revision:null},{url:"assets/Index.c41bef42.js",revision:null},{url:"assets/Index.c60e3cfb.js",revision:null},{url:"assets/Index.c96f2301.js",revision:null},{url:"assets/index.d13d3ea4.css",revision:null},{url:"assets/Index.d978c17c.js",revision:null},{url:"assets/InputAdornment.b72719ba.js",revision:null},{url:"assets/isObject.095d1ac4.js",revision:null},{url:"assets/jsx-runtime_commonjs-proxy.b87625c0.js",revision:null},{url:"assets/KeyboardArrowRight.fd8a1844.js",revision:null},{url:"assets/Label.f33248ec.js",revision:null},{url:"assets/LastPage.9e90b034.js",revision:null},{url:"assets/LinearProgress.c8f69e54.js",revision:null},{url:"assets/ListMember.f5ebfa7c.js",revision:null},{url:"assets/LoadingButton.6a53b4e1.js",revision:null},{url:"assets/Login.b8d0a4bd.js",revision:null},{url:"assets/Page.e9d8cc16.js",revision:null},{url:"assets/Page404.9f1640bb.js",revision:null},{url:"assets/RHFTextField.595782a5.css",revision:null},{url:"assets/RHFTextField.dd20c932.js",revision:null},{url:"assets/Search.cbee36ce.js",revision:null},{url:"assets/ServiceMonitoring.ee79bad4.js",revision:null},{url:"assets/Show.5637cca2.js",revision:null},{url:"assets/Show.cf119cea.js",revision:null},{url:"assets/Skeleton.cbf2214f.js",revision:null},{url:"assets/Stack.acc67e21.js",revision:null},{url:"assets/Stepper.49691c4e.js",revision:null},{url:"assets/SwitchBase.6ffeba1b.js",revision:null},{url:"assets/Table.08efdc83.js",revision:null},{url:"assets/TableContainer.58606ed5.js",revision:null},{url:"assets/TableHead.c7022a42.js",revision:null},{url:"assets/TableMoreMenu.0bdaf78f.js",revision:null},{url:"assets/TablePagination.dc161c5e.js",revision:null},{url:"assets/TableRow.41459f01.js",revision:null},{url:"assets/TextField.08c1cc6c.js",revision:null},{url:"assets/TimelineSeparator.77b9b667.js",revision:null},{url:"assets/useId.c3f149cd.js",revision:null},{url:"assets/UserProfile.bf6cca27.js",revision:null},{url:"assets/UserProfile.f57891cf.js",revision:null},{url:"assets/VisibilityOutlined.ab7a612c.js",revision:null},{url:"fonts/index.css",revision:"8711e169f3dc54f34d839f18d7acef21"},{url:"index.html",revision:"9ec5ef70693140a75ce73026f8df435a"},{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"manifest.webmanifest",revision:"ced57fe94e88ec3187bcd0a36e2e178f"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html")))}));

View File

@@ -1,38 +1,41 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<!-- Favicon -->
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png" />
<link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png" />
<head>
<meta charset="utf-8" />
<!-- Favicon -->
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png">
<meta name="theme-color" content="#000000" />
<link rel="manifest" href="/manifest.json" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="theme-color" content="#000000" />
<link rel="manifest" href="/manifest.json" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<!-- Using Google Font -->
<link rel="preconnect" href="https://fonts.gstatic.com" />
<link
href="https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700&display=swap"
rel="stylesheet"
/>
<!-- Using Google Font -->
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700&display=swap" rel="stylesheet">
<!-- Using Local Font -->
<link rel="stylesheet" type="text/css" href="/fonts/index.css" />
<!-- Using Local Font -->
<link rel="stylesheet" type="text/css" href="/fonts/index.css" />
<title>Dashboard</title>
<meta
name="description"
content="The starting point for your next project with Minimal UI Kit, built on the newest version of Material-UI ©, ready to be customized to your style"
/>
<meta name="keywords" content="react,material,kit,application,dashboard,admin,template" />
<meta name="author" content="Minimal UI Kit" />
<script type="module" crossorigin src="/assets/index.ad84f0bb.js"></script>
<link rel="stylesheet" href="/assets/index.c91e36b5.css">
<link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
<title>Dashboard</title>
<meta name="description"
content="The starting point for your next project with Minimal UI Kit, built on the newest version of Material-UI ©, ready to be customized to your style" />
<meta name="keywords" content="react,material,kit,application,dashboard,admin,template" />
<meta name="author" content="Minimal UI Kit" />
<script type="module" crossorigin src="/assets/index.2f1827e7.js"></script>
<link rel="stylesheet" href="/assets/index.c91e36b5.css">
<link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@@ -28,7 +28,7 @@
/>
<meta name="keywords" content="react,material,kit,application,dashboard,admin,template" />
<meta name="author" content="Minimal UI Kit" />
<script type="module" crossorigin src="/assets/index.9c13c9a7.js"></script>
<script type="module" crossorigin src="/assets/index.aa89c309.js"></script>
<link rel="stylesheet" href="/assets/index.c91e36b5.css">
<link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>

File diff suppressed because one or more lines are too long

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More