Can you use the lawndart library instead?
It provides a common API above local storage, indexed db, and websql.
From the docs:
You can use this library to help deal with the wide array of client-side storage options. You should be able to write your code against the Lawndart interface and have it work across browsers that support at least one of the following: local storage, indexed db, and websql.
To get the indexeddb javascript polyfill to work you would need to call its API via dart:js interop. This is likely to be a lot more complicated than using a library like lawndart. Here is an article about using dart:js interop.