chrome.bookmarks

বিবরণ

বুকমার্ক তৈরি, সংগঠিত এবং অন্যথায় ম্যানিপুলেট করতে chrome.bookmarks API ব্যবহার করুন। এছাড়াও Override Pages দেখুন, যা আপনি একটি কাস্টম বুকমার্ক ম্যানেজার পৃষ্ঠা তৈরি করতে ব্যবহার করতে পারেন।

তারাটিতে ক্লিক করলে একটি বুকমার্ক যোগ হয়
তারাটিতে ক্লিক করলে একটি বুকমার্ক যুক্ত হয়।

অনুমতিসমূহ

bookmarks

বুকমার্ক API ব্যবহার করার জন্য আপনাকে এক্সটেনশন ম্যানিফেস্টে "বুকমার্ক" অনুমতি ঘোষণা করতে হবে। উদাহরণস্বরূপ:

{
  "name": "My extension",
  ...
  "permissions": [
    "bookmarks"
  ],
  ...
}

ধারণা এবং ব্যবহার

বস্তু এবং বৈশিষ্ট্য

বুকমার্কগুলি একটি ট্রিতে সংগঠিত হয়, যেখানে ট্রির প্রতিটি নোড হয় একটি বুকমার্ক অথবা একটি ফোল্ডার (কখনও কখনও একটি গ্রুপ বলা হয়)। ট্রির প্রতিটি নোড একটি bookmarks.BookmarkTreeNode অবজেক্ট দ্বারা প্রতিনিধিত্ব করা হয়।

chrome.bookmarks API জুড়ে BookmarkTreeNode বৈশিষ্ট্য ব্যবহার করা হয়। উদাহরণস্বরূপ, যখন আপনি bookmarks.create কল করেন, তখন আপনি নতুন নোডের প্যারেন্ট ( parentId ) এবং ঐচ্ছিকভাবে, নোডের index , title এবং url বৈশিষ্ট্যগুলি প্রবেশ করান। একটি নোডের কী কী বৈশিষ্ট্য থাকতে পারে সে সম্পর্কে তথ্যের জন্য bookmarks.BookmarkTreeNode দেখুন।

উদাহরণ

নিচের কোডটি "Extension bookmarks" শিরোনামের একটি ফোল্ডার তৈরি করে। create() এর প্রথম আর্গুমেন্টটি নতুন ফোল্ডারের বৈশিষ্ট্যগুলি নির্দিষ্ট করে। দ্বিতীয় আর্গুমেন্টটি ফোল্ডারটি তৈরি হওয়ার পরে কার্যকর করার জন্য একটি ফাংশন সংজ্ঞায়িত করে।

