मेनिफ़ेस्ट - Input_components

यह एक वैकल्पिक मेनिफ़ेस्ट कुंजी है, जो ChromeOS के साथ इस्तेमाल करने के लिए, input.ime एपीआई (इनपुट मेथड एडिटर) का इस्तेमाल करने की सुविधा देती है. इससे आपके एक्सटेंशन को कीस्ट्रोक मैनेज करने, कॉम्पोज़िशन सेट करने, और सहायता वाली विंडो खोलने की अनुमति मिलती है. डेवलपर को एक्सटेंशन के "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"]
  }]
  // ...
}