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