<template><cdx-dialogv-model:open="wrappedOpen"title="Change name"close-button-label="Close":primary-action="saveAction"@primary="saveName"><p>New name:</p><cdx-text-inputv-model="nameInput"placeholder="Choose a new name"></cdx-text-input></cdx-dialog></template><script>const{ref,computed,toRef}=require('vue');const{CdxDialog,CdxTextInput,useModelWrapper}=require('@wikimedia/codex');module.exports={components:{CdxDialog,CdxTextInput},props:{open:{type:Boolean,required:true}},emits:['update:open','save-name'],setup(props,{emit}){constwrappedOpen=useModelWrapper(toRef(props,'open'),emit,'update:open');constnameInput=ref('');constsaveAction=computed(()=>({label:'Save',actionType:'progressive',disabled:nameInput.value===''}));functionsaveName(){emit('save-name',nameInput.value);}return{wrappedOpen,nameInput,saveAction,saveName};}};</script>