chrome.fileSystem

বর্ণনা

ব্যবহারকারীর লোকাল ফাইল সিস্টেম তৈরি করতে, পড়তে, নেভিগেট করতে এবং লিখতে chrome.fileSystem API ব্যবহার করুন। এই API-এর সাহায্যে, Chrome অ্যাপগুলো ব্যবহারকারী-নির্বাচিত কোনো স্থানে পড়তে ও লিখতে পারে। উদাহরণস্বরূপ, একটি টেক্সট এডিটর অ্যাপ লোকাল ডকুমেন্ট পড়তে ও লিখতে এই API ব্যবহার করতে পারে। সমস্ত ব্যর্থতার কথা chrome.runtime.lastError-এর মাধ্যমে জানানো হয়।

অনুমতি

fileSystem

প্রাপ্যতা

শুধুমাত্র সম্মুখভাগ

প্রকারভেদ

AcceptOption

বৈশিষ্ট্য

  • বর্ণনা

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

    এটি এই বিকল্পটির জন্য ঐচ্ছিক পাঠ্য বিবরণ। যদি এটি উপস্থিত না থাকে, তাহলে একটি বিবরণ স্বয়ংক্রিয়ভাবে তৈরি হবে; সাধারণত এতে বৈধ এক্সটেনশনগুলির একটি বিস্তারিত তালিকা থাকে (যেমন "text/html" প্রসারিত হয়ে "*.html, *.htm" হতে পারে)।

  • এক্সটেনশন

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

    গ্রহণ করার জন্য এক্সটেনশন, যেমন 'jpg', 'gif', 'crx'।

  • মাইমটাইপ

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

    গ্রহণযোগ্য মাইম-টাইপসমূহ, যেমন 'image/jpeg' বা 'audio/*'। মাইম-টাইপ বা এক্সটেনশনগুলোর মধ্যে অন্তত একটিতে অবশ্যই একটি বৈধ এলিমেন্ট থাকতে হবে।

ChooseEntryOptions

বৈশিষ্ট্য

  • গ্রহণ করে

    AcceptOption [] ঐচ্ছিক

    এই ফাইল ওপেনারের জন্য গ্রহণ করার ঐচ্ছিক বিকল্পগুলির তালিকা। প্রতিটি বিকল্প ব্যবহারকারীর কাছে একটি স্বতন্ত্র গোষ্ঠী হিসাবে উপস্থাপন করা হবে।

  • সকল প্রকার গ্রহণ করে

    বুলিয়ান ঐচ্ছিক

    `accepts` আর্গুমেন্টে নির্দিষ্ট করা অপশনগুলোর পাশাপাশি সব ধরনের ফাইল গ্রহণ করা হবে কিনা। এর ডিফল্ট মান হলো `true`। যদি `accepts` ফিল্ডটি সেট করা না থাকে বা এতে কোনো বৈধ এন্ট্রি না থাকে, তবে এটি সর্বদা `true`-তে রিসেট হয়ে যাবে।

  • একাধিক গ্রহণ করে

    বুলিয়ান ঐচ্ছিক

    একাধিক ফাইল গ্রহণ করা হবে কিনা। এটি শুধুমাত্র openFile এবং openWritableFile-এর জন্য সমর্থিত। যদি এটি 'true' সেট করা থাকে, তাহলে chooseEntry-এর কলব্যাকটি এন্ট্রিগুলির একটি তালিকা সহ কল ​​করা হবে। অন্যথায় এটি একটিমাত্র এন্ট্রি সহ কল ​​করা হবে।

  • প্রস্তাবিত নাম

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

    প্রস্তাবিত ফাইলের নাম যা সংরক্ষণের জন্য ডিফল্ট নাম হিসেবে ব্যবহারকারীর কাছে উপস্থাপন করা হবে। এটি ঐচ্ছিক এবং শুধুমাত্র 'saveFile'-এর ক্ষেত্রে প্রযোজ্য।

  • প্রকার

    প্রদর্শিতব্য প্রম্পটের ধরন নির্বাচন করুন। ডিফল্ট হলো 'openFile'।

ChooseEntryType

এনাম

"ওপেনফাইল"
ব্যবহারকারীকে একটি বিদ্যমান ফাইল খুলতে অনুরোধ করে এবং সফল হলে একটি FileEntry ফেরত দেয়। Chrome 31 থেকে, অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'write' অনুমতি থাকলে FileEntry-টি লেখার যোগ্য হবে; অন্যথায়, FileEntry-টি শুধুমাত্র পড়ার যোগ্য হবে।

