@amityco/ts-sdk-react-native 6.26.1-c3b0164.0 → 6.26.1

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.
Files changed (25) hide show
  1. package/.env +26 -26
  2. package/dist/@types/core/payload.d.ts +1 -0
  3. package/dist/@types/core/payload.d.ts.map +1 -1
  4. package/dist/commentRepository/observers/getComments/CommentLiveCollectionController.d.ts +14 -0
  5. package/dist/commentRepository/observers/getComments/CommentLiveCollectionController.d.ts.map +1 -0
  6. package/dist/commentRepository/observers/getComments/CommentPaginationController.d.ts +5 -0
  7. package/dist/commentRepository/observers/getComments/CommentPaginationController.d.ts.map +1 -0
  8. package/dist/commentRepository/observers/getComments/CommentQueryStreamController.d.ts +15 -0
  9. package/dist/commentRepository/observers/getComments/CommentQueryStreamController.d.ts.map +1 -0
  10. package/dist/commentRepository/observers/getComments/enums.d.ts +10 -0
  11. package/dist/commentRepository/observers/getComments/enums.d.ts.map +1 -0
  12. package/dist/commentRepository/observers/getComments.d.ts.map +1 -1
  13. package/dist/commentRepository/utils/payload.d.ts +2 -0
  14. package/dist/commentRepository/utils/payload.d.ts.map +1 -0
  15. package/dist/index.cjs.js +158 -119
  16. package/dist/index.esm.js +158 -119
  17. package/dist/index.umd.js +3 -3
  18. package/package.json +1 -1
  19. package/src/@types/core/payload.ts +5 -0
  20. package/src/commentRepository/observers/getComments/CommentLiveCollectionController.ts +132 -0
  21. package/src/commentRepository/observers/getComments/CommentPaginationController.ts +25 -0
  22. package/src/commentRepository/observers/getComments/CommentQueryStreamController.ts +90 -0
  23. package/src/commentRepository/observers/getComments/enums.ts +9 -0
  24. package/src/commentRepository/observers/getComments.ts +5 -141
  25. package/src/commentRepository/utils/payload.ts +5 -0
