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