हमारी वार्षिक योजनाओं से 20% तक बचाएं →

मिनी प्रोग्राम बनाना

मिनी प्रोग्राम आपको Tommy की मुख्य कार्यक्षमता को लगभग किसी भी तरीके से विस्तारित करने में सक्षम बनाते हैं। यह लचीलापन Tommy प्लेटफ़ॉर्म की प्रमुख विशेषताओं में से एक है।

तीन addon प्रकार हैं जिनका उपयोग विभिन्न उद्देश्यों के लिए किया जा सकता है:

  1. विज़ुअल मिनी प्रोग्राम मिनी प्रोग्राम जो Tommy App इंटरफ़ेस के साथ एकीकृत होते हैं और उसका विस्तार करते हैं।
  2. नॉन-विज़ुअल Addon Addons जो Tommy Action System के साथ एकीकृत होते हैं
  3. विज़ुअल और नॉन-विज़ुअल दोनों का संयोजन।

फ़ाइल संरचना

addon फ़ोल्डर संरचना बहुत सरल है:

सबसे सरल संभव मिनी प्रोग्राम जिसमें कोई view या task नहीं है, केवल एक ही manifest.yml फ़ाइल से बना हो सकता है।

आइए manifest.yml फ़ाइल की व्याख्या के साथ आगे बढ़ें।

Manifest फ़ाइल

manifest.yml manifest फ़ाइल मिनी प्रोग्राम की सबसे महत्वपूर्ण फ़ाइल है। प्रत्येक मिनी प्रोग्राम में एक ही manifest फ़ाइल होनी चाहिए, जिसमें सभी metadata जानकारी, कॉन्फ़िगरेशन विकल्प, और आपके मिनी प्रोग्राम द्वारा प्रस्तुत किए जाने वाले views और actions की एक सूची होती है।

नीचे दिया गया उदाहरण manifest बहुत ही बुनियादी Poke मिनी प्रोग्राम से लिया गया है। इस मिनी प्रोग्राम में केवल एक view, एक task, और एक action है, और manifest फ़ाइल इस तरह दिखती है:

manifest विकल्प इस प्रकार हैं:
  • title: (String) मिनी प्रोग्राम का मानव-पठनीय नाम।
  • package: (String) अंडरस्कोर केस में मिनी प्रोग्राम का मशीन-पठनीय नाम।
  • version: (String) रिलीज़ संस्करण संख्या (प्रत्येक रिलीज़ पर बढ़ाई जानी चाहिए)।
  • author: (String) addons लेखक का नाम (व्यक्ति या संगठन हो सकता है)।
  • private: (Boolean) गोपनीयता सेटिंग जो यह निर्धारित करती है कि यह मिनी प्रोग्राम अन्य Tommy उपयोगकर्ताओं द्वारा उपयोग करने योग्य है या नहीं।
  • views: (Object) इंटरफ़ेस पर प्रस्तुत किए जाने वाले views वाला object।
  • actions: (Object) मिनी प्रोग्राम द्वारा लागू किए गए पूर्वनिर्धारित actions वाला object।
  • triggers: (Object) मिनी प्रोग्राम द्वारा लागू किए गए action triggers वाला object।
  • conditions: (Object) मिनी प्रोग्राम द्वारा लागू किए गए action conditions वाला object।
  • activities: (Object) मिनी प्रोग्राम द्वारा लागू किए गए action activities वाला object।
  • roles: (Array) कोई भी role हो सकता है जो किसी टीम सदस्य को गतिशील रूप से सौंपा गया हो, या अंतर्निहित roles में से एक: “Team Member”, “Team Manager”, “Team Admin”।

Views

प्रत्येक मिनी प्रोग्राम में इंटरफ़ेस पर प्रस्तुत किए जाने वाले कई views हो सकते हैं। Views को manifest.yml फ़ाइल में views विकल्प के भीतर परिभाषित किया जाता है।

manifest विकल्प इस प्रकार हैं:
  • id: (String) view पेज का id (addon स्कोप के भीतर अद्वितीय होना चाहिए)।
  • name: (String) view पेज का शीर्षक।
  • file: (String) view HTML फ़ाइल का सापेक्ष view पथ, जैसे client/main.html।
  • type: (String) view प्रकार, वर्तमान में समर्थित हैं page और form
  • index: (Boolean) मुख्य view के लिए true पर सेट करें जो मिनी प्रोग्राम शुरू होने पर लोड होगा।
  • framed: (Boolean) view को iframe के भीतर लोड किया जाना चाहिए या नहीं।
  • roles: (Array) कोई भी role हो सकता है जो किसी टीम सदस्य को गतिशील रूप से सौंपा गया हो, या अंतर्निहित roles में से एक: “Team Member”, “Team Manager”, “Team Admin”।
  • lockable: (Boolean) index view को लॉक किया गया लेआउट दिखाने की अनुमति देता है।
यदि आप चाहते हैं कि आपका view किसी iframe के भीतर framed हो, तो आप framed: true विकल्प निर्दिष्ट करके ऐसा कर सकते हैं। यह आपके view डेटा की सुरक्षा के लिए अच्छा है, लेकिन ध्यान रखें कि चूँकि आपका view एक sandboxed वातावरण में चलेगा, इसलिए Tommy वातावरण, API इंस्टेंस, या CSS स्टाइल में से कोई भी उपयोग के लिए उपलब्ध नहीं होगा।