package/dist/index.esm.js CHANGED
@@ -84,8 +84,8 @@ const PostContentType = Object.freeze({
84
84
 
85
85
  function getVersion() {
86
86
  try {
87
- // the string ''v6.26.0-esm'' should be replaced by actual value by @rollup/plugin-replace
88
- return 'v6.26.0-esm';
87
+ // the string ''v6.26.1-esm'' should be replaced by actual value by @rollup/plugin-replace
88
+ return 'v6.26.1-esm';
89
89
  }
90
90
  catch (error) {
91
91
  return '__dev__';
@@ -37776,48 +37776,160 @@ const getComment = (commentId, callback) => {
37776
37776
  };
37777
37777
  /* end_public_function */
37778
37778
 
37779
- const convertToInternalComment = (commentPayload) => {
37780
- const { comments } = commentPayload;
37781
- return Object.assign(Object.assign({}, commentPayload), { comments: comments.map(comment => {
37782
- if (comment.hasOwnProperty('myReactions'))
37783
- return comment;
37784
- // Sometimes `myReactions` field will not come with BE response because that field is empty
37785
- // We need to put it with an empty array manually to make it show up in client side
37786
- return Object.assign({ myReactions: [] }, comment);
37787
- }) });
37788
- };
37779
+ class CommentPaginationController extends PaginationController {
37780
+ async getRequest(queryParams, token) {
37781
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, includeDeleted } = queryParams, params = __rest(queryParams, ["limit", "includeDeleted"]);
37782
+ const options = token ? { token } : { limit };
37783
+ const { data: queryResponse } = await this.http.get(`/api/v3/comments`, {
37784
+ params: Object.assign(Object.assign({}, params), { isDeleted: inferIsDeleted(includeDeleted), options }),
37785
+ });
37786
+ return queryResponse;
37787
+ }
37788
+ }
37789
37789
 
37790
- const queryComments = async (query) => {
37791
- const client = getActiveClient();
37792
- client.log('comment/queryComments', query);
37793
- const { limit = 10, includeDeleted } = query, params = __rest(query, ["limit", "includeDeleted"]);
37794
- const options = {
37795
- type: params.sortBy || query.limit ? 'pagination' : undefined,
37796
- limit: query.limit,
37797
- token: query.page,
37798
- };
37799
- // const filterByParentId = query.parentId !== undefined
37800
- // API-FIX: parameters should be querystring. (1)
37801
- // API-FIX: backend should answer Amity.Response (2)
37802
- // const { data } = await client.http.get<Amity.Response<Amity.PagedResponse<Amity.CommentPayload>>>(
37803
- const { data } = await client.http.get(`/api/v3/comments`, {
37804
- params: Object.assign(Object.assign({}, params), { isDeleted: inferIsDeleted(includeDeleted),
37805
- // filterByParentId, API-FIX: backend does not support this boolean LOL. what the hell seriously.
37806
- options }),
37807
- });
37808
- // API-FIX: backend should answer Amity.Response (2)
37809
- // const { paging, comments } = unwrapPayload(data)
37810
- const { paging } = data, payload = __rest(data, ["paging"]);
37811
- const processedData = convertToInternalComment(payload);
37812
- const { comments } = processedData;
37813
- const cachedAt = client.cache && Date.now();
37814
- if (client.cache) {
37815
- ingestInCache(processedData, { cachedAt });
37816
- const cacheKey = ['comment', 'query', Object.assign(Object.assign({}, params), { options: { limit } })];
37817
- pushToCache(cacheKey, { comments: comments.map(getResolver('comment')), paging });
37790
+ var EnumCommentActions;
37791
+ (function (EnumCommentActions) {
37792
+ EnumCommentActions["OnCommentCreated"] = "onCommentCreated";
37793
+ EnumCommentActions["OnCommentUpdated"] = "onCommentUpdated";
37794
+ EnumCommentActions["OnCommentDeleted"] = "onCommentDeleted";
37795
+ EnumCommentActions["OnCommentFlagged"] = "onCommentFlagged";
37796
+ EnumCommentActions["OnCommentUnflagged"] = "onCommentUnflagged";
37797
+ EnumCommentActions["OnCommentReactionAdded"] = "onCommentReactionAdded";
37798
+ EnumCommentActions["OnCommentReactionRemoved"] = "onCommentReactionRemoved";
37799
+ })(EnumCommentActions || (EnumCommentActions = {}));
37800
+
37801
+ class CommentQueryStreamController extends QueryStreamController {
37802
+ constructor(query, cacheKey, notifyChange, preparePayload) {
37803
+ super(query, cacheKey);
37804
+ this.notifyChange = notifyChange;
37805
+ this.preparePayload = preparePayload;
37818
37806
  }
37819
- return { data: comments, cachedAt, paging };
37820
- };
37807
+ async saveToMainDB(response) {
37808
+ const processedPayload = await this.preparePayload(response);
37809
+ const client = getActiveClient();
37810
+ const cachedAt = client.cache && Date.now();
37811
+ if (client.cache) {
37812
+ ingestInCache(processedPayload, { cachedAt });
37813
+ }
37814
+ }
37815
+ appendToQueryStream(response, direction, refresh = false) {
37816
+ var _a, _b;
37817
+ if (refresh) {
37818
+ pushToCache(this.cacheKey, {
37819
+ data: response.comments.map(getResolver('comment')),
37820
+ });
37821
+ }
37822
+ else {
37823
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37824
+ const comments = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
37825
+ pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...comments, ...response.comments.map(getResolver('comment'))])] }));
37826
+ }
37827
+ }
37828
+ reactor(action) {
37829
+ return (comment) => {
37830
+ var _a;
37831
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37832
+ if (this.query.referenceId !== comment.referenceId ||
37833
+ this.query.referenceType !== comment.referenceType ||
37834
+ !collection) {
37835
+ return;
37836
+ }
37837
+ if (action === EnumCommentActions.OnCommentCreated) {
37838
+ collection.data = [...new Set([comment.commentId, ...collection.data])];
37839
+ }
37840
+ else if (action === EnumCommentActions.OnCommentDeleted) {
37841
+ collection.data = collection.data.filter(p => p !== comment.commentId);
37842
+ }
37843
+ pushToCache(this.cacheKey, collection);
37844
+ this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
37845
+ };
37846
+ }
37847
+ subscribeRTE(createSubscriber) {
37848
+ return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
37849
+ }
37850
+ }
37851
+
37852
+ function prepareCommentPayload(comment) {
37853
+ return comment;
37854
+ }
37855
+
37856
+ class CommentLiveCollectionController extends LiveCollectionController {
37857
+ constructor(query, callback) {
37858
+ const queryStreamId = hash(query);
37859
+ const cacheKey = ['comments', 'collection', queryStreamId];
37860
+ const paginationController = new CommentPaginationController(query);
37861
+ super(paginationController, queryStreamId, cacheKey, callback);
37862
+ this.query = query;
37863
+ this.queryStreamController = new CommentQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), prepareCommentPayload);
37864
+ this.callback = callback.bind(this);
37865
+ this.loadPage({ initial: true });
37866
+ }
37867
+ setup() {
37868
+ var _a;
37869
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37870
+ if (!collection) {
37871
+ pushToCache(this.cacheKey, {
37872
+ data: [],
37873
+ params: {},
37874
+ });
37875
+ }
37876
+ }
37877
+ async persistModel(queryPayload) {
37878
+ await this.queryStreamController.saveToMainDB(queryPayload);
37879
+ }
37880
+ persistQueryStream({ response, direction, refresh, }) {
37881
+ this.queryStreamController.appendToQueryStream(response, direction, refresh);
37882
+ }
37883
+ startSubscription() {
37884
+ return this.queryStreamController.subscribeRTE([
37885
+ { fn: onCommentCreated, action: EnumCommentActions.OnCommentCreated },
37886
+ { fn: onCommentUpdated, action: EnumCommentActions.OnCommentUpdated },
37887
+ { fn: onCommentDeleted, action: EnumCommentActions.OnCommentDeleted },
37888
+ { fn: onCommentFlagged, action: EnumCommentActions.OnCommentFlagged },
37889
+ { fn: onCommentUnflagged, action: EnumCommentActions.OnCommentUnflagged },
37890
+ { fn: onCommentReactionAdded, action: EnumCommentActions.OnCommentReactionAdded },
37891
+ { fn: onCommentReactionRemoved, action: EnumCommentActions.OnCommentReactionRemoved },
37892
+ ]);
37893
+ }
37894
+ notifyChange({ origin, loading, error }) {
37895
+ var _a, _b;
37896
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37897
+ if (!collection)
37898
+ return;
37899
+ const data = this.applyFilter((_b = collection.data
37900
+ .map(id => pullFromCache(['comments', 'get', id]))
37901
+ .filter(isNonNullable)
37902
+ .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.comment);
37903
+ if (!this.shouldNotify(data) && origin === 'event')
37904
+ return;
37905
+ this.callback({
37906
+ onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
37907
+ data,
37908
+ hasNextPage: !!this.paginationController.getNextToken(),
37909
+ loading,
37910
+ error,
37911
+ });
37912
+ }
37913
+ applyFilter(data) {
37914
+ let comments = data;
37915
+ if (this.query.includeDeleted) {
37916
+ comments = filterByPropEquality(comments, 'isDeleted', false);
37917
+ }
37918
+ if (this.query.parentId) {
37919
+ comments = comments.filter(comment => comment.parentId === this.query.parentId);
37920
+ }
37921
+ switch (this.query.sortBy) {
37922
+ case 'firstCreated':
37923
+ comments = comments.sort(sortByFirstCreated);
37924
+ break;
37925
+ case 'lastCreated':
37926
+ default:
37927
+ comments = comments.sort(sortByLastCreated);
37928
+ break;
37929
+ }
37930
+ return comments;
37931
+ }
37932
+ }
37821
37933
 
