diff options
32 files changed, 5 insertions, 4190 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig index 5a58ba305..b69951377 100644 --- a/src/js_parser.zig +++ b/src/js_parser.zig @@ -1030,7 +1030,6 @@ const StaticSymbolName = struct { pub const setAttribute = NewStaticSymbol("setAttribute"); pub const effect = NewStaticSymbol("effect"); pub const delegateEvents = NewStaticSymbol("delegateEvents"); - pub const Solid = NewStaticSymbol("Solid"); pub const __merge = NewStaticSymbol("__merge"); }; @@ -2323,11 +2322,11 @@ pub const Parser = struct { if (!self.options.ts and self.options.features.is_macro_runtime) return try self._parse(JSParserMacro); if (self.options.ts and self.options.jsx.parse) { - return if (self.options.jsx.runtime != .solid) try self._parse(TSXParser) else try self._parse(SolidTSXParser); + return try self._parse(TSXParser); } else if (self.options.ts) { return try self._parse(TypeScriptParser); } else if (self.options.jsx.parse) { - return if (self.options.jsx.runtime != .solid) try self._parse(JSXParser) else try self._parse(SolidJSXParser); + return try self._parse(JSXParser); } else { return try self._parse(JavaScriptParser); } @@ -3069,114 +3068,6 @@ pub const Parser = struct { } } }, - .solid => { - p.resolveGeneratedSymbol(&p.solid.wrap); - p.resolveGeneratedSymbol(&p.solid.insert); - p.resolveGeneratedSymbol(&p.solid.template); - p.resolveGeneratedSymbol(&p.solid.delegateEvents); - p.resolveGeneratedSymbol(&p.solid.createComponent); - p.resolveGeneratedSymbol(&p.solid.setAttribute); - p.resolveGeneratedSymbol(&p.solid.effect); - p.resolveGeneratedSymbol(&p.solid.namespace); - - const import_count = - @as(usize, @boolToInt(p.symbols.items[p.solid.wrap.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.insert.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.template.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.delegateEvents.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.createComponent.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.setAttribute.ref.innerIndex()].use_count_estimate > 0)) + - @as(usize, @boolToInt(p.symbols.items[p.solid.effect.ref.innerIndex()].use_count_estimate > 0)); - var import_items = try p.allocator.alloc(js_ast.ClauseItem, import_count); - - // 1. Inject the part containing template declarations and Solid's import statement - var stmts_to_inject = p.allocator.alloc(Stmt, @as(usize, @boolToInt(p.solid.template_decls.count() > 0)) + @as(usize, @boolToInt(import_count > 0 and p.options.features.auto_import_jsx))) catch unreachable; - var j: usize = 0; - const order = .{ - "createComponent", - "delegateEvents", - "effect", - "insert", - "setAttribute", - "template", - "wrap", - }; - - var stmts_remain = stmts_to_inject; - - if (stmts_to_inject.len > 0) { - var declared_symbols = p.allocator.alloc(js_ast.DeclaredSymbol, p.solid.template_decls.count()) catch unreachable; - var import_record_ids: []u32 = &[_]u32{}; - - if (p.options.features.auto_import_jsx) { - try p.named_imports.ensureUnusedCapacity(import_count); - try p.is_import_item.ensureUnusedCapacity(p.allocator, @intCast(u32, import_count)); - const import_record_id = p.addImportRecord(.stmt, logger.Loc.Empty, p.options.jsx.import_source); - - inline for (order) |field_name| { - const ref = @field(p.solid, field_name).ref; - if (p.symbols.items[ref.innerIndex()].use_count_estimate > 0) { - import_items[j] = js_ast.ClauseItem{ - .alias = field_name, - .name = .{ .loc = logger.Loc.Empty, .ref = ref }, - .alias_loc = logger.Loc.Empty, - .original_name = "", - }; - - p.named_imports.putAssumeCapacity( - ref, - js_ast.NamedImport{ - .alias = p.symbols.items[ref.innerIndex()].original_name, - .alias_is_star = false, - .alias_loc = logger.Loc.Empty, - .namespace_ref = p.solid.namespace.ref, - .import_record_index = import_record_id, - }, - ); - p.is_import_item.putAssumeCapacity(ref, .{}); - j += 1; - } - } - - p.import_records.items[import_record_id].tag = .jsx_import; - stmts_remain[0] = p.s( - S.Import{ - .namespace_ref = p.solid.namespace.ref, - .star_name_loc = null, - .is_single_line = true, - .import_record_index = import_record_id, - .items = import_items, - }, - logger.Loc.Empty, - ); - stmts_remain = stmts_remain[1..]; - import_record_ids = p.allocator.alloc(u32, 1) catch unreachable; - import_record_ids[0] = import_record_id; - } - - if (p.solid.template_decls.count() > 0) { - for (p.solid.template_decls.values()) |val, i| { - declared_symbols[i] = js_ast.DeclaredSymbol{ - .ref = val.binding.data.b_identifier.ref, - .is_top_level = true, - }; - } - stmts_remain[0] = p.s( - S.Local{ - .decls = p.solid.template_decls.values(), - }, - logger.Loc.Empty, - ); - } - - before.append(js_ast.Part{ - .stmts = stmts_to_inject, - .declared_symbols = declared_symbols, - .import_record_indices = import_record_ids, - .tag = .jsx_import, - }) catch unreachable; - } - }, else => {}, } @@ -3505,340 +3396,8 @@ const JSXTransformType = enum { none, react, macro, - solid, -}; - -const SolidJS = struct { - namespace: GeneratedSymbol = undefined, - wrap: GeneratedSymbol = undefined, - insert: GeneratedSymbol = undefined, - template: GeneratedSymbol = undefined, - delegateEvents: GeneratedSymbol = undefined, - createComponent: GeneratedSymbol = undefined, - setAttribute: GeneratedSymbol = undefined, - effect: GeneratedSymbol = undefined, - - events_to_delegate: Event.Bitset = .{}, - template_decls: std.ArrayHashMapUnmanaged(u32, G.Decl, bun.ArrayIdentityContext, false) = .{}, - is_in_jsx_component: bool = false, - - stack: Stack = .{}, - - pub const ExpressionTransform = union(enum) { - class: void, - nativeEvent: void, - nativeEventCaptured: void, - style: void, - setAttribute: void, - event: Event, - - pub fn which(key: []const u8) ExpressionTransform { - const len = key.len; - if (len < 3) - return .{ .setAttribute = {} }; - - if (strings.hasPrefixComptime(key, "on:")) { - return .{ .nativeEvent = {} }; - } - - if (strings.hasPrefixComptime(key, "oncapture:")) { - return .{ .nativeEventCaptured = {} }; - } - - if (Event.map.get(key)) |event| { - return .{ .event = event }; - } - - switch (key.len) { - "class".len => { - if (strings.eqlComptime(key, "class")) - return .{ .class = {} }; - - if (strings.eqlComptime(key, "style")) - return .{ .style = {} }; - - return .{ .setAttribute = {} }; - }, - "className".len => { - if (strings.eqlComptime(key, "className")) - return .{ .class = {} }; - return .{ .setAttribute = {} }; - }, - else => return .{ .setAttribute = {} }, - } - } - }; - - pub const Stack = struct { - component_body: std.ArrayListUnmanaged(Stmt) = .{}, - component_body_decls: std.ArrayListUnmanaged(G.Decl) = .{}, - last_template_id: E.Identifier = .{}, - last_element_id: E.Identifier = .{}, - temporary_scope: Scope = Scope{ - .kind = .function_body, - .parent = null, - }, - prev_scope: ?*Scope = null, - node_count: u32 = 0, - - current_template_string: MutableString = .{ - .allocator = undefined, - .list = .{}, - }, - buffered_writer: MutableString.BufferedWriter = undefined, - - element_counter: u32 = 0, - }; - - pub fn generateElementName(this: *SolidJS, allocator: std.mem.Allocator) string { - if (this.stack.component_body_decls.items.len <= prefilled_element_names.len) { - return prefilled_element_names[this.stack.component_body_decls.items.len]; - } - return std.fmt.allocPrint(allocator, "_el${d}", .{this.stack.component_body_decls.items.len}) catch unreachable; - } - - pub fn generateTemplateName(this: *SolidJS, allocator: std.mem.Allocator) string { - if (this.template_decls.count() <= prefilled_template_names.len) { - return prefilled_template_names[this.template_decls.count()]; - } - return std.fmt.allocPrint(allocator, "_tmpl${d}", .{this.template_decls.count()}) catch unreachable; - } - - pub fn generateElement(solid: *SolidJS, p: anytype, template_expression: Expr, value_loc: logger.Loc) !E.Identifier { - var name = solid.generateElementName(p.allocator); - - var prev_scope = p.current_scope; - p.current_scope = &solid.stack.temporary_scope; - const ref = p.declareSymbolMaybeGenerated(.import, value_loc, name, true) catch unreachable; - p.current_scope = prev_scope; - const element = .{ .ref = ref }; - var decl_value: Expr = undefined; - var decls = &solid.stack.component_body_decls; - - switch (decls.items.len) { - 0 => { - decl_value = p.e( - E.Call{ - .target = p.e( - E.Dot{ - .name = "cloneNode", - .name_loc = value_loc, - .target = template_expression, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }, - template_expression.loc, - ), - .args = ExprNodeList.init(true_args), - .can_be_unwrapped_if_unused = true, - }, - value_loc, - ); - p.recordUsage(template_expression.data.e_identifier.ref); - }, - 1 => { - const ident = E.Identifier{ .ref = decls.items[decls.items.len - 1].binding.data.b_identifier.ref }; - decl_value = p.e( - E.Dot{ - .target = .{ - .data = .{ .e_identifier = ident }, - .loc = value_loc, - }, - .name = "firstChild", - .name_loc = template_expression.loc, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }, - value_loc, - ); - p.recordUsage(ident.ref); - }, - else => { - const ident = E.Identifier{ .ref = decls.items[decls.items.len - 1].binding.data.b_identifier.ref }; - decl_value = p.e(E.Dot{ - .target = .{ - .data = .{ .e_identifier = ident }, - .loc = value_loc, - }, - .name_loc = template_expression.loc, - .name = "nextSibling", - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }, value_loc); - p.recordUsage(ident.ref); - }, - } - try decls.append( - p.allocator, - G.Decl{ .binding = p.b(B.Identifier{ .ref = ref }, template_expression.loc), .value = decl_value }, - ); - return element; - } - - pub const Event = enum { - beforeinput, - click, - dblclick, - contextmenu, - focusin, - focusout, - input, - keydown, - keyup, - mousedown, - mousemove, - mouseout, - mouseover, - mouseup, - pointerdown, - pointermove, - pointerout, - pointerover, - pointerup, - touchend, - touchmove, - touchstart, - - pub const setter_names = std.enums.EnumArray(Event, string).init( - .{ - .beforeinput = "$$beforeinput", - .click = "$$click", - .dblclick = "$$dblclick", - .contextmenu = "$$contextmenu", - .focusin = "$$focusin", - .focusout = "$$focusout", - .input = "$$input", - .keydown = "$$keydown", - .keyup = "$$keyup", - .mousedown = "$$mousedown", - .mousemove = "$$mousemove", - .mouseout = "$$mouseout", - .mouseover = "$$mouseover", - .mouseup = "$$mouseup", - .pointerdown = "$$pointerdown", - .pointermove = "$$pointermove", - .pointerout = "$$pointerout", - .pointerover = "$$pointerover", - .pointerup = "$$pointerup", - .touchend = "$$touchend", - .touchmove = "$$touchmove", - .touchstart = "$$touchstart", - }, - ); - - pub inline fn setter(this: Event) string { - return setter_names.get(this); - } - - pub const map = ComptimeStringMap( - Event, - .{ - .{ "onbeforeinput", Event.beforeinput }, - .{ "onclick", Event.click }, - .{ "ondblclick", Event.dblclick }, - .{ "oncontextmenu", Event.contextmenu }, - .{ "onfocusin", Event.focusin }, - .{ "onfocusout", Event.focusout }, - .{ "oninput", Event.input }, - .{ "onkeydown", Event.keydown }, - .{ "onkeyup", Event.keyup }, - .{ "onmousedown", Event.mousedown }, - .{ "onmousemove", Event.mousemove }, - .{ "onmouseout", Event.mouseout }, - .{ "onmouseover", Event.mouseover }, - .{ "onmouseup", Event.mouseup }, - .{ "onpointerdown", Event.pointerdown }, - .{ "onpointermove", Event.pointermove }, - .{ "onpointerout", Event.pointerout }, - .{ "onpointerover", Event.pointerover }, - .{ "onpointerup", Event.pointerup }, - .{ "ontouchend", Event.touchend }, - .{ "ontouchmove", Event.touchmove }, - .{ "ontouchstart", Event.touchstart }, - .{ "onbeforeinput", Event.beforeinput }, - .{ "onClick", Event.click }, - .{ "onDblclick", Event.dblclick }, - .{ "onContextMenu", Event.contextmenu }, - .{ "onFocusIn", Event.focusin }, - .{ "onFocusOut", Event.focusout }, - .{ "onInput", Event.input }, - .{ "onKeydown", Event.keydown }, - .{ "onKeyup", Event.keyup }, - .{ "onMouseDown", Event.mousedown }, - .{ "onMouseMove", Event.mousemove }, - .{ "onMouseOut", Event.mouseout }, - .{ "onMouseOver", Event.mouseover }, - .{ "onMouseUp", Event.mouseup }, - .{ "onPointerDown", Event.pointerdown }, - .{ "onPointerMove", Event.pointermove }, - .{ "onPointerOut", Event.pointerout }, - .{ "onPointerOver", Event.pointerover }, - .{ "onPointerUp", Event.pointerup }, - .{ "onTouchEnd", Event.touchend }, - .{ "onTouchMove", Event.touchmove }, - .{ "onTouchStart", Event.touchstart }, - }, - ); - - pub const Bitset = std.enums.EnumSet(Event); - }; - - const prefilled_element_names = [_]string{ - "_el", - "_el$1", - "_el$2", - "_el$3", - "_el$4", - "_el$5", - "_el$6", - "_el$7", - "_el$8", - "_el$9", - "_el$10", - "_el$11", - "_el$12", - "_el$13", - "_el$14", - "_el$15", - "_el$16", - "_el$17", - "_el$18", - "_el$19", - "_el$20", - "_el$21", - }; - const prefilled_template_names = [_]string{ - "_tmpl", - "_tmpl$1", - "_tmpl$2", - "_tmpl$3", - "_tmpl$4", - "_tmpl$5", - "_tmpl$6", - "_tmpl$7", - "_tmpl$8", - "_tmpl$9", - "_tmpl$10", - "_tmpl$11", - "_tmpl$12", - "_tmpl$13", - "_tmpl$14", - "_tmpl$15", - "_tmpl$16", - "_tmpl$17", - "_tmpl$18", - "_tmpl$19", - "_tmpl$20", - "_tmpl$21", - }; }; -fn GetSolidJSSymbols(comptime jsx: JSXTransformType) type { - if (jsx != .solid) - return void; - - return SolidJS; -} const ParserFeatures = struct { typescript: bool = false, jsx: JSXTransformType = JSXTransformType.none, @@ -4052,8 +3611,6 @@ fn NewParser_( // only applicable when is_react_fast_refresh_enabled jsx_refresh_runtime: GeneratedSymbol = GeneratedSymbol{ .ref = Ref.None, .primary = Ref.None, .backup = Ref.None }, - solid: GetSolidJSSymbols(jsx_transform_type) = if (jsx_transform_type == JSXTransformType.solid) SolidJS{} else void{}, - bun_jsx_ref: Ref = Ref.None, // Imports (both ES6 and CommonJS) are tracked at the top level @@ -5053,18 +4610,7 @@ fn NewParser_( p.jsx_automatic = p.declareGeneratedSymbol(.other, "ImportSource") catch unreachable; } }, - .solid => { - p.solid.insert = p.declareGeneratedSymbol(.other, "insert") catch unreachable; - p.solid.template = p.declareGeneratedSymbol(.other, "template") catch unreachable; - p.solid.wrap = p.declareGeneratedSymbol(.other, "wrap") catch unreachable; - p.solid.namespace = p.declareGeneratedSymbol(.other, "Solid") catch unreachable; - p.solid.delegateEvents = p.declareGeneratedSymbol(.other, "delegateEvents") catch unreachable; - p.solid.createComponent = p.declareGeneratedSymbol(.other, "createComponent") catch unreachable; - p.solid.setAttribute = p.declareGeneratedSymbol(.other, "setAttribute") catch unreachable; - p.solid.effect = p.declareGeneratedSymbol(.other, "effect") catch unreachable; - p.solid.stack.current_template_string = MutableString.initEmpty(p.allocator); - p.solid.stack.buffered_writer = p.solid.stack.current_template_string.bufferedWriter(); - }, + .macro => { p.bun_jsx_ref = p.declareSymbol(.other, logger.Loc.Empty, "bunJSX") catch unreachable; BunJSX.bun_jsx_identifier = E.Identifier{ @@ -12315,14 +11861,6 @@ fn NewParser_( value = p.e(E.Boolean{ .value = true }, logger.Loc{ .start = key_range.loc.start + key_range.len }); } else { value = try p.parseJSXPropValueIdentifier(&previous_string_with_backslash_loc); - if (comptime jsx_transform_type == .solid) { - switch (value.knownPrimitive()) { - .unknown => { - flags.insert(.has_any_dynamic); - }, - else => {}, - } - } } try props.append(G.Property{ .key = prop_name, .value = value }); @@ -12374,15 +11912,6 @@ fn NewParser_( return error.SyntaxError; }; - if (comptime jsx_transform_type == .solid) { - switch (expr.knownPrimitive()) { - .unknown => { - flags.insert(.has_any_dynamic); - }, - else => {}, - } - } - try props.append(G.Property{ .value = expr, .key = key, .kind = .normal }); }, // This implements @@ -12483,18 +12012,7 @@ fn NewParser_( // The expression is optional, and may be absent if (p.lexer.token != .t_close_brace) { - if (comptime jsx_transform_type == .solid) { - const child = try p.parseExpr(.lowest); - switch (child.knownPrimitive()) { - .unknown => { - flags.insert(.has_any_dynamic); - }, - else => {}, - } - try children.append(child); - } else { - try children.append(try p.parseExpr(.lowest)); - } + try children.append(try p.parseExpr(.lowest)); } // Use ExpectJSXElementChild() so we parse child strings @@ -12506,44 +12024,8 @@ fn NewParser_( if (p.lexer.token != .t_slash) { // This is a child element - if (comptime jsx_transform_type == .solid) { - const child = try p.parseJSXElement(less_than_loc); - - // if (!flags.contains(.has_dynamic_children)) { - // if (@as(Expr.Tag, child.data) == .e_jsx_element) { - // if (child.data.e_jsx_element.flags.contains(.has_dynamic_children) or child.data.e_jsx_element.flags.contains(.has_dynamic_prop)) { - // flags.insert(.has_dynamic_children); - - // } - // } else { - // switch (child.knownPrimitive()) { - // .unknown => { - // flags.insert(.has_dynamic_children); - // }, - // else => {}, - // } - // } - // } - - if (!flags.contains(.has_any_dynamic)) { - if (@as(Expr.Tag, child.data) == .e_jsx_element) { - if (child.data.e_jsx_element.flags.contains(.has_any_dynamic)) { - flags.insert(.has_any_dynamic); - } - } else { - switch (child.knownPrimitive()) { - .unknown => { - flags.insert(.has_any_dynamic); - }, - else => {}, - } - } - } - children.append(child) catch unreachable; - } else { - children.append(try p.parseJSXElement(less_than_loc)) catch unreachable; - } + children.append(try p.parseJSXElement(less_than_loc)) catch unreachable; // The call to parseJSXElement() above doesn't consume the last // TGreaterThan because the caller knows what Next() function to call. @@ -13100,613 +12582,6 @@ fn NewParser_( var writer = WriterType.initWriter(p, &BunJSX.bun_jsx_identifier); return writer.writeFunctionCall(e_.*); }, - .solid => { - // The rules: - // 1. HTML string literals of static JSX elements are generated & escaped, injected at the top of the file - // 1a. Static elements are contiguous in the HTML, but dynamic elements get a marker string during if client-side hydration - // Each element becomes a declaration in the top-level scope of the JSX expression (i.e. either the anonymous IIFE or an array) - // Those elements may be markers - // The final count of the markers is passed to the template function - // 3. The first element in a a group of elements becomes .cloneNode(true) - // Subsequent elements call .nextSibling on the previous element. - // The specific function differs if SSR is enabled and if client-side hydration is enabled. - // 4. Non-static JSX children are added like this: - // insert(topElement, createComponent(MyComponent, props), markerElement) - // 5. Non-statically analyzable attributes are added like this: - // setAttribute(topElement, "data-foo", "bar") - var global_solid = &p.solid; - var symbols = global_solid; - - var solid = &global_solid.stack; - - const old_is_in_jsx_component = global_solid.is_in_jsx_component; - global_solid.is_in_jsx_component = true; - defer global_solid.is_in_jsx_component = old_is_in_jsx_component; - - if (!old_is_in_jsx_component) { - solid.current_template_string.reset(); - solid.buffered_writer.pos = 0; - solid.component_body.clearRetainingCapacity(); - solid.component_body_decls.clearRetainingCapacity(); - - // prepend an empty statement - // this will later become an S.Local for the decls - solid.component_body.append(p.allocator, p.s(S.Empty{}, expr.loc)) catch unreachable; - - solid.last_element_id = E.Identifier{}; - solid.prev_scope = p.current_scope; - solid.temporary_scope.reset(); - solid.node_count = 0; - solid.temporary_scope.kind = .function_body; - solid.temporary_scope.parent = p.current_scope; - - solid.last_template_id.ref = Ref.None; - } - - var writer = &solid.buffered_writer; - - // The JSX tag used - const tag: Expr = tagger: { - if (e_.tag) |_tag| { - break :tagger p.visitExpr(_tag); - } else { - break :tagger p.e(E.Array{}, expr.loc); - } - }; - - const jsx_props = e_.properties.slice(); - - var template_expression = Expr{ .loc = expr.loc, .data = .{ .e_identifier = solid.last_template_id } }; - var element: ?E.Identifier = null; - var needs_end_bracket = false; - var children = e_.children.slice(); - defer { - if (old_is_in_jsx_component) { - if (element) |el| { - solid.last_element_id = el; - } - } - } - switch (tag.data) { - .e_string => { - // write the template - _ = writer.writeAll("<") catch unreachable; - _ = writer.writeString(tag.data.e_string) catch unreachable; - needs_end_bracket = true; - - for (jsx_props) |*property, i| { - if (property.kind != .spread) { - property.key = p.visitExpr(e_.properties.ptr[i].key.?); - } - - if (property.value != null) { - property.value = p.visitExpr(e_.properties.ptr[i].value.?); - - if (property.kind != .spread) { - var key = property.key.?.data.e_string; - - const transform: SolidJS.ExpressionTransform = - if (key.isUTF8()) - SolidJS.ExpressionTransform.which(key.slice(p.allocator)) - else - SolidJS.ExpressionTransform{ .setAttribute = {} }; - - const primitive = @as(Expr.Tag, property.value.?.data); - const is_dynamic = switch (primitive) { - .e_string, .e_number, .e_boolean, .e_null, .e_undefined => false, - else => true, - }; - do_transform: { - var out: Expr = p.e(E.Missing{}, expr.loc); - var needs_wrap = false; - if (is_dynamic) { - if (template_expression.data.e_identifier.ref.isNull()) { - var new_template_name = global_solid.generateTemplateName(p.allocator); - // declare the template in the module scope - solid.prev_scope = p.current_scope; - p.current_scope = p.module_scope; - solid.last_template_id = .{ - .ref = p.declareSymbolMaybeGenerated(.other, expr.loc, new_template_name, true) catch unreachable, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }; - p.current_scope = solid.prev_scope.?; - template_expression = .{ .loc = expr.loc, .data = .{ .e_identifier = solid.last_template_id } }; - } - - if (element == null) { - element = global_solid.generateElement( - p, - template_expression, - property.value.?.loc, - ) catch unreachable; - } - } - - if (!is_dynamic and (transform == .class or transform == .style or transform == .setAttribute)) { - switch (transform) { - .class => { - switch (property.value.?.data) { - .e_string => |str| { - if (str.len() == 0) break :do_transform; - _ = writer.writeAll(" class=\"") catch unreachable; - _ = writer.writeHTMLAttributeValueString(str) catch unreachable; - _ = writer.writeAll("\"") catch unreachable; - }, - .e_number => |num| { - writer.writer().print(" class={d}", .{num.value}) catch unreachable; - }, - else => {}, - } - }, - .setAttribute => { - _ = writer.writeAll(" ") catch unreachable; - _ = writer.writeString(property.key.?.data.e_string) catch unreachable; - - switch (property.value.?.data) { - .e_string => |str| { - if (str.len() == 0) break :do_transform; - _ = writer.writeAll("=\"") catch unreachable; - _ = writer.writeHTMLAttributeValueString(str) catch unreachable; - _ = writer.writeAll("\"") catch unreachable; - }, - .e_number => |num| { - writer.writer().print("={d}", .{num.value}) catch unreachable; - }, - else => {}, - } - }, - .style => {}, - else => unreachable, - } - } else { - switch (transform) { - .nativeEvent, .nativeEventCaptured => { - var args = p.allocator.alloc(Expr, 2 + @as(usize, @boolToInt(transform == .nativeEventCaptured))) catch unreachable; - - // on:MyEvent => MyEvent - property.key.?.data.e_string.data = property.key.?.data.e_string.data[3..]; - - args[0] = property.key.?; - args[1] = property.value.?; - - if (transform == .nativeEventCaptured) { - args[2] = p.e(E.Boolean{ .value = true }, property.key.?.loc); - } - // $element.addEventListener("MyEvent", (e) => { ... }); - out = p.e( - E.Call{ - .target = p.e( - E.Dot{ - .target = p.e( - element.?, - expr.loc, - ), - .name = "addEventListener", - .name_loc = property.key.?.loc, - }, - property.key.?.loc, - ), - .args = ExprNodeList.init(args), - }, - property.key.?.loc, - ); - - p.recordUsage(element.?.ref); - }, - .style => {}, - .class, .setAttribute => { - var args = p.allocator.alloc(Expr, 4) catch unreachable; - args[0] = p.e(element.?, expr.loc); - args[1] = property.key.?; - args[2] = property.value.?; - - // setAttribute(template_expression, key, value); - out = p.e( - E.Call{ - .target = p.e( - E.Identifier{ - .ref = symbols.setAttribute.ref, - .can_be_removed_if_unused = false, - .call_can_be_unwrapped_if_unused = false, - }, - property.value.?.loc, - ), - .args = ExprNodeList.init(args[0..3]), - }, - property.key.?.loc, - ); - - p.recordUsage(symbols.setAttribute.ref); - if (args[2].data == .e_identifier or args[2].data == .e_import_identifier) { - if (args[2].data == .e_identifier) p.recordUsage(args[2].data.e_identifier.ref); - if (args[2].data == .e_import_identifier) p.recordUsage(args[2].data.e_import_identifier.ref); - } else { - needs_wrap = true; - } - }, - .event => |event| { - out = p.e( - E.Binary{ - .left = p.e(E.Dot{ - .target = p.e(element.?, property.key.?.loc), - .name = event.setter(), - .name_loc = property.key.?.loc, - }, property.key.?.loc), - .op = js_ast.Op.Code.bin_assign, - .right = property.value.?, - }, - property.key.?.loc, - ); - needs_wrap = switch (property.value.?.data) { - .e_arrow, .e_function => false, - else => true, - }; - global_solid.events_to_delegate.insert(event); - }, - } - - var stmt: Stmt = undefined; - - if (needs_wrap) { - var stmts = p.allocator.alloc(Stmt, 1) catch unreachable; - stmts[0] = p.s(S.Return{ .value = out }, property.value.?.loc); - var args = p.allocator.alloc(Expr, 1) catch unreachable; - args[0] = p.e( - E.Arrow{ - .args = &[_]G.Arg{}, - .body = G.FnBody{ - .stmts = stmts, - .loc = out.loc, - }, - }, - property.value.?.loc, - ); - stmt = p.s(S.SExpr{ - .value = p.e( - E.Call{ - .target = p.e( - E.Identifier{ - .ref = symbols.effect.ref, - }, - property.value.?.loc, - ), - .args = ExprNodeList.init(args), - }, - property.value.?.loc, - ), - }, property.value.?.loc); - p.recordUsage(symbols.effect.ref); - } else { - stmt = p.s(S.SExpr{ - .value = out, - }, property.value.?.loc); - } - - solid.component_body.append(p.allocator, stmt) catch unreachable; - } - } - } - } - - if (property.initializer != null) { - property.initializer = p.visitExpr(e_.properties.ptr[i].initializer.?); - } - } - - const start_node_count = solid.node_count; - for (children) |*el, k| { - if (needs_end_bracket and el.data == .e_jsx_element) { - _ = writer.writeAll(">") catch unreachable; - solid.node_count += 1; - - needs_end_bracket = false; - } - - const child = p.visitExpr(el.*); - switch (child.data) { - // skip it - .e_missing => {}, - - // we need to serialize it to HTML - // it's probably a text node - .e_string => |str| { - if (str.len() > 0) { - if (needs_end_bracket) { - _ = writer.writeAll(">") catch unreachable; - solid.node_count += 1; - needs_end_bracket = false; - } - writer.writeHTMLAttributeValueString(str) catch unreachable; - } - }, - .e_number => |str| { - if (needs_end_bracket) { - _ = writer.writeAll(">") catch unreachable; - needs_end_bracket = false; - } - writer.writer().print("{d}", .{str.value}) catch unreachable; - }, - - // debug assertion that we don't get here - .e_jsx_element => unreachable, - - else => { - if (template_expression.data.e_identifier.ref.isNull()) { - var new_template_name = global_solid.generateTemplateName(p.allocator); - // declare the template in the module scope - p.current_scope = p.module_scope; - solid.last_template_id = .{ - .ref = p.declareSymbolMaybeGenerated(.other, expr.loc, new_template_name, true) catch unreachable, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }; - p.current_scope = solid.prev_scope.?; - template_expression = .{ .loc = expr.loc, .data = .{ .e_identifier = solid.last_template_id } }; - } - p.recordUsage(symbols.insert.ref); - p.recordUsage(template_expression.data.e_identifier.ref); - var args = p.allocator.alloc(Expr, 3) catch unreachable; - args[0..3].* = .{ - template_expression, - child, - if (k != children.len - 1 and !solid.last_element_id.ref.eql(Ref.None)) - p.e(solid.last_element_id, expr.loc) - else - p.e(E.Null{}, expr.loc), - }; - solid.node_count += 1; - solid.component_body.append( - p.allocator, - p.s( - S.SExpr{ - .value = p.e( - E.Call{ - .target = p.e(E.ImportIdentifier{ .ref = symbols.insert.ref }, child.loc), - .args = ExprNodeList.init(args), - }, - child.loc, - ), - }, - child.loc, - ), - ) catch unreachable; - }, - } - } - - if (start_node_count != solid.node_count) { - solid.node_count += 1; - _ = writer.writeAll("</") catch unreachable; - _ = writer.writeString(tag.data.e_string) catch unreachable; - _ = writer.writeAll(">") catch unreachable; - } else if (needs_end_bracket) { - _ = writer.writeAll("/>") catch unreachable; - } - - // this is the root of a template tag, we just finished - // <div> - // /* some stuff in here */ - // </div> - // ^ - // we are here! - if (!old_is_in_jsx_component) { - if (p.is_control_flow_dead) { - solid.node_count = 0; - return p.e(E.Missing{}, expr.loc); - } - - var hash: u64 = 0; - // we are done, so it's time to turn our template into a string we can write - // note that we are writing as UTF-8 but the input may be UTF-16 or UTF-8, depending. - if (writer.pos == 0 and writer.context.list.items.len == 0) {} else if (writer.pos < writer.buffer.len and writer.context.list.items.len == 0) { - hash = std.hash.Wyhash.hash(0, writer.buffer[0..writer.pos]); - } else { - var hasher = std.hash.Wyhash.init(0); - hasher.update(writer.context.list.items); - hasher.update(writer.buffer[0..writer.pos]); - hash = hasher.final(); - } - - var gpe = global_solid.template_decls.getOrPut(p.allocator, @truncate(u32, hash)) catch unreachable; - - if (template_expression.data.e_identifier.ref.isNull()) { - var new_template_name = global_solid.generateTemplateName(p.allocator); - // declare the template in the module scope - p.current_scope = p.module_scope; - solid.last_template_id = .{ - .ref = p.declareSymbolMaybeGenerated(.other, expr.loc, new_template_name, true) catch unreachable, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }; - p.current_scope = solid.prev_scope.?; - template_expression = .{ .loc = expr.loc, .data = .{ .e_identifier = solid.last_template_id } }; - } - - if (!gpe.found_existing) { - var args = p.allocator.alloc(Expr, 2) catch unreachable; - - if (writer.pos == 0 and writer.context.list.items.len == 0) { - args[0] = p.e(E.String.init(""), expr.loc); - } else if (writer.pos < writer.buffer.len and writer.context.list.items.len == 0) { - args[0] = p.e(E.String.init(p.allocator.dupe(u8, writer.buffer[0..writer.pos]) catch unreachable), expr.loc); - } else { - const total = writer.context.list.items.len + writer.pos; - var buffer = p.allocator.alloc(u8, total) catch unreachable; - @memcpy(buffer.ptr, writer.context.list.items.ptr, writer.context.list.items.len); - @memcpy(buffer.ptr + writer.context.list.items.len, &writer.buffer, writer.buffer.len); - args[0] = p.e(E.String.init(buffer), expr.loc); - } - - args[1] = p.e(E.Number{ .value = @intToFloat(f64, solid.node_count) }, expr.loc); - solid.node_count = 0; - - gpe.value_ptr.* = G.Decl{ - .binding = p.b(B.Identifier{ .ref = template_expression.data.e_identifier.ref }, template_expression.loc), - .value = p.e( - E.Call{ - .args = ExprNodeList.init(args), - .target = p.e( - E.ImportIdentifier{ - .ref = symbols.template.ref, - }, - expr.loc, - ), - .can_be_unwrapped_if_unused = true, - }, - template_expression.loc, - ), - }; - } else { - // link the template to the existing decl - // this will cause the printer to use the existing template - p.symbols.items[template_expression.data.e_identifier.ref.innerIndex()].link = gpe.value_ptr.binding.data.b_identifier.ref; - } - p.recordUsage(symbols.template.ref); - - // 1 means it was actually static - // that means we can just turn it into a single $template.cloneNode(true) - if (solid.component_body.items.len == 1) { - return p.e(E.Call{ - .target = p.e( - E.Dot{ - .name = "cloneNode", - .name_loc = expr.loc, - .target = template_expression, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }, - template_expression.loc, - ), - .args = ExprNodeList.init(true_args), - .can_be_unwrapped_if_unused = true, - }, expr.loc); - } - if (solid.component_body_decls.items.len == 0) { - solid.component_body_decls.ensureTotalCapacityPrecise(p.allocator, 1) catch unreachable; - solid.component_body_decls.appendAssumeCapacity(G.Decl{ - .binding = p.b(B.Identifier{ .ref = solid.last_template_id.ref }, expr.loc), - .value = p.e(E.Call{ - .target = p.e( - E.Dot{ - .name = "cloneNode", - .name_loc = expr.loc, - .target = template_expression, - .can_be_removed_if_unused = true, - .call_can_be_unwrapped_if_unused = true, - }, - template_expression.loc, - ), - .args = ExprNodeList.init(true_args), - .can_be_unwrapped_if_unused = true, - }, expr.loc), - }); - } - - // we need to wrap the template in a function - const ret = p.e(E.Identifier{ .ref = solid.component_body_decls.items[0].binding.data.b_identifier.ref }, expr.loc); - solid.component_body.items[0] = p.s(S.Local{ .decls = solid.component_body_decls.toOwnedSlice(p.allocator) }, expr.loc); - solid.component_body.append(p.allocator, p.s(S.Return{ .value = ret }, expr.loc)) catch unreachable; - return p.e( - E.Arrow{ .args = &[_]G.Arg{}, .body = G.FnBody{ .stmts = solid.component_body.toOwnedSlice(p.allocator), .loc = expr.loc } }, - expr.loc, - ); - // we don't need to return anything because it's a static element that will live in the template - } else { - return p.e(E.Missing{}, expr.loc); - } - }, - .e_dot, .e_import_identifier, .e_identifier => { - var out_props = p.allocator.alloc(G.Property, jsx_props.len + @as(usize, @boolToInt(e_.key != null)) + @as(usize, @boolToInt(e_.children.len > 0))) catch unreachable; - var out_props_i: usize = 0; - for (jsx_props) |property, i| { - if (property.kind != .spread) { - e_.properties.ptr[i].key = p.visitExpr(e_.properties.ptr[i].key.?); - } - - if (property.value != null) { - e_.properties.ptr[i].value = p.visitExpr(e_.properties.ptr[i].value.?); - } - - if (property.initializer != null) { - e_.properties.ptr[i].initializer = p.visitExpr(e_.properties.ptr[i].initializer.?); - } - - if (property.kind != .spread) { - const kind = if (property.value.?.data == .e_arrow or property.value.?.data == .e_function) - G.Property.Kind.get - else - G.Property.Kind.normal; - - out_props[out_props_i] = G.Property{ - .key = property.key, - .value = if (kind != .get) - property.value.? - else - property.value.?.wrapInArrow(p.allocator) catch unreachable, - - .kind = kind, - }; - out_props_i += 1; - } - } - - if (e_.key) |k| { - const key = p.visitExpr(k); - if (key.data != .e_missing) { - const kind = if (key.data == .e_arrow or key.data == .e_function) - Property.Kind.get - else - Property.Kind.normal; - - out_props[out_props_i] = G.Property{ - .key = p.e(Prefill.String.Key, k.loc), - .value = key, - .kind = kind, - }; - out_props_i += 1; - } - } - - var out_child_i: usize = 0; - for (children) |child, j| { - children[j] = p.visitExpr(child); - if (children[j].data != .e_missing) { - children[out_child_i] = children[j]; - out_child_i += 1; - } - } - - if (out_child_i > 0) { - const kind = Property.Kind.get; - - out_props[out_props_i] = G.Property{ - .key = p.e(Prefill.String.Children, expr.loc), - .value = p.e(E.Array{ .items = ExprNodeList.init(children[0..out_child_i]) }, expr.loc), - .kind = kind, - }; - out_props_i += 1; - } - - var args = p.allocator.alloc(Expr, 2) catch unreachable; - args[0] = tag; - args[1] = p.e(E.Object{ - .properties = G.Property.List.init(out_props[0..out_props_i]), - }, expr.loc); - p.recordUsage(symbols.createComponent.ref); - return p.e( - E.Call{ - .target = p.e(E.ImportIdentifier{ .ref = symbols.createComponent.ref }, expr.loc), - .args = ExprNodeList.init(args), - .close_paren_loc = e_.close_tag_loc, - }, - expr.loc, - ); - }, - .e_array => {}, - else => unreachable, - } - }, .react => { const tag: Expr = tagger: { if (e_.tag) |_tag| { @@ -19273,9 +18148,6 @@ const JavaScriptParser = NewParser(.{}); const JSXParser = NewParser(.{ .jsx = .react }); const TSXParser = NewParser(.{ .jsx = .react, .typescript = true }); const TypeScriptParser = NewParser(.{ .typescript = true }); -const SolidJSXParser = NewParser(.{ .jsx = .solid }); -const SolidTSXParser = NewParser(.{ .jsx = .solid, .typescript = true }); - const JSParserMacro = NewParser(.{ .jsx = .macro, }); diff --git a/test/bun.js/solid-dom-fixtures/SVG/code.js b/test/bun.js/solid-dom-fixtures/SVG/code.js deleted file mode 100644 index 9f8b508f7..000000000 --- a/test/bun.js/solid-dom-fixtures/SVG/code.js +++ /dev/null @@ -1,74 +0,0 @@ -const template = ( - <svg width="400" height="180"> - <rect - stroke-width="2" - x="50" - y="20" - rx="20" - ry="20" - width="150" - height="150" - style="fill:red;stroke:black;stroke-width:5;opacity:0.5" - /> - <linearGradient gradientTransform="rotate(25)"> - <stop offset="0%" /> - </linearGradient> - </svg> -); - -const template2 = ( - <svg width="400" height="180"> - <rect - className={state.name} - stroke-width={state.width} - x={state.x} - y={state.y} - rx="20" - ry="20" - width="150" - height="150" - style={{ - fill: "red", - stroke: "black", - "stroke-width": props.stroke, - opacity: 0.5, - }} - /> - </svg> -); - -const template3 = ( - <svg width="400" height="180"> - <rect {...props} /> - </svg> -); - -const template4 = <rect x="50" y="20" width="150" height="150" />; - -const template5 = ( - <> - <rect x="50" y="20" width="150" height="150" /> - </> -); - -const template6 = ( - <Component> - <rect x="50" y="20" width="150" height="150" /> - </Component> -); - -const template7 = ( - <svg viewBox={"0 0 160 40"} xmlns="http://www.w3.org/2000/svg"> - <a xlink:href={url}> - <text x="10" y="25"> - MDN Web Docs - </text> - </a> - </svg> -); - -const template8 = ( - <svg viewBox={"0 0 160 40"} xmlns="http://www.w3.org/2000/svg"> - <text x="10" y="25" textContent={text} /> - </svg> -); diff --git a/test/bun.js/solid-dom-fixtures/SVG/output.bun.js b/test/bun.js/solid-dom-fixtures/SVG/output.bun.js deleted file mode 100644 index 44d092f15..000000000 --- a/test/bun.js/solid-dom-fixtures/SVG/output.bun.js +++ /dev/null @@ -1,33 +0,0 @@ -var _tmpl$1 = _template$('<svg width="400" height="180"><rect stroke-width="2" x="50" y="20" rx="20" ry="20" width="150" height="150"/><linearGradient gradientTransform="rotate(25)"><stop offset="0%"/></linearGradient></svg>', 4), _tmpl$2 = _template$('<svg width="400" height="180"><rect rx="20" ry="20" width="150" height="150"/></svg>', 2), _tmpl$3 = _template$('<svg width="400" height="180"><rect/></svg>', 2), _tmpl$4 = _template$('<rect x="50" y="20" width="150" height="150"/>', 0), _tmpl$5 = _template$('<svg viewBox="0 0 160 40" xmlns="http://www.w3.org/2000/svg"><a><text x="10" y="25">MDN Web Docs</text></a></svg>', 6), _tmpl$6 = _template$('<svg viewBox="0 0 160 40" xmlns="http://www.w3.org/2000/svg"><text x="10" y="25"/></svg>', 2); -const template = _tmpl$1.cloneNode(true); -const template2 = () => { - var _el = _tmpl$1.cloneNode(true); - effect(() => { - return setAttribute(_el, "className", state.name); - }); - effect(() => { - return setAttribute(_el, "stroke-width", state.width); - }); - effect(() => { - return setAttribute(_el, "x", state.x); - }); - effect(() => { - return setAttribute(_el, "y", state.y); - }); - ; - return _el; -}; -const template3 = _tmpl$3.cloneNode(true); -const template4 = _tmpl$4.cloneNode(true); -const template5 = ; -const template6 = createComponent(Component, {}); -const template7 = () => { - var _el = _tmpl$4.cloneNode(true); - setAttribute(_el, "xlink:href", url); - return _el; -}; -const template8 = () => { - var _el = _tmpl$5.cloneNode(true); - setAttribute(_el, "textContent", text); - return _el; -}; diff --git a/test/bun.js/solid-dom-fixtures/SVG/output.js b/test/bun.js/solid-dom-fixtures/SVG/output.js deleted file mode 100644 index edac460af..000000000 --- a/test/bun.js/solid-dom-fixtures/SVG/output.js +++ /dev/null @@ -1,108 +0,0 @@ -import { template as _$template } from "r-dom"; -import { setAttributeNS as _$setAttributeNS } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; -import { spread as _$spread } from "r-dom"; -import { setAttribute as _$setAttribute } from "r-dom"; -import { effect as _$effect } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template( - `<svg width="400" height="180"><rect stroke-width="2" x="50" y="20" rx="20" ry="20" width="150" height="150" style="fill:red;stroke:black;stroke-width:5;opacity:0.5"></rect><linearGradient gradientTransform="rotate(25)"><stop offset="0%"></stop></linearGradient></svg>`, - 8 - ), - _tmpl$2 = /*#__PURE__*/ _$template( - `<svg width="400" height="180"><rect rx="20" ry="20" width="150" height="150"></rect></svg>`, - 4 - ), - _tmpl$3 = /*#__PURE__*/ _$template( - `<svg width="400" height="180"><rect></rect></svg>`, - 4 - ), - _tmpl$4 = /*#__PURE__*/ _$template( - `<svg><rect x="50" y="20" width="150" height="150"></rect></svg>`, - 4, - true - ), - _tmpl$5 = /*#__PURE__*/ _$template( - `<svg viewBox="0 0 160 40" xmlns="http://www.w3.org/2000/svg"><a><text x="10" y="25">MDN Web Docs</text></a></svg>`, - 6 - ), - _tmpl$6 = /*#__PURE__*/ _$template( - `<svg viewBox="0 0 160 40" xmlns="http://www.w3.org/2000/svg"><text x="10" y="25"></text></svg>`, - 4 - ); - -const template = _tmpl$.cloneNode(true); - -const template2 = (() => { - const _el$2 = _tmpl$2.cloneNode(true), - _el$3 = _el$2.firstChild; - - _el$3.style.setProperty("fill", "red"); - - _el$3.style.setProperty("stroke", "black"); - - _el$3.style.setProperty("opacity", "0.5"); - - _$effect( - (_p$) => { - const _v$ = state.name, - _v$2 = state.width, - _v$3 = state.x, - _v$4 = state.y, - _v$5 = props.stroke; - _v$ !== _p$._v$ && _$setAttribute(_el$3, "class", (_p$._v$ = _v$)); - _v$2 !== _p$._v$2 && - _$setAttribute(_el$3, "stroke-width", (_p$._v$2 = _v$2)); - _v$3 !== _p$._v$3 && _$setAttribute(_el$3, "x", (_p$._v$3 = _v$3)); - _v$4 !== _p$._v$4 && _$setAttribute(_el$3, "y", (_p$._v$4 = _v$4)); - _v$5 !== _p$._v$5 && - _el$3.style.setProperty("stroke-width", (_p$._v$5 = _v$5)); - return _p$; - }, - { - _v$: undefined, - _v$2: undefined, - _v$3: undefined, - _v$4: undefined, - _v$5: undefined, - } - ); - - return _el$2; -})(); - -const template3 = (() => { - const _el$4 = _tmpl$3.cloneNode(true), - _el$5 = _el$4.firstChild; - - _$spread(_el$5, props, true, false); - - return _el$4; -})(); - -const template4 = _tmpl$4.cloneNode(true); - -const template5 = _tmpl$4.cloneNode(true); - -const template6 = _$createComponent(Component, { - get children() { - return _tmpl$4.cloneNode(true); - }, -}); - -const template7 = (() => { - const _el$9 = _tmpl$5.cloneNode(true), - _el$10 = _el$9.firstChild; - - _$setAttributeNS(_el$10, "http://www.w3.org/1999/xlink", "xlink:href", url); - - return _el$9; -})(); - -const template8 = (() => { - const _el$11 = _tmpl$6.cloneNode(true), - _el$12 = _el$11.firstChild; - - _el$12.textContent = text; - return _el$11; -})(); diff --git a/test/bun.js/solid-dom-fixtures/attributeExpressions/code.js b/test/bun.js/solid-dom-fixtures/attributeExpressions/code.js deleted file mode 100644 index e6822ec0c..000000000 --- a/test/bun.js/solid-dom-fixtures/attributeExpressions/code.js +++ /dev/null @@ -1,115 +0,0 @@ -const selected = true; -let id = "my-h1"; -let link; -const template = ( - <div - id="main" - {...results} - classList={{ selected: unknown }} - style={{ color }} - > - <h1 - class="base" - id={id} - {...results()} - disabled - readonly="" - title={welcoming()} - style={{ "background-color": color(), "margin-right": "40px" }} - classList={{ dynamic: dynamic(), selected }} - > - <a href={"/"} ref={link} classList={{ "ccc ddd": true }} readonly={value}> - Welcome - </a> - </h1> - </div> -); - -const template2 = ( - <div {...getProps("test")}> - <div textContent={rowId} /> - <div textContent={row.label} /> - <div innerHTML={"<div/>"} /> - </div> -); - -const template3 = ( - <div - id={/*@once*/ state.id} - style={/*@once*/ { "background-color": state.color }} - name={state.name} - textContent={/*@once*/ state.content} - /> -); - -const template4 = ( - <div class="hi" className={state.class} classList={{ "ccc:ddd": true }} /> -); - -const template5 = <div class="a" className="b" />; - -const template6 = <div style={someStyle()} textContent="Hi" />; - -const template7 = ( - <div - style={{ - "background-color": color(), - "margin-right": "40px", - ...props.style, - }} - style:padding-top={props.top} - class:my-class={props.active} - /> -); - -let refTarget; -const template8 = <div ref={refTarget} />; - -const template9 = <div ref={(e) => console.log(e)} />; - -const template10 = <div ref={refFactory()} />; - -const template11 = <div use:something use:another={thing} use:zero={0} />; - -const template12 = <div prop:htmlFor={thing} />; - -const template13 = <input type="checkbox" checked={true} />; - -const template14 = <input type="checkbox" checked={state.visible} />; - -const template15 = <div class="`a">`$`</div>; - -const template16 = ( - <button - class="static" - classList={{ - hi: "k", - }} - type="button" - > - Write - </button> -); - -const template17 = ( - <button - classList={{ - a: true, - b: true, - c: true, - }} - onClick={increment} - > - Hi - </button> -); - -const template18 = ( - <div - {...{ - get [key()]() { - return props.value; - }, - }} - /> -); diff --git a/test/bun.js/solid-dom-fixtures/attributeExpressions/output.bun.js b/test/bun.js/solid-dom-fixtures/attributeExpressions/output.bun.js deleted file mode 100644 index 4bb3e1b39..000000000 --- a/test/bun.js/solid-dom-fixtures/attributeExpressions/output.bun.js +++ /dev/null @@ -1,155 +0,0 @@ -var _tmpl = _template$( - '<div id="main"><h1 class="base" disabled readonly><a href="/">Welcome</a></h1></div>', - 6 - ), - _tmpl$2 = _template$( - '<div><div/><div/><div innerHTML="<div/>"/></div>', - 2 - ), - _tmpl$2 = _template$("<div/>", 0), - _tmpl$3 = _template$('<div class="hi"/>', 0), - _tmpl$5 = _template$('<div class="a" class="b"/>', 0), - _tmpl$5 = _template$('<div textContent="Hi"/>', 0), - _tmpl$6 = _template$("<div use:something use:zero=0/>", 0), - _tmpl$8 = _template$('<input type="checkbox" checked/>', 0), - _tmpl$8 = _template$('<input type="checkbox"/>', 0), - _tmpl$10 = _template$('<div class="`a">`$`</div>', 2), - _tmpl$10 = _template$( - '<button class="static" type="button">Write</button>', - 2 - ), - _tmpl$11 = _template$("<button>Hi</button>", 2); -const selected = true; -let id = "my-h1"; -let link; -const template = () => { - var _el = _tmpl.cloneNode(true), - _el$1 = _el.firstChild, - _el$2 = _el$1.nextSibling; - effect(() => { - return setAttribute(_el, "classList", { selected: unknown }); - }); - setAttribute(_el$1, "id", id); - effect(() => { - return setAttribute(_el$1, "title", welcoming()); - }); - effect(() => { - return setAttribute(_el$1, "classList", { dynamic: dynamic(), selected }); - }); - setAttribute(_el$2, "ref", link); - effect(() => { - return setAttribute(_el$2, "classList", { "ccc ddd": true }); - }); - setAttribute(_el$2, "readonly", value); - return _el; -}; -const template2 = () => { - var _el = _tmpl$1.cloneNode(true), - _el$1 = _el.firstChild; - setAttribute(_el, "textContent", rowId); - effect(() => { - return setAttribute(_el$1, "textContent", row.label); - }); - return _el; -}; -const template3 = () => { - var _el = _tmpl$2.cloneNode(true); - effect(() => { - return setAttribute(_el, "id", state.id); - }); - effect(() => { - return setAttribute(_el, "name", state.name); - }); - effect(() => { - return setAttribute(_el, "textContent", state.content); - }); - return _el; -}; -const template4 = () => { - var _el = _tmpl$3.cloneNode(true); - effect(() => { - return setAttribute(_el, "className", state.class); - }); - effect(() => { - return setAttribute(_el, "classList", { "ccc:ddd": true }); - }); - return _el; -}; -const template5 = _tmpl$5.cloneNode(true); -const template6 = () => { - var _el = _tmpl$5.cloneNode(true); - return _el; -}; -const template7 = () => { - var _el = _tmpl$2.cloneNode(true); - effect(() => { - return setAttribute(_el, "style:padding-top", props.top); - }); - effect(() => { - return setAttribute(_el, "class:my-class", props.active); - }); - return _el; -}; -let refTarget; -const template8 = () => { - var _el = _tmpl$2.cloneNode(true); - setAttribute(_el, "ref", refTarget); - return _el; -}; -const template9 = () => { - var _el = _tmpl$2.cloneNode(true); - effect(() => { - return setAttribute(_el, "ref", (e) => console.log(e)); - }); - return _el; -}; -const template10 = () => { - var _el = _tmpl$2.cloneNode(true); - effect(() => { - return setAttribute(_el, "ref", refFactory()); - }); - return _el; -}; -const template11 = () => { - var _el = _tmpl$6.cloneNode(true); - setAttribute(_el, "use:another", thing); - return _el; -}; -const template12 = () => { - var _el = _tmpl$2.cloneNode(true); - setAttribute(_el, "prop:htmlFor", thing); - return _el; -}; -const template13 = _tmpl$8.cloneNode(true); -const template14 = () => { - var _el = _tmpl$8.cloneNode(true); - effect(() => { - return setAttribute(_el, "checked", state.visible); - }); - return _el; -}; -const template15 = _tmpl$10.cloneNode(true); -const template16 = () => { - var _el = _tmpl$10.cloneNode(true); - effect(() => { - return setAttribute(_el, "classList", { - hi: "k", - }); - }); - return _el; -}; -const template17 = () => { - var _el = _tmpl$11.cloneNode(true); - effect(() => { - return setAttribute(_el, "classList", { - a: true, - b: true, - c: true, - }); - }); - effect(() => { - return (_el.$$click = increment); - }); - return _el; -}; -const template18 = _tmpl$2.cloneNode(true); diff --git a/test/bun.js/solid-dom-fixtures/attributeExpressions/output.js b/test/bun.js/solid-dom-fixtures/attributeExpressions/output.js deleted file mode 100644 index 14f700218..000000000 --- a/test/bun.js/solid-dom-fixtures/attributeExpressions/output.js +++ /dev/null @@ -1,241 +0,0 @@ -const _tmpl$ = /*#__PURE__*/ _$template( - `<div id="main"><h1 class="base selected" id="my-h1" disabled readonly=""><a href="/">Welcome</a></h1></div>`, - 6 - ), - _tmpl$2 = /*#__PURE__*/ _$template( - `<div><div></div><div> </div><div></div></div>`, - 8 - ), - _tmpl$3 = /*#__PURE__*/ _$template(`<div></div>`, 2), - _tmpl$4 = /*#__PURE__*/ _$template(`<div class="a b"></div>`, 2), - _tmpl$5 = /*#__PURE__*/ _$template(`<input type="checkbox">`, 1), - _tmpl$6 = /*#__PURE__*/ _$template(`<div class="\`a">\`$\`</div>`, 2), - _tmpl$7 = /*#__PURE__*/ _$template( - `<button class="static hi" type="button">Write</button>`, - 2 - ), - _tmpl$8 = /*#__PURE__*/ _$template(`<button class="a b c">Hi</button>`, 2); - -const selected = true; -let id = "my-h1"; -let link; - -const template = (() => { - const _el$ = _tmpl$.cloneNode(true), - _el$2 = _el$.firstChild, - _el$3 = _el$2.firstChild; - - _$spread(_el$, results, false, true); - - _el$.classList.toggle("selected", unknown); - - _el$.style.setProperty("color", color); - - _$spread(_el$2, results, false, true); - - _el$2.style.setProperty("margin-right", "40px"); - - const _ref$ = link; - typeof _ref$ === "function" ? _ref$(_el$3) : (link = _el$3); - - _$classList(_el$3, { - "ccc ddd": true, - }); - - _el$3.readOnly = value; - - _$effect( - (_p$) => { - const _v$ = welcoming(), - _v$2 = color(), - _v$3 = !!dynamic(); - - _v$ !== _p$._v$ && _$setAttribute(_el$2, "title", (_p$._v$ = _v$)); - _v$2 !== _p$._v$2 && - _el$2.style.setProperty("background-color", (_p$._v$2 = _v$2)); - _v$3 !== _p$._v$3 && _el$2.classList.toggle("dynamic", (_p$._v$3 = _v$3)); - return _p$; - }, - { - _v$: undefined, - _v$2: undefined, - _v$3: undefined, - } - ); - - return _el$; -})(); - -const template2 = (() => { - const _el$4 = _tmpl$2.cloneNode(true), - _el$5 = _el$4.firstChild, - _el$6 = _el$5.nextSibling, - _el$7 = _el$6.firstChild, - _el$8 = _el$6.nextSibling; - - _$spread(_el$4, () => getProps("test"), false, true); - - _el$5.textContent = rowId; - _el$8.innerHTML = "<div/>"; - - _$effect(() => (_el$7.data = row.label)); - - return _el$4; -})(); - -const template3 = (() => { - const _el$9 = _tmpl$3.cloneNode(true); - - _$setAttribute(_el$9, "id", state.id); - - _el$9.style.setProperty("background-color", state.color); - - _el$9.textContent = state.content; - - _$effect(() => _$setAttribute(_el$9, "name", state.name)); - - return _el$9; -})(); - -const template4 = (() => { - const _el$10 = _tmpl$3.cloneNode(true); - - _$classList(_el$10, { - "ccc:ddd": true, - }); - - _$effect(() => _$className(_el$10, `hi ${state.class || ""}`)); - - return _el$10; -})(); - -const template5 = _tmpl$4.cloneNode(true); - -const template6 = (() => { - const _el$12 = _tmpl$3.cloneNode(true); - - _el$12.textContent = "Hi"; - - _$effect((_$p) => _$style(_el$12, someStyle(), _$p)); - - return _el$12; -})(); - -const template7 = (() => { - const _el$13 = _tmpl$3.cloneNode(true); - - _$effect( - (_p$) => { - const _v$4 = { - "background-color": color(), - "margin-right": "40px", - ...props.style, - }, - _v$5 = props.top, - _v$6 = !!props.active; - - _p$._v$4 = _$style(_el$13, _v$4, _p$._v$4); - _v$5 !== _p$._v$5 && - _el$13.style.setProperty("padding-top", (_p$._v$5 = _v$5)); - _v$6 !== _p$._v$6 && - _el$13.classList.toggle("my-class", (_p$._v$6 = _v$6)); - return _p$; - }, - { - _v$4: undefined, - _v$5: undefined, - _v$6: undefined, - } - ); - - return _el$13; -})(); - -let refTarget; - -const template8 = (() => { - const _el$14 = _tmpl$3.cloneNode(true); - - const _ref$2 = refTarget; - typeof _ref$2 === "function" ? _ref$2(_el$14) : (refTarget = _el$14); - return _el$14; -})(); - -const template9 = (() => { - const _el$15 = _tmpl$3.cloneNode(true); - - ((e) => console.log(e))(_el$15); - - return _el$15; -})(); - -const template10 = (() => { - const _el$16 = _tmpl$3.cloneNode(true); - - const _ref$3 = refFactory(); - - typeof _ref$3 === "function" && _ref$3(_el$16); - return _el$16; -})(); - -const template11 = (() => { - const _el$17 = _tmpl$3.cloneNode(true); - - zero(_el$17, () => 0); - another(_el$17, () => thing); - something(_el$17, () => true); - return _el$17; -})(); - -const template12 = (() => { - const _el$18 = _tmpl$3.cloneNode(true); - - _el$18.htmlFor = thing; - return _el$18; -})(); - -const template13 = (() => { - const _el$19 = _tmpl$5.cloneNode(true); - - _el$19.checked = true; - return _el$19; -})(); - -const template14 = (() => { - const _el$20 = _tmpl$5.cloneNode(true); - - _$effect(() => (_el$20.checked = state.visible)); - - return _el$20; -})(); - -const template15 = _tmpl$6.cloneNode(true); - -const template16 = _tmpl$7.cloneNode(true); - -const template17 = (() => { - const _el$23 = _tmpl$8.cloneNode(true); - - _$addEventListener(_el$23, "click", increment, true); - - return _el$23; -})(); - -const template18 = (() => { - const _el$24 = _tmpl$3.cloneNode(true); - - _$spread( - _el$24, - () => ({ - get [key()]() { - return props.value; - }, - }), - false, - false - ); - - return _el$24; -})(); - -_$delegateEvents(["click"]); diff --git a/test/bun.js/solid-dom-fixtures/components/code.js b/test/bun.js/solid-dom-fixtures/components/code.js deleted file mode 100644 index f3bd159d6..000000000 --- a/test/bun.js/solid-dom-fixtures/components/code.js +++ /dev/null @@ -1,161 +0,0 @@ -import { Show } from "somewhere"; - -const Child = (props) => { - const [s, set] = createSignal(); - return ( - <> - <div ref={props.ref}>Hello {props.name}</div> - <div ref={set}>{props.children}</div> - </> - ); -}; - -const template = (props) => { - let childRef; - const { content } = props; - return ( - <div> - <Child name="John" {...props} ref={childRef} booleanProperty> - <div>From Parent</div> - </Child> - <Child name="Jason" {...dynamicSpread()} ref={props.ref}> - {/* Comment Node */} - <div>{content}</div> - </Child> - <Context.Consumer ref={props.consumerRef()}> - {(context) => context} - </Context.Consumer> - </div> - ); -}; - -const template2 = ( - <Child - name="Jake" - dynamic={state.data} - stale={/*@once*/ state.data} - handleClick={clickHandler} - hyphen-ated={state.data} - ref={(el) => (e = el)} - /> -); - -const template3 = ( - <Child> - <div /> - <div /> - <div /> - After - </Child> -); - -const [s, set] = createSignal(); -const template4 = <Child ref={set}>{<div />}</Child>; - -const template5 = <Child dynamic={state.dynamic}>{state.dynamic}</Child>; - -// builtIns -const template6 = ( - <For each={state.list} fallback={<Loading />}> - {(item) => <Show when={state.condition}>{item}</Show>} - </For> -); - -const template7 = ( - <Child> - <div /> - {state.dynamic} - </Child> -); - -const template8 = ( - <Child> - {(item) => item} - {(item) => item} - </Child> -); - -const template9 = <_garbage>Hi</_garbage>; - -const template10 = ( - <div> - <Link>new</Link> - {" | "} - <Link>comments</Link> - {" | "} - <Link>show</Link> - {" | "} - <Link>ask</Link> - {" | "} - <Link>jobs</Link> - {" | "} - <Link>submit</Link> - </div> -); - -const template11 = ( - <div> - <Link>new</Link> - {" | "} - <Link>comments</Link> - <Link>show</Link> - {" | "} - <Link>ask</Link> - <Link>jobs</Link> - {" | "} - <Link>submit</Link> - </div> -); - -const template12 = ( - <div> - {" | "} - <Link>comments</Link> - {" | "} - {" | "} - {" | "} - <Link>show</Link> - {" | "} - </div> -); - -class Template13 { - render() { - <Component prop={this.something} onClick={() => this.shouldStay}> - <Nested prop={this.data}>{this.content}</Nested> - </Component>; - } -} - -const Template14 = <Component>{data()}</Component>; - -const Template15 = <Component {...props} />; - -const Template16 = <Component something={something} {...props} />; - -const Template17 = ( - <Pre> - <span>1</span> <span>2</span> <span>3</span> - </Pre> -); -const Template18 = ( - <Pre> - <span>1</span> - <span>2</span> - <span>3</span> - </Pre> -); - -const Template19 = <Component {...s.dynamic()} />; - -const Template20 = <Component class={prop.red ? "red" : "green"} />; - -const template21 = ( - <Component - {...{ - get [key()]() { - return props.value; - }, - }} - /> -); diff --git a/test/bun.js/solid-dom-fixtures/components/output.bun.js b/test/bun.js/solid-dom-fixtures/components/output.bun.js deleted file mode 100644 index 5ab4d5614..000000000 --- a/test/bun.js/solid-dom-fixtures/components/output.bun.js +++ /dev/null @@ -1,205 +0,0 @@ -var _tmpl = _template$("<div><div>From Parent</div><div</div></div>", 9), _tmpl$1 = _template$("<div> | | | | | </div>", 8), _tmpl$2 = _template$("<div> | | | </div>", 8); -import {Show} from "somewhere"; -const Child = (props) => { - const [s, set] = createSignal(); - return ; -}; -const template = (props) => { - let childRef; - const { content } = props; - return () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, createComponent(Child, { - name: "John", - ref: childRef, - booleanProperty: true - }), null); - insert(_tmpl, content, null); - insert(_tmpl, createComponent(Child, { - name: "Jason", - ref: props.ref - }), null); - insert(_tmpl, createComponent(Context.Consumer, { - ref: props.consumerRef(), - get children: [ - (context) => context - ] - }), null); - return _tmpl; - }; -}; -const template2 = createComponent(Child, { - name: "Jake", - dynamic: state.data, - stale: state.data, - handleClick: clickHandler, - "hyphen-ated": state.data, - get ref: () => { - return (el) => e = el; - } -}); -const template3 = createComponent(Child, { - get children: [ - "After" - ] -}); -const [s, set] = createSignal(); -const template4 = createComponent(Child, { - ref: set -}); -const template5 = createComponent(Child, { - dynamic: state.dynamic, - get children: [ - state.dynamic - ] -}); -const template6 = createComponent(For, { - each: state.list, - fallback: , - get children: [ - (item) => createComponent(Show, { - when: state.condition, - get children: [ - item - ] - }) - ] -}); -const template7 = createComponent(Child, { - get children: [ - state.dynamic - ] -}); -const template8 = createComponent(Child, { - get children: [ - (item) => item, - (item) => item - ] -}); -const template9 = createComponent(_garbage, { - get children: [ - "Hi" - ] -}); -const template10 = () => { - var _tmpl$1 = _tmpl$1.cloneNode(true); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "new" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "comments" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "show" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "ask" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "jobs" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "submit" - ] - }), null); - return _tmpl$1; -}; -const template11 = () => { - var _tmpl$2 = _tmpl$2.cloneNode(true); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "new" - ] - }), null); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "comments" - ] - }), null); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "show" - ] - }), null); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "ask" - ] - }), null); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "jobs" - ] - }), null); - insert(_tmpl$2, createComponent(Link, { - get children: [ - "submit" - ] - }), null); - return _tmpl$2; -}; -const template12 = () => { - var _tmpl$1 = _tmpl$1.cloneNode(true); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "comments" - ] - }), null); - insert(_tmpl$1, createComponent(Link, { - get children: [ - "show" - ] - }), null); - return _tmpl$1; -}; - -class Template13 { - render() { - createComponent(Component, { - prop: this.something, - get onClick: () => { - return () => this.shouldStay; - }, - get children: [ - createComponent(Nested, { - prop: this.data, - get children: [ - this.content - ] - }) - ] - }); - } -} -const Template14 = createComponent(Component, { - get children: [ - data() - ] -}); -const Template15 = createComponent(Component, {}); -const Template16 = createComponent(Component, { - something -}); -const Template17 = createComponent(Pre, { - get children: [ - " ", - " " - ] -}); -const Template18 = createComponent(Pre, {}); -const Template19 = createComponent(Component, {}); -const Template20 = createComponent(Component, { - class: prop.red ? "red" : "green" -}); -const template21 = createComponent(Component, {}); diff --git a/test/bun.js/solid-dom-fixtures/components/output.js b/test/bun.js/solid-dom-fixtures/components/output.js deleted file mode 100644 index 0c49d60a3..000000000 --- a/test/bun.js/solid-dom-fixtures/components/output.js +++ /dev/null @@ -1,443 +0,0 @@ -import { template as _$template } from "r-dom"; -import { memo as _$memo } from "r-dom"; -import { For as _$For } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; -import { mergeProps as _$mergeProps } from "r-dom"; -import { insert as _$insert } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<div>Hello </div>`, 2), - _tmpl$2 = /*#__PURE__*/ _$template(`<div></div>`, 2), - _tmpl$3 = /*#__PURE__*/ _$template(`<div>From Parent</div>`, 2), - _tmpl$4 = /*#__PURE__*/ _$template( - `<div> | <!> | <!> | <!> | <!> | </div>`, - 6 - ), - _tmpl$5 = /*#__PURE__*/ _$template(`<div> | <!> | <!> | </div>`, 4), - _tmpl$6 = /*#__PURE__*/ _$template(`<div> | <!> | | | <!> | </div>`, 4), - _tmpl$7 = /*#__PURE__*/ _$template(`<span>1</span>`, 2), - _tmpl$8 = /*#__PURE__*/ _$template(`<span>2</span>`, 2), - _tmpl$9 = /*#__PURE__*/ _$template(`<span>3</span>`, 2); - -import { Show } from "somewhere"; - -const Child = (props) => { - const [s, set] = createSignal(); - return [ - (() => { - const _el$ = _tmpl$.cloneNode(true), - _el$2 = _el$.firstChild; - - const _ref$ = props.ref; - typeof _ref$ === "function" ? _ref$(_el$) : (props.ref = _el$); - - _$insert(_el$, () => props.name, null); - - return _el$; - })(), - (() => { - const _el$3 = _tmpl$2.cloneNode(true); - - set(_el$3); - - _$insert(_el$3, () => props.children); - - return _el$3; - })(), - ]; -}; - -const template = (props) => { - let childRef; - const { content } = props; - return (() => { - const _el$4 = _tmpl$2.cloneNode(true); - - _$insert( - _el$4, - _$createComponent( - Child, - _$mergeProps( - { - name: "John", - }, - props, - { - ref(r$) { - const _ref$2 = childRef; - typeof _ref$2 === "function" ? _ref$2(r$) : (childRef = r$); - }, - - booleanProperty: true, - - get children() { - return _tmpl$3.cloneNode(true); - }, - } - ) - ), - null - ); - - _$insert( - _el$4, - _$createComponent( - Child, - _$mergeProps( - { - name: "Jason", - }, - dynamicSpread, - { - ref(r$) { - const _ref$3 = props.ref; - typeof _ref$3 === "function" ? _ref$3(r$) : (props.ref = r$); - }, - - get children() { - const _el$6 = _tmpl$2.cloneNode(true); - - _$insert(_el$6, content); - - return _el$6; - }, - } - ) - ), - null - ); - - _$insert( - _el$4, - _$createComponent(Context.Consumer, { - ref(r$) { - const _ref$4 = props.consumerRef(); - - typeof _ref$4 === "function" && _ref$4(r$); - }, - - children: (context) => context, - }), - null - ); - - return _el$4; - })(); -}; - -const template2 = _$createComponent(Child, { - name: "Jake", - - get dynamic() { - return state.data; - }, - - stale: state.data, - handleClick: clickHandler, - - get ["hyphen-ated"]() { - return state.data; - }, - - ref: (el) => (e = el), -}); - -const template3 = _$createComponent(Child, { - get children() { - return [ - _tmpl$2.cloneNode(true), - _tmpl$2.cloneNode(true), - _tmpl$2.cloneNode(true), - "After", - ]; - }, -}); - -const [s, set] = createSignal(); - -const template4 = _$createComponent(Child, { - ref: set, - - get children() { - return _tmpl$2.cloneNode(true); - }, -}); - -const template5 = _$createComponent(Child, { - get dynamic() { - return state.dynamic; - }, - - get children() { - return state.dynamic; - }, -}); // builtIns - -const template6 = _$createComponent(_$For, { - get each() { - return state.list; - }, - - get fallback() { - return _$createComponent(Loading, {}); - }, - - children: (item) => - _$createComponent(Show, { - get when() { - return state.condition; - }, - - children: item, - }), -}); - -const template7 = _$createComponent(Child, { - get children() { - return [_tmpl$2.cloneNode(true), _$memo(() => state.dynamic)]; - }, -}); - -const template8 = _$createComponent(Child, { - get children() { - return [(item) => item, (item) => item]; - }, -}); - -const template9 = _$createComponent(_garbage, { - children: "Hi", -}); - -const template10 = (() => { - const _el$12 = _tmpl$4.cloneNode(true), - _el$13 = _el$12.firstChild, - _el$18 = _el$13.nextSibling, - _el$14 = _el$18.nextSibling, - _el$19 = _el$14.nextSibling, - _el$15 = _el$19.nextSibling, - _el$20 = _el$15.nextSibling, - _el$16 = _el$20.nextSibling, - _el$21 = _el$16.nextSibling, - _el$17 = _el$21.nextSibling; - - _$insert( - _el$12, - _$createComponent(Link, { - children: "new", - }), - _el$13 - ); - - _$insert( - _el$12, - _$createComponent(Link, { - children: "comments", - }), - _el$18 - ); - - _$insert( - _el$12, - _$createComponent(Link, { - children: "show", - }), - _el$19 - ); - - _$insert( - _el$12, - _$createComponent(Link, { - children: "ask", - }), - _el$20 - ); - - _$insert( - _el$12, - _$createComponent(Link, { - children: "jobs", - }), - _el$21 - ); - - _$insert( - _el$12, - _$createComponent(Link, { - children: "submit", - }), - null - ); - - return _el$12; -})(); - -const template11 = (() => { - const _el$22 = _tmpl$5.cloneNode(true), - _el$23 = _el$22.firstChild, - _el$26 = _el$23.nextSibling, - _el$24 = _el$26.nextSibling, - _el$27 = _el$24.nextSibling, - _el$25 = _el$27.nextSibling; - - _$insert( - _el$22, - _$createComponent(Link, { - children: "new", - }), - _el$23 - ); - - _$insert( - _el$22, - _$createComponent(Link, { - children: "comments", - }), - _el$26 - ); - - _$insert( - _el$22, - _$createComponent(Link, { - children: "show", - }), - _el$26 - ); - - _$insert( - _el$22, - _$createComponent(Link, { - children: "ask", - }), - _el$27 - ); - - _$insert( - _el$22, - _$createComponent(Link, { - children: "jobs", - }), - _el$27 - ); - - _$insert( - _el$22, - _$createComponent(Link, { - children: "submit", - }), - null - ); - - return _el$22; -})(); - -const template12 = (() => { - const _el$28 = _tmpl$6.cloneNode(true), - _el$29 = _el$28.firstChild, - _el$34 = _el$29.nextSibling, - _el$30 = _el$34.nextSibling, - _el$35 = _el$30.nextSibling, - _el$33 = _el$35.nextSibling; - - _$insert( - _el$28, - _$createComponent(Link, { - children: "comments", - }), - _el$34 - ); - - _$insert( - _el$28, - _$createComponent(Link, { - children: "show", - }), - _el$35 - ); - - return _el$28; -})(); - -class Template13 { - render() { - const _self$ = this; - - _$createComponent(Component, { - get prop() { - return _self$.something; - }, - - onClick: () => _self$.shouldStay, - - get children() { - return _$createComponent(Nested, { - get prop() { - return _self$.data; - }, - - get children() { - return _self$.content; - }, - }); - }, - }); - } -} - -const Template14 = _$createComponent(Component, { - get children() { - return data(); - }, -}); - -const Template15 = _$createComponent(Component, props); - -const Template16 = _$createComponent( - Component, - _$mergeProps( - { - something: something, - }, - props - ) -); - -const Template17 = _$createComponent(Pre, { - get children() { - return [ - _tmpl$7.cloneNode(true), - " ", - _tmpl$8.cloneNode(true), - " ", - _tmpl$9.cloneNode(true), - ]; - }, -}); - -const Template18 = _$createComponent(Pre, { - get children() { - return [ - _tmpl$7.cloneNode(true), - _tmpl$8.cloneNode(true), - _tmpl$9.cloneNode(true), - ]; - }, -}); - -const Template19 = _$createComponent( - Component, - _$mergeProps(() => s.dynamic()) -); - -const Template20 = _$createComponent(Component, { - get ["class"]() { - return prop.red ? "red" : "green"; - }, -}); - -const template21 = _$createComponent( - Component, - _$mergeProps(() => ({ - get [key()]() { - return props.value; - }, - })) -); diff --git a/test/bun.js/solid-dom-fixtures/conditionalExpressions/code.js b/test/bun.js/solid-dom-fixtures/conditionalExpressions/code.js deleted file mode 100644 index 80f1a6a4f..000000000 --- a/test/bun.js/solid-dom-fixtures/conditionalExpressions/code.js +++ /dev/null @@ -1,71 +0,0 @@ -const template1 = <div>{simple}</div>; - -const template2 = <div>{state.dynamic}</div>; - -const template3 = <div>{simple ? good : bad}</div>; - -const template4 = <div>{simple ? good() : bad}</div>; - -const template5 = <div>{state.dynamic ? good() : bad}</div>; - -const template6 = <div>{state.dynamic && good()}</div>; - -const template7 = ( - <div>{state.count > 5 ? (state.dynamic ? best : good()) : bad}</div> -); - -const template8 = <div>{state.dynamic && state.something && good()}</div>; - -const template9 = <div>{(state.dynamic && good()) || bad}</div>; - -const template10 = ( - <div>{state.a ? "a" : state.b ? "b" : state.c ? "c" : "fallback"}</div> -); - -const template11 = ( - <div>{state.a ? a() : state.b ? b() : state.c ? "c" : "fallback"}</div> -); - -const template12 = <Comp render={state.dynamic ? good() : bad} />; - -// no dynamic predicate -const template13 = <Comp render={state.dynamic ? good : bad} />; - -const template14 = <Comp render={state.dynamic && good()} />; - -// no dynamic predicate -const template15 = <Comp render={state.dynamic && good} />; - -const template16 = <Comp render={state.dynamic || good()} />; - -const template17 = <Comp render={state.dynamic ? <Comp /> : <Comp />} />; - -const template18 = <Comp>{state.dynamic ? <Comp /> : <Comp />}</Comp>; - -const template19 = <div innerHTML={state.dynamic ? <Comp /> : <Comp />} />; - -const template20 = <div>{state.dynamic ? <Comp /> : <Comp />}</div>; - -const template21 = <Comp render={state?.dynamic ? "a" : "b"} />; - -const template22 = <Comp>{state?.dynamic ? "a" : "b"}</Comp>; - -const template23 = <div innerHTML={state?.dynamic ? "a" : "b"} />; - -const template24 = <div>{state?.dynamic ? "a" : "b"}</div>; - -const template25 = <Comp render={state.dynamic ?? <Comp />} />; - -const template26 = <Comp>{state.dynamic ?? <Comp />}</Comp>; - -const template27 = <div innerHTML={state.dynamic ?? <Comp />} />; - -const template28 = <div>{state.dynamic ?? <Comp />}</div>; - -const template29 = <div>{(thing() && thing1()) ?? thing2() ?? thing3()}</div>; - -const template30 = <div>{thing() || thing1() || thing2()}</div>; - -const template31 = ( - <Comp value={count() ? (count() ? count() : count()) : count()} /> -); diff --git a/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.bun.js b/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.bun.js deleted file mode 100644 index 36c3f649b..000000000 --- a/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.bun.js +++ /dev/null @@ -1,144 +0,0 @@ -var _tmpl = template("<div</div>", 2), _tmpl$1 = template("<div/>", 0); -const template1 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, simple, null); - return _tmpl; -}; -const template2 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic, null); - return _tmpl; -}; -const template3 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, simple ? good : bad, null); - return _tmpl; -}; -const template4 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, simple ? good() : bad, null); - return _tmpl; -}; -const template5 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic ? good() : bad, null); - return _tmpl; -}; -const template6 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic && good(), null); - return _tmpl; -}; -const template7 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.count > 5 ? state.dynamic ? best : good() : bad, null); - return _tmpl; -}; -const template8 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic && state.something && good(), null); - return _tmpl; -}; -const template9 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic && good() || bad, null); - return _tmpl; -}; -const template10 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.a ? "a" : state.b ? "b" : state.c ? "c" : "fallback", null); - return _tmpl; -}; -const template11 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.a ? a() : state.b ? b() : state.c ? "c" : "fallback", null); - return _tmpl; -}; -const template12 = createComponent(Comp, { - render: state.dynamic ? good() : bad -}); -const template13 = createComponent(Comp, { - render: state.dynamic ? good : bad -}); -const template14 = createComponent(Comp, { - render: state.dynamic && good() -}); -const template15 = createComponent(Comp, { - render: state.dynamic && good -}); -const template16 = createComponent(Comp, { - render: state.dynamic || good() -}); -const template17 = createComponent(Comp, { - render: state.dynamic ? createComponent(Comp, {}) : createComponent(Comp, {}) -}); -const template18 = createComponent(Comp, { - get children: [ - state.dynamic ? createComponent(Comp, {}) : createComponent(Comp, {}) - ] -}); -const template19 = () => { - var _el = _tmpl$1.cloneNode(true); - effect(() => { - return setAttribute(_el, "innerHTML", state.dynamic ? createComponent(Comp, {}) : createComponent(Comp, {})); - }); - return _el; -}; -const template20 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic ? createComponent(Comp, {}) : createComponent(Comp, {}), null); - return _tmpl; -}; -const template21 = createComponent(Comp, { - render: state?.dynamic ? "a" : "b" -}); -const template22 = createComponent(Comp, { - get children: [ - state?.dynamic ? "a" : "b" - ] -}); -const template23 = () => { - var _el = _tmpl$1.cloneNode(true); - effect(() => { - return setAttribute(_el, "innerHTML", state?.dynamic ? "a" : "b"); - }); - return _el; -}; -const template24 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state?.dynamic ? "a" : "b", null); - return _tmpl; -}; -const template25 = createComponent(Comp, { - render: state.dynamic ?? createComponent(Comp, {}) -}); -const template26 = createComponent(Comp, { - get children: [ - state.dynamic ?? createComponent(Comp, {}) - ] -}); -const template27 = () => { - var _el = _tmpl$1.cloneNode(true); - effect(() => { - return setAttribute(_el, "innerHTML", state.dynamic ?? createComponent(Comp, {})); - }); - return _el; -}; -const template28 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, state.dynamic ?? createComponent(Comp, {}), null); - return _tmpl; -}; -const template29 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, (thing() && thing1()) ?? thing2() ?? thing3(), null); - return _tmpl; -}; -const template30 = () => { - var _tmpl = _tmpl.cloneNode(true); - insert(_tmpl, thing() || thing1() || thing2(), null); - return _tmpl; -}; -const template31 = createComponent(Comp, { - value: count() ? count() ? count() : count() : count() -}); diff --git a/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.js b/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.js deleted file mode 100644 index 1511f4222..000000000 --- a/test/bun.js/solid-dom-fixtures/conditionalExpressions/output.js +++ /dev/null @@ -1,319 +0,0 @@ -import { template as _$template } from "r-dom"; -import { effect as _$effect } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; -import { memo as _$memo } from "r-dom"; -import { insert as _$insert } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<div></div>`, 2); - -const template1 = (() => { - const _el$ = _tmpl$.cloneNode(true); - - _$insert(_el$, simple); - - return _el$; -})(); - -const template2 = (() => { - const _el$2 = _tmpl$.cloneNode(true); - - _$insert(_el$2, () => state.dynamic); - - return _el$2; -})(); - -const template3 = (() => { - const _el$3 = _tmpl$.cloneNode(true); - - _$insert(_el$3, simple ? good : bad); - - return _el$3; -})(); - -const template4 = (() => { - const _el$4 = _tmpl$.cloneNode(true); - - _$insert(_el$4, () => (simple ? good() : bad)); - - return _el$4; -})(); - -const template5 = (() => { - const _el$5 = _tmpl$.cloneNode(true); - - _$insert( - _el$5, - (() => { - const _c$ = _$memo(() => !!state.dynamic, true); - - return () => (_c$() ? good() : bad); - })() - ); - - return _el$5; -})(); - -const template6 = (() => { - const _el$6 = _tmpl$.cloneNode(true); - - _$insert( - _el$6, - (() => { - const _c$2 = _$memo(() => !!state.dynamic, true); - - return () => _c$2() && good(); - })() - ); - - return _el$6; -})(); - -const template7 = (() => { - const _el$7 = _tmpl$.cloneNode(true); - - _$insert( - _el$7, - (() => { - const _c$3 = _$memo(() => state.count > 5, true); - - return () => - _c$3() - ? (() => { - const _c$4 = _$memo(() => !!state.dynamic, true); - - return () => (_c$4() ? best : good()); - })() - : bad; - })() - ); - - return _el$7; -})(); - -const template8 = (() => { - const _el$8 = _tmpl$.cloneNode(true); - - _$insert( - _el$8, - (() => { - const _c$5 = _$memo(() => !!(state.dynamic && state.something), true); - - return () => _c$5() && good(); - })() - ); - - return _el$8; -})(); - -const template9 = (() => { - const _el$9 = _tmpl$.cloneNode(true); - - _$insert( - _el$9, - (() => { - const _c$6 = _$memo(() => !!state.dynamic, true); - - return () => (_c$6() && good()) || bad; - })() - ); - - return _el$9; -})(); - -const template10 = (() => { - const _el$10 = _tmpl$.cloneNode(true); - - _$insert(_el$10, () => - state.a ? "a" : state.b ? "b" : state.c ? "c" : "fallback" - ); - - return _el$10; -})(); - -const template11 = (() => { - const _el$11 = _tmpl$.cloneNode(true); - - _$insert( - _el$11, - (() => { - const _c$7 = _$memo(() => !!state.a, true); - - return () => - _c$7() - ? a() - : (() => { - const _c$8 = _$memo(() => !!state.b, true); - - return () => (_c$8() ? b() : state.c ? "c" : "fallback"); - })(); - })() - ); - - return _el$11; -})(); - -const template12 = _$createComponent(Comp, { - get render() { - return _$memo(() => !!state.dynamic, true)() ? good() : bad; - }, -}); // no dynamic predicate - -const template13 = _$createComponent(Comp, { - get render() { - return state.dynamic ? good : bad; - }, -}); - -const template14 = _$createComponent(Comp, { - get render() { - return _$memo(() => !!state.dynamic, true)() && good(); - }, -}); // no dynamic predicate - -const template15 = _$createComponent(Comp, { - get render() { - return state.dynamic && good; - }, -}); - -const template16 = _$createComponent(Comp, { - get render() { - return state.dynamic || good(); - }, -}); - -const template17 = _$createComponent(Comp, { - get render() { - return _$memo(() => !!state.dynamic, true)() - ? _$createComponent(Comp, {}) - : _$createComponent(Comp, {}); - }, -}); - -const template18 = _$createComponent(Comp, { - get children() { - return _$memo(() => !!state.dynamic, true)() - ? _$createComponent(Comp, {}) - : _$createComponent(Comp, {}); - }, -}); - -const template19 = (() => { - const _el$12 = _tmpl$.cloneNode(true); - - _$effect( - () => - (_el$12.innerHTML = state.dynamic - ? _$createComponent(Comp, {}) - : _$createComponent(Comp, {})) - ); - - return _el$12; -})(); - -const template20 = (() => { - const _el$13 = _tmpl$.cloneNode(true); - - _$insert( - _el$13, - (() => { - const _c$9 = _$memo(() => !!state.dynamic, true); - - return () => - _c$9() ? _$createComponent(Comp, {}) : _$createComponent(Comp, {}); - })() - ); - - return _el$13; -})(); - -const template21 = _$createComponent(Comp, { - get render() { - return state?.dynamic ? "a" : "b"; - }, -}); - -const template22 = _$createComponent(Comp, { - get children() { - return state?.dynamic ? "a" : "b"; - }, -}); - -const template23 = (() => { - const _el$14 = _tmpl$.cloneNode(true); - - _$effect(() => (_el$14.innerHTML = state?.dynamic ? "a" : "b")); - - return _el$14; -})(); - -const template24 = (() => { - const _el$15 = _tmpl$.cloneNode(true); - - _$insert(_el$15, () => (state?.dynamic ? "a" : "b")); - - return _el$15; -})(); - -const template25 = _$createComponent(Comp, { - get render() { - return state.dynamic ?? _$createComponent(Comp, {}); - }, -}); - -const template26 = _$createComponent(Comp, { - get children() { - return state.dynamic ?? _$createComponent(Comp, {}); - }, -}); - -const template27 = (() => { - const _el$16 = _tmpl$.cloneNode(true); - - _$effect( - () => (_el$16.innerHTML = state.dynamic ?? _$createComponent(Comp, {})) - ); - - return _el$16; -})(); - -const template28 = (() => { - const _el$17 = _tmpl$.cloneNode(true); - - _$insert(_el$17, () => state.dynamic ?? _$createComponent(Comp, {})); - - return _el$17; -})(); - -const template29 = (() => { - const _el$18 = _tmpl$.cloneNode(true); - - _$insert( - _el$18, - (() => { - const _c$10 = _$memo(() => !!thing(), true); - - return () => (_c$10() && thing1()) ?? thing2() ?? thing3(); - })() - ); - - return _el$18; -})(); - -const template30 = (() => { - const _el$19 = _tmpl$.cloneNode(true); - - _$insert(_el$19, () => thing() || thing1() || thing2()); - - return _el$19; -})(); - -const template31 = _$createComponent(Comp, { - get value() { - return _$memo(() => !!count(), true)() - ? _$memo(() => !!count(), true)() - ? count() - : count() - : count(); - }, -}); diff --git a/test/bun.js/solid-dom-fixtures/customElements/code.js b/test/bun.js/solid-dom-fixtures/customElements/code.js deleted file mode 100644 index bc844b7d8..000000000 --- a/test/bun.js/solid-dom-fixtures/customElements/code.js +++ /dev/null @@ -1,29 +0,0 @@ -const template = ( - <my-element - some-attr={name} - notProp={data} - attr:my-attr={data} - prop:someProp={data} - /> -); - -const template2 = ( - <my-element - some-attr={state.name} - notProp={state.data} - attr:my-attr={state.data} - prop:someProp={state.data} - /> -); - -const template3 = ( - <my-element> - <header slot="head">Title</header> - </my-element> -); - -const template4 = ( - <> - <slot name="head" /> - </> -); diff --git a/test/bun.js/solid-dom-fixtures/customElements/output.bun.js b/test/bun.js/solid-dom-fixtures/customElements/output.bun.js deleted file mode 100644 index 79c46280c..000000000 --- a/test/bun.js/solid-dom-fixtures/customElements/output.bun.js +++ /dev/null @@ -1,27 +0,0 @@ -var _tmpl = _template$("<my-element/>", 0), _tmpl$2 = _template$('<my-element><header slot="head">Title</header></my-element>', 4); -const template = () => { - var _el = _tmpl.cloneNode(true); - setAttribute(_el, "some-attr", name); - setAttribute(_el, "notProp", data); - setAttribute(_el, "attr:my-attr", data); - setAttribute(_el, "prop:someProp", data); - return _el; -}; -const template2 = () => { - var _el = _tmpl.cloneNode(true); - effect(() => { - return setAttribute(_el, "some-attr", state.name); - }); - effect(() => { - return setAttribute(_el, "notProp", state.data); - }); - effect(() => { - return setAttribute(_el, "attr:my-attr", state.data); - }); - effect(() => { - return setAttribute(_el, "prop:someProp", state.data); - }); - return _el; -}; -const template3 = _tmpl$2.cloneNode(true); -const template4 = ; diff --git a/test/bun.js/solid-dom-fixtures/customElements/output.js b/test/bun.js/solid-dom-fixtures/customElements/output.js deleted file mode 100644 index 79274ce2c..000000000 --- a/test/bun.js/solid-dom-fixtures/customElements/output.js +++ /dev/null @@ -1,66 +0,0 @@ -import { template as _$template } from "r-dom"; -import { effect as _$effect } from "r-dom"; -import { getOwner as _$getOwner } from "r-dom"; -import { setAttribute as _$setAttribute } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<my-element></my-element>`, 2), - _tmpl$2 = /*#__PURE__*/ _$template( - `<my-element><header slot="head">Title</header></my-element>`, - 4 - ), - _tmpl$3 = /*#__PURE__*/ _$template(`<slot name="head"></slot>`, 2); - -const template = (() => { - const _el$ = document.importNode(_tmpl$, true); - - _el$.someAttr = name; - _el$.notprop = data; - - _$setAttribute(_el$, "my-attr", data); - - _el$.someProp = data; - _el$._$owner = _$getOwner(); - return _el$; -})(); - -const template2 = (() => { - const _el$2 = document.importNode(_tmpl$, true); - - _el$2._$owner = _$getOwner(); - - _$effect( - (_p$) => { - const _v$ = state.name, - _v$2 = state.data, - _v$3 = state.data, - _v$4 = state.data; - _v$ !== _p$._v$ && (_el$2.someAttr = _p$._v$ = _v$); - _v$2 !== _p$._v$2 && (_el$2.notprop = _p$._v$2 = _v$2); - _v$3 !== _p$._v$3 && _$setAttribute(_el$2, "my-attr", (_p$._v$3 = _v$3)); - _v$4 !== _p$._v$4 && (_el$2.someProp = _p$._v$4 = _v$4); - return _p$; - }, - { - _v$: undefined, - _v$2: undefined, - _v$3: undefined, - _v$4: undefined, - } - ); - - return _el$2; -})(); - -const template3 = (() => { - const _el$3 = document.importNode(_tmpl$2, true); - - _el$3._$owner = _$getOwner(); - return _el$3; -})(); - -const template4 = (() => { - const _el$4 = _tmpl$3.cloneNode(true); - - _el$4._$owner = _$getOwner(); - return _el$4; -})(); diff --git a/test/bun.js/solid-dom-fixtures/eventExpressions/code.js b/test/bun.js/solid-dom-fixtures/eventExpressions/code.js deleted file mode 100644 index 78bc5e199..000000000 --- a/test/bun.js/solid-dom-fixtures/eventExpressions/code.js +++ /dev/null @@ -1,32 +0,0 @@ -function hoisted1() { - console.log("hoisted"); -} -const hoisted2 = () => console.log("hoisted delegated"); - -const template = ( - <div id="main"> - <button onchange={() => console.log("bound")}>Change Bound</button> - <button onChange={[(id) => console.log("bound", id), id]}> - Change Bound - </button> - <button onchange={handler}>Change Bound</button> - <button onchange={[handler]}>Change Bound</button> - <button onchange={hoisted1}>Change Bound</button> - <button onclick={() => console.log("delegated")}>Click Delegated</button> - <button onClick={[(id) => console.log("delegated", id), rowId]}> - Click Delegated - </button> - <button onClick={handler}>Click Delegated</button> - <button onClick={[handler]}>Click Delegated</button> - <button onClick={hoisted2}>Click Delegated</button> - <button - on:click={() => console.log("listener")} - on:CAPS-ev={() => console.log("custom")} - > - Click Listener - </button> - <button oncapture:camelClick={() => console.log("listener")}> - Click Capture - </button> - </div> -); diff --git a/test/bun.js/solid-dom-fixtures/eventExpressions/output.bun.js b/test/bun.js/solid-dom-fixtures/eventExpressions/output.bun.js deleted file mode 100644 index 5d90654f9..000000000 --- a/test/bun.js/solid-dom-fixtures/eventExpressions/output.bun.js +++ /dev/null @@ -1,57 +0,0 @@ -var _tmpl$1 = _template$( - '<div id="main"><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Listener</button><button>Click Capture</button></div>', - 26 -); -function hoisted1() { - console.log("hoisted"); -} -const hoisted2 = () => console.log("hoisted delegated"); -const template = () => { - var _el = _tmpl.cloneNode(true), - _el$1 = _el.firstChild, - _el$2 = _el$1.nextSibling, - _el$3 = _el$2.nextSibling, - _el$4 = _el$3.nextSibling, - _el$5 = _el$4.nextSibling, - _el$6 = _el$5.nextSibling, - _el$7 = _el$6.nextSibling, - _el$8 = _el$7.nextSibling, - _el$9 = _el$8.nextSibling, - _el$10 = _el$9.nextSibling, - _el$11 = _el$10.nextSibling; - effect(() => { - return setAttribute(_el, "onchange", () => console.log("bound")); - }); - effect(() => { - return setAttribute(_el$1, "onChange", [ - (id) => console.log("bound", id), - id, - ]); - }); - setAttribute(_el$2, "onchange", handler); - effect(() => { - return setAttribute(_el$3, "onchange", [handler]); - }); - setAttribute(_el$4, "onchange", hoisted1); - _el$5.$$click = () => console.log("delegated"); - effect(() => { - return (_el$6.$$click = [(id) => console.log("delegated", id), rowId]); - }); - effect(() => { - return (_el$7.$$click = handler); - }); - effect(() => { - return (_el$8.$$click = [handler]); - }); - effect(() => { - return (_el$9.$$click = hoisted2); - }); - _el$10.addEventListener("click", () => console.log("listener")); - _el$10.addEventListener("CAPS-ev", () => console.log("custom")); - _el$11.addEventListener( - "apture:camelClick", - () => console.log("listener"), - true - ); - return _el; -}; diff --git a/test/bun.js/solid-dom-fixtures/eventExpressions/output.js b/test/bun.js/solid-dom-fixtures/eventExpressions/output.js deleted file mode 100644 index c24a1f89f..000000000 --- a/test/bun.js/solid-dom-fixtures/eventExpressions/output.js +++ /dev/null @@ -1,63 +0,0 @@ -import { template as _$template } from "r-dom"; -import { delegateEvents as _$delegateEvents } from "r-dom"; -import { addEventListener as _$addEventListener } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template( - `<div id="main"><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Change Bound</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Delegated</button><button>Click Listener</button><button>Click Capture</button></div>`, - 26 -); - -function hoisted1() { - console.log("hoisted"); -} - -const hoisted2 = () => console.log("hoisted delegated"); - -const template = (() => { - const _el$ = _tmpl$.cloneNode(true), - _el$2 = _el$.firstChild, - _el$3 = _el$2.nextSibling, - _el$4 = _el$3.nextSibling, - _el$5 = _el$4.nextSibling, - _el$6 = _el$5.nextSibling, - _el$7 = _el$6.nextSibling, - _el$8 = _el$7.nextSibling, - _el$9 = _el$8.nextSibling, - _el$10 = _el$9.nextSibling, - _el$11 = _el$10.nextSibling, - _el$12 = _el$11.nextSibling, - _el$13 = _el$12.nextSibling; - - _el$2.addEventListener("change", () => console.log("bound")); - - _el$3.addEventListener("change", (e) => - ((id) => console.log("bound", id))(id, e) - ); - - _$addEventListener(_el$4, "change", handler); - - _el$5.addEventListener("change", handler); - - _el$6.addEventListener("change", hoisted1); - - _el$7.$$click = () => console.log("delegated"); - - _el$8.$$click = (id) => console.log("delegated", id); - - _el$8.$$clickData = rowId; - - _$addEventListener(_el$9, "click", handler, true); - - _el$10.$$click = handler; - _el$11.$$click = hoisted2; - - _el$12.addEventListener("click", () => console.log("listener")); - - _el$12.addEventListener("CAPS-ev", () => console.log("custom")); - - _el$13.addEventListener("camelClick", () => console.log("listener"), true); - - return _el$; -})(); - -_$delegateEvents(["click"]); diff --git a/test/bun.js/solid-dom-fixtures/fragments/code.js b/test/bun.js/solid-dom-fixtures/fragments/code.js deleted file mode 100644 index 0b6021e44..000000000 --- a/test/bun.js/solid-dom-fixtures/fragments/code.js +++ /dev/null @@ -1,83 +0,0 @@ -const multiStatic = ( - <> - <div>First</div> - <div>Last</div> - </> -); - -const multiExpression = ( - <> - <div>First</div> - {inserted} - <div>Last</div> - After - </> -); - -const multiDynamic = ( - <> - <div id={state.first}>First</div> - {state.inserted} - <div id={state.last}>Last</div> - After - </> -); - -const singleExpression = <>{inserted}</>; - -const singleDynamic = <>{inserted()}</>; - -const firstStatic = ( - <> - {inserted} - <div /> - </> -); - -const firstDynamic = ( - <> - {inserted()} - <div /> - </> -); - -const firstComponent = ( - <> - <Component /> - <div /> - </> -); - -const lastStatic = ( - <> - <div /> - {inserted} - </> -); - -const lastDynamic = ( - <> - <div /> - {inserted()} - </> -); - -const lastComponent = ( - <> - <div /> - <Component /> - </> -); - -const spaces = ( - <> - <span>1</span> <span>2</span> <span>3</span> - </> -); -const multiLineTrailing = ( - <> - <span>1</span> - <span>2</span> - <span>3</span> - </> -); diff --git a/test/bun.js/solid-dom-fixtures/fragments/output.bun.js b/test/bun.js/solid-dom-fixtures/fragments/output.bun.js deleted file mode 100644 index 54d980cee..000000000 --- a/test/bun.js/solid-dom-fixtures/fragments/output.bun.js +++ /dev/null @@ -1,13 +0,0 @@ -const multiStatic = ; -const multiExpression = ; -const multiDynamic = ; -const singleExpression = ; -const singleDynamic = ; -const firstStatic = ; -const firstDynamic = ; -const firstComponent = ; -const lastStatic = ; -const lastDynamic = ; -const lastComponent = ; -const spaces = ; -const multiLineTrailing = ; diff --git a/test/bun.js/solid-dom-fixtures/fragments/output.js b/test/bun.js/solid-dom-fixtures/fragments/output.js deleted file mode 100644 index 5fe0c767c..000000000 --- a/test/bun.js/solid-dom-fixtures/fragments/output.js +++ /dev/null @@ -1,66 +0,0 @@ -import { template as _$template } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; -import { memo as _$memo } from "r-dom"; -import { setAttribute as _$setAttribute } from "r-dom"; -import { effect as _$effect } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<div>First</div>`, 2), - _tmpl$2 = /*#__PURE__*/ _$template(`<div>Last</div>`, 2), - _tmpl$3 = /*#__PURE__*/ _$template(`<div></div>`, 2), - _tmpl$4 = /*#__PURE__*/ _$template(`<span>1</span>`, 2), - _tmpl$5 = /*#__PURE__*/ _$template(`<span>2</span>`, 2), - _tmpl$6 = /*#__PURE__*/ _$template(`<span>3</span>`, 2); - -const multiStatic = [_tmpl$.cloneNode(true), _tmpl$2.cloneNode(true)]; -const multiExpression = [ - _tmpl$.cloneNode(true), - inserted, - _tmpl$2.cloneNode(true), - "After", -]; -const multiDynamic = [ - (() => { - const _el$5 = _tmpl$.cloneNode(true); - - _$effect(() => _$setAttribute(_el$5, "id", state.first)); - - return _el$5; - })(), - _$memo(() => state.inserted), - (() => { - const _el$6 = _tmpl$2.cloneNode(true); - - _$effect(() => _$setAttribute(_el$6, "id", state.last)); - - return _el$6; - })(), - "After", -]; -const singleExpression = inserted; - -const singleDynamic = _$memo(inserted); - -const firstStatic = [inserted, _tmpl$3.cloneNode(true)]; -const firstDynamic = [_$memo(inserted), _tmpl$3.cloneNode(true)]; -const firstComponent = [ - _$createComponent(Component, {}), - _tmpl$3.cloneNode(true), -]; -const lastStatic = [_tmpl$3.cloneNode(true), inserted]; -const lastDynamic = [_tmpl$3.cloneNode(true), _$memo(inserted)]; -const lastComponent = [ - _tmpl$3.cloneNode(true), - _$createComponent(Component, {}), -]; -const spaces = [ - _tmpl$4.cloneNode(true), - " ", - _tmpl$5.cloneNode(true), - " ", - _tmpl$6.cloneNode(true), -]; -const multiLineTrailing = [ - _tmpl$4.cloneNode(true), - _tmpl$5.cloneNode(true), - _tmpl$6.cloneNode(true), -]; diff --git a/test/bun.js/solid-dom-fixtures/insertChildren/code.js b/test/bun.js/solid-dom-fixtures/insertChildren/code.js deleted file mode 100644 index 41d3d017e..000000000 --- a/test/bun.js/solid-dom-fixtures/insertChildren/code.js +++ /dev/null @@ -1,36 +0,0 @@ -const children = <div />; -const dynamic = { - children, -}; -const template = <Module children={children} />; -const template2 = <module children={children} />; -const template3 = <module children={children}>Hello</module>; -const template4 = ( - <module children={children}> - <Hello /> - </module> -); -const template5 = <module children={dynamic.children} />; -const template6 = <Module children={dynamic.children} />; -const template7 = <module {...dynamic} />; -const template8 = <module {...dynamic}>Hello</module>; -const template9 = <module {...dynamic}>{dynamic.children}</module>; -const template10 = <Module {...dynamic}>Hello</Module>; -const template11 = <module children={/*@once*/ state.children} />; -const template12 = <Module children={/*@once*/ state.children} />; -const template13 = <module>{...children}</module>; -const template14 = <Module>{...children}</Module>; -const template15 = <module>{...dynamic.children}</module>; -const template16 = <Module>{...dynamic.children}</Module>; -const template18 = <module>Hi {...children}</module>; -const template19 = <Module>Hi {...children}</Module>; -const template20 = <module>{children()}</module>; -const template21 = <Module>{children()}</Module>; -const template22 = <module>{state.children()}</module>; -const template23 = <Module>{state.children()}</Module>; - -const tiles = []; -tiles.push(<div>Test 1</div>); -const template24 = <div>{tiles}</div>; - -const comma = <div>{(expression(), "static")}</div>; diff --git a/test/bun.js/solid-dom-fixtures/insertChildren/output.js b/test/bun.js/solid-dom-fixtures/insertChildren/output.js deleted file mode 100644 index 9ad937742..000000000 --- a/test/bun.js/solid-dom-fixtures/insertChildren/output.js +++ /dev/null @@ -1,185 +0,0 @@ -import { template as _$template } from "r-dom"; -import { mergeProps as _$mergeProps } from "r-dom"; -import { spread as _$spread } from "r-dom"; -import { insert as _$insert } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<div></div>`, 2), - _tmpl$2 = /*#__PURE__*/ _$template(`<module></module>`, 2), - _tmpl$3 = /*#__PURE__*/ _$template(`<module>Hello</module>`, 2), - _tmpl$4 = /*#__PURE__*/ _$template(`<module>Hi </module>`, 2), - _tmpl$5 = /*#__PURE__*/ _$template(`<div>Test 1</div>`, 2); - -const children = _tmpl$.cloneNode(true); - -const dynamic = { - children, -}; - -const template = _$createComponent(Module, { - children: children, -}); - -const template2 = (() => { - const _el$2 = _tmpl$2.cloneNode(true); - - _$insert(_el$2, children); - - return _el$2; -})(); - -const template3 = _tmpl$3.cloneNode(true); - -const template4 = (() => { - const _el$4 = _tmpl$2.cloneNode(true); - - _$insert(_el$4, _$createComponent(Hello, {})); - - return _el$4; -})(); - -const template5 = (() => { - const _el$5 = _tmpl$2.cloneNode(true); - - _$insert(_el$5, () => dynamic.children); - - return _el$5; -})(); - -const template6 = _$createComponent(Module, { - get children() { - return dynamic.children; - }, -}); - -const template7 = (() => { - const _el$6 = _tmpl$2.cloneNode(true); - - _$spread(_el$6, dynamic, false, false); - - return _el$6; -})(); - -const template8 = (() => { - const _el$7 = _tmpl$3.cloneNode(true); - - _$spread(_el$7, dynamic, false, true); - - return _el$7; -})(); - -const template9 = (() => { - const _el$8 = _tmpl$2.cloneNode(true); - - _$spread(_el$8, dynamic, false, true); - - _$insert(_el$8, () => dynamic.children); - - return _el$8; -})(); - -const template10 = _$createComponent( - Module, - _$mergeProps(dynamic, { - children: "Hello", - }) -); - -const template11 = (() => { - const _el$9 = _tmpl$2.cloneNode(true); - - _$insert(_el$9, state.children); - - return _el$9; -})(); - -const template12 = _$createComponent(Module, { - children: state.children, -}); - -const template13 = (() => { - const _el$10 = _tmpl$2.cloneNode(true); - - _$insert(_el$10, children); - - return _el$10; -})(); - -const template14 = _$createComponent(Module, { - children: children, -}); - -const template15 = (() => { - const _el$11 = _tmpl$2.cloneNode(true); - - _$insert(_el$11, () => dynamic.children); - - return _el$11; -})(); - -const template16 = _$createComponent(Module, { - get children() { - return dynamic.children; - }, -}); - -const template18 = (() => { - const _el$12 = _tmpl$4.cloneNode(true); - - _$insert(_el$12, children, null); - - return _el$12; -})(); - -const template19 = _$createComponent(Module, { - get children() { - return ["Hi ", children]; - }, -}); - -const template20 = (() => { - const _el$13 = _tmpl$2.cloneNode(true); - - _$insert(_el$13, children); - - return _el$13; -})(); - -const template21 = _$createComponent(Module, { - get children() { - return children(); - }, -}); - -const template22 = (() => { - const _el$14 = _tmpl$2.cloneNode(true); - - _$insert(_el$14, () => state.children()); - - return _el$14; -})(); - -const template23 = _$createComponent(Module, { - get children() { - return state.children(); - }, -}); - -const tiles = []; -tiles.push(_tmpl$5.cloneNode(true)); - -const template24 = (() => { - const _el$16 = _tmpl$.cloneNode(true); - - _$insert(_el$16, tiles); - - return _el$16; -})(); - -const comma = (() => { - const _el$17 = _tmpl$.cloneNode(true); - - _$insert(_el$17, () => (expression(), "static")); - - return _el$17; -})(); diff --git a/test/bun.js/solid-dom-fixtures/namespaceElements/code.js b/test/bun.js/solid-dom-fixtures/namespaceElements/code.js deleted file mode 100644 index 7ad410329..000000000 --- a/test/bun.js/solid-dom-fixtures/namespaceElements/code.js +++ /dev/null @@ -1,6 +0,0 @@ -const template = <module.A />; -const template2 = <module.a.B />; -const template3 = <module.A.B />; -const template4 = <module.a-b />; -const template5 = <module.a-b.c-d />; -const template6 = <namespace:tag />; diff --git a/test/bun.js/solid-dom-fixtures/namespaceElements/output.js b/test/bun.js/solid-dom-fixtures/namespaceElements/output.js deleted file mode 100644 index 162ffb140..000000000 --- a/test/bun.js/solid-dom-fixtures/namespaceElements/output.js +++ /dev/null @@ -1,16 +0,0 @@ -import { template as _$template } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<namespace:tag></namespace:tag>`, 2); - -const template = _$createComponent(module.A, {}); - -const template2 = _$createComponent(module.a.B, {}); - -const template3 = _$createComponent(module.A.B, {}); - -const template4 = _$createComponent(module["a-b"], {}); - -const template5 = _$createComponent(module["a-b"]["c-d"], {}); - -const template6 = _tmpl$.cloneNode(true); diff --git a/test/bun.js/solid-dom-fixtures/simpleElements/code.js b/test/bun.js/solid-dom-fixtures/simpleElements/code.js deleted file mode 100644 index c3537ee7d..000000000 --- a/test/bun.js/solid-dom-fixtures/simpleElements/code.js +++ /dev/null @@ -1,9 +0,0 @@ -const template = ( - <div id="main"> - <style>{"div { color: red; }"}</style> - <h1>Welcome</h1> - <label for={"entry"}>Edit:</label> - <input id="entry" type="text" /> - {/* Comment Node */} - </div> -); diff --git a/test/bun.js/solid-dom-fixtures/simpleElements/output.bun.js b/test/bun.js/solid-dom-fixtures/simpleElements/output.bun.js deleted file mode 100644 index 72d61c1e3..000000000 --- a/test/bun.js/solid-dom-fixtures/simpleElements/output.bun.js +++ /dev/null @@ -1,5 +0,0 @@ -var _tmpl$1 = _template$( - '<div id="main"><style>div { color: red; }</style><h1>Welcome</h1><label for="entry">Edit:</label><input id="entry" type="text"/></div>', - 8 -); -const template = _tmpl$1.cloneNode(true); diff --git a/test/bun.js/solid-dom-fixtures/simpleElements/output.js b/test/bun.js/solid-dom-fixtures/simpleElements/output.js deleted file mode 100644 index 5d16f6767..000000000 --- a/test/bun.js/solid-dom-fixtures/simpleElements/output.js +++ /dev/null @@ -1,8 +0,0 @@ -import { template as _$template } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template( - `<div id="main"><style>div { color: red; }</style><h1>Welcome</h1><label for="entry">Edit:</label><input id="entry" type="text"></div>`, - 9 -); - -const template = _tmpl$.cloneNode(true); diff --git a/test/bun.js/solid-dom-fixtures/textInterpolation/code.js b/test/bun.js/solid-dom-fixtures/textInterpolation/code.js deleted file mode 100644 index 21698ea89..000000000 --- a/test/bun.js/solid-dom-fixtures/textInterpolation/code.js +++ /dev/null @@ -1,72 +0,0 @@ -const trailing = <span>Hello </span>; -const leading = <span> John</span>; - -/* prettier-ignore */ -const extraSpaces = <span>Hello John</span>; - -const trailingExpr = <span>Hello {name}</span>; -const leadingExpr = <span>{greeting} John</span>; - -/* prettier-ignore */ -const multiExpr = <span>{greeting} {name}</span>; - -/* prettier-ignore */ -const multiExprSpaced = <span> {greeting} {name} </span>; - -/* prettier-ignore */ -const multiExprTogether = <span> {greeting}{name} </span>; - -/* prettier-ignore */ -const multiLine = <span> - - Hello - -</span> - -/* prettier-ignore */ -const multiLineTrailingSpace = <span> - Hello - John -</span> - -/* prettier-ignore */ -const multiLineNoTrailingSpace = <span> - Hello - John -</span> - -/* prettier-ignore */ -const escape = <span> - <Hi> -</span> - -/* prettier-ignore */ -const escape2 = <Comp> - <Hi> -</Comp> - -/* prettier-ignore */ -const escape3 = <> - <Hi> -</> - -const injection = <span>Hi{"<script>alert();</script>"}</span>; - -let value = "World"; -const evaluated = <span>Hello {value + "!"}</span>; - -let number = 4 + 5; -const evaluatedNonString = <span>4 + 5 = {number}</span>; - -const newLineLiteral = ( - <div> - {s} - {"\n"}d - </div> -); - -const trailingSpace = <div>{expr}</div>; - -const trailingSpaceComp = <Comp>{expr}</Comp>; - -const trailingSpaceFrag = <>{expr}</>; diff --git a/test/bun.js/solid-dom-fixtures/textInterpolation/output.bun.js b/test/bun.js/solid-dom-fixtures/textInterpolation/output.bun.js deleted file mode 100644 index eb4c5347a..000000000 --- a/test/bun.js/solid-dom-fixtures/textInterpolation/output.bun.js +++ /dev/null @@ -1,71 +0,0 @@ -var _tmpl$1 = template("<span>Hello </span>", 2), _tmpl$2 = template("<span> John</span>", 2), _tmpl$3 = template("<span>Hello John</span>", 2), _tmpl$3 = template("<span> </span>", 4), _tmpl$4 = template("<span> </span>", 4), _tmpl$5 = template("<span> </span>", 4), _tmpl$7 = template("<span>Hello</span>", 2), _tmpl$8 = template("<span>Hello John</span>", 2), _tmpl$9 = template("<span> <Hi> </span>", 2), _tmpl$10 = template("<span>Hi<script>alert();</script></span>", 2), _tmpl$10 = template("<span>4 + 5 = </span>", 3), _tmpl$11 = template("<div>\nd</div>", 3), _tmpl$12 = template("<div</div>", 2); -const trailing = _tmpl$1.cloneNode(true); -const leading = _tmpl$2.cloneNode(true); -const extraSpaces = _tmpl$3.cloneNode(true); -const trailingExpr = () => { - var _tmpl$1 = _tmpl$1.cloneNode(true); - insert(_tmpl$1, name, null); - return _tmpl$1; -}; -const leadingExpr = () => { - var _tmpl$2 = _tmpl$2.cloneNode(true); - insert(_tmpl$2, greeting, null); - return _tmpl$2; -}; -const multiExpr = () => { - var _tmpl$3 = _tmpl$3.cloneNode(true); - insert(_tmpl$3, greeting, null); - insert(_tmpl$3, name, null); - return _tmpl$3; -}; -const multiExprSpaced = () => { - var _tmpl$4 = _tmpl$4.cloneNode(true); - insert(_tmpl$4, greeting, null); - insert(_tmpl$4, name, null); - return _tmpl$4; -}; -const multiExprTogether = () => { - var _tmpl$5 = _tmpl$5.cloneNode(true); - insert(_tmpl$5, greeting, null); - insert(_tmpl$5, name, null); - return _tmpl$5; -}; -const multiLine = _tmpl$7.cloneNode(true); -const multiLineTrailingSpace = _tmpl$8.cloneNode(true); -const multiLineNoTrailingSpace = _tmpl$8.cloneNode(true); -const escape = _tmpl$9.cloneNode(true); -const escape2 = createComponent(Comp, { - get children: [ - "\xA0<Hi>\xA0" - ] -}); -const escape3 = ; -const injection = _tmpl$10.cloneNode(true); -let value = "World"; -const evaluated = () => { - var _tmpl$1 = _tmpl$1.cloneNode(true); - insert(_tmpl$1, value + "!", null); - return _tmpl$1; -}; -let number = 4 + 5; -const evaluatedNonString = () => { - var _tmpl$10 = _tmpl$10.cloneNode(true); - insert(_tmpl$10, number, null); - return _tmpl$10; -}; -const newLineLiteral = () => { - var _tmpl$11 = _tmpl$11.cloneNode(true); - insert(_tmpl$11, s, null); - return _tmpl$11; -}; -const trailingSpace = () => { - var _tmpl$12 = _tmpl$12.cloneNode(true); - insert(_tmpl$12, expr, null); - return _tmpl$12; -}; -const trailingSpaceComp = createComponent(Comp, { - get children: [ - expr - ] -}); -const trailingSpaceFrag = ; diff --git a/test/bun.js/solid-dom-fixtures/textInterpolation/output.js b/test/bun.js/solid-dom-fixtures/textInterpolation/output.js deleted file mode 100644 index b86a631fb..000000000 --- a/test/bun.js/solid-dom-fixtures/textInterpolation/output.js +++ /dev/null @@ -1,144 +0,0 @@ -import { template as _$template } from "r-dom"; -import { createComponent as _$createComponent } from "r-dom"; -import { insert as _$insert } from "r-dom"; - -const _tmpl$ = /*#__PURE__*/ _$template(`<span>Hello </span>`, 2), - _tmpl$2 = /*#__PURE__*/ _$template(`<span> John</span>`, 2), - _tmpl$3 = /*#__PURE__*/ _$template(`<span>Hello John</span>`, 2), - _tmpl$4 = /*#__PURE__*/ _$template(`<span> </span>`, 2), - _tmpl$5 = /*#__PURE__*/ _$template(`<span> <!> <!> </span>`, 4), - _tmpl$6 = /*#__PURE__*/ _$template(`<span> <!> </span>`, 3), - _tmpl$7 = /*#__PURE__*/ _$template(`<span>Hello</span>`, 2), - _tmpl$8 = /*#__PURE__*/ _$template(`<span> <Hi> </span>`, 2), - _tmpl$9 = /*#__PURE__*/ _$template( - `<span>Hi<script>alert();</script></span>`, - 2 - ), - _tmpl$10 = /*#__PURE__*/ _$template(`<span>Hello World!</span>`, 2), - _tmpl$11 = /*#__PURE__*/ _$template(`<span>4 + 5 = 9</span>`, 2), - _tmpl$12 = /*#__PURE__*/ _$template( - `<div> -d</div>`, - 2 - ), - _tmpl$13 = /*#__PURE__*/ _$template(`<div></div>`, 2); - -const trailing = _tmpl$.cloneNode(true); - -const leading = _tmpl$2.cloneNode(true); -/* prettier-ignore */ - -const extraSpaces = _tmpl$3.cloneNode(true); - -const trailingExpr = (() => { - const _el$4 = _tmpl$.cloneNode(true), - _el$5 = _el$4.firstChild; - - _$insert(_el$4, name, null); - - return _el$4; -})(); - -const leadingExpr = (() => { - const _el$6 = _tmpl$2.cloneNode(true), - _el$7 = _el$6.firstChild; - - _$insert(_el$6, greeting, _el$7); - - return _el$6; -})(); -/* prettier-ignore */ - -const multiExpr = (() => { - const _el$8 = _tmpl$4.cloneNode(true), - _el$9 = _el$8.firstChild; - - _$insert(_el$8, greeting, _el$9); - - _$insert(_el$8, name, null); - - return _el$8; -})(); -/* prettier-ignore */ - -const multiExprSpaced = (() => { - const _el$10 = _tmpl$5.cloneNode(true), - _el$11 = _el$10.firstChild, - _el$14 = _el$11.nextSibling, - _el$12 = _el$14.nextSibling, - _el$15 = _el$12.nextSibling, - _el$13 = _el$15.nextSibling; - - _$insert(_el$10, greeting, _el$14); - - _$insert(_el$10, name, _el$15); - - return _el$10; -})(); -/* prettier-ignore */ - -const multiExprTogether = (() => { - const _el$16 = _tmpl$6.cloneNode(true), - _el$17 = _el$16.firstChild, - _el$19 = _el$17.nextSibling, - _el$18 = _el$19.nextSibling; - - _$insert(_el$16, greeting, _el$19); - - _$insert(_el$16, name, _el$19); - - return _el$16; -})(); -/* prettier-ignore */ - -const multiLine = _tmpl$7.cloneNode(true); -/* prettier-ignore */ - -const multiLineTrailingSpace = _tmpl$3.cloneNode(true); -/* prettier-ignore */ - -const multiLineNoTrailingSpace = _tmpl$3.cloneNode(true); -/* prettier-ignore */ - -const escape = _tmpl$8.cloneNode(true); -/* prettier-ignore */ - -const escape2 = _$createComponent(Comp, { - children: "\xA0<Hi>\xA0" -}); -/* prettier-ignore */ - -const escape3 = "\xA0<Hi>\xA0"; - -const injection = _tmpl$9.cloneNode(true); - -let value = "World"; - -const evaluated = _tmpl$10.cloneNode(true); - -let number = 4 + 5; - -const evaluatedNonString = _tmpl$11.cloneNode(true); - -const newLineLiteral = (() => { - const _el$27 = _tmpl$12.cloneNode(true), - _el$28 = _el$27.firstChild; - - _$insert(_el$27, s, _el$28); - - return _el$27; -})(); - -const trailingSpace = (() => { - const _el$29 = _tmpl$13.cloneNode(true); - - _$insert(_el$29, expr); - - return _el$29; -})(); - -const trailingSpaceComp = _$createComponent(Comp, { - children: expr, -}); - -const trailingSpaceFrag = expr; |