import { XMLParse } from '@oinone/kunlun-dsl';
import { ExperimentalConfigManager } from '@oinone/kunlun-engine';
import type { TreeNodeMetadata } from '../typing';
import { TreeUtils } from './tree-utils';
const defaultAddressTemplate = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplate1 = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplate2 = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplate3 = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplateNext = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplateNext1 = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplateNext2 = XMLParse.INSTANCE.parse(`
`);
const defaultAddressTemplateNext3 = XMLParse.INSTANCE.parse(`
`);
export enum DefaultAddressTypeEnum {
/**
* 国家-省-市-区
*/
COUNTRY_PROVINCE_CITY_DISTRICT = 'COUNTRY_PROVINCE_CITY_DISTRICT',
/**
* 省-市-区-街道
*/
PROVINCE_CITY_DISTRICT_STREET = 'PROVINCE_CITY_DISTRICT_STREET',
/**
* 省-市-区
*/
PROVINCE_CITY_DISTRICT = 'PROVINCE_CITY_DISTRICT'
}
export function generatorDefaultAddressTreeDefinition(
addressType?: DefaultAddressTypeEnum
): TreeNodeMetadata | undefined {
if (ExperimentalConfigManager.addressWidgetNext()) {
if (addressType) {
switch (addressType) {
case DefaultAddressTypeEnum.COUNTRY_PROVINCE_CITY_DISTRICT:
return TreeUtils.convert(defaultAddressTemplateNext1);
case DefaultAddressTypeEnum.PROVINCE_CITY_DISTRICT_STREET:
return TreeUtils.convert(defaultAddressTemplateNext2);
case DefaultAddressTypeEnum.PROVINCE_CITY_DISTRICT:
return TreeUtils.convert(defaultAddressTemplateNext3);
default:
return TreeUtils.convert(defaultAddressTemplateNext);
}
}
return TreeUtils.convert(defaultAddressTemplateNext);
}
if (addressType) {
switch (addressType) {
case DefaultAddressTypeEnum.COUNTRY_PROVINCE_CITY_DISTRICT:
return TreeUtils.convert(defaultAddressTemplate1);
case DefaultAddressTypeEnum.PROVINCE_CITY_DISTRICT_STREET:
return TreeUtils.convert(defaultAddressTemplate2);
case DefaultAddressTypeEnum.PROVINCE_CITY_DISTRICT:
return TreeUtils.convert(defaultAddressTemplate3);
default:
return TreeUtils.convert(defaultAddressTemplate);
}
}
return TreeUtils.convert(defaultAddressTemplate);
}
const defaultCompanyTemplate = XMLParse.INSTANCE.parse(`
`);
export function generatorDefaultCompanyTreeDefinition(): TreeNodeMetadata | undefined {
return TreeUtils.convert(defaultCompanyTemplate);
}
const defaultDepartmentTemplate = XMLParse.INSTANCE.parse(`
`);
export function generatorDefaultDepartmentTreeDefinition(): TreeNodeMetadata | undefined {
return TreeUtils.convert(defaultDepartmentTemplate);
}
const defaultEmployeeTemplate = XMLParse.INSTANCE.parse(`
`);
export function generatorDefaultEmployeeTreeDefinition(): TreeNodeMetadata | undefined {
return TreeUtils.convert(defaultEmployeeTemplate);
}
const defaultTranslateTemplate = XMLParse.INSTANCE.parse(`
`);
export function generatorDefaultTranslateTreeDefinition(): TreeNodeMetadata | undefined {
return TreeUtils.convert(defaultTranslateTemplate);
}