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