You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+16-16Lines changed: 16 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -121,7 +121,7 @@ While you have the option to enable or disable some or all of these cookies, not
121
121
122
122
## Experimental ESM version
123
123
124
-
ESM version supplied as an alternative packaging format. Long-term it's better to not have two versions, so this may or not become the main version. Consider it an alternate packaging format at this point. [see ESM demo](https://replete.github.io/biscuitman/index-esm.html)
124
+
ESM version supplied as an alternative packaging format. Long-term it's better to not have two versions, so this may or not become the main version. Consider it an alternate packaging format at this point. ([ESM demo](https://replete.github.io/biscuitman/index-esm.html))
125
125
126
126
```html
127
127
<!-- Experimental ESM version: -->
@@ -177,7 +177,7 @@ html.bm-show::after {
177
177
178
178
## Browser Support
179
179
180
-
Biscuitman is written in modern Javascript and transpiled `swc` to target browsers less than two years old. The included distributables are tested to support the following browsers:
180
+
Biscuitman is written in modern Javascript and transpiled with `swc` to target browsers less than two years old. The included distributables are tested to support the following browsers:
181
181
182
182
- Chrome/Edge/Opera: 85+ (released June 2020)
183
183
- Firefox: 98+ (released March 2022)
@@ -186,9 +186,9 @@ Biscuitman is written in modern Javascript and transpiled `swc` to target browse
186
186
187
187
### \<Dialog\> polyfill
188
188
189
-
To support older than the browsers above, a polyfill for `<dialog>` is required. Biscuitman checks for this and will load the [dialog polyfill](https://github.com/GoogleChrome/dialog-polyfill)automatically if it is not already loaded, and then correctly bind.
189
+
To support older than the browsers above, a polyfill for `<dialog>` is required. Biscuitman checks for this automatically and loads a [polyfill for dialog](https://github.com/GoogleChrome/dialog-polyfill)on-demand (if it is not already loaded), and then correctly binds the UI.
190
190
191
-
For this to work, you must host `dist/dialog-polyfill.withcss.js` and set the biscuitman config property,`dialogPolyfill`, to the correct URL.
191
+
For this to work, you must host `dist/dialog-polyfill.withcss.js` and set the config property `dialogPolyfill` to the correct URL.
192
192
193
193
This will extend the browser support to:
194
194
- Safari (inc iOS) 13.1+ (released March 2020)
@@ -197,19 +197,19 @@ This will extend the browser support to:
197
197
198
198
If the dialog polyfill is already loaded (`window.dialogPolyfill` exists), the polyfill will not be loaded again. To disable this on-demand functionality altogether, set `dialogPolyfill` property to `false`.
199
199
200
-
### Extending Browser support
200
+
### Legacy Browser Support
201
201
202
-
You can extend support to the following browsers by including the following script _before_ biscuitman.js:
203
-
- Safari 11.1+ (released Jan 2018)
204
-
- Safari iOS 11.3+ (released Mar 2018)
205
-
- Firefox 55+ (released Aug 2017)
206
-
- Chrome 60+ (released Jul 2017)
202
+
If you need to support really old browsers, use `biscuitman-legacy.js`, `biscuitman-legacy.min.js` or `biscuitman-legacy.withcss.js` to extend the browser support to:
This legacy version is transpiled to ES5 and includes required polyfills to make itself functional on these ancient browsers. This makes the distributables roughtly double the filesize of the modern versions.
210
+
211
+
In these extremely old browsers, the functionality is intact and the UI is usable but it may look slightly janky as the browser is missing CSS features like `gap` resulting in missing gaps between buttons.
211
212
212
-
Obviously a third party hosted polyfill is not good for performance, so in this scenario you'd want to self-host the `replaceAll` and `Object.fromEntries` polyfills. This is the lazy approach, if you really need to support older browsers it would make more sense to rebuild biscuitman with an earlier javascript target (update `package.json``browserlist` property and rebuild with `npm run build`). If there was enough need for this, I'd consider adding a build target for older browsers and release as `biscuitman.legacy.js`.
213
213
214
214
## Globals
215
215
-`biscuitman` – configuration object, must be `window.biscuitman`
0 commit comments