Class SelectionInput

নির্বাচন ইনপুট

একটি ইনপুট ফিল্ড যা পূর্বনির্ধারিত কিছু বিকল্পের মধ্য থেকে বেছে নেওয়ার সুযোগ দেয়।

শুধুমাত্র SelectionInputType.DROP_DOWN এবং SelectionInputType.MULTI_SELECT মেনুগুলির জন্য ফর্ম সাবমিশন ভ্যালিডেশন সমর্থন করে। যখন Action.setAllWidgetsAreRequired(allWidgetsAreRequired) true তে সেট করা হয় অথবা এই উইজেটটি Action.addRequiredWidget(requiredWidget) -এর মাধ্যমে নির্দিষ্ট করা হয়, তখন কোনো ভ্যালু সিলেক্ট না করা পর্যন্ত সাবমিশন অ্যাকশনটি ব্লক করা থাকে।

গুগল ওয়ার্কস্পেস অ্যাড-অন এবং গুগল চ্যাট অ্যাপের জন্য উপলব্ধ।

const checkboxGroup =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.CHECK_BOX)
        .setTitle('A group of checkboxes. Multiple selections are allowed.')
        .setFieldName('checkbox_field')
        .addItem('checkbox one title', 'checkbox_one_value', false)
        .addItem('checkbox two title', 'checkbox_two_value', true)
        .addItem('checkbox three title', 'checkbox_three_value', true)
        .setOnChangeAction(
            CardService.newAction().setFunctionName('handleCheckboxChange'),
        );

const radioGroup =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.RADIO_BUTTON)
        .setTitle(
            'A group of radio buttons. Only a single selection is allowed.')
        .setFieldName('checkbox_field')
        .addItem('radio button one title', 'radio_one_value', true)
        .addItem('radio button two title', 'radio_two_value', false)
        .addItem('radio button three title', 'radio_three_value', false);

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
            )
        .setMultiSelectMaxSelectedItems(3)
        .setMultiSelectMinQueryLength(1);

পদ্ধতি

পদ্ধতি রিটার্ন টাইপ সংক্ষিপ্ত বিবরণ
add Data Source Config(dataSourceConfig) Selection Input সিলেকশন কন্ট্রোলের জন্য ডেটা সোর্স কনফিগারেশন নির্ধারণ করে।
add Event Action(eventAction) Widget উইজেটটিতে সম্পাদনযোগ্য ইভেন্ট অ্যাকশনটি যোগ করে।
add Item(text, value, selected) Selection Input একটি নতুন আইটেম যোগ করে যা নির্বাচন করা যাবে।
add Multi Select Item(text, value, selected, startIconUri, bottomText) Selection Input একাধিক নির্বাচনের মেনুর জন্য একটি নতুন নির্বাচনযোগ্য আইটেম যোগ করে।
set External Data Source(action) Selection Input বাহ্যিক ডেটা উৎস নির্ধারণ করে, যেমন একটি রিলেশনাল ডেটাবেস।
set Field Name(fieldName) Selection Input UI ইন্টারঅ্যাকশনের ফলে যে ইভেন্ট অবজেক্টটি তৈরি হয়, তাতে এই সিলেকশন ইনপুটটিকে শনাক্তকারী কী (key) সেট করে।
set Id(id) Widget যে উইজেটটি পরিবর্তন করা হবে, সেটিকে শনাক্ত করার জন্য নির্ধারিত অনন্য আইডি সেট করে।
set Multi Select Max Selected Items(maxSelectedItems) Selection Input একজন ব্যবহারকারী সর্বোচ্চ কতগুলো আইটেম নির্বাচন করতে পারবে তা নির্ধারণ করে।
set Multi Select Min Query Length(queryLength) Selection Input অ্যাপটি অটোকমপ্লিট থেকে পরামর্শমূলক আইটেমগুলো খুঁজে বের করে কার্ডে দেখানোর আগে ব্যবহারকারীকে কতগুলো টেক্সট ক্যারেক্টার ইনপুট করতে হবে, তা এটি নির্ধারণ করে।
set On Change Action(action) Selection Input নির্বাচন ইনপুট পরিবর্তিত হলে যে Action সম্পাদিত হবে, তা নির্ধারণ করে।
set Platform Data Source(platformDataSource) Selection Input গুগল ওয়ার্কস্পেস থেকে একটি ডেটা উৎস নির্ধারণ করে।
set Title(title) Selection Input ইনপুট ফিল্ডের আগে শিরোনামটি দেখানোর জন্য সেট করে।
set Type(type) Selection Input এই ইনপুটের ধরণ নির্ধারণ করে।
set Visibility(visibility) Widget উইজেটটির দৃশ্যমানতা নির্ধারণ করে।

