[{"data":1,"prerenderedAt":1716},["ShallowReactive",2],{"navigation":3,"\u002Fnuxt-module\u002Fcomponent-helpers\u002Fcollections-and-pagination":358,"\u002Fnuxt-module\u002Fcomponent-helpers\u002Fcollections-and-pagination-surround":1711},[4,14,36,69,140,341],{"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,182,207,211,295,320,324],{"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,178],{"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},"CLI Generator","\u002Fnuxt-module\u002Fbuilding-your-ui\u002Fcwa-cli","5.nuxt-module\u002F3.building-your-ui\u002F4.cwa-cli",{"title":183,"path":184,"stem":185,"children":186,"page":35},"Cwa Components","\u002Fnuxt-module\u002Fcwa-components","5.nuxt-module\u002F4.cwa-components",[187,191,195,199,203],{"title":188,"path":189,"stem":190},"\u003CCwaComponentGroup \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-component-group","5.nuxt-module\u002F4.cwa-components\u002F1.cwa-component-group",{"title":192,"path":193,"stem":194},"\u003CCwaPage \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-page","5.nuxt-module\u002F4.cwa-components\u002F2.cwa-page",{"title":196,"path":197,"stem":198},"\u003CCwaLink \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-link","5.nuxt-module\u002F4.cwa-components\u002F3.cwa-link",{"title":200,"path":201,"stem":202},"\u003CCwaImage \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-image","5.nuxt-module\u002F4.cwa-components\u002F4.cwa-image",{"title":204,"path":205,"stem":206},"\u003CCwaDefaultLayout \u002F>","\u002Fnuxt-module\u002Fcwa-components\u002Fcwa-default-layout","5.nuxt-module\u002F4.cwa-components\u002F5.cwa-default-layout",{"title":208,"path":209,"stem":210},"The useCwa() API","\u002Fnuxt-module\u002Fcwa-api","5.nuxt-module\u002F5.cwa-api",{"title":212,"path":213,"stem":214,"children":215,"page":35},"Composables","\u002Fnuxt-module\u002Fcomposables","5.nuxt-module\u002F6.composables",[216,224,261,278],{"title":217,"path":218,"stem":219,"children":220,"page":35},"Layout","\u002Fnuxt-module\u002Fcomposables\u002Flayout","5.nuxt-module\u002F6.composables\u002F0.layout",[221],{"title":217,"path":222,"stem":223},"\u002Fnuxt-module\u002Fcomposables\u002Flayout\u002Fuse-cwa-layout","5.nuxt-module\u002F6.composables\u002F0.layout\u002F1.use-cwa-layout",{"title":225,"path":226,"stem":227,"children":228,"page":35},"Component","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent","5.nuxt-module\u002F6.composables\u002F1.component",[229,233,237,241,245,249,253,257],{"title":230,"path":231,"stem":232},"Component (recommended)","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-component","5.nuxt-module\u002F6.composables\u002F1.component\u002F0.use-cwa-component",{"title":234,"path":235,"stem":236},"Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F1.use-cwa-resource",{"title":238,"path":239,"stem":240},"Collection Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-collection-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F2.use-cwa-collection-resource",{"title":242,"path":243,"stem":244},"Image Resource","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-image-resource","5.nuxt-module\u002F6.composables\u002F1.component\u002F3.use-cwa-image-resource",{"title":246,"path":247,"stem":248},"Form","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form","5.nuxt-module\u002F6.composables\u002F1.component\u002F4.use-cwa-form",{"title":250,"path":251,"stem":252},"Form Input","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-input","5.nuxt-module\u002F6.composables\u002F1.component\u002F5.use-cwa-form-input",{"title":254,"path":255,"stem":256},"Form Repeated","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-repeated","5.nuxt-module\u002F6.composables\u002F1.component\u002F6.use-cwa-form-repeated",{"title":258,"path":259,"stem":260},"Form Collection","\u002Fnuxt-module\u002Fcomposables\u002Fcomponent\u002Fuse-cwa-form-collection","5.nuxt-module\u002F6.composables\u002F1.component\u002F7.use-cwa-form-collection",{"title":262,"path":263,"stem":264,"children":265,"page":35},"Admin Manager","\u002Fnuxt-module\u002Fcomposables\u002Fadmin-manager","5.nuxt-module\u002F6.composables\u002F2.admin-manager",[266,270,274],{"title":267,"path":268,"stem":269},"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":271,"path":272,"stem":273},"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":275,"path":276,"stem":277},"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":279,"path":280,"stem":281,"children":282,"page":35},"Utilities","\u002Fnuxt-module\u002Fcomposables\u002Futilities","5.nuxt-module\u002F6.composables\u002F3.utilities",[283,287,291],{"title":284,"path":285,"stem":286},"Resource Endpoint","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-cwa-resource-endpoint","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F1.use-cwa-resource-endpoint",{"title":288,"path":289,"stem":290},"Query Model","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-query-bound-model","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F2.use-query-bound-model",{"title":292,"path":293,"stem":294},"Resource Route","\u002Fnuxt-module\u002Fcomposables\u002Futilities\u002Fuse-cwa-resource-route","5.nuxt-module\u002F6.composables\u002F3.utilities\u002F3.use-cwa-resource-route",{"title":296,"path":297,"stem":298,"children":299,"page":35},"Component Helpers","\u002Fnuxt-module\u002Fcomponent-helpers","5.nuxt-module\u002F7.component-helpers",[300,304,308,312,316],{"title":301,"path":302,"stem":303},"Images & Media","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fimages-and-uploads","5.nuxt-module\u002F7.component-helpers\u002F1.images-and-uploads",{"title":305,"path":306,"stem":307},"Collections & Pagination","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fcollections-and-pagination","5.nuxt-module\u002F7.component-helpers\u002F2.collections-and-pagination",{"title":309,"path":310,"stem":311},"HTML Content","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fhtml-content","5.nuxt-module\u002F7.component-helpers\u002F3.html-content",{"title":313,"path":314,"stem":315},"Real-Time Updates","\u002Fnuxt-module\u002Fcomponent-helpers\u002Freal-time-updates","5.nuxt-module\u002F7.component-helpers\u002F4.real-time-updates",{"title":317,"path":318,"stem":319},"Forms","\u002Fnuxt-module\u002Fcomponent-helpers\u002Fforms","5.nuxt-module\u002F7.component-helpers\u002F5.forms",{"title":321,"path":322,"stem":323},"Authentication","\u002Fnuxt-module\u002Fauthentication","5.nuxt-module\u002F8.authentication",{"title":325,"path":326,"stem":327,"children":328,"page":35},"Cwa Layer","\u002Fnuxt-module\u002Fcwa-layer","5.nuxt-module\u002F9.cwa-layer",[329,333,337],{"title":330,"path":331,"stem":332},"Overview","\u002Fnuxt-module\u002Fcwa-layer\u002Foverview","5.nuxt-module\u002F9.cwa-layer\u002F1.overview",{"title":334,"path":335,"stem":336},"Auth Pages","\u002Fnuxt-module\u002Fcwa-layer\u002Fauth-pages","5.nuxt-module\u002F9.cwa-layer\u002F2.auth-pages",{"title":338,"path":339,"stem":340},"Admin Panel","\u002Fnuxt-module\u002Fcwa-layer\u002Fadmin-panel","5.nuxt-module\u002F9.cwa-layer\u002F3.admin-panel",{"title":342,"path":343,"stem":344,"children":345,"page":35},"Deployment","\u002Fdeployment","6.deployment",[346,350,354],{"title":347,"path":348,"stem":349},"Docker","\u002Fdeployment\u002Fdocker","6.deployment\u002F1.docker",{"title":351,"path":352,"stem":353},"Kubernetes & Helm","\u002Fdeployment\u002Fkubernetes","6.deployment\u002F2.kubernetes",{"title":355,"path":356,"stem":357},"CI\u002FCD","\u002Fdeployment\u002Fci-cd","6.deployment\u002F3.ci-cd",{"id":359,"title":305,"badge":360,"body":363,"description":1705,"extension":1706,"links":1707,"meta":1708,"navigation":534,"path":306,"seo":1709,"stem":307,"__hash__":1710},"docs\u002F5.nuxt-module\u002F7.component-helpers\u002F2.collections-and-pagination.md",{"label":361,"color":362},"Draft","amber",{"type":364,"value":365,"toc":1697},"minimark",[366,383,388,1153,1157,1303,1316,1320,1327,1384,1462,1466,1472,1519,1526,1530,1536,1603,1647,1656,1660,1666,1690,1693],[367,368,369,370,374,375,378,379,382],"p",{},"The ",[371,372,373],"code",{},"Collection"," built-in component proxies any resource collection endpoint. On the front-end, ",[371,376,377],{},"useCwaComponent"," with the ",[371,380,381],{},"withCollection()"," plugin unwraps the Hydra response and gives you items, pagination state, and navigation helpers — all URL-bound.",[384,385,387],"h2",{"id":386},"display-component","Display Component",[389,390,395],"pre",{"className":391,"code":392,"language":393,"meta":394,"style":394},"language-vue shiki shiki-themes github-light github-dark material-theme-palenight","\u003C!-- app\u002Fcwa\u002Fcomponents\u002FBlogList\u002FBlogList.vue -->\n\u003Ctemplate>\n    \u003Cdiv>\n        \u003Cdiv v-if=\"isLoadingCollection\" class=\"space-y-4\">\n            \u003Cdiv v-for=\"n in 6\" :key=\"n\" class=\"h-48 bg-gray-100 animate-pulse rounded\" \u002F>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv v-else class=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6\">\n            \u003CArticleCard\n                v-for=\"item in collectionItems\"\n                :key=\"item['@id']\"\n                :article=\"item.data\"\n                :href=\"resolveResourceLink(item)\"\n            \u002F>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv v-if=\"totalPages > 1\" class=\"flex items-center justify-center gap-4 mt-8\">\n            \u003Cbutton\n                :disabled=\"!pageModel || pageModel \u003C= 1\"\n                class=\"btn\"\n                @click=\"goToPreviousPage\"\n            >\n                Previous\n            \u003C\u002Fbutton>\n\n            \u003Cspan class=\"text-sm text-gray-600\">\n                Page {{ pageModel }} of {{ totalPages }}\n            \u003C\u002Fspan>\n\n            \u003Cbutton\n                :disabled=\"pageModel >= totalPages\"\n                class=\"btn\"\n                @click=\"goToNextPage\"\n            >\n                Next\n            \u003C\u002Fbutton>\n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n\n\u003Cscript setup lang=\"ts\">\nimport type { IriProp } from '#cwa\u002Fcomposables\u002Fcwa-resource'\nimport { useCwaComponent, withCollection } from '#imports'\n\nconst props = defineProps\u003CIriProp>()\n\nconst {\n    resource,\n    exposeMeta,\n    collectionItems,\n    isLoadingCollection,\n    totalPages,\n    pageModel,\n    goToNextPage,\n    goToPreviousPage,\n    resolveResourceLink\n} = useCwaComponent(props, [withCollection()])\n\ndefineExpose(exposeMeta)\n\u003C\u002Fscript>\n","vue","",[371,396,397,406,420,431,470,519,529,536,559,567,583,598,613,628,634,643,648,679,687,702,717,732,738,745,756,761,781,787,796,801,808,822,835,849,854,860,869,878,888,898,903,928,959,986,991,1022,1027,1035,1044,1052,1060,1068,1076,1084,1092,1100,1106,1130,1135,1144],{"__ignoreMap":394},[398,399,402],"span",{"class":400,"line":401},"line",1,[398,403,405],{"class":404},"sTBSN","\u003C!-- app\u002Fcwa\u002Fcomponents\u002FBlogList\u002FBlogList.vue -->\n",[398,407,409,413,417],{"class":400,"line":408},2,[398,410,412],{"class":411},"sOvfz","\u003C",[398,414,416],{"class":415},"s-h7I","template",[398,418,419],{"class":411},">\n",[398,421,423,426,429],{"class":400,"line":422},3,[398,424,425],{"class":411},"    \u003C",[398,427,428],{"class":415},"div",[398,430,419],{"class":411},[398,432,434,437,439,443,446,450,454,456,459,461,463,466,468],{"class":400,"line":433},4,[398,435,436],{"class":411},"        \u003C",[398,438,428],{"class":415},[398,440,442],{"class":441},"sGtlX"," v-if",[398,444,445],{"class":411},"=",[398,447,449],{"class":448},"seSrl","\"",[398,451,453],{"class":452},"sLL54","isLoadingCollection",[398,455,449],{"class":448},[398,457,458],{"class":441}," class",[398,460,445],{"class":411},[398,462,449],{"class":448},[398,464,465],{"class":452},"space-y-4",[398,467,449],{"class":448},[398,469,419],{"class":411},[398,471,473,476,478,481,483,485,488,490,493,495,497,500,502,504,506,508,511,513,517],{"class":400,"line":472},5,[398,474,475],{"class":411},"            \u003C",[398,477,428],{"class":415},[398,479,480],{"class":441}," v-for",[398,482,445],{"class":411},[398,484,449],{"class":448},[398,486,487],{"class":452},"n in 6",[398,489,449],{"class":448},[398,491,492],{"class":441}," :key",[398,494,445],{"class":411},[398,496,449],{"class":448},[398,498,499],{"class":452},"n",[398,501,449],{"class":448},[398,503,458],{"class":441},[398,505,445],{"class":411},[398,507,449],{"class":448},[398,509,510],{"class":452},"h-48 bg-gray-100 animate-pulse rounded",[398,512,449],{"class":448},[398,514,516],{"class":515},"s01iV"," \u002F",[398,518,419],{"class":411},[398,520,522,525,527],{"class":400,"line":521},6,[398,523,524],{"class":411},"        \u003C\u002F",[398,526,428],{"class":415},[398,528,419],{"class":411},[398,530,532],{"class":400,"line":531},7,[398,533,535],{"emptyLinePlaceholder":534},true,"\n",[398,537,539,541,543,546,548,550,552,555,557],{"class":400,"line":538},8,[398,540,436],{"class":411},[398,542,428],{"class":415},[398,544,545],{"class":441}," v-else",[398,547,458],{"class":441},[398,549,445],{"class":411},[398,551,449],{"class":448},[398,553,554],{"class":452},"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",[398,556,449],{"class":448},[398,558,419],{"class":411},[398,560,562,564],{"class":400,"line":561},9,[398,563,475],{"class":411},[398,565,566],{"class":415},"ArticleCard\n",[398,568,570,573,575,577,580],{"class":400,"line":569},10,[398,571,572],{"class":441},"                v-for",[398,574,445],{"class":411},[398,576,449],{"class":448},[398,578,579],{"class":452},"item in collectionItems",[398,581,582],{"class":448},"\"\n",[398,584,586,589,591,593,596],{"class":400,"line":585},11,[398,587,588],{"class":441},"                :key",[398,590,445],{"class":411},[398,592,449],{"class":448},[398,594,595],{"class":452},"item['@id']",[398,597,582],{"class":448},[398,599,601,604,606,608,611],{"class":400,"line":600},12,[398,602,603],{"class":441},"                :article",[398,605,445],{"class":411},[398,607,449],{"class":448},[398,609,610],{"class":452},"item.data",[398,612,582],{"class":448},[398,614,616,619,621,623,626],{"class":400,"line":615},13,[398,617,618],{"class":441},"                :href",[398,620,445],{"class":411},[398,622,449],{"class":448},[398,624,625],{"class":452},"resolveResourceLink(item)",[398,627,582],{"class":448},[398,629,631],{"class":400,"line":630},14,[398,632,633],{"class":411},"            \u002F>\n",[398,635,637,639,641],{"class":400,"line":636},15,[398,638,524],{"class":411},[398,640,428],{"class":415},[398,642,419],{"class":411},[398,644,646],{"class":400,"line":645},16,[398,647,535],{"emptyLinePlaceholder":534},[398,649,651,653,655,657,659,661,664,666,668,670,672,675,677],{"class":400,"line":650},17,[398,652,436],{"class":411},[398,654,428],{"class":415},[398,656,442],{"class":441},[398,658,445],{"class":411},[398,660,449],{"class":448},[398,662,663],{"class":452},"totalPages > 1",[398,665,449],{"class":448},[398,667,458],{"class":441},[398,669,445],{"class":411},[398,671,449],{"class":448},[398,673,674],{"class":452},"flex items-center justify-center gap-4 mt-8",[398,676,449],{"class":448},[398,678,419],{"class":411},[398,680,682,684],{"class":400,"line":681},18,[398,683,475],{"class":411},[398,685,686],{"class":415},"button\n",[398,688,690,693,695,697,700],{"class":400,"line":689},19,[398,691,692],{"class":441},"                :disabled",[398,694,445],{"class":411},[398,696,449],{"class":448},[398,698,699],{"class":452},"!pageModel || pageModel \u003C= 1",[398,701,582],{"class":448},[398,703,705,708,710,712,715],{"class":400,"line":704},20,[398,706,707],{"class":441},"                class",[398,709,445],{"class":411},[398,711,449],{"class":448},[398,713,714],{"class":452},"btn",[398,716,582],{"class":448},[398,718,720,723,725,727,730],{"class":400,"line":719},21,[398,721,722],{"class":441},"                @click",[398,724,445],{"class":411},[398,726,449],{"class":448},[398,728,729],{"class":452},"goToPreviousPage",[398,731,582],{"class":448},[398,733,735],{"class":400,"line":734},22,[398,736,737],{"class":411},"            >\n",[398,739,741],{"class":400,"line":740},23,[398,742,744],{"class":743},"sPB8G","                Previous\n",[398,746,748,751,754],{"class":400,"line":747},24,[398,749,750],{"class":411},"            \u003C\u002F",[398,752,753],{"class":415},"button",[398,755,419],{"class":411},[398,757,759],{"class":400,"line":758},25,[398,760,535],{"emptyLinePlaceholder":534},[398,762,764,766,768,770,772,774,777,779],{"class":400,"line":763},26,[398,765,475],{"class":411},[398,767,398],{"class":415},[398,769,458],{"class":441},[398,771,445],{"class":411},[398,773,449],{"class":448},[398,775,776],{"class":452},"text-sm text-gray-600",[398,778,449],{"class":448},[398,780,419],{"class":411},[398,782,784],{"class":400,"line":783},27,[398,785,786],{"class":743},"                Page {{ pageModel }} of {{ totalPages }}\n",[398,788,790,792,794],{"class":400,"line":789},28,[398,791,750],{"class":411},[398,793,398],{"class":415},[398,795,419],{"class":411},[398,797,799],{"class":400,"line":798},29,[398,800,535],{"emptyLinePlaceholder":534},[398,802,804,806],{"class":400,"line":803},30,[398,805,475],{"class":411},[398,807,686],{"class":415},[398,809,811,813,815,817,820],{"class":400,"line":810},31,[398,812,692],{"class":441},[398,814,445],{"class":411},[398,816,449],{"class":448},[398,818,819],{"class":452},"pageModel >= totalPages",[398,821,582],{"class":448},[398,823,825,827,829,831,833],{"class":400,"line":824},32,[398,826,707],{"class":441},[398,828,445],{"class":411},[398,830,449],{"class":448},[398,832,714],{"class":452},[398,834,582],{"class":448},[398,836,838,840,842,844,847],{"class":400,"line":837},33,[398,839,722],{"class":441},[398,841,445],{"class":411},[398,843,449],{"class":448},[398,845,846],{"class":452},"goToNextPage",[398,848,582],{"class":448},[398,850,852],{"class":400,"line":851},34,[398,853,737],{"class":411},[398,855,857],{"class":400,"line":856},35,[398,858,859],{"class":743},"                Next\n",[398,861,863,865,867],{"class":400,"line":862},36,[398,864,750],{"class":411},[398,866,753],{"class":415},[398,868,419],{"class":411},[398,870,872,874,876],{"class":400,"line":871},37,[398,873,524],{"class":411},[398,875,428],{"class":415},[398,877,419],{"class":411},[398,879,881,884,886],{"class":400,"line":880},38,[398,882,883],{"class":411},"    \u003C\u002F",[398,885,428],{"class":415},[398,887,419],{"class":411},[398,889,891,894,896],{"class":400,"line":890},39,[398,892,893],{"class":411},"\u003C\u002F",[398,895,416],{"class":415},[398,897,419],{"class":411},[398,899,901],{"class":400,"line":900},40,[398,902,535],{"emptyLinePlaceholder":534},[398,904,906,908,911,914,917,919,921,924,926],{"class":400,"line":905},41,[398,907,412],{"class":411},[398,909,910],{"class":415},"script",[398,912,913],{"class":441}," setup",[398,915,916],{"class":441}," lang",[398,918,445],{"class":411},[398,920,449],{"class":448},[398,922,923],{"class":452},"ts",[398,925,449],{"class":448},[398,927,419],{"class":411},[398,929,931,935,938,941,944,947,950,953,956],{"class":400,"line":930},42,[398,932,934],{"class":933},"sm4w6","import",[398,936,937],{"class":933}," type",[398,939,940],{"class":411}," {",[398,942,943],{"class":743}," IriProp",[398,945,946],{"class":411}," }",[398,948,949],{"class":933}," from",[398,951,952],{"class":448}," '",[398,954,955],{"class":452},"#cwa\u002Fcomposables\u002Fcwa-resource",[398,957,958],{"class":448},"'\n",[398,960,962,964,966,969,972,975,977,979,981,984],{"class":400,"line":961},43,[398,963,934],{"class":933},[398,965,940],{"class":411},[398,967,968],{"class":743}," useCwaComponent",[398,970,971],{"class":411},",",[398,973,974],{"class":743}," withCollection",[398,976,946],{"class":411},[398,978,949],{"class":933},[398,980,952],{"class":448},[398,982,983],{"class":452},"#imports",[398,985,958],{"class":448},[398,987,989],{"class":400,"line":988},44,[398,990,535],{"emptyLinePlaceholder":534},[398,992,994,998,1002,1006,1010,1012,1016,1019],{"class":400,"line":993},45,[398,995,997],{"class":996},"swB56","const",[398,999,1001],{"class":1000},"sc2zw"," props",[398,1003,1005],{"class":1004},"sVlFx"," =",[398,1007,1009],{"class":1008},"sKpYG"," defineProps",[398,1011,412],{"class":411},[398,1013,1015],{"class":1014},"sRCss","IriProp",[398,1017,1018],{"class":411},">",[398,1020,1021],{"class":743},"()\n",[398,1023,1025],{"class":400,"line":1024},46,[398,1026,535],{"emptyLinePlaceholder":534},[398,1028,1030,1032],{"class":400,"line":1029},47,[398,1031,997],{"class":996},[398,1033,1034],{"class":411}," {\n",[398,1036,1038,1041],{"class":400,"line":1037},48,[398,1039,1040],{"class":1000},"    resource",[398,1042,1043],{"class":411},",\n",[398,1045,1047,1050],{"class":400,"line":1046},49,[398,1048,1049],{"class":1000},"    exposeMeta",[398,1051,1043],{"class":411},[398,1053,1055,1058],{"class":400,"line":1054},50,[398,1056,1057],{"class":1000},"    collectionItems",[398,1059,1043],{"class":411},[398,1061,1063,1066],{"class":400,"line":1062},51,[398,1064,1065],{"class":1000},"    isLoadingCollection",[398,1067,1043],{"class":411},[398,1069,1071,1074],{"class":400,"line":1070},52,[398,1072,1073],{"class":1000},"    totalPages",[398,1075,1043],{"class":411},[398,1077,1079,1082],{"class":400,"line":1078},53,[398,1080,1081],{"class":1000},"    pageModel",[398,1083,1043],{"class":411},[398,1085,1087,1090],{"class":400,"line":1086},54,[398,1088,1089],{"class":1000},"    goToNextPage",[398,1091,1043],{"class":411},[398,1093,1095,1098],{"class":400,"line":1094},55,[398,1096,1097],{"class":1000},"    goToPreviousPage",[398,1099,1043],{"class":411},[398,1101,1103],{"class":400,"line":1102},56,[398,1104,1105],{"class":1000},"    resolveResourceLink\n",[398,1107,1109,1112,1114,1116,1119,1121,1124,1127],{"class":400,"line":1108},57,[398,1110,1111],{"class":411},"}",[398,1113,1005],{"class":1004},[398,1115,968],{"class":1008},[398,1117,1118],{"class":743},"(props",[398,1120,971],{"class":411},[398,1122,1123],{"class":743}," [",[398,1125,1126],{"class":1008},"withCollection",[398,1128,1129],{"class":743},"()])\n",[398,1131,1133],{"class":400,"line":1132},58,[398,1134,535],{"emptyLinePlaceholder":534},[398,1136,1138,1141],{"class":400,"line":1137},59,[398,1139,1140],{"class":1008},"defineExpose",[398,1142,1143],{"class":743},"(exposeMeta)\n",[398,1145,1147,1149,1151],{"class":400,"line":1146},60,[398,1148,893],{"class":411},[398,1150,910],{"class":415},[398,1152,419],{"class":411},[384,1154,1156],{"id":1155},"return-values","Return Values",[1158,1159,1160,1176],"table",{},[1161,1162,1163],"thead",{},[1164,1165,1166,1170,1173],"tr",{},[1167,1168,1169],"th",{},"Return",[1167,1171,1172],{},"Type",[1167,1174,1175],{},"Description",[1177,1178,1179,1198,1215,1237,1256,1272,1288],"tbody",{},[1164,1180,1181,1187,1192],{},[1182,1183,1184],"td",{},[371,1185,1186],{},"collectionItems",[1182,1188,1189],{},[371,1190,1191],{},"ComputedRef\u003CResource[]>",[1182,1193,369,1194,1197],{},[371,1195,1196],{},"hydra:member"," array — each item is a full resource",[1164,1199,1200,1204,1209],{},[1182,1201,1202],{},[371,1203,453],{},[1182,1205,1206],{},[371,1207,1208],{},"ComputedRef\u003Cboolean>",[1182,1210,1211,1214],{},[371,1212,1213],{},"true"," while the proxied collection fetch is in progress",[1164,1216,1217,1222,1227],{},[1182,1218,1219],{},[371,1220,1221],{},"totalPages",[1182,1223,1224],{},[371,1225,1226],{},"ComputedRef\u003Cnumber>",[1182,1228,1229,1230,1233,1234],{},"Computed from ",[371,1231,1232],{},"hydra:totalItems"," ÷ ",[371,1235,1236],{},"perPage",[1164,1238,1239,1244,1249],{},[1182,1240,1241],{},[371,1242,1243],{},"pageModel",[1182,1245,1246],{},[371,1247,1248],{},"Ref\u003Cnumber>",[1182,1250,1251,1252,1255],{},"Current page number — bound to the URL ",[371,1253,1254],{},"?page="," query param",[1164,1257,1258,1262,1267],{},[1182,1259,1260],{},[371,1261,846],{},[1182,1263,1264],{},[371,1265,1266],{},"() => void",[1182,1268,1269,1270],{},"Increments ",[371,1271,1243],{},[1164,1273,1274,1278,1282],{},[1182,1275,1276],{},[371,1277,729],{},[1182,1279,1280],{},[371,1281,1266],{},[1182,1283,1284,1285,1287],{},"Decrements ",[371,1286,1243],{}," (min: 1)",[1164,1289,1290,1295,1300],{},[1182,1291,1292],{},[371,1293,1294],{},"changePage",[1182,1296,1297],{},[371,1298,1299],{},"(page: number) => void",[1182,1301,1302],{},"Jump to a specific page",[367,1304,1305,1307,1308,1311,1312,1315],{},[371,1306,1186],{}," is always an array — never ",[371,1309,1310],{},"null"," — so ",[371,1313,1314],{},"v-for"," won't error during loading.",[384,1317,1319],{"id":1318},"numbered-pagination","Numbered Pagination",[367,1321,1322,1323,1326],{},"Use ",[371,1324,1325],{},"useCwaCollectionPagination"," to generate a page number list with ellipsis markers for long ranges:",[389,1328,1331],{"className":1329,"code":1330,"language":923,"meta":394,"style":394},"language-ts shiki shiki-themes github-light github-dark material-theme-palenight","import { useCwaCollectionPagination } from '#imports'\n\nconst { pages } = useCwaCollectionPagination(totalPages, pageModel)\n\u002F\u002F pages.value → [1, 2, '...', 8, 9, 10] when on page 1 of 10\n",[371,1332,1333,1352,1356,1379],{"__ignoreMap":394},[398,1334,1335,1337,1339,1342,1344,1346,1348,1350],{"class":400,"line":401},[398,1336,934],{"class":933},[398,1338,940],{"class":411},[398,1340,1341],{"class":743}," useCwaCollectionPagination",[398,1343,946],{"class":411},[398,1345,949],{"class":933},[398,1347,952],{"class":448},[398,1349,983],{"class":452},[398,1351,958],{"class":448},[398,1353,1354],{"class":400,"line":408},[398,1355,535],{"emptyLinePlaceholder":534},[398,1357,1358,1360,1362,1365,1367,1369,1371,1374,1376],{"class":400,"line":422},[398,1359,997],{"class":996},[398,1361,940],{"class":411},[398,1363,1364],{"class":1000}," pages",[398,1366,946],{"class":411},[398,1368,1005],{"class":1004},[398,1370,1341],{"class":1008},[398,1372,1373],{"class":743},"(totalPages",[398,1375,971],{"class":411},[398,1377,1378],{"class":743}," pageModel)\n",[398,1380,1381],{"class":400,"line":433},[398,1382,1383],{"class":404},"\u002F\u002F pages.value → [1, 2, '...', 8, 9, 10] when on page 1 of 10\n",[389,1385,1387],{"className":391,"code":1386,"language":393,"meta":394,"style":394},"\u003Cnav class=\"flex gap-1\">\n    \u003Cbutton\n        v-for=\"p in pages\"\n        :key=\"p\"\n        :disabled=\"p === '...'\"\n        :class=\"p === pageModel ? 'font-bold' : ''\"\n        @click=\"typeof p === 'number' && changePage(p)\"\n    >\n        {{ p }}\n    \u003C\u002Fbutton>\n\u003C\u002Fnav>\n",[371,1388,1389,1409,1414,1419,1424,1429,1434,1439,1444,1449,1454],{"__ignoreMap":394},[398,1390,1391,1393,1396,1398,1400,1402,1405,1407],{"class":400,"line":401},[398,1392,412],{"class":411},[398,1394,1395],{"class":415},"nav",[398,1397,458],{"class":441},[398,1399,445],{"class":411},[398,1401,449],{"class":448},[398,1403,1404],{"class":452},"flex gap-1",[398,1406,449],{"class":448},[398,1408,419],{"class":411},[398,1410,1411],{"class":400,"line":408},[398,1412,1413],{"class":743},"    \u003Cbutton\n",[398,1415,1416],{"class":400,"line":422},[398,1417,1418],{"class":743},"        v-for=\"p in pages\"\n",[398,1420,1421],{"class":400,"line":433},[398,1422,1423],{"class":743},"        :key=\"p\"\n",[398,1425,1426],{"class":400,"line":472},[398,1427,1428],{"class":743},"        :disabled=\"p === '...'\"\n",[398,1430,1431],{"class":400,"line":521},[398,1432,1433],{"class":743},"        :class=\"p === pageModel ? 'font-bold' : ''\"\n",[398,1435,1436],{"class":400,"line":531},[398,1437,1438],{"class":743},"        @click=\"typeof p === 'number' && changePage(p)\"\n",[398,1440,1441],{"class":400,"line":538},[398,1442,1443],{"class":743},"    >\n",[398,1445,1446],{"class":400,"line":561},[398,1447,1448],{"class":743},"        {{ p }}\n",[398,1450,1451],{"class":400,"line":569},[398,1452,1453],{"class":743},"    \u003C\u002Fbutton>\n",[398,1455,1456,1458,1460],{"class":400,"line":585},[398,1457,893],{"class":411},[398,1459,1395],{"class":415},[398,1461,419],{"class":411},[384,1463,1465],{"id":1464},"linking-to-a-resources-page","Linking to a Resource's Page",[367,1467,1468,1471],{},[371,1469,1470],{},"resolveResourceLink"," looks up the Route whose PageData IRI matches the item, and returns the path:",[389,1473,1475],{"className":1329,"code":1474,"language":923,"meta":394,"style":394},"import { resolveResourceLink } from '@cwa\u002Fnuxt\u002Fruntime\u002Futils'\n\n\u002F\u002F In template\n:href=\"resolveResourceLink(item)\"\n",[371,1476,1477,1497,1501,1506],{"__ignoreMap":394},[398,1478,1479,1481,1483,1486,1488,1490,1492,1495],{"class":400,"line":401},[398,1480,934],{"class":933},[398,1482,940],{"class":411},[398,1484,1485],{"class":743}," resolveResourceLink",[398,1487,946],{"class":411},[398,1489,949],{"class":933},[398,1491,952],{"class":448},[398,1493,1494],{"class":452},"@cwa\u002Fnuxt\u002Fruntime\u002Futils",[398,1496,958],{"class":448},[398,1498,1499],{"class":400,"line":408},[398,1500,535],{"emptyLinePlaceholder":534},[398,1502,1503],{"class":400,"line":422},[398,1504,1505],{"class":404},"\u002F\u002F In template\n",[398,1507,1508,1511,1513,1515,1517],{"class":400,"line":433},[398,1509,1510],{"class":743},":href",[398,1512,445],{"class":1004},[398,1514,449],{"class":448},[398,1516,625],{"class":452},[398,1518,582],{"class":448},[367,1520,1521,1522,1525],{},"This is how you turn a collection item into a ",[371,1523,1524],{},"\u003CNuxtLink>"," without knowing its URL in advance.",[384,1527,1529],{"id":1528},"user-controlled-sorting-and-filtering","User-Controlled Sorting and Filtering",[367,1531,1532,1535],{},[371,1533,1534],{},"useQueryBoundModel"," binds any query parameter to the URL, triggering a re-fetch when it changes:",[389,1537,1539],{"className":1329,"code":1538,"language":923,"meta":394,"style":394},"import { useQueryBoundModel } from '#imports'\n\nconst sortOrder = useQueryBoundModel('order[createdAt]', 'desc')\n\u002F\u002F Changing sortOrder.value updates ?order[createdAt]=... in the URL\n",[371,1540,1541,1560,1564,1598],{"__ignoreMap":394},[398,1542,1543,1545,1547,1550,1552,1554,1556,1558],{"class":400,"line":401},[398,1544,934],{"class":933},[398,1546,940],{"class":411},[398,1548,1549],{"class":743}," useQueryBoundModel",[398,1551,946],{"class":411},[398,1553,949],{"class":933},[398,1555,952],{"class":448},[398,1557,983],{"class":452},[398,1559,958],{"class":448},[398,1561,1562],{"class":400,"line":408},[398,1563,535],{"emptyLinePlaceholder":534},[398,1565,1566,1568,1571,1573,1575,1578,1581,1584,1586,1588,1590,1593,1595],{"class":400,"line":422},[398,1567,997],{"class":996},[398,1569,1570],{"class":1000}," sortOrder",[398,1572,1005],{"class":1004},[398,1574,1549],{"class":1008},[398,1576,1577],{"class":743},"(",[398,1579,1580],{"class":448},"'",[398,1582,1583],{"class":452},"order[createdAt]",[398,1585,1580],{"class":448},[398,1587,971],{"class":411},[398,1589,952],{"class":448},[398,1591,1592],{"class":452},"desc",[398,1594,1580],{"class":448},[398,1596,1597],{"class":743},")\n",[398,1599,1600],{"class":400,"line":433},[398,1601,1602],{"class":404},"\u002F\u002F Changing sortOrder.value updates ?order[createdAt]=... in the URL\n",[389,1604,1606],{"className":391,"code":1605,"language":393,"meta":394,"style":394},"\u003Cselect v-model=\"sortOrder\">\n    \u003Coption value=\"desc\">Newest first\u003C\u002Foption>\n    \u003Coption value=\"asc\">Oldest first\u003C\u002Foption>\n\u003C\u002Fselect>\n",[371,1607,1608,1629,1634,1639],{"__ignoreMap":394},[398,1609,1610,1612,1615,1618,1620,1622,1625,1627],{"class":400,"line":401},[398,1611,412],{"class":411},[398,1613,1614],{"class":415},"select",[398,1616,1617],{"class":441}," v-model",[398,1619,445],{"class":411},[398,1621,449],{"class":448},[398,1623,1624],{"class":743},"sortOrder",[398,1626,449],{"class":448},[398,1628,419],{"class":411},[398,1630,1631],{"class":400,"line":408},[398,1632,1633],{"class":743},"    \u003Coption value=\"desc\">Newest first\u003C\u002Foption>\n",[398,1635,1636],{"class":400,"line":422},[398,1637,1638],{"class":743},"    \u003Coption value=\"asc\">Oldest first\u003C\u002Foption>\n",[398,1640,1641,1643,1645],{"class":400,"line":433},[398,1642,893],{"class":411},[398,1644,1614],{"class":415},[398,1646,419],{"class":411},[367,1648,1649,1650,1652,1653,1655],{},"The collection re-fetches automatically when the URL changes. Default query parameters set in the PHP ",[371,1651,373],{}," entity are the baseline; ",[371,1654,1534],{}," lets users override them.",[384,1657,1659],{"id":1658},"admin-setting-up-a-collection","Admin: Setting Up a Collection",[367,1661,1662,1663,1665],{},"The manager tab (auto-provided by the built-in ",[371,1664,373],{}," entity) lets admins:",[1667,1668,1669,1677,1683],"ol",{},[1670,1671,1672,1673,1676],"li",{},"Select which resource to list (",[371,1674,1675],{},"resourceIri"," — searchable dropdown)",[1670,1678,1679,1680,1682],{},"Set ",[371,1681,1236],{}," — how many items per page",[1670,1684,1685,1686,1689],{},"Configure ",[371,1687,1688],{},"defaultQueryParameters"," — default sort and filter values",[367,1691,1692],{},"No custom admin tab file needed for the standard Collection component — it's provided by the bundle.",[1694,1695,1696],"style",{},"html pre.shiki code .sTBSN, html code.shiki .sTBSN{--shiki-light:#6A737D;--shiki-light-font-style:inherit;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sOvfz, html code.shiki .sOvfz{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#89DDFF}html pre.shiki code .s-h7I, html code.shiki .s-h7I{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#F07178}html pre.shiki code .sGtlX, html code.shiki .sGtlX{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#C792EA}html pre.shiki code .seSrl, html code.shiki .seSrl{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#89DDFF}html pre.shiki code .sLL54, html code.shiki .sLL54{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#C3E88D}html pre.shiki code .s01iV, html code.shiki .s01iV{--shiki-light:#B31D28;--shiki-light-font-style:italic;--shiki-default:#FDAEB7;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:inherit}html pre.shiki code .sPB8G, html code.shiki .sPB8G{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#BABED8}html pre.shiki code .sm4w6, html code.shiki .sm4w6{--shiki-light:#D73A49;--shiki-light-font-style:inherit;--shiki-default:#F97583;--shiki-default-font-style:inherit;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .swB56, html code.shiki .swB56{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#C792EA}html pre.shiki code .sc2zw, html code.shiki .sc2zw{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#BABED8}html pre.shiki code .sVlFx, html code.shiki .sVlFx{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#89DDFF}html pre.shiki code .sKpYG, html code.shiki .sKpYG{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#82AAFF}html pre.shiki code .sRCss, html code.shiki .sRCss{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#FFCB6B}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":394,"searchDepth":408,"depth":408,"links":1698},[1699,1700,1701,1702,1703,1704],{"id":386,"depth":408,"text":387},{"id":1155,"depth":408,"text":1156},{"id":1318,"depth":408,"text":1319},{"id":1464,"depth":408,"text":1465},{"id":1528,"depth":408,"text":1529},{"id":1658,"depth":408,"text":1659},"Render paginated resource lists with useCwaComponent and the withCollection() plugin, with page navigation bound to the URL query string.","md",null,{},{"title":305,"description":1705},"jSwd1RarntDcenjbcQNfDQFERaEjNyLyAvrF2xgr9QI",[1712,1714],{"title":301,"path":302,"stem":303,"description":1713,"children":-1},"Display uploaded files with useCwaComponent and withImage(), manage uploads in admin tabs with useCwaResourceUpload, and use Imagine filter variants.",{"title":309,"path":310,"stem":311,"description":1715,"children":-1},"Render rich-text HTML from a CWA resource with CwaLink replacing anchor tags so internal links stay client-side.",1782512897809]