[{"data":1,"prerenderedAt":1358},["ShallowReactive",2],{"navigation_docs":3,"-documentation-getting-started-contributing":353,"-documentation-getting-started-contributing-surround":372,"contributing-guide":377},[4,114,302],{"title":5,"path":6,"stem":7,"children":8,"page":34},"Documentation","\u002Fdocumentation","1.documentation",[9,35,56,93],{"title":10,"path":11,"stem":12,"children":13,"page":34},"Getting Started","\u002Fdocumentation\u002Fgetting-started","1.documentation\u002F1.getting-started",[14,18,22,26,30],{"title":15,"path":16,"stem":17},"Installation","\u002Fdocumentation\u002Fgetting-started\u002Finstallation","1.documentation\u002F1.getting-started\u002F1.installation",{"title":19,"path":20,"stem":21},"Agents","\u002Fdocumentation\u002Fgetting-started\u002Fagents","1.documentation\u002F1.getting-started\u002F2.agents",{"title":23,"path":24,"stem":25},"Migration","\u002Fdocumentation\u002Fgetting-started\u002Fmigration","1.documentation\u002F1.getting-started\u002F3.migration",{"title":27,"path":28,"stem":29},"Contributing","\u002Fdocumentation\u002Fgetting-started\u002Fcontributing","1.documentation\u002F1.getting-started\u002F4.contributing",{"title":31,"path":32,"stem":33},"What's new","\u002Fdocumentation\u002Fgetting-started\u002Fwhats-new","1.documentation\u002F1.getting-started\u002F5.whats-new",false,{"title":36,"path":37,"stem":38,"children":39,"page":34},"Guidelines","\u002Fdocumentation\u002Fguidelines","1.documentation\u002F2.guidelines",[40,44,48,52],{"title":41,"path":42,"stem":43},"Design Principles","\u002Fdocumentation\u002Fguidelines\u002Fdesign-principles","1.documentation\u002F2.guidelines\u002F1.design-principles",{"title":45,"path":46,"stem":47},"Accessibility","\u002Fdocumentation\u002Fguidelines\u002Faccessibility","1.documentation\u002F2.guidelines\u002F2.accessibility",{"title":49,"path":50,"stem":51},"Interactions","\u002Fdocumentation\u002Fguidelines\u002Finteractions","1.documentation\u002F2.guidelines\u002F3.interactions",{"title":53,"path":54,"stem":55},"Components","\u002Fdocumentation\u002Fguidelines\u002Fcomponents","1.documentation\u002F2.guidelines\u002F4.components",{"title":57,"path":58,"stem":59,"children":60,"page":34},"Design","\u002Fdocumentation\u002Fdesign","1.documentation\u002F3.design",[61,65,69,73,77,81,85,89],{"title":62,"path":63,"stem":64},"Tokens","\u002Fdocumentation\u002Fdesign\u002Ftokens","1.documentation\u002F3.design\u002F1.tokens",{"title":66,"path":67,"stem":68},"Color Palette","\u002Fdocumentation\u002Fdesign\u002Fcolor-palette","1.documentation\u002F3.design\u002F2.color-palette",{"title":70,"path":71,"stem":72},"Elevation","\u002Fdocumentation\u002Fdesign\u002Felevation","1.documentation\u002F3.design\u002F3.elevation",{"title":74,"path":75,"stem":76},"Spacing","\u002Fdocumentation\u002Fdesign\u002Fspacing","1.documentation\u002F3.design\u002F4.spacing",{"title":78,"path":79,"stem":80},"Border Radius","\u002Fdocumentation\u002Fdesign\u002Fborder-radius","1.documentation\u002F3.design\u002F5.border-radius",{"title":82,"path":83,"stem":84},"Typography","\u002Fdocumentation\u002Fdesign\u002Ftypography","1.documentation\u002F3.design\u002F6.typography",{"title":86,"path":87,"stem":88},"Icons","\u002Fdocumentation\u002Fdesign\u002Ficons","1.documentation\u002F3.design\u002F7.icons",{"title":90,"path":91,"stem":92},"Motion","\u002Fdocumentation\u002Fdesign\u002Fmotion","1.documentation\u002F3.design\u002F8.motion",{"title":94,"path":95,"stem":96,"children":97,"page":34},"Content","\u002Fdocumentation\u002Fcontent","1.documentation\u002F4.content",[98,102,106,110],{"title":99,"path":100,"stem":101},"Wording","\u002Fdocumentation\u002Fcontent\u002Fwording","1.documentation\u002F4.content\u002F1.wording",{"title":103,"path":104,"stem":105},"Messaging","\u002Fdocumentation\u002Fcontent\u002Fmessaging","1.documentation\u002F4.content\u002F2.messaging",{"title":107,"path":108,"stem":109},"Glossary","\u002Fdocumentation\u002Fcontent\u002Fglossary","1.documentation\u002F4.content\u002F3.glossary",{"title":111,"path":112,"stem":113},"Artificial Intelligence","\u002Fdocumentation\u002Fcontent\u002Fartificial-intelligence","1.documentation\u002F4.content\u002F4.artificial-intelligence",{"title":53,"path":115,"stem":116,"children":117,"page":34},"\u002Fcomponents","2.components",[118,122,126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222,226,230,234,238,242,246,250,254,258,262,266,270,274,278,282,286,290,294,298],{"title":119,"path":120,"stem":121},"Action Menu","\u002Fcomponents\u002Faction-menu","2.components\u002Faction-menu",{"title":123,"path":124,"stem":125},"Avatar","\u002Fcomponents\u002Favatar","2.components\u002Favatar",{"title":127,"path":128,"stem":129},"Badge","\u002Fcomponents\u002Fbadge","2.components\u002Fbadge",{"title":131,"path":132,"stem":133},"Banner","\u002Fcomponents\u002Fbanner","2.components\u002Fbanner",{"title":135,"path":136,"stem":137},"Button","\u002Fcomponents\u002Fbutton","2.components\u002Fbutton",{"title":139,"path":140,"stem":141},"Card","\u002Fcomponents\u002Fcard","2.components\u002Fcard",{"title":143,"path":144,"stem":145},"Chart","\u002Fcomponents\u002Fchart","2.components\u002Fchart",{"title":147,"path":148,"stem":149},"Checkbox","\u002Fcomponents\u002Fcheckbox","2.components\u002Fcheckbox",{"title":151,"path":152,"stem":153},"Collapsible","\u002Fcomponents\u002Fcollapsible","2.components\u002Fcollapsible",{"title":155,"path":156,"stem":157},"Colorpicker","\u002Fcomponents\u002Fcolorpicker","2.components\u002Fcolorpicker",{"title":159,"path":160,"stem":161},"Data Table","\u002Fcomponents\u002Fdata-table","2.components\u002Fdata-table",{"title":163,"path":164,"stem":165},"Datepicker","\u002Fcomponents\u002Fdatepicker","2.components\u002Fdatepicker",{"title":167,"path":168,"stem":169},"Email Field","\u002Fcomponents\u002Femail-field","2.components\u002Femail-field",{"title":171,"path":172,"stem":173},"Empty State","\u002Fcomponents\u002Fempty-state","2.components\u002Fempty-state",{"title":175,"path":176,"stem":177},"Entity Data Table","\u002Fcomponents\u002Fentity-data-table","2.components\u002Fentity-data-table",{"title":179,"path":180,"stem":181},"Entity Select","\u002Fcomponents\u002Fentity-select","2.components\u002Fentity-select",{"title":183,"path":184,"stem":185},"Floating UI","\u002Fcomponents\u002Ffloating-ui","2.components\u002Ffloating-ui",{"title":187,"path":188,"stem":189},"Help Text","\u002Fcomponents\u002Fhelp-text","2.components\u002Fhelp-text",{"title":191,"path":192,"stem":193},"Icon","\u002Fcomponents\u002Ficon","2.components\u002Ficon",{"title":195,"path":196,"stem":197},"Link","\u002Fcomponents\u002Flink","2.components\u002Flink",{"title":199,"path":200,"stem":201},"Loader","\u002Fcomponents\u002Floader","2.components\u002Floader",{"title":203,"path":204,"stem":205},"Modal","\u002Fcomponents\u002Fmodal","2.components\u002Fmodal",{"title":207,"path":208,"stem":209},"Number Field","\u002Fcomponents\u002Fnumber-field","2.components\u002Fnumber-field",{"title":211,"path":212,"stem":213},"Pagination","\u002Fcomponents\u002Fpagination","2.components\u002Fpagination",{"title":215,"path":216,"stem":217},"Password Field","\u002Fcomponents\u002Fpassword-field","2.components\u002Fpassword-field",{"title":219,"path":220,"stem":221},"Popover","\u002Fcomponents\u002Fpopover","2.components\u002Fpopover",{"title":223,"path":224,"stem":225},"Progress Bar","\u002Fcomponents\u002Fprogress-bar","2.components\u002Fprogress-bar",{"title":227,"path":228,"stem":229},"Promo Badge","\u002Fcomponents\u002Fpromo-badge","2.components\u002Fpromo-badge",{"title":231,"path":232,"stem":233},"Radio Group","\u002Fcomponents\u002Fradio-group","2.components\u002Fradio-group",{"title":235,"path":236,"stem":237},"Search","\u002Fcomponents\u002Fsearch","2.components\u002Fsearch",{"title":239,"path":240,"stem":241},"Select","\u002Fcomponents\u002Fselect","2.components\u002Fselect",{"title":243,"path":244,"stem":245},"Skeleton Bar","\u002Fcomponents\u002Fskeleton-bar","2.components\u002Fskeleton-bar",{"title":247,"path":248,"stem":249},"Slider","\u002Fcomponents\u002Fslider","2.components\u002Fslider",{"title":251,"path":252,"stem":253},"Snackbar","\u002Fcomponents\u002Fsnackbar","2.components\u002Fsnackbar",{"title":255,"path":256,"stem":257},"Status Dot","\u002Fcomponents\u002Fstatus-dot","2.components\u002Fstatus-dot",{"title":259,"path":260,"stem":261},"Switch","\u002Fcomponents\u002Fswitch","2.components\u002Fswitch",{"title":263,"path":264,"stem":265},"Tabs","\u002Fcomponents\u002Ftabs","2.components\u002Ftabs",{"title":267,"path":268,"stem":269},"Text","\u002Fcomponents\u002Ftext","2.components\u002Ftext",{"title":271,"path":272,"stem":273},"Text Editor","\u002Fcomponents\u002Ftext-editor","2.components\u002Ftext-editor",{"title":275,"path":276,"stem":277},"Text Field","\u002Fcomponents\u002Ftext-field","2.components\u002Ftext-field",{"title":279,"path":280,"stem":281},"Textarea","\u002Fcomponents\u002Ftextarea","2.components\u002Ftextarea",{"title":283,"path":284,"stem":285},"Theme Select","\u002Fcomponents\u002Ftheme-select","2.components\u002Ftheme-select",{"title":287,"path":288,"stem":289},"Toast","\u002Fcomponents\u002Ftoast","2.components\u002Ftoast",{"title":291,"path":292,"stem":293},"Tooltip","\u002Fcomponents\u002Ftooltip","2.components\u002Ftooltip",{"title":295,"path":296,"stem":297},"Unit Field","\u002Fcomponents\u002Funit-field","2.components\u002Funit-field",{"title":299,"path":300,"stem":301},"URL Field","\u002Fcomponents\u002Furl-field","2.components\u002Furl-field",{"title":303,"path":304,"stem":305,"children":306,"page":34},"Utilities","\u002Futilities","3.utilities",[307,319,336,344],{"title":53,"path":308,"stem":309,"children":310,"page":34},"\u002Futilities\u002Fcomponents","3.utilities\u002Fcomponents",[311,315],{"title":312,"path":313,"stem":314},"Inset","\u002Futilities\u002Fcomponents\u002Finset","3.utilities\u002Fcomponents\u002Finset",{"title":316,"path":317,"stem":318},"Theme Provider","\u002Futilities\u002Fcomponents\u002Ftheme-provider","3.utilities\u002Fcomponents\u002Ftheme-provider",{"title":320,"path":321,"stem":322,"children":323,"page":34},"Composables","\u002Futilities\u002Fcomposables","3.utilities\u002Fcomposables",[324,328,332],{"title":325,"path":326,"stem":327},"useFutureFlags","\u002Futilities\u002Fcomposables\u002Fuse-future-flags","3.utilities\u002Fcomposables\u002Fuse-future-flags",{"title":329,"path":330,"stem":331},"useSnackbar","\u002Futilities\u002Fcomposables\u002Fuse-snackbar","3.utilities\u002Fcomposables\u002Fuse-snackbar",{"title":333,"path":334,"stem":335},"useTheme","\u002Futilities\u002Fcomposables\u002Fuse-theme","3.utilities\u002Fcomposables\u002Fuse-theme",{"title":337,"path":338,"stem":339,"children":340,"page":34},"Directives","\u002Futilities\u002Fdirectives","3.utilities\u002Fdirectives",[341],{"title":291,"path":342,"stem":343},"\u002Futilities\u002Fdirectives\u002Ftooltip","3.utilities\u002Fdirectives\u002Ftooltip",{"title":345,"path":346,"stem":347,"children":348,"page":34},"Plugins","\u002Futilities\u002Fplugins","3.utilities\u002Fplugins",[349],{"title":350,"path":351,"stem":352},"Device helper","\u002Futilities\u002Fplugins\u002Fdevice-helper","3.utilities\u002Fplugins\u002Fdevice-helper",{"id":354,"title":27,"body":355,"description":365,"extension":366,"links":367,"meta":368,"navigation":369,"path":28,"seo":370,"stem":29,"__hash__":371},"docs\u002F1.documentation\u002F1.getting-started\u002F4.contributing.md",{"type":356,"value":357,"toc":361},"minimark",[358],[359,360],"contributing-guide",{},{"title":362,"searchDepth":363,"depth":363,"links":364},"",2,[],"How to contribute to Meteor, including local development, pull requests, changesets, and releases.","md",null,{},true,{"title":27,"description":365},"IBILHFv1c5FisggBF6y9d6Lghd3ZKZ5h3tCM7WwCo1g",[373,375],{"title":23,"path":24,"stem":25,"description":374,"children":-1},"Guidance for transitioning from older sw- components to Meteor, including a component mapping and gradual migration steps.",{"title":31,"path":32,"stem":33,"description":376,"children":-1},"Release notes for Meteor's documented packages, organized by package and listed newest first.",{"data":378,"body":379,"toc":1341},{"title":362,"description":362},{"type":380,"children":381},"root",[382,391,397,402,418,432,438,452,458,472,486,492,505,518,524,531,536,577,613,634,640,662,667,673,805,810,816,828,899,949,962,988,1022,1028,1033,1051,1064,1069,1099,1104,1117,1122,1171,1176,1182,1187,1220,1234,1240,1245,1250,1255,1261,1335],{"type":383,"tag":384,"props":385,"children":387},"element","h2",{"id":386},"get-involved",[388],{"type":389,"value":390},"text","Get involved",{"type":383,"tag":392,"props":393,"children":394},"p",{},[395],{"type":389,"value":396},"Thank you for taking an interest in making Meteor a better project!",{"type":383,"tag":392,"props":398,"children":399},{},[400],{"type":389,"value":401},"To contribute code (features or bug fixes) open up a pull request.\nIn case you want to make a larger change to the code base, open up\nan issue first before writing any code. That way you don't lose your\nvaluable time in case we might reject the pull request.",{"type":383,"tag":392,"props":403,"children":404},{},[405,407,416],{"type":389,"value":406},"Shopware is available under ",{"type":383,"tag":408,"props":409,"children":413},"a",{"href":410,"rel":411},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Fblob\u002Fmain\u002FLICENSE.md",[412],"nofollow",[414],{"type":389,"value":415},"MIT license",{"type":389,"value":417},".\nContribute your code under MIT license.",{"type":383,"tag":392,"props":419,"children":420},{},[421,423,430],{"type":389,"value":422},"If you've never contributed to an open source project you might\nfind the ",{"type":383,"tag":408,"props":424,"children":427},{"href":425,"rel":426},"https:\u002F\u002Fopensource.guide\u002Fhow-to-contribute\u002F",[412],[428],{"type":389,"value":429},"this guide",{"type":389,"value":431}," helpful.",{"type":383,"tag":384,"props":433,"children":435},{"id":434},"code-of-conduct",[436],{"type":389,"value":437},"Code of conduct",{"type":383,"tag":392,"props":439,"children":440},{},[441,443,450],{"type":389,"value":442},"To understand which action we tolerate we expect you to read\nour ",{"type":383,"tag":408,"props":444,"children":447},{"href":445,"rel":446},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Fblob\u002Fmain\u002FCODE_OF_CONDUCT.md",[412],[448],{"type":389,"value":449},"code of conduct",{"type":389,"value":451},".",{"type":383,"tag":384,"props":453,"children":455},{"id":454},"bugs",[456],{"type":389,"value":457},"Bugs",{"type":383,"tag":392,"props":459,"children":460},{},[461,463,470],{"type":389,"value":462},"Please take a look at the ",{"type":383,"tag":408,"props":464,"children":467},{"href":465,"rel":466},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Fissues",[412],[468],{"type":389,"value":469},"existing issues",{"type":389,"value":471},"\nbefore creating a new one. That way we keep the number of duplicate issues low.\nComplete the issue template as much as possible when creating a new issue.",{"type":383,"tag":392,"props":473,"children":474},{},[475,477,484],{"type":389,"value":476},"To get your bug fixed faster, add a link to a\n",{"type":383,"tag":408,"props":478,"children":481},{"href":479,"rel":480},"https:\u002F\u002Fstackblitz.com\u002Fedit\u002Fmeteor?file=src%2FApp.vue",[412],[482],{"type":389,"value":483},"project with the bug",{"type":389,"value":485},"\nfor us to reproduce in the issue's description.",{"type":383,"tag":384,"props":487,"children":489},{"id":488},"feature-requests",[490],{"type":389,"value":491},"Feature requests",{"type":383,"tag":392,"props":493,"children":494},{},[495,497,503],{"type":389,"value":496},"Search through the ",{"type":383,"tag":408,"props":498,"children":500},{"href":465,"rel":499},[412],[501],{"type":389,"value":502},"list of existing feature requests",{"type":389,"value":504},",\nbefore you create an issue. If somebody already requested your feature you\ncan up-vote that issue. This helps us to see what the community wants the most.",{"type":383,"tag":392,"props":506,"children":507},{},[508,510,517],{"type":389,"value":509},"If there does not already exist a feature request for your idea,\nyou can ",{"type":383,"tag":408,"props":511,"children":514},{"href":512,"rel":513},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Fissues\u002Fnew?template=03-feature.yaml",[412],[515],{"type":389,"value":516},"request a feature",{"type":389,"value":451},{"type":383,"tag":384,"props":519,"children":521},{"id":520},"local-development",[522],{"type":389,"value":523},"Local development",{"type":383,"tag":525,"props":526,"children":528},"h3",{"id":527},"running-storybook-and-the-documentation",[529],{"type":389,"value":530},"Running Storybook and the documentation",{"type":383,"tag":392,"props":532,"children":533},{},[534],{"type":389,"value":535},"To work on the components themselves, start Storybook and the documentation site together from the repository root:",{"type":383,"tag":537,"props":538,"children":542},"pre",{"className":539,"code":540,"language":541,"meta":362,"style":362},"language-sh shiki shiki-themes github-light github-dark-default github-dark-default","pnpm install\npnpm dev\n","sh",[543],{"type":383,"tag":544,"props":545,"children":546},"code",{"__ignoreMap":362},[547,565],{"type":383,"tag":548,"props":549,"children":552},"span",{"class":550,"line":551},"line",1,[553,559],{"type":383,"tag":548,"props":554,"children":556},{"style":555},"--shiki-light:#6F42C1;--shiki-default:#FFA657;--shiki-dark:#FFA657",[557],{"type":389,"value":558},"pnpm",{"type":383,"tag":548,"props":560,"children":562},{"style":561},"--shiki-light:#032F62;--shiki-default:#A5D6FF;--shiki-dark:#A5D6FF",[563],{"type":389,"value":564}," install\n",{"type":383,"tag":548,"props":566,"children":567},{"class":550,"line":363},[568,572],{"type":383,"tag":548,"props":569,"children":570},{"style":555},[571],{"type":389,"value":558},{"type":383,"tag":548,"props":573,"children":574},{"style":561},[575],{"type":389,"value":576}," dev\n",{"type":383,"tag":392,"props":578,"children":579},{},[580,582,588,590,596,598,604,606,611],{"type":389,"value":581},"This runs Storybook on ",{"type":383,"tag":544,"props":583,"children":585},{"className":584},[],[586],{"type":389,"value":587},"http:\u002F\u002Flocalhost:6006",{"type":389,"value":589}," and the documentation on ",{"type":383,"tag":544,"props":591,"children":593},{"className":592},[],[594],{"type":389,"value":595},"http:\u002F\u002Flocalhost:3001",{"type":389,"value":597}," in parallel, each opening in your browser. While both run locally, the ",{"type":383,"tag":544,"props":599,"children":601},{"className":600},[],[602],{"type":389,"value":603},"Storybook",{"type":389,"value":605}," link on a component's documentation page and the ",{"type":383,"tag":544,"props":607,"children":609},{"className":608},[],[610],{"type":389,"value":5},{"type":389,"value":612}," link in Storybook point at these local instances instead of the deployed ones, so you can move between them while developing.",{"type":383,"tag":392,"props":614,"children":615},{},[616,618,624,626,632],{"type":389,"value":617},"To start just one of them, run ",{"type":383,"tag":544,"props":619,"children":621},{"className":620},[],[622],{"type":389,"value":623},"pnpm --filter @shopware-ag\u002Fmeteor-component-library dev",{"type":389,"value":625}," for Storybook or ",{"type":383,"tag":544,"props":627,"children":629},{"className":628},[],[630],{"type":389,"value":631},"pnpm --filter meteor-docs dev",{"type":389,"value":633}," for the documentation.",{"type":383,"tag":525,"props":635,"children":637},{"id":636},"testing-your-changes-in-another-project-with-yalc",[638],{"type":389,"value":639},"Testing your changes in another project with yalc",{"type":383,"tag":392,"props":641,"children":642},{},[643,645,651,653,660],{"type":389,"value":644},"For local development we use ",{"type":383,"tag":544,"props":646,"children":648},{"className":647},[],[649],{"type":389,"value":650},"yalc",{"type":389,"value":652}," to publish packages into a virtual store and consume them from other projects.\nYou can find yalc ",{"type":383,"tag":408,"props":654,"children":657},{"href":655,"rel":656},"https:\u002F\u002Fgithub.com\u002Fwclr\u002Fyalc",[412],[658],{"type":389,"value":659},"here",{"type":389,"value":661}," on GitHub.\nTo use your changes in Shopware and your extensions, you first build and publish the changed package, then add it to your project in a second step.",{"type":383,"tag":392,"props":663,"children":664},{},[665],{"type":389,"value":666},"The walkthrough below uses the component library. Swap the package name and paths if you work on a different package.",{"type":383,"tag":525,"props":668,"children":670},{"id":669},"publish-your-changes-to-the-local-yalc-store",[671],{"type":389,"value":672},"Publish your changes to the local yalc store",{"type":383,"tag":674,"props":675,"children":676},"ol",{},[677,683,731],{"type":383,"tag":678,"props":679,"children":680},"li",{},[681],{"type":389,"value":682},"Make your changes in the desired package(s).",{"type":383,"tag":678,"props":684,"children":685},{},[686,688,718,722,724,730],{"type":389,"value":687},"Build from the meteor root so the published files include your changes:",{"type":383,"tag":537,"props":689,"children":691},{"className":539,"code":690,"language":541,"meta":362,"style":362},"npx turbo run build\n",[692],{"type":383,"tag":544,"props":693,"children":694},{"__ignoreMap":362},[695],{"type":383,"tag":548,"props":696,"children":697},{"class":550,"line":551},[698,703,708,713],{"type":383,"tag":548,"props":699,"children":700},{"style":555},[701],{"type":389,"value":702},"npx",{"type":383,"tag":548,"props":704,"children":705},{"style":561},[706],{"type":389,"value":707}," turbo",{"type":383,"tag":548,"props":709,"children":710},{"style":561},[711],{"type":389,"value":712}," run",{"type":383,"tag":548,"props":714,"children":715},{"style":561},[716],{"type":389,"value":717}," build\n",{"type":383,"tag":719,"props":720,"children":721},"br",{},[],{"type":389,"value":723},"To rebuild only one package, scope the task: ",{"type":383,"tag":544,"props":725,"children":727},{"className":726},[],[728],{"type":389,"value":729},"npx turbo run build --filter=@shopware-ag\u002Fmeteor-component-library",{"type":389,"value":451},{"type":383,"tag":678,"props":732,"children":733},{},[734,736,742,744,792,795,797,803],{"type":389,"value":735},"Publish from the package root, here ",{"type":383,"tag":544,"props":737,"children":739},{"className":738},[],[740],{"type":389,"value":741},"packages\u002Fcomponent-library",{"type":389,"value":743},":",{"type":383,"tag":537,"props":745,"children":747},{"className":539,"code":746,"language":541,"meta":362,"style":362},"cd packages\u002Fcomponent-library\nyalc publish --private --workspace --pure\n",[748],{"type":383,"tag":544,"props":749,"children":750},{"__ignoreMap":362},[751,765],{"type":383,"tag":548,"props":752,"children":753},{"class":550,"line":551},[754,760],{"type":383,"tag":548,"props":755,"children":757},{"style":756},"--shiki-light:#005CC5;--shiki-default:#79C0FF;--shiki-dark:#79C0FF",[758],{"type":389,"value":759},"cd",{"type":383,"tag":548,"props":761,"children":762},{"style":561},[763],{"type":389,"value":764}," packages\u002Fcomponent-library\n",{"type":383,"tag":548,"props":766,"children":767},{"class":550,"line":363},[768,772,777,782,787],{"type":383,"tag":548,"props":769,"children":770},{"style":555},[771],{"type":389,"value":650},{"type":383,"tag":548,"props":773,"children":774},{"style":561},[775],{"type":389,"value":776}," publish",{"type":383,"tag":548,"props":778,"children":779},{"style":756},[780],{"type":389,"value":781}," --private",{"type":383,"tag":548,"props":783,"children":784},{"style":756},[785],{"type":389,"value":786}," --workspace",{"type":383,"tag":548,"props":788,"children":789},{"style":756},[790],{"type":389,"value":791}," --pure\n",{"type":383,"tag":719,"props":793,"children":794},{},[],{"type":389,"value":796},"This copies the built package into the local yalc store, with its ",{"type":383,"tag":544,"props":798,"children":800},{"className":799},[],[801],{"type":389,"value":802},"workspace:",{"type":389,"value":804}," dependencies resolved to concrete versions so they install outside the monorepo.",{"type":383,"tag":392,"props":806,"children":807},{},[808],{"type":389,"value":809},"Repeat the build and publish steps whenever you change the source again.",{"type":383,"tag":525,"props":811,"children":813},{"id":812},"add-your-updated-package-to-shopware-and-your-extensions",[814],{"type":389,"value":815},"Add your updated package to Shopware and your extensions",{"type":383,"tag":392,"props":817,"children":818},{},[819,821,827],{"type":389,"value":820},"Switch to the project that should consume your changes. For the Shopware administration this is ",{"type":383,"tag":544,"props":822,"children":824},{"className":823},[],[825],{"type":389,"value":826},"\u003Cshopware-root-folder>\u002Fsrc\u002FAdministration\u002FResources\u002Fapp\u002Fadministration",{"type":389,"value":743},{"type":383,"tag":537,"props":829,"children":831},{"className":539,"code":830,"language":541,"meta":362,"style":362},"cd \u003Cshopware-root-folder>\u002Fsrc\u002FAdministration\u002FResources\u002Fapp\u002Fadministration\nyalc add @shopware-ag\u002Fmeteor-component-library\nnpm install\n",[832],{"type":383,"tag":544,"props":833,"children":834},{"__ignoreMap":362},[835,869,886],{"type":383,"tag":548,"props":836,"children":837},{"class":550,"line":551},[838,842,848,853,859,864],{"type":383,"tag":548,"props":839,"children":840},{"style":756},[841],{"type":389,"value":759},{"type":383,"tag":548,"props":843,"children":845},{"style":844},"--shiki-light:#D73A49;--shiki-default:#FF7B72;--shiki-dark:#FF7B72",[846],{"type":389,"value":847}," \u003C",{"type":383,"tag":548,"props":849,"children":850},{"style":561},[851],{"type":389,"value":852},"shopware-root-folde",{"type":383,"tag":548,"props":854,"children":856},{"style":855},"--shiki-light:#24292E;--shiki-default:#E6EDF3;--shiki-dark:#E6EDF3",[857],{"type":389,"value":858},"r",{"type":383,"tag":548,"props":860,"children":861},{"style":844},[862],{"type":389,"value":863},">",{"type":383,"tag":548,"props":865,"children":866},{"style":561},[867],{"type":389,"value":868},"\u002Fsrc\u002FAdministration\u002FResources\u002Fapp\u002Fadministration\n",{"type":383,"tag":548,"props":870,"children":871},{"class":550,"line":363},[872,876,881],{"type":383,"tag":548,"props":873,"children":874},{"style":555},[875],{"type":389,"value":650},{"type":383,"tag":548,"props":877,"children":878},{"style":561},[879],{"type":389,"value":880}," add",{"type":383,"tag":548,"props":882,"children":883},{"style":561},[884],{"type":389,"value":885}," @shopware-ag\u002Fmeteor-component-library\n",{"type":383,"tag":548,"props":887,"children":889},{"class":550,"line":888},3,[890,895],{"type":383,"tag":548,"props":891,"children":892},{"style":555},[893],{"type":389,"value":894},"npm",{"type":383,"tag":548,"props":896,"children":897},{"style":561},[898],{"type":389,"value":564},{"type":383,"tag":392,"props":900,"children":901},{},[902,908,910,916,918,924,926,932,934,940,942,947],{"type":383,"tag":544,"props":903,"children":905},{"className":904},[],[906],{"type":389,"value":907},"yalc add",{"type":389,"value":909}," copies the published files into a local ",{"type":383,"tag":544,"props":911,"children":913},{"className":912},[],[914],{"type":389,"value":915},".yalc",{"type":389,"value":917}," folder and points the project's ",{"type":383,"tag":544,"props":919,"children":921},{"className":920},[],[922],{"type":389,"value":923},"package.json",{"type":389,"value":925}," at them; ",{"type":383,"tag":544,"props":927,"children":929},{"className":928},[],[930],{"type":389,"value":931},"npm install",{"type":389,"value":933}," then wires them into ",{"type":383,"tag":544,"props":935,"children":937},{"className":936},[],[938],{"type":389,"value":939},"node_modules",{"type":389,"value":941},".\nBe careful not to commit the ",{"type":383,"tag":544,"props":943,"children":945},{"className":944},[],[946],{"type":389,"value":923},{"type":389,"value":948}," changes.",{"type":383,"tag":392,"props":950,"children":951},{},[952,954,960],{"type":389,"value":953},"To pick up later changes, republish from the package and run ",{"type":383,"tag":544,"props":955,"children":957},{"className":956},[],[958],{"type":389,"value":959},"yalc update",{"type":389,"value":961}," in the consuming project.",{"type":383,"tag":392,"props":963,"children":964},{},[965,967,973,975,980,982,987],{"type":389,"value":966},"Alternatively, run ",{"type":383,"tag":544,"props":968,"children":970},{"className":969},[],[971],{"type":389,"value":972},"yalc link @shopware-ag\u002Fmeteor-component-library",{"type":389,"value":974}," to symlink the files into ",{"type":383,"tag":544,"props":976,"children":978},{"className":977},[],[979],{"type":389,"value":939},{"type":389,"value":981}," without touching ",{"type":383,"tag":544,"props":983,"children":985},{"className":984},[],[986],{"type":389,"value":923},{"type":389,"value":451},{"type":383,"tag":392,"props":989,"children":990},{},[991,997,999,1005,1007,1013,1015,1020],{"type":383,"tag":992,"props":993,"children":994},"strong",{},[995],{"type":389,"value":996},"Caution",{"type":389,"value":998},": ",{"type":383,"tag":544,"props":1000,"children":1002},{"className":1001},[],[1003],{"type":389,"value":1004},"yalc link",{"type":389,"value":1006}," creates symlinks with absolute paths. If you run a containerized setup, it will fail to resolve (see: ",{"type":383,"tag":408,"props":1008,"children":1011},{"href":1009,"rel":1010},"https:\u002F\u002Fgithub.com\u002Fwclr\u002Fyalc\u002Fissues\u002F123",[412],[1012],{"type":389,"value":1009},{"type":389,"value":1014},").\nIn that case use ",{"type":383,"tag":544,"props":1016,"children":1018},{"className":1017},[],[1019],{"type":389,"value":907},{"type":389,"value":1021}," as shown above.",{"type":383,"tag":384,"props":1023,"children":1025},{"id":1024},"creating-a-pull-request",[1026],{"type":389,"value":1027},"Creating a pull request",{"type":383,"tag":392,"props":1029,"children":1030},{},[1031],{"type":389,"value":1032},"The first step is to clone your repo. Then, install the dependencies with:",{"type":383,"tag":537,"props":1034,"children":1036},{"className":539,"code":1035,"language":541,"meta":362,"style":362},"pnpm install\n",[1037],{"type":383,"tag":544,"props":1038,"children":1039},{"__ignoreMap":362},[1040],{"type":383,"tag":548,"props":1041,"children":1042},{"class":550,"line":551},[1043,1047],{"type":383,"tag":548,"props":1044,"children":1045},{"style":555},[1046],{"type":389,"value":558},{"type":383,"tag":548,"props":1048,"children":1049},{"style":561},[1050],{"type":389,"value":564},{"type":383,"tag":392,"props":1052,"children":1053},{},[1054,1056,1062],{"type":389,"value":1055},"In case you have not installed pnpm execute ",{"type":383,"tag":544,"props":1057,"children":1059},{"className":1058},[],[1060],{"type":389,"value":1061},"npm install -g pnpm",{"type":389,"value":1063},".\nIf you want to install pnpm through another way take a look at their documentation.",{"type":383,"tag":392,"props":1065,"children":1066},{},[1067],{"type":389,"value":1068},"To execute scripts defined in the packages.json file of each package you have three options:",{"type":383,"tag":674,"props":1070,"children":1071},{},[1072,1083,1094],{"type":383,"tag":678,"props":1073,"children":1074},{},[1075,1077],{"type":389,"value":1076},"You use turbo: ",{"type":383,"tag":544,"props":1078,"children":1080},{"className":1079},[],[1081],{"type":389,"value":1082},"npx turbo run \u003CTASK_NAME>",{"type":383,"tag":678,"props":1084,"children":1085},{},[1086,1088],{"type":389,"value":1087},"You run the script from the root with ",{"type":383,"tag":544,"props":1089,"children":1091},{"className":1090},[],[1092],{"type":389,"value":1093},"pnpm --filter \u003CPACKAGE_NAME> run \u003CSCRIPT_NAME>",{"type":383,"tag":678,"props":1095,"children":1096},{},[1097],{"type":389,"value":1098},"You cd into the package directory and run the script",{"type":383,"tag":392,"props":1100,"children":1101},{},[1102],{"type":389,"value":1103},"You can find the available turbo tasks in the turbo.json file",{"type":383,"tag":392,"props":1105,"children":1106},{},[1107,1109,1116],{"type":389,"value":1108},"Don't know Turborepo? Check out their ",{"type":383,"tag":408,"props":1110,"children":1113},{"href":1111,"rel":1112},"https:\u002F\u002Fturbo.build\u002Frepo\u002Fdocs",[412],[1114],{"type":389,"value":1115},"documentation",{"type":389,"value":451},{"type":383,"tag":392,"props":1118,"children":1119},{},[1120],{"type":389,"value":1121},"Make sure to follow these steps before you push your branch:",{"type":383,"tag":674,"props":1123,"children":1124},{},[1125,1136,1147,1160],{"type":383,"tag":678,"props":1126,"children":1127},{},[1128,1130],{"type":389,"value":1129},"You linted your code with ",{"type":383,"tag":544,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":389,"value":1135},"pnpm run lint:eslint",{"type":383,"tag":678,"props":1137,"children":1138},{},[1139,1141],{"type":389,"value":1140},"There are no type errors, run ",{"type":383,"tag":544,"props":1142,"children":1144},{"className":1143},[],[1145],{"type":389,"value":1146},"pnpm run lint:types",{"type":383,"tag":678,"props":1148,"children":1149},{},[1150,1152,1158],{"type":389,"value":1151},"Run ",{"type":383,"tag":544,"props":1153,"children":1155},{"className":1154},[],[1156],{"type":389,"value":1157},"pnpm run test:unit",{"type":389,"value":1159}," to see if all tests pass",{"type":383,"tag":678,"props":1161,"children":1162},{},[1163,1165],{"type":389,"value":1164},"You generated a changeset with ",{"type":383,"tag":544,"props":1166,"children":1168},{"className":1167},[],[1169],{"type":389,"value":1170},"npx changeset",{"type":383,"tag":392,"props":1172,"children":1173},{},[1174],{"type":389,"value":1175},"After completing all the tests you can submit your pull request.",{"type":383,"tag":525,"props":1177,"children":1179},{"id":1178},"create-a-changelog",[1180],{"type":389,"value":1181},"Create a changelog",{"type":383,"tag":392,"props":1183,"children":1184},{},[1185],{"type":389,"value":1186},"We create and manage our changelogs with changesets. Follow these steps\nto create a changelog:",{"type":383,"tag":674,"props":1188,"children":1189},{},[1190,1200,1205,1210,1215],{"type":383,"tag":678,"props":1191,"children":1192},{},[1193,1194],{"type":389,"value":1151},{"type":383,"tag":544,"props":1195,"children":1197},{"className":1196},[],[1198],{"type":389,"value":1199},"npx changeset add",{"type":383,"tag":678,"props":1201,"children":1202},{},[1203],{"type":389,"value":1204},"Select the package you updated",{"type":383,"tag":678,"props":1206,"children":1207},{},[1208],{"type":389,"value":1209},"Define your version bump for this package",{"type":383,"tag":678,"props":1211,"children":1212},{},[1213],{"type":389,"value":1214},"Write a meaningful changelog message",{"type":383,"tag":678,"props":1216,"children":1217},{},[1218],{"type":389,"value":1219},"Repeat the step for other packages you want to change",{"type":383,"tag":392,"props":1221,"children":1222},{},[1223,1225,1232],{"type":389,"value":1224},"Feel free to check out the ",{"type":383,"tag":408,"props":1226,"children":1229},{"href":1227,"rel":1228},"https:\u002F\u002Fgithub.com\u002Fchangesets\u002Fchangesets?tab=readme-ov-file#documentation",[412],[1230],{"type":389,"value":1231},"changesets documentation",{"type":389,"value":1233},"\nfor more information on how to work with it.",{"type":383,"tag":384,"props":1235,"children":1237},{"id":1236},"managing-releases",[1238],{"type":389,"value":1239},"Managing releases",{"type":383,"tag":392,"props":1241,"children":1242},{},[1243],{"type":389,"value":1244},"When your pull request gets merged a GitHub Action looks at your changes. If it finds a changeset in there it will copy that changeset over to a release branch.",{"type":383,"tag":392,"props":1246,"children":1247},{},[1248],{"type":389,"value":1249},"If you decide to release a new version, merge the release branch. Changesets will now take over. It updates the changelog files, bumps up the version numbers and it publishes the packages to npm.",{"type":383,"tag":392,"props":1251,"children":1252},{},[1253],{"type":389,"value":1254},"That's it there is nothing more you have to do.",{"type":383,"tag":384,"props":1256,"children":1258},{"id":1257},"updating-the-visual-tests",[1259],{"type":389,"value":1260},"Updating the visual tests",{"type":383,"tag":674,"props":1262,"children":1263},{},[1264,1269,1281,1295,1308,1313,1325,1330],{"type":383,"tag":678,"props":1265,"children":1266},{},[1267],{"type":389,"value":1268},"Copy the name of your branch",{"type":383,"tag":678,"props":1270,"children":1271},{},[1272,1274],{"type":389,"value":1273},"Go to the ",{"type":383,"tag":408,"props":1275,"children":1278},{"href":1276,"rel":1277},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Factions",[412],[1279],{"type":389,"value":1280},"actions tab",{"type":383,"tag":678,"props":1282,"children":1283},{},[1284,1286,1293],{"type":389,"value":1285},"Click on ",{"type":383,"tag":408,"props":1287,"children":1290},{"href":1288,"rel":1289},"https:\u002F\u002Fgithub.com\u002Fshopware\u002Fmeteor\u002Factions\u002Fworkflows\u002Fvisual-tests.yml",[412],[1291],{"type":389,"value":1292},"Visual tests",{"type":389,"value":1294}," in the left sidebar",{"type":383,"tag":678,"props":1296,"children":1297},{},[1298,1300,1306],{"type":389,"value":1299},"You then see a blue bar with a button that says ",{"type":383,"tag":544,"props":1301,"children":1303},{"className":1302},[],[1304],{"type":389,"value":1305},"Run workflow",{"type":389,"value":1307},", click on that",{"type":383,"tag":678,"props":1309,"children":1310},{},[1311],{"type":389,"value":1312},"Select your branch from the dropdown menu",{"type":383,"tag":678,"props":1314,"children":1315},{},[1316,1318,1323],{"type":389,"value":1317},"Click on the ",{"type":383,"tag":544,"props":1319,"children":1321},{"className":1320},[],[1322],{"type":389,"value":1305},{"type":389,"value":1324}," button",{"type":383,"tag":678,"props":1326,"children":1327},{},[1328],{"type":389,"value":1329},"Wait...",{"type":383,"tag":678,"props":1331,"children":1332},{},[1333],{"type":389,"value":1334},"Go back to your branch overview",{"type":383,"tag":1336,"props":1337,"children":1338},"style",{},[1339],{"type":389,"value":1340},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":362,"searchDepth":363,"depth":363,"links":1342},[1343,1344,1345,1346,1347,1353,1356,1357],{"id":386,"depth":363,"text":390},{"id":434,"depth":363,"text":437},{"id":454,"depth":363,"text":457},{"id":488,"depth":363,"text":491},{"id":520,"depth":363,"text":523,"children":1348},[1349,1350,1351,1352],{"id":527,"depth":888,"text":530},{"id":636,"depth":888,"text":639},{"id":669,"depth":888,"text":672},{"id":812,"depth":888,"text":815},{"id":1024,"depth":363,"text":1027,"children":1354},[1355],{"id":1178,"depth":888,"text":1181},{"id":1236,"depth":363,"text":1239},{"id":1257,"depth":363,"text":1260},1787065081882]