@servicetitan/titan-chatbot-api 7.1.1 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/dist/api-client/__mocks__/chatbot-api-client.mock.js +21 -47
- package/dist/api-client/__mocks__/chatbot-api-client.mock.js.map +1 -1
- package/dist/api-client/base/chatbot-api-client.js +3 -4
- package/dist/api-client/base/chatbot-api-client.js.map +1 -1
- package/dist/api-client/help-center/__tests__/converter-from-models.test.js +48 -15
- package/dist/api-client/help-center/__tests__/converter-from-models.test.js.map +1 -1
- package/dist/api-client/help-center/__tests__/converter-to-models.test.js +23 -22
- package/dist/api-client/help-center/__tests__/converter-to-models.test.js.map +1 -1
- package/dist/api-client/help-center/chatbot-api-client.js +51 -52
- package/dist/api-client/help-center/chatbot-api-client.js.map +1 -1
- package/dist/api-client/help-center/converter-from-models.js +15 -12
- package/dist/api-client/help-center/converter-from-models.js.map +1 -1
- package/dist/api-client/help-center/converter-to-models.js +29 -26
- package/dist/api-client/help-center/converter-to-models.js.map +1 -1
- package/dist/api-client/help-center/index.d.ts +2 -1
- package/dist/api-client/help-center/index.d.ts.map +1 -1
- package/dist/api-client/help-center/index.js +1 -0
- package/dist/api-client/help-center/index.js.map +1 -1
- package/dist/api-client/help-center/native-client.js +1192 -2884
- package/dist/api-client/help-center/native-client.js.map +1 -1
- package/dist/api-client/index.d.ts +2 -1
- package/dist/api-client/index.d.ts.map +1 -1
- package/dist/api-client/index.js +14 -7
- package/dist/api-client/index.js.map +1 -1
- package/dist/api-client/models/__mocks__/models.mock.js +154 -124
- package/dist/api-client/models/__mocks__/models.mock.js.map +1 -1
- package/dist/api-client/models/index.d.ts +2 -1
- package/dist/api-client/models/index.d.ts.map +1 -1
- package/dist/api-client/models/index.js +8 -7
- package/dist/api-client/models/index.js.map +1 -1
- package/dist/api-client/titan-chat/__tests__/native-client.test.js +6 -6
- package/dist/api-client/titan-chat/__tests__/native-client.test.js.map +1 -1
- package/dist/api-client/titan-chat/chatbot-api-client.js +40 -35
- package/dist/api-client/titan-chat/chatbot-api-client.js.map +1 -1
- package/dist/api-client/titan-chat/index.d.ts +2 -1
- package/dist/api-client/titan-chat/index.d.ts.map +1 -1
- package/dist/api-client/titan-chat/index.js +1 -0
- package/dist/api-client/titan-chat/index.js.map +1 -1
- package/dist/api-client/titan-chat/native-client.d.ts +14 -14
- package/dist/api-client/titan-chat/native-client.d.ts.map +1 -1
- package/dist/api-client/titan-chat/native-client.js +359 -809
- package/dist/api-client/titan-chat/native-client.js.map +1 -1
- package/dist/api-client/utils/__tests__/model-utils.test.js +454 -191
- package/dist/api-client/utils/__tests__/model-utils.test.js.map +1 -1
- package/dist/api-client/utils/model-utils.d.ts.map +1 -1
- package/dist/api-client/utils/model-utils.js +28 -25
- package/dist/api-client/utils/model-utils.js.map +1 -1
- package/dist/hooks/use-customization-chatbot.js +2 -1
- package/dist/hooks/use-customization-chatbot.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/models/chatbot-customizations.js +2 -1
- package/dist/models/chatbot-customizations.js.map +1 -1
- package/dist/models/index.d.ts +1 -1
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +2 -1
- package/dist/models/index.js.map +1 -1
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.js +267 -172
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.js.map +1 -1
- package/dist/stores/__tests__/chatbot-ui.store.test.js +61 -64
- package/dist/stores/__tests__/chatbot-ui.store.test.js.map +1 -1
- package/dist/stores/__tests__/filter.store.test.js +243 -116
- package/dist/stores/__tests__/filter.store.test.js.map +1 -1
- package/dist/stores/__tests__/initialize.store.test.js +9 -8
- package/dist/stores/__tests__/initialize.store.test.js.map +1 -1
- package/dist/stores/__tests__/message-feedback-guardrail.store.test.js +8 -7
- package/dist/stores/__tests__/message-feedback-guardrail.store.test.js.map +1 -1
- package/dist/stores/__tests__/message-feedback.store.test.js +34 -27
- package/dist/stores/__tests__/message-feedback.store.test.js.map +1 -1
- package/dist/stores/__tests__/session-feedback.store.test.js +9 -8
- package/dist/stores/__tests__/session-feedback.store.test.js.map +1 -1
- package/dist/stores/chatbot-ui-backend.store.js +171 -240
- package/dist/stores/chatbot-ui-backend.store.js.map +1 -1
- package/dist/stores/chatbot-ui.store.js +73 -46
- package/dist/stores/chatbot-ui.store.js.map +1 -1
- package/dist/stores/filter.store.js +298 -378
- package/dist/stores/filter.store.js.map +1 -1
- package/dist/stores/index.d.ts +5 -3
- package/dist/stores/index.d.ts.map +1 -1
- package/dist/stores/index.js +3 -2
- package/dist/stores/index.js.map +1 -1
- package/dist/stores/initialize.store.js +55 -51
- package/dist/stores/initialize.store.js.map +1 -1
- package/dist/stores/message-feedback-base.store.js +2 -1
- package/dist/stores/message-feedback-base.store.js.map +1 -1
- package/dist/stores/message-feedback-guardrail.store.js +50 -47
- package/dist/stores/message-feedback-guardrail.store.js.map +1 -1
- package/dist/stores/message-feedback.store.js +84 -89
- package/dist/stores/message-feedback.store.js.map +1 -1
- package/dist/stores/session-feedback.store.js +46 -39
- package/dist/stores/session-feedback.store.js.map +1 -1
- package/dist/utils/__tests__/axios-utils.test.js +8 -7
- package/dist/utils/__tests__/axios-utils.test.js.map +1 -1
- package/dist/utils/axios-utils.js +9 -7
- package/dist/utils/axios-utils.js.map +1 -1
- package/dist/utils/test-utils.js +5 -5
- package/dist/utils/test-utils.js.map +1 -1
- package/package.json +3 -3
- package/src/api-client/help-center/index.ts +2 -1
- package/src/api-client/help-center/native-client.ts +4 -4
- package/src/api-client/index.ts +2 -6
- package/src/api-client/models/index.ts +15 -13
- package/src/api-client/titan-chat/index.ts +2 -1
- package/src/api-client/titan-chat/native-client.ts +17 -14
- package/src/api-client/utils/model-utils.ts +4 -8
- package/src/index.ts +1 -1
- package/src/models/index.ts +1 -1
- package/src/stores/index.ts +5 -12
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-utils.test.js","sourceRoot":"","sources":["../../../../src/api-client/utils/__tests__/model-utils.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/api-client/utils/__tests__/model-utils.test.ts"],"sourcesContent":["import { expect } from '@jest/globals';\nimport { Models, ModelsMocks } from '../..';\nimport { createSelectionsModel } from '../model-utils';\n\ndescribe('[model-utils] createSelectionsModel', () => {\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n describe('with no selections', () => {\n test('should return undefined when no selections are made', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = [frontendModel.options];\n const selected = new Map<string, string[]>();\n\n const result = createSelectionsModel(filters, selected);\n\n expect(result).toBeUndefined();\n });\n\n test('should return undefined when selected map is empty', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = [frontendModel.options];\n const selected = new Map<string, string[]>();\n\n const result = createSelectionsModel(filters, selected);\n\n expect(result).toBeUndefined();\n });\n\n test('should handle empty selection arrays', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = [frontendModel.options];\n const selected = new Map<string, string[]>([\n ['Sources', []],\n ['ContentTypes', []],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n\n expect(result).toBeUndefined();\n });\n });\n\n describe('with flat filter structure (leaf filters only)', () => {\n test('top level, single filter, single value', () => {\n const flatModel = ModelsMocks.mockFrontendModelFlat();\n const flatFilters = flatModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([['ContentTypes', ['kbReleaseNotes']]]);\n\n const result = createSelectionsModel(flatFilters, selected);\n expect(result).toEqual({\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n },\n });\n });\n\n test('top level, single filter, multiple values', () => {\n const flatModel = ModelsMocks.mockFrontendModelFlat();\n const flatFilters = flatModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['ContentTypes', ['kbReleaseNotes', 'kbFaq', 'kbHowTo']],\n ]);\n\n const result = createSelectionsModel(flatFilters, selected);\n expect(result).toEqual({\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'kbFaq', 'kbHowTo'],\n },\n },\n });\n });\n\n test('top level, multiple filter, multiple values', () => {\n const flatModel = ModelsMocks.mockFrontendModelFlat();\n const flatFilters = flatModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['ContentTypes', ['kbReleaseNotes', 'kbFaq']],\n ['ProductAreas', ['Marketing']],\n ]);\n\n const result = createSelectionsModel(flatFilters, selected);\n expect(result).toEqual({\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'kbFaq'],\n },\n ProductAreas: {\n values: ['Marketing'],\n },\n },\n });\n });\n\n test('non-existing filter', () => {\n const flatModel = ModelsMocks.mockFrontendModelFlat();\n const flatFilters = flatModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['ContentTypes', ['kbReleaseNotes', 'nonExistentOption']],\n ]);\n\n const result = createSelectionsModel(flatFilters, selected);\n expect(result).toEqual({\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n },\n });\n });\n\n test('no valid filters', () => {\n const flatModel = ModelsMocks.mockFrontendModelFlat();\n const flatFilters = flatModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['ContentTypes', ['nonExistent1', 'nonExistent2']],\n ]);\n\n const result = createSelectionsModel(flatFilters, selected);\n expect(result).toBeUndefined();\n });\n });\n\n describe('with mixed filter structure', () => {\n test('top level, single filter, single value', () => {\n const frontendModel = ModelsMocks.mockFrontendModelMixed();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([['Sources', ['Jarvis']]]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['Jarvis'],\n },\n },\n });\n });\n\n test('top level, multiple filters, single value', () => {\n const frontendModel = ModelsMocks.mockFrontendModelMixed();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([['Sources', ['KnowledgeBase', 'Jarvis']]]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase', 'Jarvis'],\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values', () => {\n const frontendModel = ModelsMocks.mockFrontendModelMixed();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase', 'Jarvis']],\n ['ContentTypes', ['kbReleaseNotes']],\n ['ProductAreas', ['Marketing']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase', 'Jarvis'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n ProductAreas: {\n values: ['Marketing'],\n },\n },\n },\n },\n },\n },\n });\n });\n });\n\n describe('with nested filter structure', () => {\n test('top level, single filter, single value', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([['Sources', ['KnowledgeBase']]]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase'],\n },\n },\n });\n });\n\n test('all levels, multiple filters, single value', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase']],\n ['ContentTypes', ['kbReleaseNotes']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n },\n },\n },\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values (with shared sub option)', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase', 'Jarvis']],\n ['ContentTypes', ['kbReleaseNotes']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase', 'Jarvis'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n },\n },\n Jarvis: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes'],\n },\n },\n },\n },\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values (with mixed sub options)', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase', 'Jarvis']],\n ['ContentTypes', ['kbReleaseNotes', 'kbFaq', 'xxx']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase', 'Jarvis'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'kbFaq'],\n },\n },\n },\n Jarvis: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'xxx'],\n },\n },\n },\n },\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase']],\n ['ProductAreas', ['Marketing', 'Marketing Pro']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ProductAreas: {\n values: ['Marketing', 'Marketing Pro'],\n },\n },\n },\n },\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values (more values)', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase']],\n ['ContentTypes', ['kbReleaseNotes', 'kbHowTo']],\n ['ProductAreas', ['Marketing']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'kbHowTo'],\n },\n ProductAreas: {\n values: ['Marketing'],\n },\n },\n },\n },\n },\n },\n });\n });\n\n test('all levels, multiple filters, multiple values (more values2)', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase', 'Jarvis']],\n ['ContentTypes', ['kbReleaseNotes', 'yyy', 'kbHowTo']],\n ['ProductAreas', ['Marketing', 'Marketing Pro']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n expect(result).toEqual({\n subOptions: {\n Sources: {\n values: ['KnowledgeBase', 'Jarvis'],\n subOptions: {\n KnowledgeBase: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'kbHowTo'],\n },\n ProductAreas: {\n values: ['Marketing', 'Marketing Pro'],\n },\n },\n },\n Jarvis: {\n subOptions: {\n ContentTypes: {\n values: ['kbReleaseNotes', 'yyy'],\n },\n },\n },\n },\n },\n },\n });\n });\n });\n\n describe('edge cases', () => {\n test('should ignore non-Group type filters', () => {\n const customFilters: Models.IOption[] = [\n new Models.Option({\n key: 'NotAGroup',\n displayName: 'Not A Group',\n type: Models.OptionType.Selectable,\n subOptions: [\n new Models.Option({\n key: 'option1',\n displayName: 'Option 1',\n type: Models.OptionType.Selectable,\n }),\n ],\n }),\n ];\n const selected = new Map<string, string[]>([['NotAGroup', ['option1']]]);\n\n const result = createSelectionsModel(customFilters, selected);\n\n expect(result).toBeUndefined();\n });\n\n test('should handle filters with no subOptions', () => {\n const customFilters: Models.IOption[] = [\n new Models.Option({\n key: 'EmptyFilter',\n displayName: 'Empty Filter',\n type: Models.OptionType.Group,\n subOptions: [],\n }),\n ];\n const selected = new Map<string, string[]>([['EmptyFilter', ['anything']]]);\n\n const result = createSelectionsModel(customFilters, selected);\n\n expect(result).toBeUndefined();\n });\n\n test('should create proper Selections model structure', () => {\n const frontendModel = ModelsMocks.mockFrontendModel();\n const filters = frontendModel.options.subOptions ?? [];\n const selected = new Map<string, string[]>([\n ['Sources', ['KnowledgeBase']],\n ['ContentTypes', ['kbReleaseNotes']],\n ]);\n\n const result = createSelectionsModel(filters, selected);\n\n expect(result).toBeInstanceOf(Models.Selections);\n expect(result!.subOptions).toBeDefined();\n expect(typeof result?.subOptions).toBe('object');\n });\n });\n});\n"],"names":["expect","Models","ModelsMocks","createSelectionsModel","describe","afterEach","jest","clearAllMocks","test","frontendModel","mockFrontendModel","filters","options","selected","Map","result","toBeUndefined","flatModel","mockFrontendModelFlat","flatFilters","subOptions","toEqual","ContentTypes","values","ProductAreas","mockFrontendModelMixed","Sources","KnowledgeBase","Jarvis","customFilters","Option","key","displayName","type","OptionType","Selectable","Group","toBeInstanceOf","Selections","toBeDefined","toBe"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-utils.d.ts","sourceRoot":"","sources":["../../../src/api-client/utils/model-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAE5B,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAE5E;AAED,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAChC,MAAM,CAAC,UAAU,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"model-utils.d.ts","sourceRoot":"","sources":["../../../src/api-client/utils/model-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAE5B,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAE5E;AAED,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAChC,MAAM,CAAC,UAAU,GAAG,SAAS,CAyE/B"}
|
|
@@ -3,48 +3,51 @@ export function createNewSessionModel(data) {
|
|
|
3
3
|
return new Models.Session(data);
|
|
4
4
|
}
|
|
5
5
|
export function createSelectionsModel(filters, selected) {
|
|
6
|
-
const process = (filters)
|
|
6
|
+
const process = (filters)=>{
|
|
7
7
|
let result;
|
|
8
|
-
const ensureResult = ()
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
});
|
|
13
|
-
}
|
|
8
|
+
const ensureResult = ()=>{
|
|
9
|
+
result !== null && result !== void 0 ? result : result = new Models.Selections({
|
|
10
|
+
subOptions: {}
|
|
11
|
+
});
|
|
14
12
|
return result.subOptions;
|
|
15
13
|
};
|
|
16
|
-
const filterList = filters.filter(x
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
const filterList = filters.filter((x)=>{
|
|
15
|
+
var _x_subOptions;
|
|
16
|
+
return x.type === Models.OptionType.Group && Boolean((_x_subOptions = x.subOptions) === null || _x_subOptions === void 0 ? void 0 : _x_subOptions.length);
|
|
17
|
+
});
|
|
18
|
+
for (const filter of filterList){
|
|
19
|
+
const selectedLeafOptions = filter.subOptions.filter((x)=>{
|
|
20
|
+
var _selected_get;
|
|
21
|
+
return x.type === Models.OptionType.Selectable && ((_selected_get = selected.get(filter.key)) === null || _selected_get === void 0 ? void 0 : _selected_get.includes(x.key));
|
|
22
22
|
});
|
|
23
23
|
let values;
|
|
24
24
|
if (selectedLeafOptions.length) {
|
|
25
25
|
// Leaf filter: just collect selected values
|
|
26
|
-
values = selectedLeafOptions === null || selectedLeafOptions === void 0 ? void 0 : selectedLeafOptions.map(o
|
|
26
|
+
values = selectedLeafOptions === null || selectedLeafOptions === void 0 ? void 0 : selectedLeafOptions.map((o)=>o.key).filter((o)=>{
|
|
27
|
+
var _selected_get;
|
|
28
|
+
return (_selected_get = selected.get(filter.key)) === null || _selected_get === void 0 ? void 0 : _selected_get.includes(o);
|
|
29
|
+
});
|
|
27
30
|
if (values === null || values === void 0 ? void 0 : values.length) {
|
|
28
31
|
const subOptions = ensureResult();
|
|
29
|
-
subOptions[filter.key] = new Models.Selections({
|
|
32
|
+
subOptions[filter.key] = new Models.Selections({
|
|
33
|
+
values
|
|
34
|
+
});
|
|
30
35
|
}
|
|
31
36
|
}
|
|
32
37
|
if (!selectedLeafOptions.length) {
|
|
33
38
|
continue;
|
|
34
39
|
}
|
|
35
40
|
// Non-leaf filter: add selected options as selectables and process sub-filters
|
|
36
|
-
const selectedNonLeafOptions = filter.subOptions.filter(x
|
|
37
|
-
var
|
|
38
|
-
return x.type === Models.OptionType.Selectable &&
|
|
39
|
-
((_a = selected.get(filter.key)) === null || _a === void 0 ? void 0 : _a.includes(x.key)) &&
|
|
40
|
-
Boolean((_b = x.subOptions) === null || _b === void 0 ? void 0 : _b.length);
|
|
41
|
+
const selectedNonLeafOptions = filter.subOptions.filter((x)=>{
|
|
42
|
+
var _selected_get, _x_subOptions;
|
|
43
|
+
return x.type === Models.OptionType.Selectable && ((_selected_get = selected.get(filter.key)) === null || _selected_get === void 0 ? void 0 : _selected_get.includes(x.key)) && Boolean((_x_subOptions = x.subOptions) === null || _x_subOptions === void 0 ? void 0 : _x_subOptions.length);
|
|
41
44
|
});
|
|
42
45
|
if (!selectedNonLeafOptions.length) {
|
|
43
46
|
continue;
|
|
44
47
|
}
|
|
45
48
|
// We have some sub-filters to process: collect their results
|
|
46
49
|
const subFilterResults = new Map();
|
|
47
|
-
for (const nonLeafOption of selectedNonLeafOptions)
|
|
50
|
+
for (const nonLeafOption of selectedNonLeafOptions){
|
|
48
51
|
const subFilters = nonLeafOption.subOptions;
|
|
49
52
|
const resultSubFilters = process(subFilters);
|
|
50
53
|
if (!resultSubFilters) {
|
|
@@ -55,15 +58,14 @@ export function createSelectionsModel(filters, selected) {
|
|
|
55
58
|
// If any sub-filters selected, ensure result and add them to the current subOptions
|
|
56
59
|
if (subFilterResults.size) {
|
|
57
60
|
const subOptions = ensureResult();
|
|
58
|
-
for (const [key, value] of subFilterResults)
|
|
61
|
+
for (const [key, value] of subFilterResults){
|
|
62
|
+
var _subFilterSelection, _subOptions;
|
|
59
63
|
let subFilterSelection = subOptions[filter.key];
|
|
60
64
|
if (!subFilterSelection) {
|
|
61
65
|
subFilterSelection = new Models.Selections({});
|
|
62
66
|
subOptions[filter.key] = subFilterSelection;
|
|
63
67
|
}
|
|
64
|
-
|
|
65
|
-
subFilterSelection.subOptions = {};
|
|
66
|
-
}
|
|
68
|
+
(_subOptions = (_subFilterSelection = subFilterSelection).subOptions) !== null && _subOptions !== void 0 ? _subOptions : _subFilterSelection.subOptions = {};
|
|
67
69
|
subFilterSelection.subOptions[key] = value;
|
|
68
70
|
}
|
|
69
71
|
}
|
|
@@ -72,4 +74,5 @@ export function createSelectionsModel(filters, selected) {
|
|
|
72
74
|
};
|
|
73
75
|
return process(filters);
|
|
74
76
|
}
|
|
77
|
+
|
|
75
78
|
//# sourceMappingURL=model-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/api-client/utils/model-utils.ts"],"sourcesContent":["import { Models } from '..';\n\nexport function createNewSessionModel(data?: Models.ISession): Models.Session {\n return new Models.Session(data);\n}\n\nexport function createSelectionsModel(\n filters: Models.IOption[],\n selected: Map<string, string[]>\n): Models.Selections | undefined {\n const process = (filters: Models.IOption[]): Models.Selections | undefined => {\n let result: Models.Selections | undefined;\n const ensureResult = () => {\n result ??= new Models.Selections({\n subOptions: {},\n });\n return result.subOptions!;\n };\n\n const filterList = filters.filter(\n x => x.type === Models.OptionType.Group && Boolean(x.subOptions?.length)\n );\n for (const filter of filterList) {\n const selectedLeafOptions = filter.subOptions!.filter(\n x =>\n x.type === Models.OptionType.Selectable &&\n selected.get(filter.key)?.includes(x.key!)\n );\n let values: string[] | undefined;\n if (selectedLeafOptions.length) {\n // Leaf filter: just collect selected values\n values = selectedLeafOptions\n ?.map(o => o.key)\n .filter(o => selected.get(filter.key)?.includes(o));\n if (values?.length) {\n const subOptions = ensureResult();\n subOptions[filter.key] = new Models.Selections({ values });\n }\n }\n if (!selectedLeafOptions.length) {\n continue;\n }\n\n // Non-leaf filter: add selected options as selectables and process sub-filters\n const selectedNonLeafOptions = filter.subOptions!.filter(\n x =>\n x.type === Models.OptionType.Selectable &&\n selected.get(filter.key)?.includes(x.key!) &&\n Boolean(x.subOptions?.length)\n );\n if (!selectedNonLeafOptions.length) {\n continue;\n }\n\n // We have some sub-filters to process: collect their results\n const subFilterResults = new Map<string, Models.Selections>();\n for (const nonLeafOption of selectedNonLeafOptions) {\n const subFilters = nonLeafOption.subOptions!;\n const resultSubFilters = process(subFilters);\n if (!resultSubFilters) {\n continue;\n }\n subFilterResults.set(nonLeafOption.key!, resultSubFilters);\n }\n\n // If any sub-filters selected, ensure result and add them to the current subOptions\n if (subFilterResults.size) {\n const subOptions = ensureResult();\n for (const [key, value] of subFilterResults) {\n let subFilterSelection = subOptions[filter.key];\n if (!subFilterSelection) {\n subFilterSelection = new Models.Selections({});\n subOptions[filter.key] = subFilterSelection;\n }\n subFilterSelection.subOptions ??= {};\n subFilterSelection.subOptions![key] = value;\n }\n }\n }\n return result;\n };\n return process(filters);\n}\n"],"names":["Models","createNewSessionModel","data","Session","createSelectionsModel","filters","selected","process","result","ensureResult","Selections","subOptions","filterList","filter","x","type","OptionType","Group","Boolean","length","selectedLeafOptions","Selectable","get","key","includes","values","map","o","selectedNonLeafOptions","subFilterResults","Map","nonLeafOption","subFilters","resultSubFilters","set","size","value","subFilterSelection"],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useDependencies } from '@servicetitan/react-ioc';
|
|
2
2
|
import { CHATBOT_UI_STORE_TOKEN } from '../stores';
|
|
3
|
-
export const useCustomizationChatbot = ()
|
|
3
|
+
export const useCustomizationChatbot = ()=>{
|
|
4
4
|
const [chatbotUiStore] = useDependencies(CHATBOT_UI_STORE_TOKEN);
|
|
5
5
|
return chatbotUiStore.customizations;
|
|
6
6
|
};
|
|
7
|
+
|
|
7
8
|
//# sourceMappingURL=use-customization-chatbot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/hooks/use-customization-chatbot.tsx"],"sourcesContent":["import { useDependencies } from '@servicetitan/react-ioc';\nimport { CHATBOT_UI_STORE_TOKEN } from '../stores';\n\nexport const useCustomizationChatbot = () => {\n const [chatbotUiStore] = useDependencies(CHATBOT_UI_STORE_TOKEN);\n return chatbotUiStore.customizations;\n};\n"],"names":["useDependencies","CHATBOT_UI_STORE_TOKEN","useCustomizationChatbot","chatbotUiStore","customizations"],"mappings":"AAAA,SAASA,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,sBAAsB,QAAQ,YAAY;AAEnD,OAAO,MAAMC,0BAA0B;IACnC,MAAM,CAACC,eAAe,GAAGH,gBAAgBC;IACzC,OAAOE,eAAeC,cAAc;AACxC,EAAE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export * from './api-client';
|
|
2
2
|
export * from './stores';
|
|
3
|
-
export * from './models';
|
|
3
|
+
export type * from './models';
|
|
4
4
|
export * from './hooks/use-customization-chatbot';
|
|
5
5
|
export * as NativeClientHC from './api-client/help-center/native-client';
|
|
6
6
|
export * as NativeClientTC from './api-client/titan-chat/native-client';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,mBAAmB,UAAU,CAAC;AAC9B,cAAc,mCAAmC,CAAC;AAClD,OAAO,KAAK,cAAc,MAAM,wCAAwC,CAAC;AACzE,OAAO,KAAK,cAAc,MAAM,uCAAuC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
/* eslint-disable no-restricted-imports */
|
|
2
|
-
export * from './api-client';
|
|
1
|
+
/* eslint-disable no-restricted-imports */ export * from './api-client';
|
|
3
2
|
export * from './stores';
|
|
4
|
-
export * from './models';
|
|
5
3
|
export * from './hooks/use-customization-chatbot';
|
|
6
|
-
|
|
7
|
-
export
|
|
4
|
+
import * as _NativeClientHC from './api-client/help-center/native-client';
|
|
5
|
+
export { _NativeClientHC as NativeClientHC };
|
|
6
|
+
import * as _NativeClientTC from './api-client/titan-chat/native-client';
|
|
7
|
+
export { _NativeClientTC as NativeClientTC };
|
|
8
|
+
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["/* eslint-disable no-restricted-imports */\nexport * from './api-client';\nexport * from './stores';\nexport type * from './models';\nexport * from './hooks/use-customization-chatbot';\nexport * as NativeClientHC from './api-client/help-center/native-client';\nexport * as NativeClientTC from './api-client/titan-chat/native-client';\n"],"names":["NativeClientHC","NativeClientTC"],"mappings":"AAAA,wCAAwC,GACxC,cAAc,eAAe;AAC7B,cAAc,WAAW;AAEzB,cAAc,oCAAoC;AAClD,iCAAgC,yCAAyC;AAAzE,SAAO,mBAAKA,cAAc,GAA+C;AACzE,iCAAgC,wCAAwC;AAAxE,SAAO,mBAAKC,cAAc,GAA8C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/models/chatbot-customizations.ts"],"sourcesContent":["import { ChatCustomizations, ChatError } from '@servicetitan/titan-chat-ui-common';\n\n/**\n * Customization function to determine if a filter option should be selected by default.\n * @param filterKey - The key of the filter (e.g., 'Sources', 'ContentTypes', 'ProductAreas')\n * @param optionKey - The key of the option within the filter\n * @returns true if the option should be selected by default, false otherwise\n */\nexport type FilterDefaultSelectionFn = (filterKey: string, optionKey: string) => boolean;\n\nexport type ChatbotCustomizations = ChatCustomizations &\n Partial<{\n timeouts?: {\n chatbotRequestTimeoutMs?: number;\n };\n error?: {\n recover: (error?: ChatError) => Promise<void>;\n };\n feedback?: {\n title?: string;\n showGuardrailFeedback?: boolean;\n isCommentAlwaysRequired?: boolean;\n };\n filters?: {\n enabled?: boolean;\n position?: 'top' | 'bottom';\n /**\n * Function to determine if a filter option should be selected by default.\n * Called for each filter option during initialization.\n */\n isDefaultSelected?: FilterDefaultSelectionFn;\n };\n }>;\n"],"names":[],"mappings":"AAUA,WAsBO"}
|
package/dist/models/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './chatbot-customizations';
|
|
1
|
+
export type * from './chatbot-customizations';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,0BAA0B,CAAC"}
|
package/dist/models/index.js
CHANGED
package/dist/models/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/models/index.ts"],"sourcesContent":["export type * from './chatbot-customizations';\n"],"names":[],"mappings":"AAAA,WAA8C"}
|