Deskripsi
chrome.types API berisi deklarasi jenis untuk Chrome.
Setelan Chrome
Jenis ChromeSetting menyediakan serangkaian fungsi umum (get(), set(), dan clear())
serta penerbit peristiwa (onChange) untuk setelan browser Chrome. Contoh setelan proxy menunjukkan cara penggunaan fungsi ini.
Cakupan dan siklus proses
Chrome membedakan tiga cakupan setelan browser yang berbeda:
- regular
- Setelan yang ditetapkan dalam cakupan regularberlaku untuk jendela browser biasa dan diwarisi oleh jendela samaran jika tidak diganti. Setelan ini disimpan ke disk dan tetap ada hingga dihapus oleh ekstensi yang mengelola, atau ekstensi yang mengelola dinonaktifkan atau di-uninstal.
- incognito_persistent
- Setelan yang ditetapkan dalam cakupan incognito_persistenthanya berlaku untuk jendela samaran. Untuk setelan ini, setelan tersebut menggantikan setelanregular. Setelan ini disimpan ke disk dan tetap berlaku hingga dihapus oleh ekstensi yang mengelola, atau ekstensi yang mengelola dinonaktifkan atau di-uninstal.
- incognito_session_only
- Setelan yang ditetapkan dalam cakupan incognito_session_onlyhanya berlaku untuk jendela samaran. Untuk ini, setelan tersebut menggantikan setelanregulardanincognito_persistent. Setelan ini tidak disimpan ke disk dan dihapus saat jendela samaran terakhir ditutup. Setelan ini hanya dapat ditetapkan jika minimal satu jendela samaran terbuka.
Prioritas
Chrome mengelola setelan di berbagai lapisan. Daftar berikut menjelaskan lapisan yang dapat memengaruhi setelan efektif, dalam urutan prioritas yang meningkat.
- Setelan sistem yang disediakan oleh sistem operasi
- Parameter command line
- Setelan yang disediakan oleh ekstensi
- Kebijakan
Seperti yang ditunjukkan oleh daftar tersebut, kebijakan dapat menggantikan perubahan apa pun yang Anda tentukan dengan ekstensi. Anda
dapat menggunakan fungsi get() untuk menentukan apakah ekstensi Anda dapat menyediakan setelan
atau apakah setelan ini akan diganti.
Seperti yang dibahas sebelumnya, Chrome mengizinkan penggunaan setelan yang berbeda untuk jendela reguler dan jendela samaran. Contoh berikut menggambarkan perilaku tersebut. Asumsikan bahwa tidak ada kebijakan yang menggantikan setelan dan ekstensi dapat menetapkan setelan untuk jendela reguler (R) dan setelan untuk jendela penyamaran (I).
- Jika hanya (R) yang disetel, setelan ini berlaku untuk jendela reguler dan samaran.
- Jika hanya (I) yang disetel, setelan ini hanya berlaku untuk jendela samaran. Jendela biasa menggunakan setelan yang ditentukan oleh lapisan bawah (opsi command line dan setelan sistem).
- Jika (R) dan (I) disetel, setelan masing-masing akan digunakan untuk jendela reguler dan samaran.
Jika dua atau lebih ekstensi ingin menyetel setelan yang sama ke nilai yang berbeda, ekstensi yang diinstal paling baru akan lebih diprioritaskan daripada ekstensi lainnya. Jika ekstensi yang baru saja diinstal hanya menetapkan (I), setelan jendela reguler dapat ditentukan oleh ekstensi yang diinstal sebelumnya.
Nilai efektif dari setelan adalah nilai yang dihasilkan dari pertimbangan aturan prioritas. Direktori ini digunakan oleh Chrome.
Jenis
ChromeSetting
Antarmuka yang memungkinkan akses ke setelan browser Chrome. Lihat accessibilityFeatures sebagai contoh.
Properti
- 
    onChangeEvent<functionvoidvoid> Diaktifkan setelah setelan berubah. Fungsi onChange.addListenerakan terlihat seperti:(callback: function) => {...} - 
    callbackfungsi Parameter callbackterlihat seperti:(details: object) => void - 
    detailobjek - 
    incognitoSpecificboolean opsional Apakah nilai yang telah berubah khusus untuk sesi samaran. Properti ini hanya akan ada jika pengguna telah mengaktifkan ekstensi dalam mode samaran. 
- 
    levelOfControlTingkat kontrol setelan. 
- 
    nilaiT Nilai setelan setelah perubahan. 
 
- 
    
 
- 
    
 
- 
    
- 
    hapusvoid Menghapus setelan, memulihkan nilai default. Fungsi clearakan terlihat seperti:(details: object) => {...} - 
    detailobjek Setelan yang akan dihapus. - 
    cakupanChromeSettingScope opsional Tempat untuk menghapus setelan (default: reguler). 
 
- 
    
 - 
            returnPromise<void> Chrome 96+
 
- 
    
- 
    getvoid Mendapatkan nilai setelan. Fungsi getakan terlihat seperti:(details: object) => {...} - 
    detailobjek Setelan yang perlu dipertimbangkan. - 
    samaranboolean opsional Apakah akan menampilkan nilai yang berlaku untuk sesi inkognito (default salah). 
 
- 
    
 - 
            returnPromise<object> Chrome 96+
 
- 
    
- 
    tetapkanvoid Menetapkan nilai setelan. Fungsi setakan terlihat seperti:(details: object) => {...} - 
    detailobjek Setelan yang akan diubah. - 
    cakupanChromeSettingScope opsional Tempat untuk menyetel setelan (default: reguler). 
- 
    nilaiT Nilai setelan. Perhatikan bahwa setiap setelan memiliki jenis nilai tertentu, yang dijelaskan bersama dengan setelan. Ekstensi tidak boleh menetapkan nilai dengan jenis yang berbeda. 
 
- 
    
 - 
            returnPromise<void> Chrome 96+
 
- 
    
ChromeSettingScope
Cakupan ChromeSetting. Salah satu
- regular: setelan untuk profil reguler (yang diwarisi oleh profil samaran jika tidak diganti di tempat lain),
- regular\_only: setelan hanya untuk profil reguler (tidak diwarisi oleh profil samaran),
- incognito\_persistent: setelan untuk profil samaran yang tetap ada setelah browser dimulai ulang (menggantikan preferensi reguler),
- incognito\_session\_only: setelan untuk profil samaran yang hanya dapat disetel selama sesi samaran dan dihapus saat sesi samaran berakhir (menggantikan preferensi reguler dan incognito_persistent).
Enum
"regular" 
 
"regular_only" 
 
"incognito_persistent" 
 
"incognito_session_only" 
 
LevelOfControl
Salah satu
- not\_controllable: tidak dapat dikontrol oleh ekstensi apa pun
- controlled\_by\_other\_extensions: dikontrol oleh ekstensi dengan prioritas yang lebih tinggi
- controllable\_by\_this\_extension: dapat dikontrol oleh ekstensi ini
- controlled\_by\_this\_extension: dikontrol oleh ekstensi ini
Enum
"not_controllable" 
 
"controlled_by_other_extensions" 
 
"controllable_by_this_extension" 
 
"controlled_by_this_extension"