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