chrome.bookmarks.create(
  {'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
  function(newFolder) {
    console.log("added folder: " + newFolder.title);
  },
);

পরবর্তী স্নিপেটটি এক্সটেনশনের জন্য ডেভেলপার ডকুমেন্টেশনের দিকে নির্দেশ করে একটি বুকমার্ক তৈরি করে। যেহেতু বুকমার্ক তৈরি ব্যর্থ হলে খারাপ কিছু ঘটবে না, তাই এই কোডটি কলব্যাক ফাংশন সংজ্ঞায়িত করতে বিরক্ত করে না।

chrome.bookmarks.create({
  'parentId': extensionsFolderId,
  'title': 'Extensions doc',
  'url': 'https://developer.chrome.com/docs/extensions',
});

এই API ব্যবহার করে দেখতে, chrome-extension-samples সংগ্রহস্থল থেকে Bookmarks API উদাহরণটি ইনস্টল করুন।

প্রকারভেদ

BookmarkTreeNode

বুকমার্ক ট্রিতে একটি নোড (হয় বুকমার্ক অথবা ফোল্ডার)। চাইল্ড নোডগুলি তাদের প্যারেন্ট ফোল্ডারের মধ্যে সাজানো থাকে।

বৈশিষ্ট্য

  • শিশুরা

    এই নোডের শিশুদের একটি ক্রমানুসারে তালিকা।

  • তারিখযোগ করা হয়েছে

    সংখ্যা ঐচ্ছিক

    যখন এই নোডটি তৈরি করা হয়েছিল, তখন থেকে মিলিসেকেন্ডে ( new Date(dateAdded) )।

  • তারিখগ্রুপপরিবর্তিত

    সংখ্যা ঐচ্ছিক

    এই ফোল্ডারের বিষয়বস্তু শেষবার কখন পরিবর্তিত হয়েছিল, যুগের পর থেকে মিলিসেকেন্ডে।

  • সর্বশেষ ব্যবহৃত তারিখ

    সংখ্যা ঐচ্ছিক

    ক্রোম ১১৪+

    এই নোডটি শেষবার কখন খোলা হয়েছিল, যুগের পর থেকে মিলিসেকেন্ডে। ফোল্ডারগুলির জন্য সেট করা নেই।

  • ফোল্ডারের ধরণ
    ক্রোম ১৩৪+

    যদি থাকে, তাহলে এটি এমন একটি ফোল্ডার যা ব্রাউজার দ্বারা যোগ করা হয়েছে এবং ব্যবহারকারী বা এক্সটেনশন দ্বারা এটি পরিবর্তন করা যাবে না। যদি এই নোডে unmodifiable বৈশিষ্ট্য সেট না থাকে, তাহলে চাইল্ড নোডগুলি পরিবর্তন করা যেতে পারে। যদি ব্যবহারকারী এবং এক্সটেনশন (ডিফল্ট) দ্বারা নোডটি পরিবর্তন করা যায় তবে এটি বাদ দেওয়া হবে।

    প্রতিটি ফোল্ডার ধরণের শূন্য, এক বা একাধিক নোড থাকতে পারে। ব্রাউজার দ্বারা একটি ফোল্ডার যোগ বা অপসারণ করা যেতে পারে, কিন্তু এক্সটেনশন API এর মাধ্যমে নয়।

  • আইডি

    স্ট্রিং

    নোডের জন্য অনন্য শনাক্তকারী। বর্তমান প্রোফাইলের মধ্যে আইডিগুলি অনন্য, এবং ব্রাউজারটি পুনরায় চালু করার পরেও এগুলি বৈধ থাকে।

  • সূচক

    সংখ্যা ঐচ্ছিক

    এই নোডের প্যারেন্ট ফোল্ডারের মধ্যে 0-ভিত্তিক অবস্থান।

  • প্যারেন্ট আইডি

    স্ট্রিং ঐচ্ছিক

    মূল ফোল্ডারের id । রুট নোডের জন্য বাদ দেওয়া হয়েছে।

  • সিঙ্ক হচ্ছে

    বুলিয়ান

    ক্রোম ১৩৪+

    এই নোডটি ব্রাউজার দ্বারা ব্যবহারকারীর রিমোট অ্যাকাউন্ট স্টোরেজের সাথে সিঙ্ক করা হয়েছে কিনা। এটি একই FolderType এর অ্যাকাউন্ট এবং স্থানীয়-কেবল সংস্করণের মধ্যে পার্থক্য করতে ব্যবহার করা যেতে পারে। এই বৈশিষ্ট্যের মান বিদ্যমান নোডের জন্য পরিবর্তিত হতে পারে, উদাহরণস্বরূপ ব্যবহারকারীর ক্রিয়াকলাপের ফলে।

    দ্রষ্টব্য: এটি নোডটি ব্রাউজারের অন্তর্নির্মিত অ্যাকাউন্ট প্রদানকারীতে সংরক্ষণ করা হয়েছে কিনা তা প্রতিফলিত করে। এটি সম্ভব যে কোনও নোড তৃতীয় পক্ষের মাধ্যমে সিঙ্ক করা যেতে পারে, এমনকি যদি এই মানটি মিথ্যা হয়।

    পরিচালিত নোডের জন্য (যেসব নোডের unmodifiable , সেগুলো true তে সেট করা থাকে), এই বৈশিষ্ট্যটি সর্বদা false হবে।

  • শিরোনাম

    স্ট্রিং

    নোডের জন্য প্রদর্শিত টেক্সট।

  • অপরিবর্তনীয়

    "পরিচালিত"
    ঐচ্ছিক

    এই নোডটি কেন পরিবর্তনযোগ্য নয় তার কারণ নির্দেশ করে। managed মান নির্দেশ করে যে এই নোডটি সিস্টেম প্রশাসক বা তত্ত্বাবধানে থাকা ব্যবহারকারীর তত্ত্বাবধায়ক দ্বারা কনফিগার করা হয়েছিল। ব্যবহারকারী এবং এক্সটেনশন (ডিফল্ট) দ্বারা নোডটি পরিবর্তন করা সম্ভব হলে বাদ দেওয়া হয়।

  • ইউআরএল

    স্ট্রিং ঐচ্ছিক

    যখন কোনও ব্যবহারকারী বুকমার্কে ক্লিক করেন তখন URLটি নেভিগেট করা হয়। ফোল্ডারগুলির জন্য বাদ দেওয়া হয়েছে।

BookmarkTreeNodeUnmodifiable

ক্রোম ৪৪+

এই নোডটি কেন পরিবর্তনযোগ্য নয় তার কারণ নির্দেশ করে। managed মান নির্দেশ করে যে এই নোডটি সিস্টেম প্রশাসক দ্বারা কনফিগার করা হয়েছিল। ব্যবহারকারী এবং এক্সটেনশন (ডিফল্ট) দ্বারা নোডটি পরিবর্তন করা সম্ভব হলে বাদ দেওয়া হবে।

মূল্য

"পরিচালিত"

CreateDetails

create() ফাংশনে অবজেক্টটি পাস করা হয়েছে।

বৈশিষ্ট্য

  • সূচক

    সংখ্যা ঐচ্ছিক

  • প্যারেন্ট আইডি

    স্ট্রিং ঐচ্ছিক

    ডিফল্টভাবে অন্যান্য বুকমার্ক ফোল্ডারে সেট করা থাকে।

  • শিরোনাম

    স্ট্রিং ঐচ্ছিক

  • ইউআরএল

    স্ট্রিং ঐচ্ছিক

FolderType

ক্রোম ১৩৪+

ফোল্ডারের ধরণ নির্দেশ করে।

এনাম

"বুকমার্ক-বার"
যে ফোল্ডারের বিষয়বস্তু ব্রাউজার উইন্ডোর উপরে প্রদর্শিত হয়।

"অন্যান্য"
সমস্ত প্ল্যাটফর্মের বুকমার্কের সম্পূর্ণ তালিকায় প্রদর্শিত বুকমার্কগুলি।

"মোবাইল"
বুকমার্কগুলি সাধারণত ব্যবহারকারীর মোবাইল ডিভাইসে পাওয়া যায়, তবে এক্সটেনশন বা বুকমার্ক ম্যানেজারের মাধ্যমে পরিবর্তন করা যায়।

"পরিচালিত"
একটি শীর্ষ-স্তরের ফোল্ডার যা উপস্থিত থাকতে পারে যদি সিস্টেম প্রশাসক বা তত্ত্বাবধানে থাকা ব্যবহারকারীর তত্ত্বাবধায়ক বুকমার্কগুলি কনফিগার করে থাকেন।

বৈশিষ্ট্য

MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE

অবচিত

বুকমার্ক লেখার কাজ আর Chrome দ্বারা সীমাবদ্ধ নয়।

মূল্য

১০০০০০০০

MAX_WRITE_OPERATIONS_PER_HOUR

অবচিত

বুকমার্ক লেখার কাজ আর Chrome দ্বারা সীমাবদ্ধ নয়।

মূল্য

১০০০০০০০

ROOT_NODE_ID

মুলতুবি

রুট লেভেল নোডের সাথে সম্পর্কিত id

মূল্য

"০"

পদ্ধতি

create()

chrome.bookmarks.create(
  bookmark: CreateDetails,
)
: Promise<BookmarkTreeNode>

নির্দিষ্ট প্যারেন্ট আইডির অধীনে একটি বুকমার্ক বা ফোল্ডার তৈরি করে। যদি url NULL বা অনুপস্থিত থাকে, তাহলে এটি একটি ফোল্ডার হবে।

পরামিতি

রিটার্নস

get()

chrome.bookmarks.get(
  idOrIdList: string | [string, ...string[]],
)
: Promise<BookmarkTreeNode[]>

নির্দিষ্ট BookmarkTreeNode(গুলি) পুনরুদ্ধার করে।

পরামিতি

  • idOrIdList সম্পর্কে

    স্ট্রিং | [স্ট্রিং, ...স্ট্রিং[]]

    একটি একক স্ট্রিং-ভ্যালুড আইডি, অথবা স্ট্রিং-ভ্যালুড আইডির একটি অ্যারে

রিটার্নস

getChildren()

chrome.bookmarks.getChildren(
  id: string,
)
: Promise<BookmarkTreeNode[]>

নির্দিষ্ট BookmarkTreeNode আইডির সন্তানদের উদ্ধার করে।

পরামিতি

  • আইডি

    স্ট্রিং

রিটার্নস

getRecent()

chrome.bookmarks.getRecent(
  numberOfItems: number,
)
: Promise<BookmarkTreeNode[]>

সম্প্রতি যোগ করা বুকমার্কগুলি পুনরুদ্ধার করে।

পরামিতি

  • আইটেম সংখ্যা

    সংখ্যা

    ফেরত পাঠানোর জন্য সর্বাধিক সংখ্যক আইটেম।

রিটার্নস

getSubTree()

chrome.bookmarks.getSubTree(
  id: string,
)
: Promise<BookmarkTreeNode[]>

নির্দিষ্ট নোড থেকে শুরু করে বুকমার্ক অনুক্রমের কিছু অংশ পুনরুদ্ধার করে।

পরামিতি

  • আইডি

    স্ট্রিং

    যে সাবট্রিটি উদ্ধার করা হবে তার রুটের আইডি।

রিটার্নস

getTree()

chrome.bookmarks.getTree(): Promise<BookmarkTreeNode[]>

সম্পূর্ণ বুকমার্কস শ্রেণিবিন্যাস পুনরুদ্ধার করে।

রিটার্নস

move()

chrome.bookmarks.move(
  id: string,
  destination: object,
)
: Promise<BookmarkTreeNode>

নির্দিষ্ট BookmarkTreeNode কে প্রদত্ত স্থানে স্থানান্তর করে।

পরামিতি

  • আইডি

    স্ট্রিং

  • গন্তব্য

    বস্তু

    • সূচক

      সংখ্যা ঐচ্ছিক

    • প্যারেন্ট আইডি

      স্ট্রিং ঐচ্ছিক

রিটার্নস

remove()

chrome.bookmarks.remove(
  id: string,
)
: Promise<void>

একটি বুকমার্ক অথবা একটি খালি বুকমার্ক ফোল্ডার সরিয়ে দেয়।

পরামিতি

  • আইডি

    স্ট্রিং

রিটার্নস

  • প্রতিশ্রুতি<অকার্যকর>

    ক্রোম ৯০+

removeTree()

chrome.bookmarks.removeTree(
  id: string,
)
: Promise<void>

পুনরাবৃত্তভাবে একটি বুকমার্ক ফোল্ডার সরিয়ে দেয়।

পরামিতি

  • আইডি

    স্ট্রিং

রিটার্নস

  • প্রতিশ্রুতি<অকার্যকর>

    ক্রোম ৯০+
chrome.bookmarks.search(
  query: string | object,
)
: Promise<BookmarkTreeNode[]>

প্রদত্ত কোয়েরির সাথে মিলে যাওয়া BookmarkTreeNodes অনুসন্ধান করে। একটি বস্তুর সাথে নির্দিষ্ট করা কোয়েরিগুলি সমস্ত নির্দিষ্ট বৈশিষ্ট্যের সাথে মিলে যাওয়া BookmarkTreeNodes তৈরি করে।

পরামিতি

  • প্রশ্ন

    স্ট্রিং | অবজেক্ট

    হয় বুকমার্ক URL এবং শিরোনামের সাথে মিলে যাওয়া শব্দ এবং উদ্ধৃত বাক্যাংশের একটি স্ট্রিং, অথবা একটি বস্তু। যদি একটি বস্তু থাকে, তাহলে বৈশিষ্ট্য query , url , এবং title নির্দিষ্ট করা যেতে পারে এবং সমস্ত নির্দিষ্ট বৈশিষ্ট্যের সাথে মিলে যাওয়া বুকমার্ক তৈরি করা হবে।

    • প্রশ্ন

      স্ট্রিং ঐচ্ছিক

      বুকমার্ক URL এবং শিরোনামের সাথে মিলে যাওয়া শব্দ এবং উদ্ধৃত বাক্যাংশের একটি স্ট্রিং।

    • শিরোনাম

      স্ট্রিং ঐচ্ছিক

      বুকমার্কের শিরোনাম; অক্ষরে অক্ষরে মিলে যায়।

    • ইউআরএল

      স্ট্রিং ঐচ্ছিক

      বুকমার্কের URL; অক্ষরে অক্ষরে মিলে যাচ্ছে। মনে রাখবেন যে ফোল্ডারগুলির কোনও URL নেই।

রিটার্নস

update()

chrome.bookmarks.update(
  id: string,
  changes: object,
)
: Promise<BookmarkTreeNode>

বুকমার্ক বা ফোল্ডারের বৈশিষ্ট্য আপডেট করে। শুধুমাত্র সেই বৈশিষ্ট্যগুলি উল্লেখ করুন যেগুলি আপনি পরিবর্তন করতে চান; অনির্দিষ্ট বৈশিষ্ট্যগুলি অপরিবর্তিত থাকবে। দ্রষ্টব্য: বর্তমানে, শুধুমাত্র 'শিরোনাম' এবং 'url' সমর্থিত।

পরামিতি

  • আইডি

    স্ট্রিং

  • পরিবর্তন

    বস্তু

    • শিরোনাম

      স্ট্রিং ঐচ্ছিক

    • ইউআরএল

      স্ট্রিং ঐচ্ছিক

রিটার্নস

ইভেন্টগুলি

onChanged

chrome.bookmarks.onChanged.addListener(
  callback: function,
)

বুকমার্ক বা ফোল্ডার পরিবর্তন হলে এটি চালু হয়। দ্রষ্টব্য: বর্তমানে, শুধুমাত্র শিরোনাম এবং url পরিবর্তনগুলি এটিকে ট্রিগার করে।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    (id: string, changeInfo: object) => void

    • আইডি

      স্ট্রিং

    • পরিবর্তন তথ্য

      বস্তু

      • শিরোনাম

        স্ট্রিং

      • ইউআরএল

        স্ট্রিং ঐচ্ছিক

onChildrenReordered

chrome.bookmarks.onChildrenReordered.addListener(
  callback: function,
)

UI-তে সাজানোর কারণে যখন কোনও ফোল্ডারের শিশুরা তাদের ক্রম পরিবর্তন করে তখন এটি কার্যকর হয়। এটি কোনও স্থানান্তরের ফলে বলা হয় না()।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    (id: string, reorderInfo: object) => void

    • আইডি

      স্ট্রিং

    • পুনঃক্রম তথ্য

      বস্তু

      • শিশু আইডি

        স্ট্রিং[]

onCreated

chrome.bookmarks.onCreated.addListener(
  callback: function,
)

বুকমার্ক বা ফোল্ডার তৈরি হলে চালু হয়।

পরামিতি

onImportBegan

chrome.bookmarks.onImportBegan.addListener(
  callback: function,
)

বুকমার্ক ইম্পোর্ট সেশন শুরু হলেই এটি চালু হয়। ব্যয়বহুল পর্যবেক্ষকদের onCreated আপডেটগুলি উপেক্ষা করা উচিত যতক্ষণ না onImportEnded চালু হয়। পর্যবেক্ষকদের এখনও অন্যান্য বিজ্ঞপ্তিগুলি অবিলম্বে পরিচালনা করা উচিত।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    () => void

onImportEnded

chrome.bookmarks.onImportEnded.addListener(
  callback: function,
)

বুকমার্ক আমদানি সেশন শেষ হলে চালু হয়।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    () => void

onMoved

chrome.bookmarks.onMoved.addListener(
  callback: function,
)

যখন একটি বুকমার্ক বা ফোল্ডার অন্য একটি প্যারেন্ট ফোল্ডারে সরানো হয় তখন এটি চালু হয়।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    (id: string, moveInfo: object) => void

    • আইডি

      স্ট্রিং

    • moveInfo সম্পর্কে

      বস্তু

      • সূচক

        সংখ্যা

      • পুরাতনসূচী

        সংখ্যা

      • পুরাতন প্যারেন্ট আইডি

        স্ট্রিং

      • প্যারেন্ট আইডি

        স্ট্রিং

onRemoved

chrome.bookmarks.onRemoved.addListener(
  callback: function,
)

যখন একটি বুকমার্ক বা ফোল্ডার সরানো হয় তখন এটি চালু হয়। যখন একটি ফোল্ডার পুনরাবৃত্তভাবে সরানো হয়, তখন ফোল্ডারের জন্য একটি বিজ্ঞপ্তি চালু হয়, এবং এর বিষয়বস্তুর জন্য কোনও বিজ্ঞপ্তি বন্ধ হয় না।

পরামিতি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এরকম:

    (id: string, removeInfo: object) => void

    • আইডি

      স্ট্রিং

    • তথ্য সরান

      বস্তু