"openWritableFile"
ব্যবহারকারীকে একটি বিদ্যমান ফাইল খুলতে অনুরোধ করে এবং সফল হলে একটি লেখার যোগ্য ফাইলএন্ট্রি (FileEntry) ফেরত দেয়। যদি অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'write' পারমিশন না থাকে, তাহলে এই ধরনের কল রানটাইম ত্রুটির সাথে ব্যর্থ হবে।

"ফাইল সংরক্ষণ করুন"
ব্যবহারকারীকে একটি বিদ্যমান বা নতুন ফাইল খোলার জন্য অনুরোধ করে এবং সফল হলে একটি লেখার যোগ্য ফাইলএন্ট্রি (FileEntry) ফেরত দেয়। যদি অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'write' পারমিশন না থাকে, তাহলে এই ধরনের কল রানটাইম ত্রুটির সাথে ব্যর্থ হবে।

"ওপেনডিরেক্টরি"
ব্যবহারকারীকে একটি ডিরেক্টরি খুলতে অনুরোধ করে এবং সফল হলে একটি DirectoryEntry ফেরত দেয়। যদি অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'directory' পারমিশন না থাকে, তবে এই ধরনের কল একটি রানটাইম ত্রুটির সাথে ব্যর্থ হবে। যদি অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'write' পারমিশন থাকে, তবে ফেরত আসা DirectoryEntry-টি লেখার যোগ্য হবে; অন্যথায় এটি শুধুমাত্র পড়ার যোগ্য হবে। Chrome 31-এ নতুন।

RequestFileSystemOptions

ক্রোম ৪৪+

বৈশিষ্ট্য

  • ভলিউমআইডি

    স্ট্রিং

    অনুরোধকৃত ভলিউমের আইডি।

  • লেখার যোগ্য

    বুলিয়ান ঐচ্ছিক

    অনুরোধকৃত ফাইল সিস্টেমটি লেখার যোগ্য হবে কিনা। ডিফল্ট হলো শুধুমাত্র পঠনযোগ্য।

Volume

ক্রোম ৪৪+

বৈশিষ্ট্য

  • ভলিউমআইডি

    স্ট্রিং

  • লেখার যোগ্য

    বুলিয়ান

VolumeListChangedEvent

ক্রোম ৪৪+

বৈশিষ্ট্য

পদ্ধতি

chooseEntry()

chrome.fileSystem.chooseEntry(
  options?: ChooseEntryOptions,
  callback: function,
)
: void

ব্যবহারকারীকে একটি ফাইল বা ডিরেক্টরি বেছে নিতে বলুন।

প্যারামিটার

  • কলব্যাক

    ফাংশন

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

    (entry?: Entry, fileEntries?: FileEntry[]) => void

    • প্রবেশ

      প্রবেশ ঐচ্ছিক

    • ফাইল এন্ট্রি

      FileEntry[] ঐচ্ছিক

getDisplayPath()

প্রতিশ্রুতি
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)
: Promise<string>

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

প্যারামিটার

  • প্রবেশ

    প্রবেশ

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (displayPath: string) => void

    • ডিসপ্লে পাথ

      স্ট্রিং

ফেরত

  • প্রতিশ্রুতি<string>

    ক্রোম ১১৭+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

getVolumeList()

প্রমিস ক্রোম ৪৪+
chrome.fileSystem.getVolumeList(
  callback?: function,
)
: Promise<Volume[] | undefined>

requestFileSystem() এর জন্য উপলব্ধ ভলিউমগুলির একটি তালিকা ফেরত দেয়। "fileSystem": {"requestFileSystem"} ম্যানিফেস্ট পারমিশনটি আবশ্যক। এটি শুধুমাত্র কিয়স্ক সেশনে চলমান কিয়স্ক অ্যাপগুলির জন্য উপলব্ধ। কোনো ত্রুটির ক্ষেত্রে, volumes `undefined` থাকবে এবং chrome.runtime.lastError সেট করা হবে।

প্যারামিটার

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (volumes?: Volume[]) => void

ফেরত

  • প্রতিশ্রুতি< আয়তন [] | অনির্দিষ্ট>

    ক্রোম ১১৭+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

getWritableEntry()

chrome.fileSystem.getWritableEntry(
  entry: Entry,
  callback: function,
)
: void