37822
37934
  /* begin_public_function
37823
37935
  id: comment.query
@@ -37849,82 +37961,9 @@ const getComments = (params, callback, config) => {
37849
37961
  }
37850
37962
  const timestamp = Date.now();
37851
37963
  log(`getComments(tmpid: ${timestamp}) > listen`);
37852
- const { limit: queryLimit } = params, queryParams = __rest(params, ["limit"]);
37853
- const { policy = COLLECTION_DEFAULT_CACHING_POLICY } = config !== null && config !== void 0 ? config : {};
37854
- const disposers = [];
37855
- const sortBy = params.sortBy ? params.sortBy : 'lastCreated';
37856
- const cacheKey = [
37857
- 'comment',
37858
- 'collection',
37859
- {
37860
- referenceId: params.referenceType,
37861
- referenceType: params.referenceId,
37862
- parentId: (params === null || params === void 0 ? void 0 : params.parentId) || '',
37863
- sortBy,
37864
- },
37865
- ];
37866
- const responder = (data) => {
37867
- var _a, _b;
37868
- let comments = (_a = data.data
37869
- .map(commentId => pullFromCache(['comment', 'get', commentId]))
37870
- .filter(({ data }) => data.parentId === (params === null || params === void 0 ? void 0 : params.parentId))
37871
- .filter(Boolean)
37872
- .map(({ data }) => LinkedObject.comment(data))) !== null && _a !== void 0 ? _a : [];
37873
- if (!params.includeDeleted) {
37874
- comments = filterByPropEquality(comments, 'isDeleted', false);
37875
- }
37876
- comments = comments.sort(sortBy === 'lastCreated' ? sortByLastCreated : sortByFirstCreated);
37877
- callback({
37878
- onNextPage: onFetch,
37879
- data: comments,
37880
- hasNextPage: !!((_b = data.params) === null || _b === void 0 ? void 0 : _b.page),
37881
- loading: data.loading,
37882
- error: data.error,
37883
- });
37884
- };
37885
- const realtimeRouter = (action) => (comment) => {
37886
- var _a;
37887
- const collection = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37888
- if (params.referenceId !== comment.referenceId ||
37889
- params.referenceType !== comment.referenceType ||
37890
- !collection) {
37891
- return;
37892
- }
37893
- if (action === 'onCreate') {
37894
- collection.data = [...new Set([comment.commentId, ...collection.data])];
37895
- }
37896
- else if (action === 'onDelete') {
37897
- collection.data = collection.data.filter(p => p !== comment.commentId);
37898
- }
37899
- pushToCache(cacheKey, collection);
37900
- responder(collection);
37901
- };
37902
- const onFetch = (initial = false) => {
37903
- var _a, _b, _c;
37904
- const collection = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37905
- const comments = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
37906
- if (!initial && comments.length > 0 && !((_c = collection === null || collection === void 0 ? void 0 : collection.params) === null || _c === void 0 ? void 0 : _c.page))
37907
- return;
37908
- const query = createQuery(queryComments, Object.assign(Object.assign({}, queryParams), { limit: queryLimit, page: !initial ? collection === null || collection === void 0 ? void 0 : collection.params.page : undefined }));
37909
- runQuery(query, ({ data: result, error, loading, paging }) => {
37910
- const page = paging === null || paging === void 0 ? void 0 : paging.next;
37911
- const data = {
37912
- loading,
37913
- error,
37914
- params: { page },
37915
- data: comments,
37916
- };
37917
- if (result) {
37918
- data.data = initial
37919
- ? result.map(getResolver('comment')) // Replace a collection list with new data from BE
37920
- : [...new Set([...comments, ...result.map(getResolver('comment'))])];
37921
- }
37922
- pushToCache(cacheKey, data);
37923
- responder(data);
37924
- }, queryOptions(policy, CACHE_SHORTEN_LIFESPAN));
37925
- };
37926
- disposers.push(onCommentCreated(realtimeRouter('onCreate')), onCommentUpdated(realtimeRouter('onUpdate')), onCommentDeleted(realtimeRouter('onDelete')), onCommentFlagged(realtimeRouter('onFlagged')), onCommentUnflagged(realtimeRouter('onUnflagged')), onCommentReactionAdded(realtimeRouter('onReactionAdded')), onCommentReactionRemoved(realtimeRouter('onReactionRemoved')));
37927
- onFetch(true);
37964
+ const commentsLiveCollection = new CommentLiveCollectionController(params, callback);
37965
+ const disposers = commentsLiveCollection.startSubscription();
37966
+ const cacheKey = commentsLiveCollection.getCacheKey();
37928
37967
  disposers.push(() => dropFromCache(cacheKey));
37929
37968
  return () => {
37930
37969
  log(`getComments(tmpid: ${timestamp}) > dispose`);
@@ -39161,7 +39200,7 @@ var index$3 = /*#__PURE__*/Object.freeze({
39161
39200
  getPoll: getPoll
39162
39201
  });
