// Utils
import { createNamespace } from '../utils';
// Components
import Button from '../button';
import RadioGroup from '../radio-group';
import AddressItem from './Item';
const [createComponent, bem, t] = createNamespace('address-list');
export default createComponent({
props: {
list: Array,
modelValue: [Number, String],
disabledList: Array,
disabledText: String,
addButtonText: String,
defaultTagText: String,
switchable: {
type: Boolean,
default: true,
},
},
emits: [
'add',
'edit',
'select',
'click-item',
'edit-disabled',
'select-disabled',
'update:modelValue',
],
setup(props, { slots, emit }) {
const renderItem = (item, index, disabled) => {
const onEdit = () => {
const name = disabled ? 'edit-disabled' : 'edit';
emit(name, item, index);
};
const onClick = () => {
emit('click-item', item, index);
};
const onSelect = () => {
const name = disabled ? 'select-disabled' : 'select';
emit(name, item, index);
if (!disabled) {
emit('update:modelValue', item.id);
}
};
return (