@zohoim/client-sdk 1.0.0-canned09 → 1.0.0-canned10

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.
@@ -7,10 +7,11 @@ function addTranslationRequest() {
7
7
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8
8
  return new RequestBuilder().withParams({
9
9
  cannedMessageId: null,
10
- translationId: null,
11
10
  ...params
12
11
  }).withBody({
13
12
  message: null,
13
+ language: null,
14
+ templateItems: {},
14
15
  ...body
15
16
  }).build();
16
17
  }
@@ -1,10 +1,7 @@
1
1
  import RequestBuilder from '../RequestBuilder';
2
2
 
3
3
  function getCannedPlaceholdersRequest() {
4
- let {
5
- params = {}
6
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7
- return new RequestBuilder().withParams(params).build();
4
+ return new RequestBuilder().build();
8
5
  }
9
6
 
10
7
  export default getCannedPlaceholdersRequest;
@@ -11,6 +11,8 @@ function updateTranslationRequest() {
11
11
  ...params
12
12
  }).withBody({
13
13
  message: null,
14
+ language: null,
15
+ templateItems: {},
14
16
  ...body
15
17
  }).build();
16
18
  }
@@ -1,5 +1,5 @@
1
1
  import { validateSchema } from '../../../core/utils';
2
- import TranslationsSchema from '../../schema/cannedMessage/TranslationsSchema';
2
+ import { TranslationsSchema } from '../../schema';
3
3
  import { TemplateItemButton, TemplateItemHeader, TemplateItemFooter } from '../TemplateMessage';
