hapus halaman

This commit is contained in:
2025-06-02 12:39:21 +07:00
parent b397e09634
commit e6a883efe7
8 changed files with 1000 additions and 156 deletions
@@ -30,7 +30,7 @@ const sidebarItem: menu[] = [
children:[
{
title: "index",
to: "/master/index",
to: "/master/",
external: false,
},
{
-30
View File
@@ -1,30 +0,0 @@
<template>
<!-- <v-card elevation="10" >
<v-card-item> -->
<div class="d-md-flex justify-space-between mb-mb-0 mb-3">
<!-- <v-card-title class="text-h5">Revenue Forecast</v-card-title> -->
</div>
<div class="mt-4 pt-2">
<Vueform v-model="data" validate-on="change|step" method="post" :endpoint="onSubmit">
<FormLibMasterName />
<FormLibMasterEmail />
<FormLibMasterPassword />
<FormLibMasterRole />
<ButtonElement
name="primaryButton"
button-label="Button"
:submits="true"
align="center"
size="lg"
/>
</Vueform>
</div>
<!-- </v-card-item>
</v-card> -->
</template>
<script setup lang="ts">
const data = ref('')
const onSubmit = () => {
console.log(data)
}
</script>
+952
View File
@@ -0,0 +1,952 @@
{
"data": [
{
"resourceType": "Encounter",
"id": "682eca2506243e4b51edf8b1",
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": true
}
],
"text": ""
},
"system": "",
"value": "",
"period": {
"start": "2025-05-22"
},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
}
],
"status": "planned",
"class": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"version": "",
"code": "AMB",
"display": "ambulatory",
"userSelected": true
}
],
"text": ""
}
],
"priority": {
"coding": null,
"text": ""
},
"type": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"version": "",
"code": "000000002116",
"display": "Consultan",
"userSelected": true
}
],
"text": ""
}
],
"serviceType": null,
"subject": {
"reference": "Patient/682c20242af192c70dccef9b",
"display": "Hilyah Wati Sukma S.P"
},
"subjectStatus": {
"coding": null,
"text": ""
},
"episodeOfCare": null,
"baseOn": null,
"careTeam": null,
"partOf": {
"reference": "",
"display": ""
},
"serviceProvider": {
"reference": "",
"display": ""
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"period": {},
"actor": {
"reference": "Practitioner/68253d9305321465b1fd64ad",
"display": "dr.VATIEN RAHMAWATI,Sp.M"
}
}
],
"appointment": null,
"virtualServiceDetail": null,
"actualPeriod": {},
"plannedStartDate": "",
"plannedEndDate": "",
"length": {
"duration": {
"system": "http://unitsofmeasure.org",
"version": "",
"code": "min",
"display": "45 Minutes",
"userSelected": "",
"value": 45,
"unit": "minutes"
}
},
"reason": [
{
"use": [
{
"coding": [
{
"system": "http://hl7.org/fhir/ValueSet/encounter-reason-use",
"version": "",
"code": "CC",
"display": "Chief Complaint",
"userSelected": false
}
],
"text": "aaaaaaaaa"
}
],
"value": null,
"reference": {
"reference": "",
"display": ""
}
}
],
"diagnosis": null,
"account": null,
"dietPreference": null,
"specialArrangement": null,
"specialCourtesy": null,
"admission": {
"preAdmissionIdentifier": {
"use": "",
"type": {
"coding": null,
"text": ""
},
"system": "",
"value": "",
"period": {},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
},
"origin": {
"reference": "",
"display": ""
},
"admitSource": {
"coding": null,
"text": ""
},
"readmitSource": {
"coding": null,
"text": ""
},
"destination": {
"reference": "",
"display": ""
},
"dischargeDisposition": {
"coding": null,
"text": ""
}
},
"location": [
{
"location": {
"reference": "Location/682e8c4aae74fc3d30866a65",
"display": "MATA"
},
"status": "",
"form": {
"coding": null,
"text": ""
},
"period": {}
}
],
"createdAt": "2025-05-22 13:54:29",
"updatedAt": "2025-05-22 13:54:29",
"extension": null
},
{
"resourceType": "Encounter",
"id": "682eca3c06243e4b51edf8c4",
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": true
}
],
"text": ""
},
"system": "",
"value": "",
"period": {
"start": "2025-05-22"
},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
}
],
"status": "in-progress",
"class": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"version": "",
"code": "AMB",
"display": "ambulatory",
"userSelected": true
}
],
"text": ""
}
],
"priority": {
"coding": null,
"text": ""
},
"type": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"version": "",
"code": "000000002115",
"display": "Consultan",
"userSelected": true
}
],
"text": ""
}
],
"serviceType": null,
"subject": {
"reference": "Patient/682c1f662af192c70dccef3b",
"display": "dr. Soni sulis haryono SP.OK"
},
"subjectStatus": {
"coding": null,
"text": ""
},
"episodeOfCare": null,
"baseOn": null,
"careTeam": null,
"partOf": {
"reference": "",
"display": ""
},
"serviceProvider": {
"reference": "",
"display": ""
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"period": {},
"actor": {
"reference": "Practitioner/68253d9305321465b1fd6438",
"display": "dr.AUNUR ROFIQ,Sp.KK"
}
}
],
"appointment": null,
"virtualServiceDetail": null,
"actualPeriod": {},
"plannedStartDate": "",
"plannedEndDate": "",
"length": {
"duration": {
"system": "http://unitsofmeasure.org",
"version": "",
"code": "min",
"display": "45 Minutes",
"userSelected": "",
"value": 45,
"unit": "minutes"
}
},
"reason": [
{
"use": [
{
"coding": [
{
"system": "http://hl7.org/fhir/ValueSet/encounter-reason-use",
"version": "",
"code": "CC",
"display": "Chief Complaint",
"userSelected": false
}
],
"text": "cssssss"
}
],
"value": null,
"reference": {
"reference": "",
"display": ""
}
}
],
"diagnosis": null,
"account": null,
"dietPreference": null,
"specialArrangement": null,
"specialCourtesy": null,
"admission": {
"preAdmissionIdentifier": {
"use": "",
"type": {
"coding": null,
"text": ""
},
"system": "",
"value": "",
"period": {},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
},
"origin": {
"reference": "",
"display": ""
},
"admitSource": {
"coding": null,
"text": ""
},
"readmitSource": {
"coding": null,
"text": ""
},
"destination": {
"reference": "",
"display": ""
},
"dischargeDisposition": {
"coding": null,
"text": ""
}
},
"location": [
{
"location": {
"reference": "Location/682e8c4aae74fc3d30866a6a",
"display": "KULIT"
},
"status": "",
"form": {
"coding": null,
"text": ""
},
"period": {}
}
],
"createdAt": "2025-05-22 13:54:52",
"updatedAt": "2025-05-22 13:54:52",
"extension": null
},
{
"resourceType": "Encounter",
"id": "68357074f856dc2104eb5c87",
"identifier": [
{
"use": "",
"type": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"system": "",
"value": "",
"period": {},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
}
],
"status": "in-progress",
"class": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"version": "",
"code": "AMB",
"display": "ambulatory",
"userSelected": true
}
],
"text": ""
}
],
"priority": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": true
}
],
"text": ""
},
"type": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"version": "",
"code": "11429006",
"display": "Consultation",
"userSelected": true
}
],
"text": ""
}
],
"serviceType": [
{
"concept": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"reference": {
"reference": "",
"display": ""
}
}
],
"subject": {
"reference": "Patient/1",
"display": "John Doe"
},
"subjectStatus": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"episodeOfCare": [
{
"reference": "",
"display": ""
}
],
"baseOn": [
{
"reference": "",
"display": ""
}
],
"careTeam": [
{
"reference": "",
"display": ""
}
],
"partOf": {
"reference": "",
"display": ""
},
"serviceProvider": {
"reference": "",
"display": ""
},
"participant": [
{
"type": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"period": {},
"actor": {
"reference": "Practitioner/1",
"display": "Dr. Sarah Smith"
}
}
],
"appointment": [
{
"reference": "",
"display": ""
}
],
"virtualServiceDetail": [
{
"channelType": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
},
"address": {
"addressUrl": "",
"addressString": "",
"addressContactPoint": {
"rank": "0",
"period": {}
},
"addressExtendedContactDetail": {
"purpose": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"name": [
{
"use": "",
"text": "",
"family": "",
"given": [
""
],
"prefix": [
""
],
"suffix": [
""
],
"period": {}
}
],
"telecom": [
{
"rank": "0",
"period": {}
}
],
"address": {
"use": "",
"type": "",
"text": "",
"line": [
""
],
"village": "",
"district": "",
"city": "",
"state": "",
"postalCode": "",
"country": "",
"period": {},
"extension": [
{
"url": "",
"extension": [
{
"url": "",
"valueDisplay": "",
"valueCode": ""
}
]
}
]
},
"organization": {
"reference": "",
"display": ""
},
"period": {}
}
},
"additionalInfo": [
""
],
"maxParticipants": 0,
"sessionKey": ""
}
],
"actualPeriod": {},
"plannedStartDate": "",
"plannedEndDate": "",
"length": {
"duration": {
"system": "http://unitsofmeasure.org",
"version": "",
"code": "min",
"display": "45 Minutes",
"userSelected": "",
"value": 45,
"unit": "minutes"
}
},
"reason": [
{
"use": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"value": [
{
"concept": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"reference": {
"reference": "",
"display": ""
}
}
],
"reference": {
"reference": "",
"display": ""
}
}
],
"diagnosis": [
{
"condition": [
{
"concept": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"reference": {
"reference": "",
"display": ""
}
}
],
"use": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
]
}
],
"account": [
{
"reference": "",
"display": ""
}
],
"dietPreference": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"specialArrangement": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"specialCourtesy": [
{
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
],
"admission": {
"preAdmissionIdentifier": {
"use": "",
"type": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"system": "",
"value": "",
"period": {},
"assigner": {
"reference": "",
"display": ""
},
"coding": {
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
},
"origin": {
"reference": "",
"display": ""
},
"admitSource": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"readmitSource": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"destination": {
"reference": "",
"display": ""
},
"dischargeDisposition": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
}
},
"location": [
{
"location": {
"reference": "Location/1",
"display": "City Clinic - Room 5"
},
"status": "",
"form": {
"coding": [
{
"system": "",
"version": "",
"code": "",
"display": "",
"userSelected": false
}
],
"text": ""
},
"period": {}
}
],
"createdAt": "2025-05-27 14:57:40",
"updatedAt": "2025-05-27 14:57:40",
"extension": [
{
"url": "",
"extension": [
{
"url": "",
"valueDisplay": "",
"valueCode": ""
}
]
}
]
}
],
"message": "Encounter Sukses Ter-ambil "
}
+32 -10
View File
@@ -14,6 +14,8 @@
"@nuxt/vite-builder": "3.16.2",
"@vueform/nuxt": "^1.13.0",
"apexcharts": "4.5.0",
"axios": "^1.9.0",
"pinia": "^3.0.2",
"sass": "1.70.0",
"vue": "3.5.13",
"vue-tabler-icons": "2.21.0",
@@ -3841,7 +3843,6 @@
"version": "7.7.6",
"resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.6.tgz",
"integrity": "sha512-geu7ds7tem2Y7Wz+WgbnbZ6T5eadOvozHZ23Atk/8tksHMFOFylKi1xgGlQlVn0wlkEf4hu+vd5ctj1G4kFtwA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vue/devtools-shared": "^7.7.6",
@@ -3857,7 +3858,6 @@
"version": "7.7.6",
"resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.6.tgz",
"integrity": "sha512-yFEgJZ/WblEsojQQceuyK6FzpFDx4kqrz2ohInxNj5/DnhoX023upTv4OD6lNPLAA5LLkbwPVb10o/7b+Y4FVA==",
"dev": true,
"license": "MIT",
"dependencies": {
"rfdc": "^1.4.1"
@@ -4527,7 +4527,6 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/birpc/-/birpc-2.3.0.tgz",
"integrity": "sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g==",
"dev": true,
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/antfu"
@@ -5069,7 +5068,6 @@
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
"integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
"dev": true,
"license": "MIT",
"dependencies": {
"is-what": "^4.1.8"
@@ -6890,7 +6888,6 @@
"version": "5.5.3",
"resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz",
"integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==",
"dev": true,
"license": "MIT"
},
"node_modules/hosted-git-info": {
@@ -7342,7 +7339,6 @@
"version": "4.1.16",
"resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz",
"integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12.13"
@@ -7976,7 +7972,6 @@
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
"integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==",
"dev": true,
"license": "MIT"
},
"node_modules/mkdirp": {
@@ -9095,6 +9090,36 @@
"node": ">=0.10.0"
}
},
"node_modules/pinia": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.2.tgz",
"integrity": "sha512-sH2JK3wNY809JOeiiURUR0wehJ9/gd9qFN2Y828jCbxEzKEmEt0pzCXwqiSTfuRsK9vQsOflSdnbdBOGrhtn+g==",
"license": "MIT",
"dependencies": {
"@vue/devtools-api": "^7.7.2"
},
"funding": {
"url": "https://github.com/sponsors/posva"
},
"peerDependencies": {
"typescript": ">=4.4.4",
"vue": "^2.7.0 || ^3.5.11"
},
"peerDependenciesMeta": {
"typescript": {
"optional": true
}
}
},
"node_modules/pinia/node_modules/@vue/devtools-api": {
"version": "7.7.6",
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.6.tgz",
"integrity": "sha512-b2Xx0KvXZObePpXPYHvBRRJLDQn5nhKjXh7vUhMEtWxz1AYNFOVIsh5+HLP8xDGL7sy+Q7hXeUxPHB/KgbtsPw==",
"license": "MIT",
"dependencies": {
"@vue/devtools-kit": "^7.7.6"
}
},
"node_modules/pkg-types": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz",
@@ -10077,7 +10102,6 @@
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz",
"integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==",
"dev": true,
"license": "MIT"
},
"node_modules/rollup": {
@@ -10658,7 +10682,6 @@
"version": "14.0.1",
"resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz",
"integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==",
"dev": true,
"license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
@@ -10899,7 +10922,6 @@
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz",
"integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"copy-anything": "^3.0.2"
+3 -1
View File
@@ -17,11 +17,13 @@
"@vueform/nuxt": "^1.13.0",
"apexcharts": "4.5.0",
"sass": "1.70.0",
"pinia": "^3.0.2",
"vue": "3.5.13",
"vue-tabler-icons": "2.21.0",
"vue3-apexcharts": "1.5.2",
"vue3-perfect-scrollbar": "1.6.1",
"vuetify": "3.7.18"
"vuetify": "3.7.18",
"axios": "^1.9.0"
},
"devDependencies": {
"nuxt": "3.16.2"
-19
View File
@@ -1,19 +0,0 @@
<template>
<!-- <v-row>
<v-col cols="8"><MasterForm /></v-col>
</v-row> -->
<v-card elevation="9">
<v-card-title>Form Pendaftaran</v-card-title>
<v-card-text>
<MasterForm />
</v-card-text>
</v-card>
</template>
<script lang="ts" setup>
</script>
<style>
</style>
-95
View File
@@ -1,95 +0,0 @@
<script setup lang="ts">
import dummy from '@/data/dummy/dataDummy.json'
// console.log(dummy)
</script>
<template>
<!-- <v-row no-gutters>
<div class="d-flex justify-space-between">
<template v-if="resGetEncounter && resGetEncounter.length > 0">
<v-col v-for="(item, index) in resGetEncounter" :key="index">
<v-card
elevation="10"
:class="[
'mx-auto',
item.status === 'planned'
? ''
: item.status === 'in-progress'
? 'bg-info'
: item.status === 'completed'
? 'bg-success'
: item.status === 'cancelled'
? 'bg-error'
: '',
]"
>
<template v-slot:prepend>
<v-avatar
size="50"
:class="[
'mx-auto rounded-md',
item.status === 'planned'
? ''
: item.status === 'in-progress'
? 'bg-info'
: item.status === 'completed'
? 'bg-success'
: item.status === 'cancelled'
? 'bg-error'
: '',
]"
>
<Icon
icon="solar:user-circle-broken"
:class="[
item.status === 'planned'
? 'text-primary'
: item.status === 'in-progress'
? 'text-primary'
: item.status === 'completed'
? 'text-light'
: item.status === 'cancelled'
? 'text-light'
: '',
]"
height="36"
/>
</v-avatar>
</template>
<template v-slot:title>
<h3>{{ item.subject.display }}</h3>
</template>
<template v-slot:subtitle> </template>
<template v-slot:text>
<div class="pl-3">
<div class="align-center d-flex">
<Icon icon="mdi:doctor" class="text-primary" height="25" />
<h4>{{ item.participant[0].actor.display }}</h4>
</div>
</div>
<div class="pl-3 pt-2">
<div class="align-center d-flex">
<Icon
icon="mdi:hospital-marker"
class="text-primary"
height="25"
/>
<h4>Sps. {{ item.location[0].location.display }}</h4>
</div>
</div>
</template>
<template v-slot:actions>
<v-btn color="primary" class="ms-auto">Detail</v-btn>
</template>
</v-card>
</v-col>
</template>
<template v-else>
<div class="d-flex justify-content-center align-items-center">
<p>Tidak ada Pasien</p>
</div>
</template>
</div>
</v-row> -->
</template>
+12
View File
@@ -0,0 +1,12 @@
//https://stackoverflow.com/questions/68549027/currency-formatting-using-intl-numberformat-without-currency-symbol
export function format(data:number){
return new Intl.NumberFormat('id-ID',{
style:'currency',
currency:'IDR',
currencyDisplay: "code",
}).formatToParts(data)
.filter(x => x.type !== "currency")
.filter(x => x.type !== "literal" || x.value.trim().length !== 0)
.map(x => x.value)
.join("")
}