यह मेनिफ़ेस्ट की एक ऐसी कुंजी है जिसे इस्तेमाल करना ज़रूरी नहीं है. इससे ChromeOS के साथ इस्तेमाल करने के लिए, input.ime API (इनपुट मेथड एडिटर) का इस्तेमाल किया जा सकता है. इससे आपका एक्सटेंशन, कीस्ट्रोक को मैनेज कर सकता है, कंपोज़िशन सेट कर सकता है, और सहायता देने वाली विंडो खोल सकता है. डेवलपर को एक्सटेंशन के "permissions" ऐरे में "input" अनुमति के बारे में भी बताना होगा.
यह कुंजी, ऑब्जेक्ट के कलेक्शन को स्वीकार करती है: name, id, language, layouts, input_view, और options_page (नीचे दी गई टेबल देखें).
| प्रॉपर्टी | टाइप | ब्यौरा |
|---|---|---|
name |
स्ट्रिंग | इनपुट कॉम्पोनेंट ऑब्जेक्ट का नाम डालना ज़रूरी है. |
id |
स्ट्रिंग | वैकल्पिक कॉम्पोनेंट ऑब्जेक्ट आईडी. |
language |
स्ट्रिंग (या स्ट्रिंग का कलेक्शन) | भाषा या उन भाषाओं की सूची जिनके लिए यह सुविधा उपलब्ध है. उदाहरण: "en", ["en", "pt"] |
layouts |
स्ट्रिंग (या स्ट्रिंग का कलेक्शन) | इनपुट के तरीकों की सूची. हालांकि, ऐसा करना ज़रूरी नहीं है. ध्यान दें कि ChromeOS, इनपुट के हर तरीके के लिए सिर्फ़ एक लेआउट के साथ काम करता है. अगर एक से ज़्यादा लेआउट तय किए गए हैं, तो चुनने का क्रम तय नहीं होता. इसलिए, एक्सटेंशन को यह सुझाव दिया जाता है कि वे हर इनपुट मेथड के लिए सिर्फ़ एक लेआउट तय करें. कीबोर्ड लेआउट के लिए, xkb: प्रीफ़िक्स से पता चलता है कि यह कीबोर्ड लेआउट एक्सटेंशन है. |
| उदाहरण: ["us::eng"] | ||
input_view |
स्ट्रिंग | यह एक वैकल्पिक स्ट्रिंग है, जो एक्सटेंशन संसाधन के बारे में बताती है. |
options_page |
स्ट्रिंग | यह एक वैकल्पिक स्ट्रिंग है, जो एक्सटेंशन संसाधन के बारे में बताती है. अगर यह जानकारी नहीं दी जाती है, तो डिफ़ॉल्ट एक्सटेंशन के विकल्प वाले पेज का इस्तेमाल किया जाएगा. |
{
// ...
"input_components": [{
"name": "ToUpperIME",
"id": "ToUpperIME",
"language": "en",
"layouts": ["us::eng"]
}]
// ...
}