অন্য একটি এন্ট্রি থেকে একটি লিখনযোগ্য এন্ট্রি নিন। যদি অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'write' পারমিশন না থাকে, তাহলে এই কলটি একটি রানটাইম এরর সহ ব্যর্থ হবে। যদি এন্ট্রিটি একটি DirectoryEntry হয়, এবং অ্যাপ্লিকেশনটির 'fileSystem'-এর অধীনে 'directory' পারমিশন না থাকে, তাহলে এই কলটি ব্যর্থ হবে।

প্যারামিটার

  • প্রবেশ

    প্রবেশ

  • কলব্যাক

    ফাংশন

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

    (entry: Entry) => void

    • প্রবেশ

      প্রবেশ

isRestorable()

প্রতিশ্রুতি
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)
: Promise<boolean>

প্রদত্ত আইডি দিয়ে এন্ট্রিটি পুনরুদ্ধার করার অনুমতি অ্যাপটির আছে কিনা তা জানায়।

প্যারামিটার

  • আইডি

    স্ট্রিং

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (isRestorable: boolean) => void

    • পুনরুদ্ধারযোগ্য

      বুলিয়ান

ফেরত

  • প্রতিশ্রুতি<বুলিয়ান>

    ক্রোম ১১৭+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

isWritableEntry()

প্রতিশ্রুতি
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)
: Promise<boolean>

এই এন্ট্রিটি লেখার যোগ্য কিনা তা নির্ধারণ করে।

প্যারামিটার

  • প্রবেশ

    প্রবেশ

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (isWritable: boolean) => void

    • লেখার যোগ্য

      বুলিয়ান

ফেরত

  • প্রতিশ্রুতি<বুলিয়ান>

    ক্রোম ১১৭+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

requestFileSystem()

প্রমিস ক্রোম ৪৪+
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)
: Promise<FileSystem | undefined>

options.volumeId দ্বারা নির্দেশিত একটি ভলিউমের জন্য ফাইল সিস্টেমে অ্যাক্সেসের অনুরোধ করা হয়। যদি options.writable কে true সেট করা হয়, তাহলে ফাইল সিস্টেমটি রাইটেবল (writable) হবে। অন্যথায়, এটি রিড-অনলি (read-only) হবে। writable অপশনটির জন্য ম্যানিফেস্টে "fileSystem": {"write"} পারমিশন থাকা আবশ্যক। এটি শুধুমাত্র কিয়স্ক সেশনে চলমান কিয়স্ক অ্যাপগুলোর জন্য উপলব্ধ। ম্যানুয়াল-লঞ্চ কিয়স্ক মোডের ক্ষেত্রে, সক্রিয় অ্যাপ উইন্ডোর উপরে একটি কনফার্মেশন ডায়ালগ দেখানো হবে। কোনো ত্রুটির ক্ষেত্রে, fileSystem মান undefined হবে এবং chrome.runtime.lastError সেট করা হবে।

প্যারামিটার

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (fileSystem?: FileSystem) => void

    • ফাইলসিস্টেম

      ফাইলসিস্টেম ঐচ্ছিক

ফেরত

  • প্রতিশ্রুতি<ফাইলসিস্টেম | অনির্দিষ্ট>

    ক্রোম ১১৭+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

restoreEntry()

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)
: void

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

প্যারামিটার

  • আইডি

    স্ট্রিং

  • কলব্যাক

    ফাংশন

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

    (entry: Entry) => void

    • প্রবেশ

      প্রবেশ

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)
: string

একটি আইডি রিটার্ন করে যা একটি নির্দিষ্ট ফাইল এন্ট্রিতে পুনরায় অ্যাক্সেস পেতে restoreEntry-তে পাস করা যেতে পারে। শুধুমাত্র সবচেয়ে সম্প্রতি ব্যবহৃত ৫০০টি এন্ট্রি সংরক্ষিত থাকে, যেখানে retainEntry এবং restoreEntry-এর কলগুলো ব্যবহার হিসাবে গণ্য হয়। যদি অ্যাপটির 'fileSystem'-এর অধীনে 'retainEntries' পারমিশন থাকে, তাহলে এন্ট্রিগুলো অনির্দিষ্টকালের জন্য সংরক্ষিত থাকে। অন্যথায়, এন্ট্রিগুলো শুধুমাত্র অ্যাপটি চালু থাকা অবস্থায় এবং রিস্টার্টের পরেও সংরক্ষিত থাকে।

প্যারামিটার

  • প্রবেশ

    প্রবেশ

ফেরত

  • স্ট্রিং

ইভেন্টগুলি

onVolumeListChanged

ক্রোম ৪৪+
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

উপলব্ধ ভলিউমের তালিকা পরিবর্তিত হলে এটি কল করা হয়।

প্যারামিটার