বিস্তারিত ডকুমেন্টেশন

addDataSourceConfig(dataSourceConfig)

সিলেকশন কন্ট্রোলের জন্য ডেটা সোর্স কনফিগারেশন নির্ধারণ করে। এই ফিল্ডটি ডেটা সোর্সের উপর আরও সূক্ষ্ম নিয়ন্ত্রণ প্রদান করে। এটি একটি ঐচ্ছিক ফিল্ড।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('contacts')
        .setTitle('Selected contacts')
        .setDataSourceConfig(
            CardService.newDataSourceConfig().setPlatformDataSource(
                CardService.newPlatformDataSource().setCommonDataSource(
                    CardService.CommonDataSource.USER,
                )
            )
        );

প্যারামিটার

নাম প্রকার বর্ণনা
data Source Config Data Source Config নির্বাচন ইনপুটে যে ডেটা সোর্স কনফিগারেশন প্রয়োগ করা হবে।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


addEventAction(eventAction)

উইজেটটিতে সম্পাদনযোগ্য ইভেন্ট অ্যাকশনটি যোগ করে।

প্যারামিটার

নাম প্রকার বর্ণনা
event Action Event Action Event Action যোগ করা হবে।

ফেরত

Widget — শৃঙ্খলিত করার জন্য ব্যবহৃত অবজেক্ট।


addItem(text, value, selected)

একটি নতুন আইটেম যোগ করে যা নির্বাচন করা যাবে।

প্যারামিটার

নাম প্রকার বর্ণনা
text Object এই আইটেমটির জন্য প্রদর্শিতব্য টেক্সট। নন-স্ট্রিং প্রিমিটিভ আর্গুমেন্টগুলো স্বয়ংক্রিয়ভাবে স্ট্রিং-এ রূপান্তরিত হয়।
value Object ফর্ম ইনপুট মান যা কলব্যাকের মাধ্যমে পাঠানো হয়। নন-স্ট্রিং প্রিমিটিভ আর্গুমেন্টগুলো স্বয়ংক্রিয়ভাবে স্ট্রিং-এ রূপান্তরিত হয়।
selected Boolean আইটেমটি ডিফল্টরূপে নির্বাচিত থাকবে কিনা। যদি নির্বাচন ইনপুটটি শুধুমাত্র একটি মান গ্রহণ করে (যেমন রেডিও বাটন বা ড্রপডাউন মেনুর ক্ষেত্রে), তবে এই ফিল্ডটি কেবল একটি আইটেমের জন্য সেট করুন।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


addMultiSelectItem(text, value, selected, startIconUri, bottomText)

একাধিক নির্বাচনের মেনুর জন্য একটি নতুন নির্বাচনযোগ্য আইটেম যোগ করে।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

প্যারামিটার

নাম প্রকার বর্ণনা
text Object এই আইটেমটির জন্য প্রদর্শিতব্য টেক্সট। নন-স্ট্রিং প্রিমিটিভ আর্গুমেন্টগুলো স্বয়ংক্রিয়ভাবে স্ট্রিং-এ রূপান্তরিত হয়।
value Object ফর্ম ইনপুট মান যা কলব্যাকের মাধ্যমে পাঠানো হয়। নন-স্ট্রিং প্রিমিটিভ আর্গুমেন্টগুলো স্বয়ংক্রিয়ভাবে স্ট্রিং-এ রূপান্তরিত হয়।
selected Boolean আইটেমটি ডিফল্টরূপে নির্বাচিত থাকবে কিনা। যদি নির্বাচন ইনপুটটি শুধুমাত্র একটি মান গ্রহণ করে (যেমন রেডিও বাটন বা ড্রপডাউন মেনুর ক্ষেত্রে), তবে এই ফিল্ডটি কেবল একটি আইটেমের জন্য সেট করুন।
start Icon Uri Object মাল্টিসিলেক্ট মেনুর ক্ষেত্রে, আইটেমের টেক্সট ফিল্ডের পাশে আইকনটির ইউআরএল প্রদর্শিত হয়। এটি PNG এবং JPEG ফাইল সমর্থন করে।
bottom Text Object মাল্টিসিলেক্ট মেনুর ক্ষেত্রে, আইটেমের টেক্সট ফিল্ডের নিচে একটি টেক্সট বিবরণ বা লেবেল প্রদর্শিত হয়।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setExternalDataSource(action)

বাহ্যিক ডেটা উৎস নির্ধারণ করে, যেমন একটি রিলেশনাল ডেটাবেস।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('contacts')
        .setTitle('Selected contacts')
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .setMultiSelectMaxSelectedItems(5)
        .setMultiSelectMinQueryLength(2)
        .setExternalDataSource(
            CardService.newAction().setFunctionName('getContacts'),
        );

