[{"data":1,"prerenderedAt":738},["ShallowReactive",2],{"navigation":3,"\u002Fcore-concepts\u002Fadmin-panel":342,"\u002Fcore-concepts\u002Fadmin-panel-surround":733},[4,14,36,69,140,325],{"title":5,"path":6,"stem":7,"children":8},"Introduction","\u002Fgetting-started","1.getting-started\u002F1.index",[9,10],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":15,"path":16,"stem":17,"children":18,"page":35},"Guides","\u002Fguides","2.guides",[19,23,27,31],{"title":20,"path":21,"stem":22},"Your First Layout","\u002Fguides\u002Fyour-first-layout","2.guides\u002F1.your-first-layout",{"title":24,"path":25,"stem":26},"Your First Page Template","\u002Fguides\u002Fyour-first-page-template","2.guides\u002F2.your-first-page-template",{"title":28,"path":29,"stem":30},"Your First Component","\u002Fguides\u002Fyour-first-component","2.guides\u002F3.your-first-component",{"title":32,"path":33,"stem":34},"Alternative UI Variants","\u002Fguides\u002Falternative-ui-variants","2.guides\u002F4.alternative-ui-variants",false,{"title":37,"path":38,"stem":39,"children":40,"page":35},"Core Concepts","\u002Fcore-concepts","3.core-concepts",[41,45,49,53,57,61,65],{"title":42,"path":43,"stem":44},"How It All Works","\u002Fcore-concepts\u002Farchitecture","3.core-concepts\u002F1.architecture",{"title":46,"path":47,"stem":48},"The Data Model","\u002Fcore-concepts\u002Fthe-data-model","3.core-concepts\u002F2.the-data-model",{"title":50,"path":51,"stem":52},"Layouts & Pages","\u002Fcore-concepts\u002Flayouts-and-pages","3.core-concepts\u002F3.layouts-and-pages",{"title":54,"path":55,"stem":56},"Dynamic Pages","\u002Fcore-concepts\u002Fdynamic-pages","3.core-concepts\u002F4.dynamic-pages",{"title":58,"path":59,"stem":60},"Components","\u002Fcore-concepts\u002Fcomponents","3.core-concepts\u002F5.components",{"title":62,"path":63,"stem":64},"Draft & Publish Workflow","\u002Fcore-concepts\u002Fdraft-and-publish","3.core-concepts\u002F6.draft-and-publish",{"title":66,"path":67,"stem":68},"The Admin Panel","\u002Fcore-concepts\u002Fadmin-panel","3.core-concepts\u002F7.admin-panel",{"title":70,"path":71,"stem":72,"children":73,"page":35},"Api","\u002Fapi","4.api",[74,78,116,120,124,128,132,136],{"title":75,"path":76,"stem":77},"Bundle Setup","\u002Fapi\u002Fbundle-setup","4.api\u002F1.bundle-setup",{"title":58,"path":79,"stem":80,"children":81,"page":35},"\u002Fapi\u002Fcomponents","4.api\u002F2.components",[82,86,103],{"title":83,"path":84,"stem":85},"Creating Components","\u002Fapi\u002Fcomponents\u002Fcreating-components","4.api\u002F2.components\u002F1.creating-components",{"title":87,"path":88,"stem":89,"children":90,"page":35},"Annotations","\u002Fapi\u002Fcomponents\u002Fannotations","4.api\u002F2.components\u002F2.annotations",[91,95,99],{"title":92,"path":93,"stem":94},"Publishable","\u002Fapi\u002Fcomponents\u002Fannotations\u002Fpublishable","4.api\u002F2.components\u002F2.annotations\u002F1.publishable",{"title":96,"path":97,"stem":98},"Uploadable","\u002Fapi\u002Fcomponents\u002Fannotations\u002Fuploadable","4.api\u002F2.components\u002F2.annotations\u002F2.uploadable",{"title":100,"path":101,"stem":102},"Timestamped","\u002Fapi\u002Fcomponents\u002Fannotations\u002Ftimestamped","4.api\u002F2.components\u002F2.annotations\u002F3.timestamped",{"title":104,"path":105,"stem":106,"children":107,"page":35},"Built Ins","\u002Fapi\u002Fcomponents\u002Fbuilt-ins","4.api\u002F2.components\u002F3.built-ins",[108,112],{"title":109,"path":110,"stem":111},"Collection Component","\u002Fapi\u002Fcomponents\u002Fbuilt-ins\u002Fcollection-component","4.api\u002F2.components\u002F3.built-ins\u002F1.collection-component",{"title":113,"path":114,"stem":115},"Form Component","\u002Fapi\u002Fcomponents\u002Fbuilt-ins\u002Fform-component","4.api\u002F2.components\u002F3.built-ins\u002F2.form-component",{"title":117,"path":118,"stem":119},"Dynamic & Nested Pages","\u002Fapi\u002Fdynamic-pages","4.api\u002F3.dynamic-pages",{"title":121,"path":122,"stem":123},"Users & Security","\u002Fapi\u002Fusers-and-security","4.api\u002F4.users-and-security",{"title":125,"path":126,"stem":127},"Data Fixtures","\u002Fapi\u002Fdata-fixtures","4.api\u002F5.data-fixtures",{"title":129,"path":130,"stem":131},"Configuration Reference","\u002Fapi\u002Fconfiguration","4.api\u002F6.configuration",{"title":133,"path":134,"stem":135},"Console Commands","\u002Fapi\u002Fconsole-commands","4.api\u002F7.console-commands",{"title":137,"path":138,"stem":139},"Debugging & Profiler","\u002Fapi\u002Fdebugging","4.api\u002F8.debugging",{"title":141,"path":142,"stem":143,"children":144,"page":35},"Nuxt Module","\u002Fnuxt-module","5.nuxt-module",[145,149,162,178,203,207,279,304,308],{"title":146,"path":147,"stem":148},"Module Setup","\u002Fnuxt-module\u002Fmodule-setup","5.nuxt-module\u002F1.module-setup",{"title":150,"path":151,"stem":152,"children":153,"page":35},"Configuration","\u002Fnuxt-module\u002Fconfiguration","5.nuxt-module\u002F2.configuration",[154,158],{"title":155,"path":156,"stem":157},"Nuxt Config","\u002Fnuxt-module\u002Fconfiguration\u002Fnuxt-config","5.nuxt-module\u002F2.configuration\u002F1.nuxt-config",{"title":159,"path":160,"stem":161},"Site Config & SEO","\u002Fnuxt-module\u002Fconfiguration\u002Fsite-config-and-seo","5.nuxt-module\u002F2.configuration\u002F2.site-config-and-seo",{"title":163,"path":164,"stem":165,"children":166,"page":35},"Building Your Ui","\u002Fnuxt-module\u002Fbuilding-your-ui","5.nuxt-module\u002F3.building-your-ui",[167,171,175],{"title":168,"path":169,"stem":170},"Layouts","\u002Fnuxt-module\u002Fbuilding-your-ui\u002Fcreating-layouts","5.nuxt-module\u002F3.building-your-ui\u002F1.creating-layouts",{"title":172,"path":173,"stem":174},"Page Templates","\u002Fnuxt-module\u002Fbuilding-your-ui\u002Fcreating-page-templates","5.nuxt-module\u002F3.building-your-ui\u002F2.creating-page-templates",{"title":83,"path":176,"stem":177},"\u002Fnuxt-module\u002Fbuilding-your-ui\u002Fcreating-components","5.nuxt-module\u002F3.building-your-ui\u002F3.creating-components",{"title":179,"path":180,"stem":181,"children":182,"page":35},"Cwa Components","\u002Fnuxt-module\u002Fcwa-components","5.nuxt-module\u002F4.cwa-components",[183,187,191,195,199],{"title":184,"path":185,"stem":186},"\u003CCwaComponentGroup \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-component-group","5.nuxt-module\u002F4.cwa-components\u002F1.cwa-component-group",{"title":188,"path":189,"stem":190},"\u003CCwaPage \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-page","5.nuxt-module\u002F4.cwa-components\u002F2.cwa-page",{"title":192,"path":193,"stem":194},"\u003CCwaLink \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-link","5.nuxt-module\u002F4.cwa-components\u002F3.cwa-link",{"title":196,"path":197,"stem":198},"\u003CCwaImage \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-image","5.nuxt-module\u002F4.cwa-components\u002F4.cwa-image",{"title":200,"path":201,"stem":202},"\u003CCwaDefaultLayout \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-default-layout","5.nuxt-module\u002F4.cwa-components\u002F5.cwa-default-layout",{"title":204,"path":205,"stem":206},"The useCwa() API","\u002Fnuxt-module\u002Fcwa-api","5.nuxt-module\u002F5.cwa-api",{"title":208,"path":209,"stem":210,"children":211,"page":35},"Composables","\u002Fnuxt-module\u002Fcomposables","5.nuxt-module\u002F6.composables",[212,245,262],{"title":213,"path":214,"stem":215,"children":216,"page":35},"Component","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent","5.nuxt-module\u002F6.composables\u002F1.component",[217,221,225,229,233,237,241],{"title":218,"path":219,"stem":220},"Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F1.use-cwa-resource",{"title":222,"path":223,"stem":224},"Collection Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-collection-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F2.use-cwa-collection-resource",{"title":226,"path":227,"stem":228},"Image Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-image-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F3.use-cwa-image-resource",{"title":230,"path":231,"stem":232},"Form","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form","5.nuxt-module\u002F6.composables\u002F1.component\u002F4.use-cwa-form",{"title":234,"path":235,"stem":236},"Form Input","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-input","5.nuxt-module\u002F6.composables\u002F1.component\u002F5.use-cwa-form-input",{"title":238,"path":239,"stem":240},"Form Repeated","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-repeated","5.nuxt-module\u002F6.composables\u002F1.component\u002F6.use-cwa-form-repeated",{"title":242,"path":243,"stem":244},"Form Collection","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-collection","5.nuxt-module\u002F6.composables\u002F1.component\u002F7.use-cwa-form-collection",{"title":246,"path":247,"stem":248,"children":249,"page":35},"Admin Manager","\u002Fnuxt-module\u002Fcomposables\u002Fadmin-manager","5.nuxt-module\u002F6.composables\u002F2.admin-manager",[250,254,258],{"title":251,"path":252,"stem":253},"Manager Tab","\u002Fnuxt-module\u002Fcomposables\u002Fadmin-manager\u002Fuse-cwa-resource-manager-tab","5.nuxt-module\u002F6.composables\u002F2.admin-manager\u002F1.use-cwa-resource-manager-tab",{"title":255,"path":256,"stem":257},"Resource Model","\u002Fnuxt-module\u002Fcomposables\u002Fadmin-manager\u002Fuse-cwa-resource-model","5.nuxt-module\u002F6.composables\u002F2.admin-manager\u002F2.use-cwa-resource-model",{"title":259,"path":260,"stem":261},"Resource Upload","\u002Fnuxt-module\u002Fcomposables\u002Fadmin-manager\u002Fuse-cwa-resource-upload","5.nuxt-module\u002F6.composables\u002F2.admin-manager\u002F3.use-cwa-resource-upload",{"title":263,"path":264,"stem":265,"children":266,"page":35},"Utilities","\u002Fnuxt-module\u002Fcomposables\u002Futilities","5.nuxt-module\u002F6.composables\u002F3.utilities",[267,271,275],{"title":268,"path":269,"stem":270},"Resource Endpoint","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-cwa-resource-endpoint","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F1.use-cwa-resource-endpoint",{"title":272,"path":273,"stem":274},"Query Model","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-query-bound-model","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F2.use-query-bound-model",{"title":276,"path":277,"stem":278},"Resource Route","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-cwa-resource-route","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F3.use-cwa-resource-route",{"title":280,"path":281,"stem":282,"children":283,"page":35},"Component Helpers","\u002Fnuxt-module\u002Fcomponent-helpers","5.nuxt-module\u002F7.component-helpers",[284,288,292,296,300],{"title":285,"path":286,"stem":287},"Images & Media","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fimages-and-uploads","5.nuxt-module\u002F7.component-helpers\u002F1.images-and-uploads",{"title":289,"path":290,"stem":291},"Collections & Pagination","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fcollections-and-pagination","5.nuxt-module\u002F7.component-helpers\u002F2.collections-and-pagination",{"title":293,"path":294,"stem":295},"HTML Content","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fhtml-content","5.nuxt-module\u002F7.component-helpers\u002F3.html-content",{"title":297,"path":298,"stem":299},"Real-Time Updates","\u002Fnuxt-module\u002Fcomponent-helpers\u002Freal-time-updates","5.nuxt-module\u002F7.component-helpers\u002F4.real-time-updates",{"title":301,"path":302,"stem":303},"Forms","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fforms","5.nuxt-module\u002F7.component-helpers\u002F5.forms",{"title":305,"path":306,"stem":307},"Authentication","\u002Fnuxt-module\u002Fauthentication","5.nuxt-module\u002F8.authentication",{"title":309,"path":310,"stem":311,"children":312,"page":35},"Cwa Layer","\u002Fnuxt-module\u002Fcwa-layer","5.nuxt-module\u002F9.cwa-layer",[313,317,321],{"title":314,"path":315,"stem":316},"Overview","\u002Fnuxt-module\u002Fcwa-layer\u002Foverview","5.nuxt-module\u002F9.cwa-layer\u002F1.overview",{"title":318,"path":319,"stem":320},"Auth Pages","\u002Fnuxt-module\u002Fcwa-layer\u002Fauth-pages","5.nuxt-module\u002F9.cwa-layer\u002F2.auth-pages",{"title":322,"path":323,"stem":324},"Admin Panel","\u002Fnuxt-module\u002Fcwa-layer\u002Fadmin-panel","5.nuxt-module\u002F9.cwa-layer\u002F3.admin-panel",{"title":326,"path":327,"stem":328,"children":329,"page":35},"Deployment","\u002Fdeployment","6.deployment",[330,334,338],{"title":331,"path":332,"stem":333},"Docker","\u002Fdeployment\u002Fdocker","6.deployment\u002F1.docker",{"title":335,"path":336,"stem":337},"Kubernetes & Helm","\u002Fdeployment\u002Fkubernetes","6.deployment\u002F2.kubernetes",{"title":339,"path":340,"stem":341},"CI\u002FCD","\u002Fdeployment\u002Fci-cd","6.deployment\u002F3.ci-cd",{"id":343,"title":66,"badge":344,"body":347,"description":726,"extension":727,"links":728,"meta":729,"navigation":730,"path":67,"seo":731,"stem":68,"__hash__":732},"docs\u002F3.core-concepts\u002F7.admin-panel.md",{"label":345,"color":346},"Draft","amber",{"type":348,"value":349,"toc":709},"minimark",[350,359,364,376,380,383,406,410,413,440,447,560,564,570,575,586,589,600,607,611,614,624,634,638,668,672,683,687,698],[351,352,353,354,358],"p",{},"The CWA has no separate CMS URL. Editing happens ",[355,356,357],"strong",{},"on the live page"," — the admin bar overlays the front end, and the manager panel slides up from the bottom when you click a component.",[360,361,363],"h2",{"id":362},"access","Access",[351,365,366,367,371,372,375],{},"Log in at ",[368,369,370],"code",{},"\u002Flogin"," with ",[368,373,374],{},"ROLE_ADMIN"," credentials. Once logged in, the admin bar appears at the top of every page.",[360,377,379],{"id":378},"the-admin-bar","The Admin Bar",[351,381,382],{},"The bar shows:",[384,385,386,397,400,403],"ul",{},[387,388,389,392,393,396],"li",{},[355,390,391],{},"Edit"," \u002F ",[355,394,395],{},"Done"," toggle — activates inline editing mode",[387,398,399],{},"Navigation links: Layouts | Pages | Data | Routes | Users | Settings",[387,401,402],{},"A page title input for the current page",[387,404,405],{},"A loading indicator for API activity",[360,407,409],{"id":408},"edit-mode","Edit Mode",[351,411,412],{},"When edit mode is active:",[384,414,415,421,427,430],{},[387,416,417,420],{},[355,418,419],{},"Hotspots"," appear at the top and bottom of every ComponentGroup — click one to open the \"Add Component\" dialog",[387,422,423,426],{},[355,424,425],{},"Click any component"," to select it and open the manager panel",[387,428,429],{},"The manager panel slides up from the bottom and shows your component's admin tabs",[387,431,432,435,436,439],{},[355,433,434],{},"Right-click"," a component in the live page layout (not in the ",[368,437,438],{},"\u002F_cwa\u002F"," admin pages) for context menu actions: move, delete, duplicate",[360,441,443,444,446],{"id":442},"the-admin-pages-_cwa","The Admin Pages (",[368,445,438],{},")",[448,449,450,463],"table",{},[451,452,453],"thead",{},[454,455,456,460],"tr",{},[457,458,459],"th",{},"URL",[457,461,462],{},"Purpose",[464,465,466,480,490,500,510,520,530,540,550],"tbody",{},[454,467,468,474],{},[469,470,471],"td",{},[368,472,473],{},"\u002F_cwa\u002Flayouts",[469,475,476,477],{},"List layouts; create new; assign ",[368,478,479],{},"uiComponent",[454,481,482,487],{},[469,483,484],{},[368,485,486],{},"\u002F_cwa\u002Fpages",[469,488,489],{},"List pages; assign layout and page template",[454,491,492,497],{},[469,493,494],{},[368,495,496],{},"\u002F_cwa\u002Fpages\u002F[iri]",[469,498,499],{},"Page settings: title, SEO, layout",[454,501,502,507],{},[469,503,504],{},[368,505,506],{},"\u002F_cwa\u002Fdata",[469,508,509],{},"Browse PageData categories (blog, products, events…)",[454,511,512,517],{},[469,513,514],{},[368,515,516],{},"\u002F_cwa\u002Fdata\u002F[type]",[469,518,519],{},"List and create records for a data type",[454,521,522,527],{},[469,523,524],{},[368,525,526],{},"\u002F_cwa\u002Fdata\u002F[type]\u002F[iri]",[469,528,529],{},"Edit an individual data record",[454,531,532,537],{},[469,533,534],{},[368,535,536],{},"\u002F_cwa\u002Froutes",[469,538,539],{},"Manage URL paths; create redirects; view the route tree",[454,541,542,547],{},[469,543,544],{},[368,545,546],{},"\u002F_cwa\u002Fusers",[469,548,549],{},"List users; create\u002Fedit accounts and roles",[454,551,552,557],{},[469,553,554],{},[368,555,556],{},"\u002F_cwa\u002Fsettings",[469,558,559],{},"Site config: name, SEO defaults, robots, sitemap, maintenance mode",[360,561,563],{"id":562},"managing-routes","Managing Routes",[351,565,566,567,569],{},"The ",[368,568,536],{}," admin page manages URL paths for pages and redirects.",[571,572,574],"h3",{"id":573},"editing-a-path","Editing a path",[351,576,577,578,581,582,585],{},"The path editor uses a ",[355,579,580],{},"prefix + suffix"," layout. For top-level routes the prefix is empty and you type the full slug. For child routes (e.g. a blog article nested under ",[368,583,584],{},"\u002Fblog",") the parent path is shown as a read-only prefix — you only type the suffix. This makes it clear what the final URL will be without having to remember the parent path.",[351,587,588],{},"An SEO recommendation appears below the input showing a full path preview built from the parent prefix and a slugified version of the page title. Click it to apply.",[351,590,591,592,595,596,599],{},"When editing a parent route that has child routes, a ",[355,593,594],{},"cascade child paths"," option appears. Enabling it renames all child paths to keep them under the new parent prefix and creates ",[368,597,598],{},"301"," redirects from every old path automatically. Without it only the parent route is renamed; children keep their old paths.",[601,602,604],"callout",{"icon":603},"i-heroicons-information-circle",[351,605,606],{},"Child route creation and path editing are disabled when the parent route has no path yet. Assign a path to the parent first.",[571,608,610],{"id":609},"redirects","Redirects",[351,612,613],{},"Each route entry shows two sections:",[351,615,616,619,620,623],{},[355,617,618],{},"Forward visitors to"," — the outbound ",[368,621,622],{},"redirect"," field. Set this to send visitors arriving at this URL to a different destination. When a redirect target is set and edit mode is active, the admin panel suppresses the redirect so the page remains navigable for editing.",[351,625,626,629,630,633],{},[355,627,628],{},"Incoming redirects"," — the ",[368,631,632],{},"redirectedFrom"," list. Shows all other routes that currently forward visitors to this route. Useful for auditing redirect chains and identifying stale paths.",[360,635,637],{"id":636},"adding-a-component","Adding a Component",[639,640,641,644,651,654,665],"ol",{},[387,642,643],{},"Enter edit mode",[387,645,646,647,650],{},"Click a ",[355,648,649],{},"+"," hotspot at the edge of a component group",[387,652,653],{},"The \"Add Component\" dialog lists available component types",[387,655,656,657,660,661,664],{},"Select one — if ",[368,658,659],{},"instantAdd: true"," is set in ",[368,662,663],{},"nuxt.config",", it's added immediately; otherwise a config panel appears first",[387,666,667],{},"The new component is added to the group",[360,669,671],{"id":670},"reordering","Reordering",[351,673,674,675,678,679,682],{},"Drag components within a group to reorder them. The module patches ",[368,676,677],{},"sortValue"," on each ",[368,680,681],{},"ComponentPosition"," automatically.",[360,684,686],{"id":685},"the-manager-panel","The Manager Panel",[351,688,689,690,693,694,697],{},"When you click a component, the manager panel shows all ",[368,691,692],{},"admin\u002F*.vue"," files for that component type as tabs. Each tab is defined by a call to ",[368,695,696],{},"useCwaResourceManagerTab({ name: 'Tab Name' })"," in the Vue file.",[351,699,700,701,704,705,708],{},"Changes in the admin tabs apply to the ",[355,702,703],{},"draft"," version of the component. Click ",[355,706,707],{},"Publish"," in the panel to make changes live.",{"title":710,"searchDepth":711,"depth":711,"links":712},"",2,[713,714,715,716,718,723,724,725],{"id":362,"depth":711,"text":363},{"id":378,"depth":711,"text":379},{"id":408,"depth":711,"text":409},{"id":442,"depth":711,"text":717},"The Admin Pages (\u002F_cwa\u002F)",{"id":562,"depth":711,"text":563,"children":719},[720,722],{"id":573,"depth":721,"text":574},3,{"id":609,"depth":721,"text":610},{"id":636,"depth":711,"text":637},{"id":670,"depth":711,"text":671},{"id":685,"depth":711,"text":686},"An overview of the built-in inline CMS — how admins manage layouts, pages, components and site settings without leaving the website.","md",null,{},true,{"title":66,"description":726},"HeN_OtYV25Ue4ntSIyMNN3PYZxvcFksv7gYujsHqCGE",[734,736],{"title":62,"path":63,"stem":64,"description":735,"children":-1},"How admins edit draft versions of components without touching the live site, then publish when ready.",{"title":75,"path":76,"stem":77,"description":737,"children":-1},"Installing and configuring the Silverback API Components Bundle in a Symfony application.",1782241278654]