diff --git a/platform/wab/src/wab/shared/codegen/__snapshots__/animations.test.ts.snap b/platform/wab/src/wab/shared/codegen/__snapshots__/animations.test.ts.snap index d257ab24f15..2c5df56a722 100644 --- a/platform/wab/src/wab/shared/codegen/__snapshots__/animations.test.ts.snap +++ b/platform/wab/src/wab/shared/codegen/__snapshots__/animations.test.ts.snap @@ -330,25 +330,14 @@ const $$ = {}; data-plasmic-root={true} data-plasmic-for-node={forNode} className={classNames("plasmic_default__all", "root_reset_1234567890", "plasmic_default_styles", "plasmic_mixins", styleTokensClassNames, "Homepage__root__wN3Do")} - >
{ "Main text (primary)" }
@@ -1472,23 +1465,16 @@ const $$ = {}; "fontSize", "large" ) })} - >{ "Main text (primary)" }
diff --git a/platform/wab/src/wab/shared/codegen/react-p/index.test.ts b/platform/wab/src/wab/shared/codegen/react-p/index.test.ts index 071c5b19158..a306b47d9a8 100644 --- a/platform/wab/src/wab/shared/codegen/react-p/index.test.ts +++ b/platform/wab/src/wab/shared/codegen/react-p/index.test.ts @@ -30,6 +30,7 @@ import { import { typeFactory } from "@/wab/shared/model/model-util"; import { PlasmicTranslatorContext } from "@plasmicapp/host"; import { render } from "@testing-library/react"; +import * as prettier from "prettier"; import * as React from "react"; import tmp from "tmp"; @@ -86,6 +87,40 @@ describe("serializeTplTagBase", () => { expect(submitButtonJsx).not.toContain('type={"button"}'); }); + it("leaves no blank lines between the attributes of non-root elements once formatted", async () => { + const site = createSite(); + const component = mkComponent({ + name: "Card", + type: ComponentType.Plain, + tplTree: (baseVariant) => { + const title = mkTplTagX("button", { + name: "title", + baseVariant, + attrs: { title: codeLit("Open") }, + }); + const root = mkTplTagX("div", {}, [title]); + ensureVariantSetting(root, [baseVariant]); + return root; + }, + }); + site.components = [...site.components, component]; + + const { readFromProject } = await codegen(dir.name, site); + const formatted = await prettier.format( + readFromProject("PlasmicCard.tsx"), + { + parser: "typescript", + }, + ); + + const titleJsx = formatted.slice( + formatted.indexOf('data-plasmic-name={"title"}'), + ); + expect(titleJsx).toMatch( + /data-plasmic-override=\{overrides\.title\}\n[ \t]*className=/, + ); + }); + it("defaults