workarounds for docusaurus breaking changes

This commit is contained in:
SheetJS 2024-04-14 03:40:38 -04:00
parent ac6e3daa1c
commit b571592055
58 changed files with 117 additions and 117 deletions

View File

@ -27,7 +27,7 @@ new versions are released!
:::
:::warning pass
:::danger pass
A number of services host older versions of the SheetJS libraries. Due to
syncing issues, they are generally out of date.
@ -206,7 +206,7 @@ xport.addEventListener("click", async() => {
## Bower
:::warning pass
:::danger pass
Bower is deprecated and the maintainers recommend using other tools.

View File

@ -80,7 +80,7 @@ Until Snyk fixes the bugs, the official recommendation is to
### Legacy Endpoints
:::warning pass
:::danger pass
Older releases are technically available on the public npm registry as `xlsx`,
but the registry is out of date. The latest version on that registry is 0.18.5
@ -209,7 +209,7 @@ The ["Bundlers" demo](/docs/demos/frontend/bundler) includes complete examples.
Dynamic imports with `import()` will only download scripts when they are needed.
:::warning pass
:::danger pass
Dynamic `import` will always download the full contents of the imported scripts!

View File

@ -70,7 +70,7 @@ Until Snyk fixes the bugs, the official recommendation is to
### Legacy Endpoints
:::warning pass
:::danger pass
Older releases are technically available on the public npm registry as `xlsx`,
but the registry is out of date. The latest version on that registry is 0.18.5
@ -237,7 +237,7 @@ XLSX.set_cptable(cpexcel);
#### NextJS
:::warning pass
:::danger pass
`fs` cannot be imported from the top level in NextJS pages. This will not work:

View File

@ -137,7 +137,7 @@ sap.ui.define([
})
```
:::warning pass
:::danger pass
**Copy and pasting code does not work** for SheetJS scripts as they contain
Unicode characters that may be mangled. The standalone script should be

View File

@ -70,7 +70,7 @@ and the types URLs should be updated at the same time:
#### Deno Registry
:::warning pass
:::danger pass
The official Deno registry is out of date. This is a registry bug.

View File

@ -947,7 +947,7 @@ current Java releases.
:::
:::warning pass
:::danger pass
There are a number of potential pitfalls.

View File

@ -455,7 +455,7 @@ NextJS requires a number of workarounds for simple client-side JavaScript code.
:::
:::warning Telemetry
:::danger Telemetry
NextJS collects telemetry by default. The `telemetry` subcommand can disable it:

View File

@ -38,7 +38,7 @@ should be directed to the Angular project.
:::
:::warning Telemetry
:::danger Telemetry
Angular CLI enables telemetry by default. When using a recent version, disable
analytics globally through the CLI tool before creating a new project:
@ -69,7 +69,7 @@ import { read, utils, writeFile } from 'xlsx';
The various SheetJS APIs work with various data shapes. The preferred state
depends on the application.
:::warning pass
:::danger pass
Angular 17 broke backwards compatibility with projects using Angular 2 - 16.
@ -724,7 +724,7 @@ this.columns = Array.from({ length: range.e.c + 1 }, (_, i) => ({
## Older Versions
:::warning pass
:::danger pass
This demo is included for legacy deployments. There are incompatibilities with
different NodeJS and other ecosystem versions. Issues should be raised with

View File

@ -10,7 +10,7 @@ sidebar_position: 7
import current from '/version.js';
import CodeBlock from '@theme/CodeBlock';
:::warning pass
:::danger pass
This demo is for the legacy AngularJS framework (version 1).

View File

@ -57,7 +57,7 @@ require(
</script>`}
</CodeBlock>
:::warning pass
:::danger pass
The official Google CDN does not have the newest releases of Dojo Toolkit

View File

@ -38,7 +38,7 @@ else document.write(XLSX.version);
## Internet Explorer
:::warning pass
:::danger pass
Internet Explorer is unmaintained and users should consider modern browsers.
The SheetJS testing grid still includes IE and should work.

View File

@ -260,7 +260,7 @@ npx webpack@3.x -p
</TabItem>
<TabItem value="4+" label="4.x, 5.x and beyond" default>
:::warning Pinning specific versions of webpack
:::danger Pinning specific versions of webpack
The webpack tooling is not designed for switching between versions. A specific
version above 4.0 can be pinned by locally installing webpack and the CLI tool.

View File

@ -51,7 +51,7 @@ can load relevant parts of the library:
import { read, utils, writeFileXLSX } from 'xlsx';
```
:::warning Parcel Bug
:::danger Parcel Bug
Errors of the form `Could not statically evaluate fs call` stem from a Parcel
bug[^1]. Upgrade to Parcel version 1.5.0 or later.

View File

@ -63,7 +63,7 @@ part of the `utils` object, the required import is:
import { utils, writeFile } from 'xlsx';
```
:::warning pass
:::danger pass
When this demo was tested against the `@swc/core@1.3.100`, `spack` crashed:

View File

@ -489,7 +489,7 @@ was added to the platform, third party modules wrapped the native APIs.
#### request
:::warning pass
:::danger pass
`request` has been deprecated and should only be used in legacy deployments.

View File

@ -19,7 +19,7 @@ This demo covers three workflows:
- [Reading mail](#reading-mail) covers libraries for reading messages
- [Data files](#data-files) covers mailbox file formats
:::warning pass
:::danger pass
There are a number of caveats when dealing with live mail servers. It is advised
to follow connector module documentation carefully and test with new accounts
@ -29,7 +29,7 @@ before integrating with important inboxes or accounts.
## Live Servers
:::warning pass
:::danger pass
It is strongly advised to use a test email address before using an important
address. One small mistake could erase decades of messages or result in a block

View File

@ -344,7 +344,7 @@ After installing engines, re-run the script.
PhantomJS is a headless web browser powered by WebKit.
:::warning pass
:::danger pass
This information is provided for legacy deployments. PhantomJS development has
been suspended and there are known vulnerabilities, so new projects should use

View File

@ -33,7 +33,7 @@ This demo was tested in the following environments:
:::
:::warning pass
:::danger pass
When this demo was last tested, the grid correctly displayed data but could not
be edited by the user.

View File

@ -56,7 +56,7 @@ through a special Export button. It handles the SheetJS operations internally.
### Angular UI Grid
:::warning pass
:::danger pass
This UI Grid is for AngularJS, not the modern Angular. New projects should not
use AngularJS. This demo is included for legacy applications.

View File

@ -48,7 +48,7 @@ overridden through a `package.json` override in the latest versions of NodeJS:
:::
:::warning Telemetry
:::danger Telemetry
GatsbyJS collects telemetry by default. The `telemetry` subcommand can disable it:

View File

@ -31,7 +31,7 @@ The ["Demo"](#demo) uses NextJS and SheetJS to pull data from a spreadsheet.
We'll explore how to create asset modules that process spreadsheet data at build
time and how to read files on the server in NextJS lifecycle methods.
:::warning Telemetry
:::danger Telemetry
NextJS collects telemetry by default. The `telemetry` subcommand can disable it:
@ -196,7 +196,7 @@ export async function getStaticProps() {
The [SheetJS NodeJS module](/docs/getting-started/installation/nodejs) can be
imported from page scripts.
:::warning pass
:::danger pass
[The SheetJS ESM build](/docs/getting-started/installation/nodejs#esm-import)
does not load NodeJS native modules directly. The Installation section includes
@ -243,7 +243,7 @@ export async function getServerSideProps() {
}
```
:::warning Reading and writing files during the build process
:::danger Reading and writing files during the build process
As the NextJS workaround is non-traditional, it bears repeating:
@ -711,7 +711,7 @@ npx next export
</TabItem>
<TabItem value="14" label="NextJS 14">
:::warning NextJS breaking changes
:::danger NextJS breaking changes
**NextJS 14 removed the `export` subcommand!**

View File

@ -53,7 +53,7 @@ This demo was tested in the following environments:
:::
:::warning Telemetry
:::danger Telemetry
Nuxt embeds telemetry. According to the docs, it can be disabled with:

View File

@ -36,7 +36,7 @@ flowchart LR
aoo --> |index.astro\ntemplate body| html
```
:::warning Telemetry
:::danger Telemetry
AstroJS enables telemetry by default. The tool has an option to disable telemetry:

View File

@ -316,7 +316,7 @@ tapping "Import data from a spreadsheet", verify that the app shows new data:
**iOS Testing**
:::warning pass
:::danger pass
**iOS testing can only be performed on Apple hardware running macOS!**
@ -542,7 +542,7 @@ Click on the icon and select the real device from the list.
## Local Files
:::warning pass
:::danger pass
React Native does not provide a native file picker or a method for reading and
writing data from documents on the devices. A third-party library must be used.
@ -926,7 +926,7 @@ This demo was tested in the following environments:
:::
:::warning pass
:::danger pass
There are many moving parts and pitfalls with React Native apps. It is strongly
recommended to follow the official React Native tutorials for iOS and Android
@ -1260,7 +1260,7 @@ npx xlsx-cli sheetjsw.xlsx
**iOS Testing**
:::warning pass
:::danger pass
**iOS testing can only be performed on Apple hardware running macOS!**

View File

@ -69,7 +69,7 @@ This demo was tested in the following environments:
:::
:::warning Telemetry
:::danger Telemetry
Before starting this demo, manually disable telemetry.
@ -301,16 +301,16 @@ In the last macOS test, the following output was displayed:
<summary><b>Expected output</b> (click to hide)</summary>
<pre>
<span {...g}></span> Getting environment information{'\n'}
{'\n'}
<b>No issues were detected.</b>{'\n'}
<span {...g}></span> Your ANDROID_HOME environment variable is set and points to correct directory.{'\n'}
<span {...g}></span> Your adb from the Android SDK is correctly installed.{'\n'}
<span {...g}></span> The Android SDK is installed.{'\n'}
<span {...g}></span> A compatible Android SDK for compilation is found.{'\n'}
<span {...g}></span> Javac is installed and is configured properly.{'\n'}
<span {...g}></span> The Java Development Kit (JDK) is installed and is configured properly.{'\n'}
<span {...g}></span> Getting NativeScript components versions information...{'\n'}
<span {...g}></span> Getting environment information
<b>No issues were detected.</b>
<span {...g}></span> Your ANDROID_HOME environment variable is set and points to correct directory.
<span {...g}></span> Your adb from the Android SDK is correctly installed.
<span {...g}></span> The Android SDK is installed.
<span {...g}></span> A compatible Android SDK for compilation is found.
<span {...g}></span> Javac is installed and is configured properly.
<span {...g}></span> The Java Development Kit (JDK) is installed and is configured properly.
<span {...g}></span> Getting NativeScript components versions information...
<span {...g}></span> Component nativescript has 8.6.1 version and is up to date.
</pre>
@ -328,19 +328,19 @@ In the last macOS test, the following output was displayed:
<summary><b>Expected output</b> (click to hide)</summary>
<pre>
<span {...g}></span> Getting environment information{'\n'}
{'\n'}
<b>No issues were detected.</b>{'\n'}
<span {...g}></span> Xcode is installed and is configured properly.{'\n'}
<span {...g}></span> xcodeproj is installed and is configured properly.{'\n'}
<span {...g}></span> CocoaPods are installed.{'\n'}
<span {...g}></span> CocoaPods update is not required.{'\n'}
<span {...g}></span> CocoaPods are configured properly.{'\n'}
<span {...g}></span> Your current CocoaPods version is newer than 1.0.0.{'\n'}
<span {...g}></span> Python installed and configured correctly.{'\n'}
<span {...g}></span> The Python 'six' package is found.{'\n'}
<span {...g}></span> Xcode version 15.0.1 satisfies minimum required version 10.{'\n'}
<span {...g}></span> Getting NativeScript components versions information...{'\n'}
<span {...g}></span> Getting environment information
<b>No issues were detected.</b>
<span {...g}></span> Xcode is installed and is configured properly.
<span {...g}></span> xcodeproj is installed and is configured properly.
<span {...g}></span> CocoaPods are installed.
<span {...g}></span> CocoaPods update is not required.
<span {...g}></span> CocoaPods are configured properly.
<span {...g}></span> Your current CocoaPods version is newer than 1.0.0.
<span {...g}></span> Python installed and configured correctly.
<span {...g}></span> The Python 'six' package is found.
<span {...g}></span> Xcode version 15.0.1 satisfies minimum required version 10.
<span {...g}></span> Getting NativeScript components versions information...
<span {...g}></span> Component nativescript has 8.6.1 version and is up to date.
</pre>
@ -619,7 +619,7 @@ The first item in the list will change.
### iOS
:::warning pass
:::danger pass
**iOS testing can only be performed on Apple hardware running macOS!**

View File

@ -63,7 +63,7 @@ The file integration uses `@awesome-cordova-plugins/file` version `6.4.0`.
:::
:::warning Telemetry
:::danger Telemetry
Before starting this demo, manually disable telemetry. On Linux and MacOS:
@ -471,7 +471,7 @@ brew install gradle
:::
:::warning pass
:::danger pass
When the demo was last tested on Android, reading files worked as expected.
However, the generated files were not externally visible from the Files app.

View File

@ -41,7 +41,7 @@ This demo was tested in the following environments:
:::
:::warning Telemetry
:::danger Telemetry
Before starting this demo, manually disable telemetry. On Linux and MacOS:

View File

@ -50,7 +50,7 @@ This demo was tested in the following environments:
:::
:::warning Telemetry
:::danger Telemetry
Before starting this demo, manually disable telemetry. On MacOS:

View File

@ -12,7 +12,7 @@ extensions and libraries to create a hybrid development experience. Developers
well-versed in web technologies can now build actual mobile applications that
run on iOS and Android!
:::warning pass
:::danger pass
**The ecosystem has broken backwards-compatibility many times!**

View File

@ -61,7 +61,7 @@ applications, [check the mobile demo](/docs/demos/mobile/reactnative)
:::
:::warning Telemetry
:::danger Telemetry
**React Native for Windows + macOS commands include telemetry without proper**
**disclaimer or global opt-out.**
@ -382,7 +382,7 @@ RCT_EXPORT_METHOD(PickAndRead:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromi
## Windows Demo
:::warning pass
:::danger pass
There is no simple standalone executable file at the end of the process.
@ -482,7 +482,7 @@ Specific Windows SDK versions can be installed through Visual Studio Installer.
npx react-native run-windows --no-telemetry --arch=X86
```
:::warning pass
:::danger pass
The ARM64 binary is normally built with
@ -616,7 +616,7 @@ npx react-native run-windows --no-telemetry
npx react-native run-windows --no-telemetry --arch=X86
```
:::warning pass
:::danger pass
The ARM64 binary is normally built with
@ -702,7 +702,7 @@ npx react-native run-macos
Close the running app from the dock and close the Metro terminal window.
:::warning pass
:::danger pass
When the demo was last tested on x64, the app failed with a warning

View File

@ -220,7 +220,7 @@ set PATH="C:\correct\path\to\python\three";%PATH%
</TabItem>
<TabItem value="pkg" label="pkg">
:::warning pass
:::danger pass
When this demo was last tested, `pkg` failed with an error referencing `node20`:

View File

@ -88,7 +88,7 @@ an array of objects.
Queries must be manually generated from the objects. Assuming the field names
in the object match the column headers, a loop can generate `INSERT` queries.
:::warning pass
:::danger pass
**PostgreSQL does not allow parameterized queries with variable column names**

View File

@ -92,7 +92,7 @@ an array of objects.
Queries must be manually generated from the objects. Assuming the field names
in the object match the column headers, a loop can generate `INSERT` queries.
:::warning pass
:::danger pass
**MariaDB does not allow parameterized queries with variable column names**

View File

@ -13,7 +13,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
:::warning pass
:::danger pass
**Redis has relicensed away from open source!**
@ -233,7 +233,7 @@ const aoa = [ ["Hash"], [key] ].concat(Object.entries(values));
## Complete Example
:::warning pass
:::danger pass
The most recent version of the `redis` node module does not work with most
versions of NodeJS. It is "ESM-only", requiring NodeJS 18 or later. As a result,

View File

@ -272,7 +272,7 @@ const u8 = new Uint8Array(array);
## Web Browsers
:::warning pass
:::danger pass
Not all web APIs are supported in all browsers. For example, Firefox does not
support the "File System Access API".
@ -431,7 +431,7 @@ drop_dom_element.addEventListener("dragenter", suppress, false);
### File System Access API
:::warning Limited Browser Support
:::danger Limited Browser Support
At the time of writing, browser support was fairly limited. Chrome introduced
the feature in version 86. Safari did not support File System Access API.

View File

@ -9,7 +9,7 @@ sidebar_custom_props:
import CodeBlock from '@theme/CodeBlock';
:::warning pass
:::danger pass
WebSQL is no longer enabled by default in Chrome. Chrome 123 will officially
remove support. For SQL in the browser, there are a few alternatives:

View File

@ -11,7 +11,7 @@ sidebar_custom_props:
<script type="text/javascript" src="https://unpkg.com/dexie@3.2.4/dist/dexie.js"></script>
</head>
:::warning pass
:::danger pass
IndexedDB is a very low-level API.

View File

@ -33,7 +33,7 @@ This demo was last tested on 2023 September 30 using Lightning API version `58.0
:::
:::warning Telemetry
:::danger Telemetry
The Salesforce developer tools embed telemetry. It can be disabled by setting
the environment variable `SF_DISABLE_TELEMETRY` to `true` or by running
@ -316,7 +316,7 @@ cd SheetForce
npx @salesforce/cli lightning generate component --type lwc -n sheetComponent -d force-app/main/default/lwc
```
:::warning pass
:::danger pass
At the time of testing, the CLI tool created components with app version 59.
This version number is not valid for scratch orgs.
@ -501,7 +501,7 @@ The app will display the "SheetForce demo" text from the component template:
<ol start="16"><li><p>Download <a href={"https://cdn.sheetjs.com/xlsx-" + current + "/package/dist/xlsx.full.min.js"}>{"https://cdn.sheetjs.com/xlsx-" + current + "/package/dist/xlsx.full.min.js"}</a></p></li></ol>
:::warning pass
:::danger pass
**DO NOT "COPY AND PASTE"!** The file should be explicitly downloaded. Copying
and pasting corrupts the source code and the component will fail in subtle ways.

View File

@ -41,7 +41,7 @@ This demo was last tested on 2023 October 06.
## Telemetry
:::warning Telemetry
:::danger Telemetry
**Each command-line tool related to Azure embeds telemetry.**
@ -268,7 +268,7 @@ cd SheetJSAzure
func new --template httpTrigger --language JavaScript --name SheetJSAzure
```
:::warning pass
:::danger pass
When the demo was last tested, the stock TypeScript template did not work.

View File

@ -129,7 +129,7 @@ the source data or artifacts from the `postprocess` script changed.
### Post-Processing Data
:::warning pass
:::danger pass
The `flat-postprocessing` library includes a number of utilities for different
data formats. The `readXLSX` helper uses SheetJS under the hood.

View File

@ -38,7 +38,7 @@ imported from Deno Deploy server scripts.
### Supported Frameworks
:::warning pass
:::danger pass
Deno Deploy does not offer any sort of temporary file access in functions.

View File

@ -35,7 +35,7 @@ A workbook will be assembled and exported to Excel Binary workbooks (XLSB).
- "Exporting files": SheetJS libraries will read XLSX and ODS files exported by
Google Sheets and generate CSV rows from every worksheet.
:::warning pass
:::danger pass
It is strongly recommended to create a new Google account for testing.
@ -354,7 +354,7 @@ A valid phone number (for SMS verification) may be required.
1) Open https://console.cloud.google.com in a web browser. Review the Google
Cloud Platform Terms of Service.
:::warning pass
:::danger pass
You must agree to the Google Cloud Platform Terms of Service to use the APIs.

View File

@ -43,7 +43,7 @@ Excel 365 before running the demo.
:::
:::warning Telemetry
:::danger Telemetry
The Office Add-in CLI collects telemetry by default. It can be disabled:

View File

@ -148,7 +148,7 @@ SF_display("{stata import excel \"sheetjs.tmp.xlsx\", firstrow} will read the fi
The function will print the following text to the terminal:
<pre>
<span {...b}>import excel "sheetjs.tmp.xlsx", firstrow</span> will read the first sheet and use headers{'\n'}
<span {...b}>import excel "sheetjs.tmp.xlsx", firstrow</span> will read the first sheet and use headers
</pre>
The blue text is clickable. When a user clicks the text, the command
@ -402,17 +402,17 @@ plugin call cleanfile, "pres.numbers" verbose
The result will show the data from `pres.numbers`:
<pre>
<b>. plugin call cleanfile, "pres.numbers" verbose</b>{'\n'}
Worksheet 0 Name: Sheet1{'\n'}
Name,Index{'\n'}
Bill Clinton,42{'\n'}
GeorgeW Bush,43{'\n'}
Barack Obama,44{'\n'}
Donald Trump,45{'\n'}
Joseph Biden,46{'\n'}
{'\n'}
Saved to `sheetjs.tmp.xlsx`{'\n'}
<span {...b}>import excel "sheetjs.tmp.xlsx", firstrow</span> will read the first sheet and use headers{'\n'}
<b>. plugin call cleanfile, "pres.numbers" verbose</b>
Worksheet 0 Name: Sheet1
Name,Index
Bill Clinton,42
GeorgeW Bush,43
Barack Obama,44
Donald Trump,45
Joseph Biden,46
Saved to `sheetjs.tmp.xlsx`
<span {...b}>import excel "sheetjs.tmp.xlsx", firstrow</span> will read the first sheet and use headers
for more help, see <span {...b}>import excel</span>
</pre>
@ -440,7 +440,7 @@ import excel "sheetjs.tmp.xlsx", firstrow
The output will show the import result:
<pre>
<b>. import excel "sheetjs.tmp.xlsx", firstrow</b>{'\n'}
<b>. import excel "sheetjs.tmp.xlsx", firstrow</b>
(2 vars, 5 obs)
</pre>

View File

@ -78,7 +78,7 @@ In a CommonJS context, NodeJS Streams and `fs` immediately work with SheetJS:
const XLSX = require("xlsx"); // "just works"
```
:::warning ECMAScript Module Machinations
:::danger ECMAScript Module Machinations
In NodeJS ESM, the dependency must be loaded manually:

View File

@ -504,7 +504,7 @@ in the ["Large Datasets"](/docs/demos/bigdata/stream#browser) demo.
#### File System Access API
:::warning Browser Compatibility
:::danger Browser Compatibility
At the time of writing, the File System Access API is only available in Chromium
and Chromium-based browsers like Chrome and Edge.

View File

@ -14,7 +14,7 @@ passing is straightforward. The demo shows a standalone Swift sample for MacOS.
The [SheetJS Standalone scripts](/docs/getting-started/installation/standalone)
can be parsed and evaluated in a JSC context.
:::warning Platform Limitations
:::danger Platform Limitations
JavaScriptCore is primarily deployed in MacOS and iOS applications. There is
some experimental support through the Bun runtime, but apps intending to support

View File

@ -25,7 +25,7 @@ The ["Integration Example"](#integration-example) section includes a complete
command-line tool for reading arbitrary workbooks and writing data to XLSB
(Excel 2007+ Binary Format) workbooks.
:::warning Telemetry
:::danger Telemetry
**The `dotnet` command embeds telemetry.**

View File

@ -32,7 +32,7 @@ commit `15b323d`.
:::
:::warning pass
:::danger pass
The main target for Hermes is React Native. At the time of writing, there was
no official documentation for embedding the Hermes engine in C++ programs.

View File

@ -7,7 +7,7 @@ pagination_next: solutions/input
import current from '/version.js';
import CodeBlock from '@theme/CodeBlock';
:::warning pass
:::danger pass
In a production application, it is strongly recommended to use a binding for a
more performant engine like [`v8`](/docs/demos/engines/v8#rust)

View File

@ -7,7 +7,7 @@ pagination_next: solutions/input
import current from '/version.js';
import CodeBlock from '@theme/CodeBlock';
:::warning pass
:::danger pass
In a production application, it is strongly recommended to use a binding for a
C engine like [`JavaScript::Duktape`](/docs/demos/engines/duktape#perl)

View File

@ -41,7 +41,7 @@ The `readFile` method attempts to read a spreadsheet file at the supplied path.
The second `opts` argument is optional. ["Parsing Options"](/docs/api/parse-options)
covers the supported properties and behaviors.
:::warning pass
:::danger pass
Browsers generally do not allow reading files by specifying filename (it is a
security risk), and running `XLSX.readFile` in the browser will throw an error.

View File

@ -142,7 +142,7 @@ worker.addEventListener('message', function(e) {
<details>
<summary><b>SWF workaround for Windows 95+</b> (click to show)</summary>
:::warning pass
:::danger pass
Each moving part in this solution has been deprecated years ago:

View File

@ -652,7 +652,7 @@ strings instead of `Date` objects.
:::
:::warning pass
:::danger pass
JavaScript string to `Date` conversion is "implementation-dependent" and may
misinterpret some date formats. When designing APIs, it is strongly recommended

View File

@ -247,7 +247,7 @@ XLSX documents. A workaround was added in library version 0.18.12.
Tooltips are attached to hyperlink information. There is no way to specify a
tooltip without assigning a cell link.
:::warning pass
:::danger pass
**Excel has an undocumented tooltip length limit of 255 characters.**

View File

@ -35,7 +35,7 @@ outline levels above the grid.
SheetJS worksheet objects store column properties in the `!cols` field. It is
expected to be an array of column metadata objects.
:::warning Excel Bugs
:::danger Excel Bugs
For most common formats (XLSX, XLS), widths are tied to font metrics, which are
tied to Windows Scaling settings. In Windows 11, the Scale factor settings are

View File

@ -244,7 +244,7 @@ Old versions of the library did not automatically detect `ArrayBuffer` objects.
<details>
<summary><b>Workaround</b> (click to show)</summary>
:::warning Legacy workaround
:::danger Legacy workaround
This solution is not recommended for production deployments. Native support
for `ArrayBuffer` was added in library version `0.9.9`.

View File

@ -103,7 +103,7 @@ wsl --install Ubuntu
:::
:::warning pass
:::danger pass
**WSL will not run in a Windows on ARM VM on computers with the M1 CPU**