browser.extensionTypes

ब्यौरा

chrome.extensionTypes एपीआई में, Chrome एक्सटेंशन के लिए टाइप डिक्लेरेशन शामिल हैं.

टाइप

ColorArray

Chrome 139+ Chrome 148 से browser.*

टाइप

[number, number, number, number]

CSSOrigin

Chrome 66+ browser.* Chrome 148 से

इंजेक्ट की गई सीएसएस का ऑरिजिन.

Enum

"author"

"user"

DeleteInjectionDetails

Chrome 87+ browser.* Chrome 148 से

हटाए जाने वाले सीएसएस की जानकारी. कोड या फ़ाइल प्रॉपर्टी में से किसी एक को सेट करना ज़रूरी है. हालांकि, दोनों को एक साथ सेट नहीं किया जा सकता.

प्रॉपर्टी

  • allFrames

    बूलियन ज़रूरी नहीं

    अगर allFrames की वैल्यू true है, तो इसका मतलब है कि सीएसएस को मौजूदा पेज के सभी फ़्रेम से हटा दिया जाना चाहिए. डिफ़ॉल्ट रूप से, यह false होता है और इसे सिर्फ़ टॉप फ़्रेम से हटाया जाता है. अगर true और frameId सेट है, तो चुने गए फ़्रेम और उसके सभी चाइल्ड फ़्रेम से कोड हटा दिया जाता है.

  • कोड

    string ज़रूरी नहीं

    हटाया जाने वाला सीएसएस कोड.

  • cssOrigin

    CSSOrigin ज़रूरी नहीं है

    सीएसएस का ऑरिजिन, जिसे हटाना है. डिफ़ॉल्ट रूप से, यह "author" पर सेट होता है.

  • फ़ाइल

    string ज़रूरी नहीं

    हटाने के लिए सीएसएस फ़ाइल.

  • frameId

    number ज़रूरी नहीं

    वह फ़्रेम जिससे सीएसएस को हटाना है. डिफ़ॉल्ट रूप से, इसकी वैल्यू 0 (टॉप-लेवल फ़्रेम) होती है.

  • matchAboutBlank

    बूलियन ज़रूरी नहीं

    अगर matchAboutBlank की वैल्यू true है, तो about:blank और about:srcdoc फ़्रेम से भी कोड हटा दिया जाता है. ऐसा तब होता है, जब आपके एक्सटेंशन के पास पैरंट दस्तावेज़ का ऐक्सेस हो. डिफ़ॉल्ट रूप से, यह false पर सेट होता है.

DocumentLifecycle

Chrome 106 और इसके बाद के वर्शन Chrome 148 से browser.*

फ़्रेम की दस्तावेज़ लाइफ़साइकल.

Enum

"prerender"

"active"

"cached"

"pending_deletion"

ExecutionWorld

Chrome 111+ browser.* Chrome 148 से

JavaScript वर्ल्ड, जिसमें स्क्रिप्ट को चलाया जाता है. यह इस एक्सटेंशन के लिए यूनीक आइसोलेटेड वर्ल्ड हो सकता है. इसके अलावा, यह डीओएम का मुख्य वर्ल्ड हो सकता है, जिसे पेज के JavaScript के साथ शेयर किया जाता है. इसके अलावा, यह उपयोगकर्ता स्क्रिप्ट का वर्ल्ड हो सकता है, जो सिर्फ़ User Scripts API के साथ रजिस्टर की गई स्क्रिप्ट के लिए उपलब्ध होता है.

Enum

"ISOLATED"

"MAIN"

"USER_SCRIPT"

FrameType

Chrome 106 और इसके बाद के वर्शन Chrome 148 से browser.*

फ़्रेम का टाइप.

Enum

"outermost_frame"

"fenced_frame"

"sub_frame"

ImageDataType

Chrome 139+ Chrome 148 से browser.*

किसी इमेज का पिक्सल डेटा. यह ImageData ऑब्जेक्ट होना चाहिए. उदाहरण के लिए, canvas एलिमेंट से.

टाइप

ImageData

ImageDetails

इमेज के फ़ॉर्मैट, क्वालिटी, और एरिया के बारे में जानकारी.

प्रॉपर्टी

  • फ़ॉर्मैट

    ImageFormat ज़रूरी नहीं

    नतीजे के तौर पर मिलने वाली इमेज का फ़ॉर्मैट. डिफ़ॉल्ट रूप से, यह कार्रवाई "jpeg" पर सेट रहती है.

  • गुणवत्ता

    number ज़रूरी नहीं

    फ़ॉर्मैट "jpeg" होने पर, इससे इमेज की क्वालिटी को कंट्रोल किया जाता है. PNG इमेज के लिए, इस वैल्यू को अनदेखा कर दिया जाता है. क्वालिटी कम होने पर, इमेज में ज़्यादा विज़ुअल आर्टफ़ैक्ट होंगे. साथ ही, इसे सेव करने के लिए कम बाइट की ज़रूरत होगी.