প্যারামিটার

নাম প্রকার বর্ণনা
action Action বাহ্যিক ডেটা উৎস।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setFieldName(fieldName)

UI ইন্টারঅ্যাকশনের ফলে যে ইভেন্ট অবজেক্টটি তৈরি হয়, তাতে এই সিলেকশন ইনপুটটিকে শনাক্তকারী কী (key) সেট করে। এটি ব্যবহারকারীর কাছে দৃশ্যমান নয়। আবশ্যক এবং অবশ্যই অনন্য হতে হবে।

প্যারামিটার

নাম প্রকার বর্ণনা
field Name String এই ইনপুটটির জন্য নির্ধারিত নাম।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setId(id)

যে উইজেটটি পরিবর্তন করা হবে, সেটিকে শনাক্ত করার জন্য একটি অনন্য আইডি নির্ধারণ করে। উইজেট পরিবর্তন শুধুমাত্র অ্যাড-অন-এ সমর্থিত।

প্যারামিটার

নাম প্রকার বর্ণনা
id String উইজেটের আইডি, যা সর্বোচ্চ ৬৪ অক্ষরের হতে হবে এবং এর ফরম্যাট হবে `[a-zA-Z0-9-]+`।

ফেরত

Widget — এই অবজেক্টটি, চেইন করার জন্য ব্যবহৃত হয়।


setMultiSelectMaxSelectedItems(maxSelectedItems)

একজন ব্যবহারকারী সর্বোচ্চ কতগুলো আইটেম নির্বাচন করতে পারবে তা নির্ধারণ করে।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .setMultiSelectMaxSelectedItems(3)
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

প্যারামিটার

নাম প্রকার বর্ণনা
max Selected Items Integer আইটেমের সর্বোচ্চ সংখ্যা।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setMultiSelectMinQueryLength(queryLength)

অ্যাপটি অটোকমপ্লিট থেকে পরামর্শমূলক আইটেমগুলো খুঁজে বের করে কার্ডে দেখানোর আগে ব্যবহারকারীকে কতগুলো টেক্সট ক্যারেক্টার ইনপুট করতে হবে, তা এটি নির্ধারণ করে।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .setMultiSelectMinQueryLength(1)
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

প্যারামিটার

নাম প্রকার বর্ণনা
query Length Integer পাঠ্য অক্ষরের সংখ্যা।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setOnChangeAction(action)

নির্বাচন ইনপুট পরিবর্তিত হলে যে Action সম্পাদিত হবে, তা নির্ধারণ করে।

প্যারামিটার

নাম প্রকার বর্ণনা
action Action করণীয় পদক্ষেপ।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setPlatformDataSource(platformDataSource)

গুগল ওয়ার্কস্পেস থেকে একটি ডেটা উৎস নির্ধারণ করে। এটি মাল্টিসিলেক্ট মেনুর আইটেমগুলো পূরণ করতে ব্যবহৃত হয়।

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('contacts')
        .setTitle('Selected contacts')
        .setPlatformDataSource(
            CardService.newPlatformDataSource().setCommonDataSource(
                CardService.CommonDataSource.USER,
                ),
        );
শুধুমাত্র গুগল চ্যাট অ্যাপের জন্য উপলব্ধ। গুগল ওয়ার্কস্পেস অ্যাড-অনের জন্য উপলব্ধ নয়।

প্যারামিটার

নাম প্রকার বর্ণনা
platform Data Source Platform Data Source তথ্যের উৎস।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setTitle(title)

ইনপুট ফিল্ডের আগে শিরোনামটি দেখানোর জন্য সেট করে।

প্যারামিটার

নাম প্রকার বর্ণনা
title String ইনপুট ফিল্ডের শিরোনাম।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setType(type)

এই ইনপুটের ধরণ নির্ধারণ করে। ডিফল্ট হিসেবে CHECKBOX থাকে।

প্যারামিটার

নাম প্রকার বর্ণনা
type Selection Input Type নির্বাচনের ধরণ।

ফেরত

SelectionInput — এই অবজেক্টটি, চেইনিংয়ের জন্য ব্যবহৃত হয়।


setVisibility(visibility)

উইজেটটির দৃশ্যমানতা নির্ধারণ করে। এর ডিফল্ট মান হলো `VISIBLE`।

প্যারামিটার

নাম প্রকার বর্ণনা
visibility Visibility উইজেটটির Visibility

ফেরত

Widget — শৃঙ্খলিত করার জন্য ব্যবহৃত অবজেক্ট।