39163
39202
 
39164
- const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAARz+hmBgi8pJ\nQb8LeY41gtHhk+ACMwRfhsn7GqpqRQNG2qU0755mzZuVDUqjQMGSo8THJB7O+OJs\nflbZRkFXlFoFOVNw1UpNOgwEQZ6wB9oRwzepTJAfF1sVhm/o/ixvXh1zDFNDy6yZ\npXyiiJHUVxqyjllZhxnwdvjoVtDs6hW6awG09bB9nh/TTejlUKXoAgzqVwu/1QMu\nUVViET495elEe19aUarEy+oL2iKeXCEvqda/pWNBdbieFyJvvZ08HN8dPuT88wq2\njZLEAth1vrwQ2IAa4ktaLcBQdLJgIkrbDvAiVZ8lQAjS/bq5vXQikTGvoPlC5bbn\nvuOM/3eLAgMBAAECggEAVZ+peHAghq2QVj71nX5lxsNCKaCyYwixSJBpfouTt7Rz\nE6PpzMOXFi1W1o+I22jDakuSM2SOQKqI/u0QefB0r0O/KVk5NrZHXk0mkrdYtxOp\nUgaGyf8UvmjB+8VqHrNKyZdk9qtmbnNj01kTTcAtmE4H39zPR7eR/8Rul94vaZbs\nwCnKJS3mLT3JxyGug6lxanveKkjG+CKC1nJQYWaxCJxaFSzbwXQPvDhB+TvrIbee\npd5v4EAyEJohpr+T9oDGGJkb/KARBZCtwLyB976PKJwwBA8MRVL1i5QwawuMiMq5\nUtnOnbGKtCeFzaLbNU0Qi8bqyims84EQxC6DOu1fkQKBgQDdvsoBsEhsOXV7hlIJ\naEd0eSJZVkdqimxH8uGoMM2FeNaOrcB6yBXqTSP0R3OIyf8eaY6yjRvP30ZNXcll\n/gD3O1Mu6YmWQdt1W2WA6pKOsUuPXasf0pdOF7IiFZKlSabz5YHXFqwVuqm8loaj\nsXel3YWqPVdHiankE7tz+3ssnQKBgQDdqi4TNdD1MdEpihx19jr0QjUiXW3939FK\nqp30HESPEGDGQzXdmJgif9HhZb+cJSuWaHEbjgBrYahvgCF+y6LbEpOD+D/dmT+s\nDEAQaR84sah6dokwPjV8fjBSrcVFjCS+doxv0d3p/9OUEeyUhFrY03nxtIEYkLIE\n/Zvn37b4RwKBgQCLENVFe9XfsaVhQ5r9dV2iyTlmh7qgMZG5CbTFs12hQGhm8McO\n+Z7s41YSJCFr/yq1WwP4LJDtrBw99vyQr1zRsG35tNLp3gGRNzGQSQyC2uQFVHw2\np+7mNewsfhUK/gbrXNsyFnDz6635rPlhfbII3sWuP2wWXFqkxE9CbMwR7QKBgQC6\nawDMzxmo2/iYArrkyevSuEuPVxvFwpF1RgAI6C0QVCnPE38dmdN4UB7mfHekje4W\nVEercMURidPp0cxZolCYBQtilUjAyL0vqC3In1/Ogjq6oy3FEMxSop1pKxMY5j+Q\nnoqFD+6deLUrddeNH7J3X4LSr4dSbX4JjG+tlgt+yQKBgQCuwTL4hA6KqeInQ0Ta\n9VQX5Qr8hFlqJz1gpymi/k63tW/Ob8yedbg3WWNWyShwRMFYyY9S81ITFWM95uL6\nvF3x9rmRjwElJw9PMwVu6dmf/CO0Z1wzXSp2VVD12gbrUD/0/d7MUoJ9LgC8X8f/\nn0txLHYGHbx+nf95+JUg6lV3hg==\n-----END PRIVATE KEY-----";
39203
+ const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHo80SecH7FuF2\nhFYnb+l26/VN8UMLXAQFLnxciNTEwkGVFMpdezlH8rU2HtUJL4RETogbAOLVY0XM\njs6sPn8G1nALmh9qeDpUtVqFOVtBHxEZ910TLOtQiunjqJKO5nWdqZ71EC3OFluR\niGQkO84BiIFbv37ub7xl3S8XarbtKoLcyVpkDHi+1wx1pgCAn6gtBUgckPL5NR8j\nLseabl3HAXQfhTCKo4tmOFM2Dxwl1IUMmIJrJg/aIU/U0tj/1Eoo7mG0JcNWX19l\nW3EecCbi0ncCJOrkUdwlBrcjaMayaX/ubEwyUeTGiLdyc4L3GRLHjyK8xgVNXRMH\nbZWJ2a5NAgMBAAECggEASxuE+35zTFO/XydKgmvIGcWL9FbgMlXb7Vcf0nBoG945\nbiz0NVc2paraIhJXc608xbYF3qLmtAE1MVBI0ORyRdBHNxY024l/6H6SH60Ed+uI\nM4ysp5ourY6Vj+DLwpdRiI9YDjqYAQDIUmhNxJP7XPhOMoZI6st+xZQBM34ic/bv\nAMSJm9OZphSp3+qXVkFZztr2mxD2EZSJJLYxi8BCdgM2qhazalbcJ6zDKHCZWVWm\n8RRxDGldyMb/237JxETzP40tAlzOZDmBAbUgEnurDJ93RVDIE3rbZUshwgeQd18a\nem096mWgvB1AIKYgsTAR3pw+V19YWAjq/glP6fz8wQKBgQD/oQq+ukKF0PRgBeM5\ngeTjSwsdGppQLmf5ndujvoiz/TpdjDEPu6R8kigQr1rG2t4K/yfdZoI8RdmJD1al\n3Q7N9hofooSy4rj6E3txzWZCHJjHad2cnCp/O26HiReGAl7wTcfTmNdiFHhZQzm5\nJBkvWAiwuvQMNfEbnXxw6/vIDwKBgQDH7fX8gsc77JLvAWgp1MaQN/sbqVb6JeT1\nFQfR8E/WFCSmzQBtNzd5KgYuCeelwr/8DyYytvN2BzCYZXp73gI1jF3YlW5jVn74\nOY6TwQ095digwo6Z0yuxopdIOApKgAkL9PRKgNrqAf3NAyMua6lOGifzjDojC3KU\nfylQmxMn4wKBgHp2B9O/H0dEBw5JQ8W0+JX6yWQz7mEjGiR2/1W+XXb8hQ1zr709\nw1r6Gb+EghRpnZ3fBpYGGbYOMFx8wKHM+N6qW3F0ReX8v2juFGE8aRSa5oYBrWzt\nU16Idjbv8hj84cZ1PJmdyvDtpYn9rpWHOZl4rxEbPvbqkIsOMyNVqdT5AoGAOSge\nmwIIU2le2FVeohbibXiToWTYKMuMmURZ5/r72AgKMmWJKbAPe+Q3wBG01/7FRBpQ\noU8Ma0HC8s6QJbliiEyIx9JwrJWd1vkdecBHONrtA4ibm/5zD2WcOllLF+FitLhi\n3qnX6+6F0IaFGFBPJrTzlv0P4dTz/OAdv52V7GECgYEA2TttOKBAqWllgOaZOkql\nLVMJVmgR7s6tLi1+cEP8ZcapV9aRbRzTAKXm4f8AEhtlG9F9kCOvHYCYGi6JaiWJ\nZkHjeex3T+eE6Di6y5Bm/Ift5jtVhJ4jCVwHOKTMej79NPUFTJfv8hCo29haBDv6\nRXFrv+T21KCcw8k3sJeJWWQ=\n-----END PRIVATE KEY-----";
39165
39204
  /*
39166
39205
  * The crypto algorithm used for importing key and signing string
39167
39206
  */