4
4
  export default class Translation {
5
5
  constructor() {
@@ -0,0 +1,21 @@
1
+ import { validateSchema } from '../../../core/utils';
2
+ import { TemplateTagsSchema } from '../../schema';
3
+ export default class TemplateTags {
4
+ constructor() {
5
+ let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6
+ const validatedData = validateSchema({
7
+ schema: TemplateTagsSchema,
8
+ data,
9
+ entityName: 'TemplateTags'
10
+ });
11
+ this.data = {
12
+ tags: validatedData.tags
13
+ };
14
+ }
15
+
16
+ toJSON() {
17
+ return { ...this.data
18
+ };
19
+ }
20
+
21
+ }
@@ -1,6 +1,7 @@
1
1
  import TemplateLanguage from './TemplateLanguage';
2
2
  import TemplateCreditExhaustStatus from './TemplateCreditExhaustStatus';
3
+ import TemplateTags from './TemplateTags';
3
4
  import TemplateItemButton from './TemplateItemButton';
4
5
  import TemplateItemHeader from './TemplateItemHeader';
5
6
  import TemplateItemFooter from './TemplateItemFooter';
6
- export { TemplateLanguage, TemplateCreditExhaustStatus, TemplateItemButton, TemplateItemHeader, TemplateItemFooter };
7
+ export { TemplateLanguage, TemplateCreditExhaustStatus, TemplateTags, TemplateItemButton, TemplateItemHeader, TemplateItemFooter };
@@ -0,0 +1,7 @@
1
+ const TemplateTagsSchema = {
2
+ tags: {
3
+ type: 'array',
4
+ required: true
5
+ }
6
+ };
7
+ export default TemplateTagsSchema;
@@ -1,3 +1,4 @@
1
1
  import TemplateLanguageSchema from './TemplateLanguageSchema';
2
2
  import TemplateCreditExhaustStatusSchema from './TemplateCreditExhaustStatusSchema';
3
- export { TemplateLanguageSchema, TemplateCreditExhaustStatusSchema };
3
+ import TemplateTagsSchema from './TemplateTagsSchema';
4
+ export { TemplateLanguageSchema, TemplateCreditExhaustStatusSchema, TemplateTagsSchema };
@@ -1,5 +1,5 @@
1
1
  import { AdapterError } from '../../../core/errors';
2
- import { CannedMessage, Translation } from '../../../domain/entities';
2
+ import { CannedMessage } from '../../../domain/entities';
3
3
  import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class CannedMessageAdapter extends IAdapter {
5
5
  adapt(cannedMessageData) {
@@ -8,7 +8,6 @@ export default class CannedMessageAdapter extends IAdapter {
8
8
  }
9
9
 
10
10
  try {
11
- const translations = Array.isArray(cannedMessageData.translations) ? cannedMessageData.translations.map(translation => new Translation(translation).toJSON()) : cannedMessageData.translations;
12
11
  return new CannedMessage({
13
12
  id: cannedMessageData.id,
14
13
  title: cannedMessageData.title,
@@ -20,7 +19,7 @@ export default class CannedMessageAdapter extends IAdapter {
20
19
  createdBy: cannedMessageData.createdBy,
21
20
  isActive: cannedMessageData.isActive,
22
21
  isPrivate: cannedMessageData.isPrivate,
23
- translations,
22
+ translations: cannedMessageData.translations,
24
23
  uuid: cannedMessageData.uuid,
25
24
  meta: cannedMessageData.meta,
26
25
  rejectedReason: cannedMessageData.rejectedReason,
@@ -1,5 +1,5 @@
1
1
  import { AdapterError } from '../../../core/errors';
2
- import { Placeholder } from '../../../domain/entities/Placeholder';
2
+ import { Placeholder } from '../../../domain/entities';
3
3
  import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class PlaceholderAdapter extends IAdapter {
5
5
  adapt(placeholderData) {
@@ -0,0 +1,19 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { TemplateTags } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class TemplateTagsAdapter extends IAdapter {
5
+ adapt(templateTagsData) {
6
+ if (!templateTagsData) {
7
+ throw new AdapterError('templateTags data is required');
8
+ }
9
+
10
+ try {
11
+ return new TemplateTags({
12
+ tags: templateTagsData.tags
13
+ }).toJSON();
14
+ } catch (error) {
15
+ throw new AdapterError(`Failed to adapt TemplateTags: ${error.message}`);
16
+ }
17
+ }
18
+
19
+ }
@@ -1,3 +1,4 @@
1
1
  import TemplateLanguageAdapter from './TemplateLanguageAdapter';
2
2
  import TemplateCreditExhaustStatusAdapter from './TemplateCreditExhaustStatusAdapter';
3
- export { TemplateLanguageAdapter, TemplateCreditExhaustStatusAdapter };
3
+ import TemplateTagsAdapter from './TemplateTagsAdapter';
4
+ export { TemplateLanguageAdapter, TemplateCreditExhaustStatusAdapter, TemplateTagsAdapter };
@@ -1,5 +1,5 @@
1
1
  import { ITemplateMessageRepository } from '../../../domain/interfaces/repositories';
2
- import { TemplateLanguageAdapter, TemplateCreditExhaustStatusAdapter } from '../../adapters';
2
+ import { TemplateLanguageAdapter, TemplateCreditExhaustStatusAdapter, TemplateTagsAdapter } from '../../adapters';
3
3
  import { TemplateMessageAPI } from '../../api';
4
4
  import { ResponseTypes } from '../../../core/constants';
5
5
  export default class TemplateMessageRepository extends ITemplateMessageRepository {
@@ -7,7 +7,8 @@ export default class TemplateMessageRepository extends ITemplateMessageRepositor
7
7
  let {
8
8
  templateMessageAPI,
9
9
  templateLanguageAdapter,
10
- templateCreditExhaustStatusAdapter
10
+ templateCreditExhaustStatusAdapter,
11
+ templateTagsAdapter
11
12
  } = _ref;
12
13
  super();
13
14
  this.defaultAPI = new TemplateMessageAPI();
@@ -15,6 +16,7 @@ export default class TemplateMessageRepository extends ITemplateMessageRepositor
15
16
  this.templateMessageAPI = this.createAPIProxy(this.customAPI, this.defaultAPI);
16
17
  this.templateLanguageAdapter = templateLanguageAdapter || new TemplateLanguageAdapter();
17
18
  this.templateCreditExhaustStatusAdapter = templateCreditExhaustStatusAdapter || new TemplateCreditExhaustStatusAdapter();
19
+ this.templateTagsAdapter = templateTagsAdapter || new TemplateTagsAdapter();
18
20
  }
19
21
 
20
22
  async invokeTemplateLanguageAPI(_ref2) {
@@ -71,7 +73,8 @@ export default class TemplateMessageRepository extends ITemplateMessageRepositor
71
73
  return this.invokeTemplateLanguageAPI({
72
74
  operation: 'getTemplateTags',
73
75
  request,
74
- adapter: null
76
+ adapter: this.templateTagsAdapter,
77
+ responseType: ResponseTypes.LIST
75
78
  });
76
79
  }
77
80
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohoim/client-sdk",
3
- "version": "1.0.0-canned09",
3
+ "version": "1.0.0-canned10",
4
4
  "description": "To have the client sdk for the IM",
5
5
  "main": "es/index.js",
6
6
  "module": "es/index.js",