hexabot/api/src/setting/seeds/setting.seed-model.ts
2025-01-20 09:59:03 +01:00

159 lines
3.5 KiB
TypeScript

/*
* Copyright © 2025 Hexastack. All rights reserved.
*
* Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:
* 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.
* 2. All derivative works must include clear attribution to the original creator and software, Hexastack and Hexabot, in a prominent location (e.g., in the software's "About" section, documentation, and README file).
*/
import { SettingCreateDto } from '../dto/setting.dto';
import { SettingType } from '../schemas/types';
export const DEFAULT_SETTINGS = [
{
group: 'chatbot_settings',
label: 'default_nlu_helper',
value: 'llm-nlu-helper',
type: SettingType.select,
config: {
multiple: false,
allowCreate: false,
entity: 'Helper',
idKey: 'name',
labelKey: 'name',
},
weight: 1,
},
{
group: 'chatbot_settings',
label: 'default_llm_helper',
value: 'ollama-helper',
type: SettingType.select,
config: {
multiple: false,
allowCreate: false,
entity: 'Helper',
idKey: 'name',
labelKey: 'name',
},
weight: 2,
},
{
group: 'chatbot_settings',
label: 'default_storage_helper',
value: 'local-storage-helper',
type: SettingType.select,
config: {
multiple: false,
allowCreate: false,
entity: 'Helper',
idKey: 'name',
labelKey: 'name',
},
weight: 3,
},
{
group: 'chatbot_settings',
label: 'global_fallback',
value: true,
type: SettingType.checkbox,
weight: 4,
},
{
group: 'chatbot_settings',
label: 'fallback_block',
value: '',
options: [],
type: SettingType.select,
config: {
multiple: false,
allowCreate: false,
entity: 'Block',
idKey: 'id',
labelKey: 'name',
},
weight: 5,
},
{
group: 'chatbot_settings',
label: 'fallback_message',
value: [
"Sorry but i didn't understand your request. Maybe you can check the menu",
"I'm really sorry but i don't quite understand what you are saying :(",
] as string[],
type: SettingType.multiple_text,
weight: 6,
translatable: true,
},
{
group: 'contact',
label: 'contact_email_recipient',
value: 'admin@example.com',
type: SettingType.text,
weight: 1,
},
{
group: 'contact',
label: 'company_name',
value: 'Your company name',
type: SettingType.text,
weight: 2,
},
{
group: 'contact',
label: 'company_phone',
value: '(+999) 9999 9999 999',
type: SettingType.text,
weight: 3,
},
{
group: 'contact',
label: 'company_email',
value: 'contact[at]mycompany.com',
type: SettingType.text,
weight: 4,
},
{
group: 'contact',
label: 'company_address1',
value: '71 Pilgrim Avenue',
type: SettingType.text,
weight: 5,
},
{
group: 'contact',
label: 'company_address2',
value: '',
type: SettingType.text,
weight: 6,
},
{
group: 'contact',
label: 'company_city',
value: 'Chevy Chase',
type: SettingType.text,
weight: 7,
},
{
group: 'contact',
label: 'company_zipcode',
value: '85705',
type: SettingType.text,
weight: 8,
},
{
group: 'contact',
label: 'company_state',
value: 'Orlando',
type: SettingType.text,
weight: 9,
},
{
group: 'contact',
label: 'company_country',
value: 'US',
type: SettingType.text,
weight: 10,
},
] as const satisfies SettingCreateDto[];