diff --git a/docz/docs/02-getting-started/01-installation/01-standalone.mdx b/docz/docs/02-getting-started/01-installation/01-standalone.mdx index f7ed38b..8c80b0f 100644 --- a/docz/docs/02-getting-started/01-installation/01-standalone.mdx +++ b/docz/docs/02-getting-started/01-installation/01-standalone.mdx @@ -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. diff --git a/docz/docs/02-getting-started/01-installation/02-frameworks.md b/docz/docs/02-getting-started/01-installation/02-frameworks.md index 66e47b4..63a19b6 100644 --- a/docz/docs/02-getting-started/01-installation/02-frameworks.md +++ b/docz/docs/02-getting-started/01-installation/02-frameworks.md @@ -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! diff --git a/docz/docs/02-getting-started/01-installation/03-nodejs.md b/docz/docs/02-getting-started/01-installation/03-nodejs.md index 37f35fe..e091b8e 100644 --- a/docz/docs/02-getting-started/01-installation/03-nodejs.md +++ b/docz/docs/02-getting-started/01-installation/03-nodejs.md @@ -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: diff --git a/docz/docs/02-getting-started/01-installation/04-amd.md b/docz/docs/02-getting-started/01-installation/04-amd.md index cd2e5d3..4fc5e93 100644 --- a/docz/docs/02-getting-started/01-installation/04-amd.md +++ b/docz/docs/02-getting-started/01-installation/04-amd.md @@ -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 diff --git a/docz/docs/02-getting-started/01-installation/06-deno.md b/docz/docs/02-getting-started/01-installation/06-deno.md index 8bd997e..eb95bb0 100644 --- a/docz/docs/02-getting-started/01-installation/06-deno.md +++ b/docz/docs/02-getting-started/01-installation/06-deno.md @@ -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. diff --git a/docz/docs/02-getting-started/02-examples/02-export.mdx b/docz/docs/02-getting-started/02-examples/02-export.mdx index 7706687..7be3e0d 100644 --- a/docz/docs/02-getting-started/02-examples/02-export.mdx +++ b/docz/docs/02-getting-started/02-examples/02-export.mdx @@ -947,7 +947,7 @@ current Java releases. ::: -:::warning pass +:::danger pass There are a number of potential pitfalls. diff --git a/docz/docs/03-demos/02-frontend/02-react.md b/docz/docs/03-demos/02-frontend/02-react.md index 1490b26..c35d25b 100644 --- a/docz/docs/03-demos/02-frontend/02-react.md +++ b/docz/docs/03-demos/02-frontend/02-react.md @@ -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: diff --git a/docz/docs/03-demos/02-frontend/03-angular.md b/docz/docs/03-demos/02-frontend/03-angular.md index 55a1f4c..77832ce 100644 --- a/docz/docs/03-demos/02-frontend/03-angular.md +++ b/docz/docs/03-demos/02-frontend/03-angular.md @@ -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 diff --git a/docz/docs/03-demos/02-frontend/07-angularjs.md b/docz/docs/03-demos/02-frontend/07-angularjs.md index 9b52bec..0a20404 100644 --- a/docz/docs/03-demos/02-frontend/07-angularjs.md +++ b/docz/docs/03-demos/02-frontend/07-angularjs.md @@ -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). diff --git a/docz/docs/03-demos/02-frontend/08-dojo.md b/docz/docs/03-demos/02-frontend/08-dojo.md index 37b90ec..df57028 100644 --- a/docz/docs/03-demos/02-frontend/08-dojo.md +++ b/docz/docs/03-demos/02-frontend/08-dojo.md @@ -57,7 +57,7 @@ require( `} -:::warning pass +:::danger pass The official Google CDN does not have the newest releases of Dojo Toolkit diff --git a/docz/docs/03-demos/02-frontend/09-legacy.md b/docz/docs/03-demos/02-frontend/09-legacy.md index ec52da5..fd8e314 100644 --- a/docz/docs/03-demos/02-frontend/09-legacy.md +++ b/docz/docs/03-demos/02-frontend/09-legacy.md @@ -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. diff --git a/docz/docs/03-demos/02-frontend/19-bundler/05-webpack.md b/docz/docs/03-demos/02-frontend/19-bundler/05-webpack.md index 3313390..b411baa 100644 --- a/docz/docs/03-demos/02-frontend/19-bundler/05-webpack.md +++ b/docz/docs/03-demos/02-frontend/19-bundler/05-webpack.md @@ -260,7 +260,7 @@ npx webpack@3.x -p -:::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. diff --git a/docz/docs/03-demos/02-frontend/19-bundler/20-parcel.md b/docz/docs/03-demos/02-frontend/19-bundler/20-parcel.md index 9bda304..1e77998 100644 --- a/docz/docs/03-demos/02-frontend/19-bundler/20-parcel.md +++ b/docz/docs/03-demos/02-frontend/19-bundler/20-parcel.md @@ -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. diff --git a/docz/docs/03-demos/02-frontend/19-bundler/21-swcpack.md b/docz/docs/03-demos/02-frontend/19-bundler/21-swcpack.md index 2e635ab..8f87ae1 100644 --- a/docz/docs/03-demos/02-frontend/19-bundler/21-swcpack.md +++ b/docz/docs/03-demos/02-frontend/19-bundler/21-swcpack.md @@ -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: diff --git a/docz/docs/03-demos/03-net/01-network/index.mdx b/docz/docs/03-demos/03-net/01-network/index.mdx index bbc9d57..38b8abf 100644 --- a/docz/docs/03-demos/03-net/01-network/index.mdx +++ b/docz/docs/03-demos/03-net/01-network/index.mdx @@ -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. diff --git a/docz/docs/03-demos/03-net/04-email/index.md b/docz/docs/03-demos/03-net/04-email/index.md index 2d9573e..6c5164d 100644 --- a/docz/docs/03-demos/03-net/04-email/index.md +++ b/docz/docs/03-demos/03-net/04-email/index.md @@ -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 diff --git a/docz/docs/03-demos/03-net/08-headless/index.md b/docz/docs/03-demos/03-net/08-headless/index.md index f7b125c..d6c3460 100644 --- a/docz/docs/03-demos/03-net/08-headless/index.md +++ b/docz/docs/03-demos/03-net/08-headless/index.md @@ -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 diff --git a/docz/docs/03-demos/04-grid/16-rdg.md b/docz/docs/03-demos/04-grid/16-rdg.md index 20112e7..0386873 100644 --- a/docz/docs/03-demos/04-grid/16-rdg.md +++ b/docz/docs/03-demos/04-grid/16-rdg.md @@ -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. diff --git a/docz/docs/03-demos/04-grid/index.md b/docz/docs/03-demos/04-grid/index.md index ea6ec92..d6e7775 100644 --- a/docz/docs/03-demos/04-grid/index.md +++ b/docz/docs/03-demos/04-grid/index.md @@ -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. diff --git a/docz/docs/03-demos/12-static/02-gatsbyjs.md b/docz/docs/03-demos/12-static/02-gatsbyjs.md index cd0b062..2f5eeb7 100644 --- a/docz/docs/03-demos/12-static/02-gatsbyjs.md +++ b/docz/docs/03-demos/12-static/02-gatsbyjs.md @@ -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: diff --git a/docz/docs/03-demos/12-static/08-nextjs.md b/docz/docs/03-demos/12-static/08-nextjs.md index 415da60..2820103 100644 --- a/docz/docs/03-demos/12-static/08-nextjs.md +++ b/docz/docs/03-demos/12-static/08-nextjs.md @@ -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 -:::warning NextJS breaking changes +:::danger NextJS breaking changes **NextJS 14 removed the `export` subcommand!** diff --git a/docz/docs/03-demos/12-static/09-nuxtjs.md b/docz/docs/03-demos/12-static/09-nuxtjs.md index 146034b..191d730 100644 --- a/docz/docs/03-demos/12-static/09-nuxtjs.md +++ b/docz/docs/03-demos/12-static/09-nuxtjs.md @@ -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: diff --git a/docz/docs/03-demos/12-static/12-astro.md b/docz/docs/03-demos/12-static/12-astro.md index af505a2..00bc10b 100644 --- a/docz/docs/03-demos/12-static/12-astro.md +++ b/docz/docs/03-demos/12-static/12-astro.md @@ -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: diff --git a/docz/docs/03-demos/17-mobile/01-reactnative.md b/docz/docs/03-demos/17-mobile/01-reactnative.md index b0a07b7..aef729c 100644 --- a/docz/docs/03-demos/17-mobile/01-reactnative.md +++ b/docz/docs/03-demos/17-mobile/01-reactnative.md @@ -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!** diff --git a/docz/docs/03-demos/17-mobile/02-nativescript.md b/docz/docs/03-demos/17-mobile/02-nativescript.md index 0be30c2..16d1274 100644 --- a/docz/docs/03-demos/17-mobile/02-nativescript.md +++ b/docz/docs/03-demos/17-mobile/02-nativescript.md @@ -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: Expected output (click to hide)
- Getting environment information{'\n'}
-{'\n'}
-No issues were detected.{'\n'}
- Your ANDROID_HOME environment variable is set and points to correct directory.{'\n'}
- Your adb from the Android SDK is correctly installed.{'\n'}
- The Android SDK is installed.{'\n'}
- A compatible Android SDK for compilation is found.{'\n'}
- Javac is installed and is configured properly.{'\n'}
- The Java Development Kit (JDK) is installed and is configured properly.{'\n'}
- Getting NativeScript components versions information...{'\n'}
+ Getting environment information
+
+No issues were detected.
+ Your ANDROID_HOME environment variable is set and points to correct directory.
+ Your adb from the Android SDK is correctly installed.
+ The Android SDK is installed.
+ A compatible Android SDK for compilation is found.
+ Javac is installed and is configured properly.
+ The Java Development Kit (JDK) is installed and is configured properly.
+ Getting NativeScript components versions information...
  Component nativescript has 8.6.1 version and is up to date.
 
@@ -328,19 +328,19 @@ In the last macOS test, the following output was displayed: Expected output (click to hide)
- Getting environment information{'\n'}
-{'\n'}
-No issues were detected.{'\n'}
- Xcode is installed and is configured properly.{'\n'}
- xcodeproj is installed and is configured properly.{'\n'}
- CocoaPods are installed.{'\n'}
- CocoaPods update is not required.{'\n'}
- CocoaPods are configured properly.{'\n'}
- Your current CocoaPods version is newer than 1.0.0.{'\n'}
- Python installed and configured correctly.{'\n'}
- The Python 'six' package is found.{'\n'}
- Xcode version 15.0.1 satisfies minimum required version 10.{'\n'}
- Getting NativeScript components versions information...{'\n'}
+ Getting environment information
+
+No issues were detected.
+ Xcode is installed and is configured properly.
+ xcodeproj is installed and is configured properly.
+ CocoaPods are installed.
+ CocoaPods update is not required.
+ CocoaPods are configured properly.
+ Your current CocoaPods version is newer than 1.0.0.
+ Python installed and configured correctly.
+ The Python 'six' package is found.
+ Xcode version 15.0.1 satisfies minimum required version 10.
+ Getting NativeScript components versions information...
  Component nativescript has 8.6.1 version and is up to date.
 
@@ -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!** diff --git a/docz/docs/03-demos/17-mobile/04-ionic.md b/docz/docs/03-demos/17-mobile/04-ionic.md index 538bd75..56c3b86 100644 --- a/docz/docs/03-demos/17-mobile/04-ionic.md +++ b/docz/docs/03-demos/17-mobile/04-ionic.md @@ -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. diff --git a/docz/docs/03-demos/17-mobile/05-capacitor.md b/docz/docs/03-demos/17-mobile/05-capacitor.md index fe69b7f..e1977d7 100644 --- a/docz/docs/03-demos/17-mobile/05-capacitor.md +++ b/docz/docs/03-demos/17-mobile/05-capacitor.md @@ -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: diff --git a/docz/docs/03-demos/17-mobile/06-flutter.md b/docz/docs/03-demos/17-mobile/06-flutter.md index 02e18bd..254567c 100644 --- a/docz/docs/03-demos/17-mobile/06-flutter.md +++ b/docz/docs/03-demos/17-mobile/06-flutter.md @@ -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: diff --git a/docz/docs/03-demos/17-mobile/index.md b/docz/docs/03-demos/17-mobile/index.md index 8aa1d32..98c79c1 100644 --- a/docz/docs/03-demos/17-mobile/index.md +++ b/docz/docs/03-demos/17-mobile/index.md @@ -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!** diff --git a/docz/docs/03-demos/19-desktop/06-reactnative.md b/docz/docs/03-demos/19-desktop/06-reactnative.md index 8051314..651211e 100644 --- a/docz/docs/03-demos/19-desktop/06-reactnative.md +++ b/docz/docs/03-demos/19-desktop/06-reactnative.md @@ -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 diff --git a/docz/docs/03-demos/20-cli/index.md b/docz/docs/03-demos/20-cli/index.md index e00f64a..f0e444f 100644 --- a/docz/docs/03-demos/20-cli/index.md +++ b/docz/docs/03-demos/20-cli/index.md @@ -220,7 +220,7 @@ set PATH="C:\correct\path\to\python\three";%PATH%
-:::warning pass +:::danger pass When this demo was last tested, `pkg` failed with an error referencing `node20`: diff --git a/docz/docs/03-demos/23-data/16-postgresql.md b/docz/docs/03-demos/23-data/16-postgresql.md index 18de540..0c29404 100644 --- a/docz/docs/03-demos/23-data/16-postgresql.md +++ b/docz/docs/03-demos/23-data/16-postgresql.md @@ -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** diff --git a/docz/docs/03-demos/23-data/17-mariadb.md b/docz/docs/03-demos/23-data/17-mariadb.md index 5278e4c..bb95b75 100644 --- a/docz/docs/03-demos/23-data/17-mariadb.md +++ b/docz/docs/03-demos/23-data/17-mariadb.md @@ -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** diff --git a/docz/docs/03-demos/23-data/26-redis.md b/docz/docs/03-demos/23-data/26-redis.md index 680459b..4335614 100644 --- a/docz/docs/03-demos/23-data/26-redis.md +++ b/docz/docs/03-demos/23-data/26-redis.md @@ -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, diff --git a/docz/docs/03-demos/27-local/01-file.md b/docz/docs/03-demos/27-local/01-file.md index 0587f0c..38773cd 100644 --- a/docz/docs/03-demos/27-local/01-file.md +++ b/docz/docs/03-demos/27-local/01-file.md @@ -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. diff --git a/docz/docs/03-demos/27-local/02-websql.md b/docz/docs/03-demos/27-local/02-websql.md index c7aa96d..cf6f995 100644 --- a/docz/docs/03-demos/27-local/02-websql.md +++ b/docz/docs/03-demos/27-local/02-websql.md @@ -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: diff --git a/docz/docs/03-demos/27-local/09-indexeddb.md b/docz/docs/03-demos/27-local/09-indexeddb.md index 06e1755..fafba57 100644 --- a/docz/docs/03-demos/27-local/09-indexeddb.md +++ b/docz/docs/03-demos/27-local/09-indexeddb.md @@ -11,7 +11,7 @@ sidebar_custom_props: -:::warning pass +:::danger pass IndexedDB is a very low-level API. diff --git a/docz/docs/03-demos/30-cloud/01-salesforce.md b/docz/docs/03-demos/30-cloud/01-salesforce.md index f4329bf..8fbb813 100644 --- a/docz/docs/03-demos/30-cloud/01-salesforce.md +++ b/docz/docs/03-demos/30-cloud/01-salesforce.md @@ -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:
  1. Download {"https://cdn.sheetjs.com/xlsx-" + current + "/package/dist/xlsx.full.min.js"}

-:::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. diff --git a/docz/docs/03-demos/30-cloud/12-azure.md b/docz/docs/03-demos/30-cloud/12-azure.md index d351bfb..efcf78c 100644 --- a/docz/docs/03-demos/30-cloud/12-azure.md +++ b/docz/docs/03-demos/30-cloud/12-azure.md @@ -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. diff --git a/docz/docs/03-demos/30-cloud/18-github.md b/docz/docs/03-demos/30-cloud/18-github.md index 1bba822..a20df03 100644 --- a/docz/docs/03-demos/30-cloud/18-github.md +++ b/docz/docs/03-demos/30-cloud/18-github.md @@ -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. diff --git a/docz/docs/03-demos/30-cloud/19-deno.md b/docz/docs/03-demos/30-cloud/19-deno.md index 72e70c7..444a1c6 100644 --- a/docz/docs/03-demos/30-cloud/19-deno.md +++ b/docz/docs/03-demos/30-cloud/19-deno.md @@ -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. diff --git a/docz/docs/03-demos/30-cloud/21-gsheet.md b/docz/docs/03-demos/30-cloud/21-gsheet.md index 142d19c..21b734b 100644 --- a/docz/docs/03-demos/30-cloud/21-gsheet.md +++ b/docz/docs/03-demos/30-cloud/21-gsheet.md @@ -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. diff --git a/docz/docs/03-demos/32-extensions/03-excelapi.md b/docz/docs/03-demos/32-extensions/03-excelapi.md index 812d906..d7b0452 100644 --- a/docz/docs/03-demos/32-extensions/03-excelapi.md +++ b/docz/docs/03-demos/32-extensions/03-excelapi.md @@ -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: diff --git a/docz/docs/03-demos/32-extensions/10-stata.md b/docz/docs/03-demos/32-extensions/10-stata.md index 523a119..08d19b4 100644 --- a/docz/docs/03-demos/32-extensions/10-stata.md +++ b/docz/docs/03-demos/32-extensions/10-stata.md @@ -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:
-import excel "sheetjs.tmp.xlsx", firstrow will read the first sheet and use headers{'\n'}
+import excel "sheetjs.tmp.xlsx", firstrow will read the first sheet and use headers
 
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`:
-. plugin call cleanfile, "pres.numbers" verbose{'\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'}
-import excel "sheetjs.tmp.xlsx", firstrow will read the first sheet and use headers{'\n'}
+. plugin call cleanfile, "pres.numbers" verbose
+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`
+import excel "sheetjs.tmp.xlsx", firstrow will read the first sheet and use headers
 for more help, see import excel
 
@@ -440,7 +440,7 @@ import excel "sheetjs.tmp.xlsx", firstrow The output will show the import result:
-. import excel "sheetjs.tmp.xlsx", firstrow{'\n'}
+. import excel "sheetjs.tmp.xlsx", firstrow
 (2 vars, 5 obs)
 
diff --git a/docz/docs/03-demos/37-bigdata/01-stream.md b/docz/docs/03-demos/37-bigdata/01-stream.md index aee0215..2461834 100644 --- a/docz/docs/03-demos/37-bigdata/01-stream.md +++ b/docz/docs/03-demos/37-bigdata/01-stream.md @@ -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: diff --git a/docz/docs/03-demos/37-bigdata/02-worker.md b/docz/docs/03-demos/37-bigdata/02-worker.md index e6c9d5e..4c446ec 100644 --- a/docz/docs/03-demos/37-bigdata/02-worker.md +++ b/docz/docs/03-demos/37-bigdata/02-worker.md @@ -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. diff --git a/docz/docs/03-demos/42-engines/04-jsc.md b/docz/docs/03-demos/42-engines/04-jsc.md index d7de6a0..e2b59cf 100644 --- a/docz/docs/03-demos/42-engines/04-jsc.md +++ b/docz/docs/03-demos/42-engines/04-jsc.md @@ -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 diff --git a/docz/docs/03-demos/42-engines/05-jint.md b/docz/docs/03-demos/42-engines/05-jint.md index 355e986..5c554e8 100644 --- a/docz/docs/03-demos/42-engines/05-jint.md +++ b/docz/docs/03-demos/42-engines/05-jint.md @@ -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.** diff --git a/docz/docs/03-demos/42-engines/09-hermes.md b/docz/docs/03-demos/42-engines/09-hermes.md index b01df40..5cdebc8 100644 --- a/docz/docs/03-demos/42-engines/09-hermes.md +++ b/docz/docs/03-demos/42-engines/09-hermes.md @@ -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. diff --git a/docz/docs/03-demos/42-engines/21-boa.md b/docz/docs/03-demos/42-engines/21-boa.md index 47a6275..31c2a29 100644 --- a/docz/docs/03-demos/42-engines/21-boa.md +++ b/docz/docs/03-demos/42-engines/21-boa.md @@ -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) diff --git a/docz/docs/03-demos/42-engines/22-perl.md b/docz/docs/03-demos/42-engines/22-perl.md index af602f8..5d029c9 100644 --- a/docz/docs/03-demos/42-engines/22-perl.md +++ b/docz/docs/03-demos/42-engines/22-perl.md @@ -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) diff --git a/docz/docs/06-solutions/01-input.md b/docz/docs/06-solutions/01-input.md index 88c9270..0f261a6 100644 --- a/docz/docs/06-solutions/01-input.md +++ b/docz/docs/06-solutions/01-input.md @@ -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. diff --git a/docz/docs/06-solutions/05-output.md b/docz/docs/06-solutions/05-output.md index 706d82f..cb5376e 100644 --- a/docz/docs/06-solutions/05-output.md +++ b/docz/docs/06-solutions/05-output.md @@ -142,7 +142,7 @@ worker.addEventListener('message', function(e) {
SWF workaround for Windows 95+ (click to show) -:::warning pass +:::danger pass Each moving part in this solution has been deprecated years ago: diff --git a/docz/docs/07-csf/07-features/01-dates.md b/docz/docs/07-csf/07-features/01-dates.md index 0ab21ba..73805f6 100644 --- a/docz/docs/07-csf/07-features/01-dates.md +++ b/docz/docs/07-csf/07-features/01-dates.md @@ -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 diff --git a/docz/docs/07-csf/07-features/03-hyperlinks.md b/docz/docs/07-csf/07-features/03-hyperlinks.md index 6b576e1..4c223da 100644 --- a/docz/docs/07-csf/07-features/03-hyperlinks.md +++ b/docz/docs/07-csf/07-features/03-hyperlinks.md @@ -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.** diff --git a/docz/docs/07-csf/07-features/09-colprops.md b/docz/docs/07-csf/07-features/09-colprops.md index 369ff7a..ed7dbb7 100644 --- a/docz/docs/07-csf/07-features/09-colprops.md +++ b/docz/docs/07-csf/07-features/09-colprops.md @@ -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 diff --git a/docz/docs/09-miscellany/02-errors.md b/docz/docs/09-miscellany/02-errors.md index 65e04f7..cf0a2b0 100644 --- a/docz/docs/09-miscellany/02-errors.md +++ b/docz/docs/09-miscellany/02-errors.md @@ -244,7 +244,7 @@ Old versions of the library did not automatically detect `ArrayBuffer` objects.
Workaround (click to show) -:::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`. diff --git a/docz/docs/09-miscellany/05-contributing.md b/docz/docs/09-miscellany/05-contributing.md index d1cf4c8..049fdc8 100644 --- a/docz/docs/09-miscellany/05-contributing.md +++ b/docz/docs/09-miscellany/05-contributing.md @@ -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**