lukeed/tidyPublic

chore: import bun's JS formatter

A verbatim copy of bun's JavaScript and TypeScript formatter, src/format
at f7607a3d (MIT): the printer, its IR, options, and the modules that
format CSS, Markdown, GraphQL and HTML in templates and JS in HTML and
Vue. It is outside the module tree until it builds on oxc's parser.
PROVENANCE.md maps each file to bun's, so later fixes apply as diffs.
LELuke Edwards authored
06907d8Patch
Parent1eb29c6
137 files changed+57318-0
StackedSplit
crates/tidy/src/js/PROVENANCE.md+12 โˆ’0
crates/tidy/src/js/ast_nodes.rs+1391 โˆ’0
crates/tidy/src/js/attach/debug.rs+113 โˆ’0
crates/tidy/src/js/attach/flow.rs+471 โˆ’0
crates/tidy/src/js/attach/mod.rs+412 โˆ’0
crates/tidy/src/js/attach/rules.rs+1459 โˆ’0
crates/tidy/src/js/attach/rules/oxfmt.rs+1836 โˆ’0
crates/tidy/src/js/attach/surrounding_nodes.rs+1091 โˆ’0
crates/tidy/src/js/builders.rs+289 โˆ’0
crates/tidy/src/js/bun_lib.rs+97 โˆ’0
crates/tidy/src/js/bun_mod.rs+36 โˆ’0
crates/tidy/src/js/comments.rs+681 โˆ’0
crates/tidy/src/js/context.rs+190 โˆ’0
crates/tidy/src/js/cursor.rs+1946 โˆ’0
crates/tidy/src/js/embed/css.rs+555 โˆ’0
crates/tidy/src/js/embed/graphql.rs+265 โˆ’0
crates/tidy/src/js/embed/html.rs+421 โˆ’0
crates/tidy/src/js/embed/markdown.rs+291 โˆ’0
crates/tidy/src/js/fields.rs+140 โˆ’0
crates/tidy/src/js/format.rs+1415 โˆ’0
crates/tidy/src/js/ir/builders.rs+724 โˆ’0
crates/tidy/src/js/ir/document.rs+497 โˆ’0
crates/tidy/src/js/ir/element.rs+587 โˆ’0
crates/tidy/src/js/ir/formatter.rs+1177 โˆ’0
crates/tidy/src/js/ir/macros.rs+42 โˆ’0
crates/tidy/src/js/ir/mod.rs+17 โˆ’0
crates/tidy/src/js/ir/printer/measure.rs+509 โˆ’0
crates/tidy/src/js/ir/printer/mod.rs+1304 โˆ’0
crates/tidy/src/js/ir/printer/output.rs+155 โˆ’0
crates/tidy/src/js/ir/run.rs+161 โˆ’0
crates/tidy/src/js/ir/width.rs+254 โˆ’0
crates/tidy/src/js/ir/width_tables.rs+834 โˆ’0
crates/tidy/src/js/jsdoc/embedded.rs+215 โˆ’0
crates/tidy/src/js/jsdoc/imports.rs+180 โˆ’0
crates/tidy/src/js/jsdoc/line_buffer.rs+74 โˆ’0
crates/tidy/src/js/jsdoc/markdown.rs+982 โˆ’0
crates/tidy/src/js/jsdoc/markers.rs+52 โˆ’0
crates/tidy/src/js/jsdoc/mod.rs+101 โˆ’0
crates/tidy/src/js/jsdoc/normalize.rs+739 โˆ’0
crates/tidy/src/js/jsdoc/param_order.rs+175 โˆ’0
crates/tidy/src/js/jsdoc/serialize.rs+631 โˆ’0
crates/tidy/src/js/jsdoc/tag_formatters.rs+720 โˆ’0
crates/tidy/src/js/jsdoc/text.rs+66 โˆ’0
crates/tidy/src/js/jsdoc/wrap.rs+282 โˆ’0
crates/tidy/src/js/options.rs+926 โˆ’0
crates/tidy/src/js/owners.rs+230 โˆ’0
crates/tidy/src/js/parentheses/expression.rs+1044 โˆ’0
crates/tidy/src/js/parentheses/mod.rs+6 โˆ’0
crates/tidy/src/js/parentheses/ts_type.rs+149 โˆ’0
crates/tidy/src/js/print/array_element_list.rs+122 โˆ’0
crates/tidy/src/js/print/array_expression.rs+56 โˆ’0
crates/tidy/src/js/print/arrow_function_expression.rs+774 โˆ’0
crates/tidy/src/js/print/as_or_satisfies_expression.rs+171 โˆ’0
crates/tidy/src/js/print/binary_like_expression.rs+834 โˆ’0
crates/tidy/src/js/print/block_statement.rs+54 โˆ’0
crates/tidy/src/js/print/call_like_expression/arguments.rs+1008 โˆ’0
crates/tidy/src/js/print/call_like_expression/mod.rs+283 โˆ’0
crates/tidy/src/js/print/class.rs+871 โˆ’0
crates/tidy/src/js/print/decorators.rs+147 โˆ’0
crates/tidy/src/js/print/export_declarations.rs+279 โˆ’0
crates/tidy/src/js/print/expressions.rs+386 โˆ’0
crates/tidy/src/js/print/flow.rs+1854 โˆ’0
crates/tidy/src/js/print/function.rs+363 โˆ’0
crates/tidy/src/js/print/function_type.rs+126 โˆ’0
crates/tidy/src/js/print/import_declaration.rs+356 โˆ’0
crates/tidy/src/js/print/intersection_type.rs+102 โˆ’0
crates/tidy/src/js/print/jsx/child_list.rs+662 โˆ’0
crates/tidy/src/js/print/jsx/element.rs+261 โˆ’0
crates/tidy/src/js/print/jsx/mod.rs+371 โˆ’0
crates/tidy/src/js/print/jsx/opening_element.rs+201 โˆ’0
crates/tidy/src/js/print/literals.rs+74 โˆ’0
crates/tidy/src/js/print/mapped_type.rs+121 โˆ’0
crates/tidy/src/js/print/member_expression.rs+358 โˆ’0
crates/tidy/src/js/print/mod.rs+40 โˆ’0
crates/tidy/src/js/print/object_like.rs+111 โˆ’0
crates/tidy/src/js/print/object_pattern_like.rs+178 โˆ’0
crates/tidy/src/js/print/parameters.rs+478 โˆ’0
crates/tidy/src/js/print/patterns.rs+119 โˆ’0
crates/tidy/src/js/print/program.rs+252 โˆ’0
crates/tidy/src/js/print/return_or_throw_statement.rs+290 โˆ’0
crates/tidy/src/js/print/semicolon.rs+13 โˆ’0
crates/tidy/src/js/print/sequence_expression.rs+67 โˆ’0
crates/tidy/src/js/print/statements.rs+769 โˆ’0
crates/tidy/src/js/print/switch_statement.rs+131 โˆ’0
crates/tidy/src/js/print/template.rs+597 โˆ’0
crates/tidy/src/js/print/try_statement.rs+130 โˆ’0
crates/tidy/src/js/print/ts_declarations.rs+651 โˆ’0
crates/tidy/src/js/print/ts_types.rs+911 โˆ’0
crates/tidy/src/js/print/tuple_type.rs+78 โˆ’0
crates/tidy/src/js/print/type_parameters.rs+305 โˆ’0
crates/tidy/src/js/print/union_type.rs+473 โˆ’0
crates/tidy/src/js/print/variable_declaration.rs+128 โˆ’0
crates/tidy/src/js/range.rs+513 โˆ’0
crates/tidy/src/js/sort.rs+9 โˆ’0
crates/tidy/src/js/sort_imports/babel.rs+793 โˆ’0
crates/tidy/src/js/sort_imports/compare.rs+501 โˆ’0
crates/tidy/src/js/sort_imports/generator.rs+885 โˆ’0
crates/tidy/src/js/sort_imports/ianvs.rs+766 โˆ’0
crates/tidy/src/js/sort_imports/layout.rs+172 โˆ’0
crates/tidy/src/js/sort_imports/mod.rs+92 โˆ’0
crates/tidy/src/js/sort_imports/native.rs+611 โˆ’0
crates/tidy/src/js/sort_imports/organize.rs+1589 โˆ’0
crates/tidy/src/js/sort_imports/oxfmt/mod.rs+12 โˆ’0
crates/tidy/src/js/sort_imports/oxfmt/options.rs+443 โˆ’0
crates/tidy/src/js/sort_imports/oxfmt/run.rs+638 โˆ’0
crates/tidy/src/js/sort_imports/settings.rs+393 โˆ’0
crates/tidy/src/js/sort_imports/sort.rs+16 โˆ’0
crates/tidy/src/js/sort_imports/trivago.rs+371 โˆ’0
crates/tidy/src/js/source_text.rs+216 โˆ’0
crates/tidy/src/js/stack.rs+52 โˆ’0
crates/tidy/src/js/template/js.rs+929 โˆ’0
crates/tidy/src/js/template/vue.rs+237 โˆ’0
crates/tidy/src/js/text.rs+232 โˆ’0
crates/tidy/src/js/trivia.rs+376 โˆ’0
crates/tidy/src/js/utils/array.rs+60 โˆ’0
crates/tidy/src/js/utils/assignment_like.rs+1204 โˆ’0
crates/tidy/src/js/utils/call_expression.rs+358 โˆ’0
crates/tidy/src/js/utils/conditional.rs+454 โˆ’0
crates/tidy/src/js/utils/es5_identifier_tables.rs+132 โˆ’0
crates/tidy/src/js/utils/experimental_ternary.rs+556 โˆ’0
crates/tidy/src/js/utils/expression.rs+100 โˆ’0
crates/tidy/src/js/utils/format_node_without_trailing_comments.rs+15 โˆ’0
crates/tidy/src/js/utils/jsx.rs+65 โˆ’0
crates/tidy/src/js/utils/member_chain/chain_member.rs+204 โˆ’0
crates/tidy/src/js/utils/member_chain/groups.rs+38 โˆ’0
crates/tidy/src/js/utils/member_chain/mod.rs+622 โˆ’0
crates/tidy/src/js/utils/member_chain/simple_argument.rs+127 โˆ’0
crates/tidy/src/js/utils/mod.rs+52 โˆ’0
crates/tidy/src/js/utils/number.rs+113 โˆ’0
crates/tidy/src/js/utils/object.rs+332 โˆ’0
crates/tidy/src/js/utils/operators.rs+115 โˆ’0
crates/tidy/src/js/utils/statement_body.rs+229 โˆ’0
crates/tidy/src/js/utils/string.rs+373 โˆ’0
crates/tidy/src/js/utils/suppressed.rs+61 โˆ’0
crates/tidy/src/js/utils/tailwindcss.rs+534 โˆ’0
crates/tidy/src/js/utils/typecast.rs+170 โˆ’0
crates/tidy/src/js/utils/typescript.rs+59 โˆ’0