ImageFormat

Chrome 44+ browser.* Chrome 148 के बाद से

इमेज का फ़ॉर्मैट.

Enum

"jpeg"

"png"

InjectDetails

इंजेक्ट की जाने वाली स्क्रिप्ट या सीएसएस की जानकारी. कोड या फ़ाइल प्रॉपर्टी में से किसी एक को सेट करना ज़रूरी है. हालांकि, दोनों को एक साथ सेट नहीं किया जा सकता.

प्रॉपर्टी

  • allFrames

    बूलियन ज़रूरी नहीं

    अगर allFrames true है, तो इसका मतलब है कि JavaScript या सीएसएस को मौजूदा पेज के सभी फ़्रेम में इंजेक्ट किया जाना चाहिए. डिफ़ॉल्ट रूप से, यह false होता है और इसे सिर्फ़ टॉप फ़्रेम में इंजेक्ट किया जाता है. अगर true और frameId सेट है, तो कोड को चुने गए फ़्रेम और उसके सभी चाइल्ड फ़्रेम में डाला जाता है.

  • कोड

    string ज़रूरी नहीं

    इंजेक्ट करने के लिए JavaScript या सीएसएस कोड.

    चेतावनी: code पैरामीटर का इस्तेमाल सावधानी से करें. इसका गलत इस्तेमाल करने से, आपके एक्सटेंशन पर क्रॉस साइट स्क्रिप्टिंग हमले हो सकते हैं

  • cssOrigin

    CSSOrigin ज़रूरी नहीं है

    Chrome 66+ browser.* Chrome 148 से

    इंजेक्ट की जाने वाली सीएसएस का ऑरिजिन. यह सिर्फ़ सीएसएस के लिए तय किया जा सकता है, JavaScript के लिए नहीं. डिफ़ॉल्ट रूप से, यह "author" पर सेट होता है.

  • फ़ाइल

    string ज़रूरी नहीं

    इंजेक्ट करने के लिए JavaScript या सीएसएस फ़ाइल.

  • frameId

    number ज़रूरी नहीं

    Chrome 50+ browser.*, Chrome 148 से

    वह फ़्रेम जहां स्क्रिप्ट या सीएसएस को इंजेक्ट किया जाना चाहिए. डिफ़ॉल्ट रूप से, इसकी वैल्यू 0 (टॉप-लेवल फ़्रेम) होती है.

  • matchAboutBlank

    बूलियन ज़रूरी नहीं

    अगर matchAboutBlank की वैल्यू true है, तो कोड को about:blank और about:srcdoc फ़्रेम में भी इंजेक्ट किया जाता है. हालांकि, ऐसा तब होता है, जब आपके एक्सटेंशन के पास इसके पैरंट दस्तावेज़ का ऐक्सेस हो. टॉप-लेवल about:-frames में कोड नहीं डाला जा सकता. डिफ़ॉल्ट रूप से, यह false पर सेट होता है.

  • runAt

    RunAt ज़रूरी नहीं है

    JavaScript या सीएसएस को टैब में जल्द से जल्द इंजेक्ट किया जाएगा. डिफ़ॉल्ट रूप से, "document_idle" पर सेट होता है.

RunAt

Chrome 44+ browser.* Chrome 148 के बाद से

JavaScript या सीएसएस को टैब में जल्द से जल्द इंजेक्ट किया जाएगा.

Enum

"document_start"
स्क्रिप्ट को सीएसएस की किसी भी फ़ाइल के बाद इंजेक्ट किया जाता है. हालांकि, इसे किसी अन्य डीओएम के बनने या किसी अन्य स्क्रिप्ट के चलने से पहले इंजेक्ट किया जाता है.

"document_end"
डीओएम के पूरा होने के तुरंत बाद स्क्रिप्ट इंजेक्ट की जाती है. हालांकि, ऐसा इमेज और फ़्रेम जैसे सब-रिसोर्स लोड होने से पहले किया जाता है.

"document_idle"
ब्राउज़र, "document_end" और window.onload इवेंट के ट्रिगर होने के ठीक बाद, स्क्रिप्ट को इंजेक्ट करने का समय चुनता है. इंजेक्शन का सटीक समय इस बात पर निर्भर करता है कि दस्तावेज़ कितना जटिल है और उसे लोड होने में कितना समय लग रहा है. साथ ही, इसे पेज लोड होने की स्पीड के लिए ऑप्टिमाइज़ किया गया है. "document_idle" पर चलने वाली कॉन्टेंट स्क्रिप्ट को window.onload इवेंट को सुनने की ज़रूरत नहीं होती. इनके डीओएम के पूरा होने के बाद चलने की गारंटी होती है. अगर किसी स्क्रिप्ट को window.onload के बाद चलाना ज़रूरी है, तो एक्सटेंशन यह जांच कर सकता है कि onload पहले ही ट्रिगर हो चुका है या नहीं. इसके लिए, document.readyState प्रॉपर्टी का इस्तेमाल किया जा सकता है.