Panduan ini menjelaskan file mana yang perlu diedit kalau ingin memperbaiki layout, mempercantik tampilan, mengubah posisi panel, atau menyesuaikan perilaku UI Smart ADS.
Edit file ini kalau ingin mengubah struktur layar utama.
Yang diatur di sini:
- Top app bar
- Brand / judul aplikasi
- Tombol navigasi
Cockpit,Settings,Event Log,Matrix - Tombol simulasi seperti
Reset,Split Bus B,Derate KIT C2 - System strip:
Source,Demand,Reserve,Relief - Pemilihan view aktif
- Komposisi halaman:
- Cockpit
- Settings
- Event Log
- Tripping Matrix
Contoh kebutuhan:
- Memindahkan tombol Settings ke kanan
- Mengubah urutan menu
- Menambah halaman baru
- Mengubah layout cockpit dari
SLD + right railmenjadi bentuk lain
Edit file ini untuk hampir semua urusan visual.
Yang diatur di sini:
- Warna utama aplikasi
- Background
- Spacing
- Border radius
- Shadow
- Grid layout
- Ukuran top bar
- Button style
- Card style
- Panel style
- SLD canvas wrapper
- Engineer drawer
- Reasoning rail
- Settings page
- Event Log page
- Matrix page
- Responsive layout mobile
Bagian penting:
:rootuntuk token warna global.top-app-baruntuk header.command-buttonuntuk tombol toolbar.workspaceuntuk layout cockpit utama.sld-stagedan.sld-canvasuntuk area gambar SLD.side-railuntuk panel ADS Logic kanan.engineer-paneluntuk drawer bawah.config-workspace,.config-panel,.config-griduntuk Settings.audit-workspace,.audit-listuntuk Event Log.matrix-workspace,.matrix-item,.matrix-bodyuntuk Tripping Matrix
Contoh kebutuhan:
- Membuat tampilan lebih premium
- Mengubah ukuran panel kanan
- Mengubah tinggi Engineer Drawer
- Mengubah warna armed/tripped
- Memperbaiki padding halaman Settings
- Membuat Matrix lebih compact
Edit file ini kalau ingin mengubah cara SLD ditampilkan atau berinteraksi.
Yang diatur di sini:
- Load file SVG dari
public/assets/SLD_ADS_HMI.svg - Mapping object ADS ke elemen SVG
- Tooltip saat hover
- Click breaker / load
- Highlight armed
- Highlight tripped
- Trip chip
TRIPPED - Update text MW di SVG
- Warna state lewat class CSS runtime
Contoh kebutuhan:
- Mengubah behavior hover
- Mengubah object mana yang clickable
- Menambah chip status baru
- Mengubah logic highlight selected load
- Memperbaiki mismatch antara SLD object dan state ADS
Edit file ini kalau ingin mengubah gambar SLD asli.
Yang penting dijaga:
- Elemen clickable harus punya
data-role="open-close" - Elemen harus punya
data-object="OBJECT_ID" - ID object harus cocok dengan store/model, misalnya:
LOAD_A1LOAD_B2GEN_C1LINE_ABIBT_C
- Text MW sebaiknya punya ID seperti:
MW_LOAD_A1MW_GEN_C1MW_LINE_AB
Contoh kebutuhan:
- Memindahkan posisi load di diagram
- Mengganti label breaker
- Menambah feeder baru secara visual
- Membuat SLD lebih rapi
Edit file ini untuk mengubah isi panel kanan ADS Logic.
Yang diatur di sini:
- Mode tampilan:
- Operator Guide
- Manual Pre-arm
- Contingency Preview
- Trip History
- Scoreboard Need / Shed / Over / CB
- Selected Target
- Why Accepted
- Why Not Other
- Footer frequency/load/constraint
Contoh kebutuhan:
- Mengubah copywriting
- Menambah metrik baru
- Mengubah urutan blok reasoning
- Membuat selected target lebih jelas
- Menampilkan group/priority load di panel kanan
Edit file ini untuk panel collapsible bawah cockpit.
Yang diatur di sini:
- Last ADS Action
- Open / Tripped Loads
- Operating Hint
- Audit Trail singkat
- Protection Note
Contoh kebutuhan:
- Menambah ringkasan trip terakhir
- Menampilkan active contingency
- Mengubah drawer menjadi lebih tinggi
- Mengganti isi kartu engineer
Edit file ini untuk halaman pengaturan.
Yang diatur di sini:
- Source MW
- Minimum reserve MW
- Load list
- Load MW
- Load group 1-4
- Load priority
- Shed eligible
- Contingency required MW
- Affected bus per contingency
Contoh kebutuhan:
- Mengubah form layout
- Menambah setting baru
- Memecah Settings menjadi tab
- Menambah validasi input
- Menyimpan config ke localStorage/backend
Edit file ini untuk halaman audit trail.
Yang diatur di sini:
- Daftar event terbaru
- Jumlah event
- Jumlah open load
- Jumlah open contingency
- Current opened objects
Contoh kebutuhan:
- Menambah timestamp
- Menambah filter event
- Menambah export log
- Mengubah format event agar lebih mirip SOE
Edit file ini untuk halaman matrix collapsible.
Yang diatur di sini:
- Daftar contingency
- Required MW
- Selected shed MW
- Group yang digunakan
- Selected trip load
- Group capacity
- Alternatives
Contoh kebutuhan:
- Mengubah matrix menjadi tabel penuh
- Menampilkan semua load sebagai kolom
- Menambah status blocked/eligible
- Menambah warna per group
- Menampilkan priority di matrix
Edit file ini kalau ingin menambah atau mengubah bentuk data.
Yang ada di sini:
FeederLoadGroupContingencyRuleSheddingCandidateAdsDecision
Contoh kebutuhan:
- Menambah field
criticality - Menambah field
owner - Menambah field
bay - Menambah status breaker baru
Edit file ini untuk nilai default load.
Yang ada di sini:
- Daftar load
- Bus load
- MW default
- Group default
- Priority default
- Eligibility default
Contoh kebutuhan:
- Menambah load baru
- Mengubah MW default
- Mengubah group default
- Mengubah priority default
Edit file ini untuk nilai default contingency.
Yang ada di sini:
- Daftar contingency
- Required relief MW
- Affected buses
- Title
- Constraint name
- Explanation
Contoh kebutuhan:
- Menambah contingency baru
- Mengubah MW contingency
- Mengubah area terdampak
- Mengubah penjelasan engineering
Edit file ini kalau ingin mengubah cara ADS memilih load.
Yang diatur di sini:
- Kandidat shedding
- Urutan group 1 sampai 4
- Scoring
- Overshed penalty
- Priority penalty
- Remote bus penalty
- Alasan accepted/rejected
Contoh kebutuhan:
- Mengubah bobot priority
- Membuat group wajib berurutan
- Membatasi jumlah CB
- Menambah reserve-aware shedding
- Mengubah cara alternatif diranking
Edit file ini untuk state runtime dan action.
Yang diatur di sini:
- Feeders runtime
- Object states
- Contingency rules runtime
- Source MW
- Minimum reserve MW
- Decision aktif
- Hover decision
- Event log
- Reset
- Update load
- Update contingency
- Toggle object
- Set hover object
Contoh kebutuhan:
- Menambah persistence localStorage
- Menambah undo/redo
- Menambah structured event log
- Menambah import/export config
- Mengubah behavior saat contingency ditutup
Untuk perubahan visual murni:
- Edit
src/styles.css - Kalau struktur HTML perlu berubah, edit komponen terkait
- Jalankan build
Untuk perubahan layout halaman:
- Edit
AppShell.tsxjika menyangkut navigasi atau komposisi halaman - Edit komponen view terkait
- Edit
styles.css
Untuk perubahan SLD:
- Edit
public/assets/SLD_ADS_HMI.svguntuk posisi/gambar - Edit
SldCanvas.tsxuntuk mapping/interaksi - Edit
styles.cssuntuk warna/highlight
Untuk perubahan logic ADS:
- Edit
model.tsjika perlu field baru - Edit
initialSystem.tsatauengine.tsuntuk data default - Edit
solver.tsuntuk algoritma - Edit
store.tsuntuk runtime action - Edit UI yang menampilkan hasilnya
- Jangan ubah ID load/contingency sembarangan tanpa memperbarui SVG dan mapping.
- Kalau menambah load baru, perlu update minimal:
initialSystem.tsSLD_ADS_HMI.svgSldCanvas.tsxmapping jika ada elemen tambahan seperti arrow
- Kalau menambah contingency baru, perlu update minimal:
engine.tsSLD_ADS_HMI.svgequipmentIdsdistore.tskalau object perlu punya state breaker
- Untuk polish visual, usahakan tetap memakai token warna di
:root. - Untuk menjaga feel premium, hindari menambah terlalu banyak warna baru atau card bertumpuk.