The Arelle iXBRL Viewer allows Inline XBRL (or iXBRL) reports to be viewed interactively in a web browser. The viewer allows users to access the tagged XBRL data embedded in an iXBRL report.
Other
93
stars
57
forks
source link
Bump the npm-dependencies group with 20 updates #622
The "preserve" JSX mode now preserves JSX text verbatim (#3605)
The JSX specification deliberately doesn't specify how JSX text is supposed to be interpreted and there is no canonical way to interpret JSX text. Two most popular interpretations are Babel and TypeScript. Yes they are different (esbuild deliberately follows TypeScript by the way).
Previously esbuild normalized text to the TypeScript interpretation when the "preserve" JSX mode is active. However, "preserve" should arguably reproduce the original JSX text verbatim so that whatever JSX transform runs after esbuild is free to interpret it however it wants. So with this release, esbuild will now pass JSX text through unmodified:
// Original code
let el =
<a href={'/'} title=''"'> some text
{foo}
more text </a>
// Old output (with --loader=jsx --jsx=preserve)
let el = <a href="/" title={'"}>
{" some text"}
{foo}
{"more text "}
</a>;
// New output (with --loader=jsx --jsx=preserve)
let el = <a href={"/"} title=''"'> some text
{foo}
more text </a>;
Allow JSX elements as JSX attribute values
JSX has an obscure feature where you can use JSX elements in attribute position without surrounding them with {...}. It looks like this:
let el = <div data-ab=<><a/><b/></>/>;
I think I originally didn't implement it even though it's part of the JSX specification because it previously didn't work in TypeScript (and potentially also in Babel?). However, support for it was silently added in TypeScript 4.8 without me noticing and Babel has also since fixed their bugs regarding this feature. So I'm adding it to esbuild too now that I know it's widely supported.
Keep in mind that there is some ongoing discussion about removing this feature from JSX. I agree that the syntax seems out of place (it does away with the elegance of "JSX is basically just XML with {...} escapes" for something arguably harder to read, which doesn't seem like a good trade-off), but it's in the specification and TypeScript and Babel both implement it so I'm going to have esbuild implement it too. However, I reserve the right to remove it from esbuild if it's ever removed from the specification in the future. So use it with caution.
This release fixes a bug with esbuild's TypeScript parser where a conditional type containing a union type that ends with an infer type that ends with a constraint could fail to parse. This was caused by the "don't parse a conditional type" flag not getting passed through the union type parser. Here's an example of valid TypeScript code that previously failed to parse correctly:
type InferUnion<T> = T extends { a: infer U extends number } | infer U extends number ? U : never
The "preserve" JSX mode now preserves JSX text verbatim (#3605)
The JSX specification deliberately doesn't specify how JSX text is supposed to be interpreted and there is no canonical way to interpret JSX text. Two most popular interpretations are Babel and TypeScript. Yes they are different (esbuild deliberately follows TypeScript by the way).
Previously esbuild normalized text to the TypeScript interpretation when the "preserve" JSX mode is active. However, "preserve" should arguably reproduce the original JSX text verbatim so that whatever JSX transform runs after esbuild is free to interpret it however it wants. So with this release, esbuild will now pass JSX text through unmodified:
// Original code
let el =
<a href={'/'} title=''"'> some text
{foo}
more text </a>
// Old output (with --loader=jsx --jsx=preserve)
let el = <a href="/" title={'"}>
{" some text"}
{foo}
{"more text "}
</a>;
// New output (with --loader=jsx --jsx=preserve)
let el = <a href={"/"} title=''"'> some text
{foo}
more text </a>;
Allow JSX elements as JSX attribute values
JSX has an obscure feature where you can use JSX elements in attribute position without surrounding them with {...}. It looks like this:
let el = <div data-ab=<><a/><b/></>/>;
I think I originally didn't implement it even though it's part of the JSX specification because it previously didn't work in TypeScript (and potentially also in Babel?). However, support for it was silently added in TypeScript 4.8 without me noticing and Babel has also since fixed their bugs regarding this feature. So I'm adding it to esbuild too now that I know it's widely supported.
Keep in mind that there is some ongoing discussion about removing this feature from JSX. I agree that the syntax seems out of place (it does away with the elegance of "JSX is basically just XML with {...} escapes" for something arguably harder to read, which doesn't seem like a good trade-off), but it's in the specification and TypeScript and Babel both implement it so I'm going to have esbuild implement it too. However, I reserve the right to remove it from esbuild if it's ever removed from the specification in the future. So use it with caution.
This release fixes a bug with esbuild's TypeScript parser where a conditional type containing a union type that ends with an infer type that ends with a constraint could fail to parse. This was caused by the "don't parse a conditional type" flag not getting passed through the union type parser. Here's an example of valid TypeScript code that previously failed to parse correctly:
type InferUnion<T> = T extends { a: infer U extends number } | infer U extends number ? U : never
Bumps the npm-dependencies group with 20 updates:
3.35.0
3.35.1
1.4.27
1.4.29
21.7.0
21.9.0
5.89.0
5.90.0
7.23.7
7.23.9
7.23.7
7.23.9
0.3.20
0.3.22
3.0.0
3.0.1
8.56.1
8.56.2
20.10.7
20.11.7
8.3.1
8.3.2
1.0.30001576
1.0.30001580
1.4.623
1.4.648
0.19.11
0.19.12
1.16.0
1.17.0
1.15.4
1.15.5
6.0.1
6.0.2
1.1.1
1.2.0
2.3.0
2.4.0
5.26.0
5.27.0
Updates
core-js
from 3.35.0 to 3.35.1Changelog
Sourced from core-js's changelog.
Commits
02c96bf
3.35.182ab796
minor fix of prototype methods export logic in the pure versiona92b8bb
fix a typo in a comment2e87d77
tweakString#split
setting299f9cd
fixed setting names of methods with symbol keys in some old engines3c592f0
removed significant redundant code fromString#split
polyfill3928aec
fix abstract operationf196dc2
dropforced: true
added for testing5b960e3
drop an extrastringIndexOf
fromes.string.replace-all
1cdaab2
bump current yearUpdates
write-excel-file
from 1.4.27 to 1.4.29Changelog
Sourced from write-excel-file's changelog.
... (truncated)
Commits
00995bd
1.4.29e3558e4
ChangedtextRotation
calculation formulabba5ad5
Comment on text rotation value range1c0e6a6
1.4.2858c4151
AddedtextRotation
property by@AlexisLeite
801c541
Images: added TypeScript and README1bec767
Added IMAGES.md in README.mdb9ce462
Create IMAGES.mdUpdates
puppeteer
from 21.7.0 to 21.9.0Release notes
Sourced from puppeteer's releases.
... (truncated)
Commits
d57b104
chore: release main (#11744)0eec94c
feat: roll to Chrome 121.0.6167.85 (r1233107) (#11743)2f87acc
chore: release main (#11742)df0c432
chore: disable eslint for herebyfile (#11741)415cfac
feat: roll to Chrome 120.0.6099.109 (r1217362) (#11733)b5e5086
build: regen package-lock.json (#11735)fa175a0
ci: limit PR CI to linux (#11738)6cbc58c
ci: test node-version-file (#11737)3ba6b2e
build(deps): update cosmiconfig (#11731)69e44fc
chore: handle disposal ofcore/bidi
resources (#11730)Updates
webpack
from 5.89.0 to 5.90.0Release notes
Sourced from webpack's releases.
Commits
4a26623
chore(release): 5.90.0f03e96e
fix: inner graph for classesb6c1430
test: added28948dd
fix: inner graph5a9ed6d
fix: inner graphc8d9d97
fix: inner graph for classes3022995
fix: inner graph for classesf857674
fix: worklet detection in production mode2d6f5fa
feat: allow to setfalse
for dev server644cd47
test: addedUpdates
@babel/core
from 7.23.7 to 7.23.9Release notes
Sourced from
@babel/core
's releases.... (truncated)
Changelog
Sourced from
@babel/core
's changelog.Commits
a0dd614
v7.23.9b2bbffb
Migrateeslint-parser
to cts (#16222)Updates
@babel/runtime
from 7.23.7 to 7.23.9Release notes
Sourced from
@babel/runtime
's releases.... (truncated)
Changelog
Sourced from
@babel/runtime
's changelog.Commits
a0dd614
v7.23.9218faee
Improve output ofusing
(#15959)80c554f
v7.23.87840c54
Improve output ofsuper()
(#16194)Updates
@jridgewell/trace-mapping
from 0.3.20 to 0.3.22Release notes
Sourced from
@jridgewell/trace-mapping
's releases.Commits
238e809
0.3.22f4a316e
Specify all exported types to unbreak TS v4.* (#34)b7599b3
0.3.21d04e7fe
Useexport type *
(#32)Updates
@sinonjs/commons
from 3.0.0 to 3.0.1Changelog
Sourced from
@sinonjs/commons
's changelog.Commits
4f87da4
3.0.1f82068f
chore: remove obsolete IE11 code5010ffe
fix: Use 'npm install' in workflow3f8a09e
Bump@babel/traverse
from 7.7.4 to 7.23.247c0044
Bump json5 from 2.1.1 to 2.2.3Updates
@types/eslint
from 8.56.1 to 8.56.2Commits
Updates
@types/node
from 20.10.7 to 20.11.7Commits
Updates
acorn-walk
from 8.3.1 to 8.3.2Commits
Updates
caniuse-lite
from 1.0.30001576 to 1.0.30001580Commits
f3ca351
Update caniuse-db 1.0.300015801e878c2
Update caniuse-db 1.0.300015798f07216
Update caniuse-db 1.0.30001578d7b5718
Update caniuse-db 1.0.30001577Updates
electron-to-chromium
from 1.4.623 to 1.4.648Commits
b0300aa
1.4.6488f0ac07
generate new versionf71e925
1.4.647544b6ba
generate new version24ca969
1.4.6464c9837a
generate new version87fbb3d
1.4.64553373eb
generate new version4fae9bf
1.4.644865fe12
generate new versionUpdates
esbuild
from 0.19.11 to 0.19.12Release notes
Sourced from esbuild's releases.
Changelog
Sourced from esbuild's changelog.
Commits
d7fd1ad
publish 0.19.12 to npme04a690
fix #3605: print the original JSX AST unmodifiedf571399
allow jsx elements as jsx attribute valuesa652e73
runmake update-compat-table
35c0d65
fix #3574: ts type parser bug with infer + extendsf6eae0c
fix #3569: incorrect ToInt32 behavior on riscv64Updates
fastq
from 1.16.0 to 1.17.0Release notes
Sourced from fastq's releases.
Commits
22d8dc1
Bumped v1.17.062eb43e
Consistently respect the configured concurrency (... _Description has been truncated_