name-password-strategy-option.js 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. /**
  2. * @fileoverview added by tsickle
  3. * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
  4. */
  5. import * as tslib_1 from "tslib";
  6. import { NbAuthStrategyOptions } from '@nebular/auth';
  7. import { getDeepFromObject } from '../helper';
  8. /**
  9. * @record
  10. */
  11. export function NamePasswordStrategyModule() { }
  12. if (false) {
  13. /** @type {?|undefined} */
  14. NamePasswordStrategyModule.prototype.alwaysFail;
  15. /** @type {?|undefined} */
  16. NamePasswordStrategyModule.prototype.endpoint;
  17. /** @type {?|undefined} */
  18. NamePasswordStrategyModule.prototype.method;
  19. /** @type {?|undefined} */
  20. NamePasswordStrategyModule.prototype.redirect;
  21. /** @type {?|undefined} */
  22. NamePasswordStrategyModule.prototype.defaultErrors;
  23. /** @type {?|undefined} */
  24. NamePasswordStrategyModule.prototype.defaultMessages;
  25. }
  26. /**
  27. * @record
  28. */
  29. export function NamePasswordStrategySuccess() { }
  30. if (false) {
  31. /** @type {?|undefined} */
  32. NamePasswordStrategySuccess.prototype.key;
  33. /** @type {?|undefined} */
  34. NamePasswordStrategySuccess.prototype.getter;
  35. }
  36. /**
  37. * @record
  38. */
  39. export function NamePasswordStrategyMessage() { }
  40. if (false) {
  41. /** @type {?|undefined} */
  42. NamePasswordStrategyMessage.prototype.key;
  43. /** @type {?|undefined} */
  44. NamePasswordStrategyMessage.prototype.getter;
  45. }
  46. var NamePasswordAuthStrategyOptions = /** @class */ (function (_super) {
  47. tslib_1.__extends(NamePasswordAuthStrategyOptions, _super);
  48. function NamePasswordAuthStrategyOptions() {
  49. var _this = _super !== null && _super.apply(this, arguments) || this;
  50. _this.baseEndpoint = '/api/auth/';
  51. _this.getPublicKey = {
  52. endpoint: 'getPublicKey',
  53. method: 'get'
  54. };
  55. _this.login = {
  56. alwaysFail: false,
  57. endpoint: 'login',
  58. method: 'post',
  59. redirect: {
  60. success: '/',
  61. failure: null
  62. },
  63. defaultErrors: ['未知错误!'],
  64. defaultMessages: ['You have been successfully logged in.']
  65. };
  66. _this.createUser = {
  67. endpoint: 'createUser',
  68. method: 'post',
  69. defaultErrors: ['未知错误!']
  70. };
  71. _this.updatePasswordForAdmin = {
  72. endpoint: 'updatePasswordForAdmin',
  73. method: 'patch',
  74. defaultErrors: ['未知错误!']
  75. };
  76. _this.register = {
  77. alwaysFail: false,
  78. endpoint: 'register',
  79. method: 'post',
  80. redirect: {
  81. success: '/',
  82. failure: null
  83. },
  84. defaultErrors: ['Something went wrong, please try again.'],
  85. defaultMessages: ['You have been successfully registered.']
  86. };
  87. _this.requestPass = {
  88. endpoint: 'request-pass',
  89. method: 'post',
  90. redirect: {
  91. success: '/',
  92. failure: null
  93. },
  94. defaultErrors: ['Something went wrong, please try again.'],
  95. defaultMessages: ['Reset password instructions have been sent to your email.']
  96. };
  97. _this.resetPass = {
  98. endpoint: 'updateUserPassword',
  99. method: 'patch',
  100. redirect: {
  101. success: '/',
  102. failure: null
  103. },
  104. defaultErrors: ['未知错误.'],
  105. defaultMessages: ['Your password has been successfully changed.']
  106. };
  107. _this.logout = {
  108. alwaysFail: false,
  109. endpoint: 'logout',
  110. method: 'delete',
  111. redirect: {
  112. success: '/',
  113. failure: null
  114. },
  115. defaultErrors: ['Something went wrong, please try again.'],
  116. defaultMessages: ['You have been successfully logged out.']
  117. };
  118. _this.errors = {
  119. key: 'messager',
  120. getter: (/**
  121. * @param {?} module
  122. * @param {?} res
  123. * @param {?} options
  124. * @return {?}
  125. */
  126. function (module, res, options) { return [
  127. getDeepFromObject(res.error, options.errors.key, options[module].defaultErrors)
  128. ]; })
  129. };
  130. _this.messages = {
  131. key: 'messager',
  132. getter: (/**
  133. * @param {?} module
  134. * @param {?} res
  135. * @param {?} options
  136. * @return {?}
  137. */
  138. function (module, res, options) { return [getDeepFromObject(res.body, options.messages.key, false)]; })
  139. };
  140. _this.success = {
  141. key: 'success',
  142. getter: (/**
  143. * @param {?} module
  144. * @param {?} res
  145. * @param {?} options
  146. * @return {?}
  147. */
  148. function (module, res, options) {
  149. return getDeepFromObject(res.body, options.success.key, options[module].defaultMessages);
  150. })
  151. };
  152. return _this;
  153. }
  154. return NamePasswordAuthStrategyOptions;
  155. }(NbAuthStrategyOptions));
  156. export { NamePasswordAuthStrategyOptions };
  157. if (false) {
  158. /** @type {?} */
  159. NamePasswordAuthStrategyOptions.prototype.baseEndpoint;
  160. /** @type {?} */
  161. NamePasswordAuthStrategyOptions.prototype.getPublicKey;
  162. /** @type {?} */
  163. NamePasswordAuthStrategyOptions.prototype.login;
  164. /** @type {?} */
  165. NamePasswordAuthStrategyOptions.prototype.createUser;
  166. /** @type {?} */
  167. NamePasswordAuthStrategyOptions.prototype.updatePasswordForAdmin;
  168. /** @type {?} */
  169. NamePasswordAuthStrategyOptions.prototype.register;
  170. /** @type {?} */
  171. NamePasswordAuthStrategyOptions.prototype.requestPass;
  172. /** @type {?} */
  173. NamePasswordAuthStrategyOptions.prototype.resetPass;
  174. /** @type {?} */
  175. NamePasswordAuthStrategyOptions.prototype.logout;
  176. /** @type {?} */
  177. NamePasswordAuthStrategyOptions.prototype.errors;
  178. /** @type {?} */
  179. NamePasswordAuthStrategyOptions.prototype.messages;
  180. /** @type {?} */
  181. NamePasswordAuthStrategyOptions.prototype.success;
  182. /** @type {?} */
  183. NamePasswordAuthStrategyOptions.prototype.validation;
  184. }
  185. /** @type {?} */
  186. export var namePasswordStrategyOptions = new NamePasswordAuthStrategyOptions();
  187. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZS1wYXNzd29yZC1zdHJhdGVneS1vcHRpb24uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9nZS1hZG1pbi1hdXRoLyIsInNvdXJjZXMiOlsibGliL3N0cmF0ZWd5L25hbWUtcGFzc3dvcmQtc3RyYXRlZ3ktb3B0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztBQUU5QyxnREFVQzs7O0lBVEMsZ0RBQXFCOztJQUNyQiw4Q0FBa0I7O0lBQ2xCLDRDQUFnQjs7SUFDaEIsOENBR0U7O0lBQ0YsbURBQXlCOztJQUN6QixxREFBMkI7Ozs7O0FBRzdCLGlEQUdDOzs7SUFGQywwQ0FBYTs7SUFDYiw2Q0FBa0I7Ozs7O0FBR3BCLGlEQUdDOzs7SUFGQywwQ0FBYTs7SUFDYiw2Q0FBa0I7O0FBR3BCO0lBQXFELDJEQUFxQjtJQUExRTtRQUFBLHFFQXNHQztRQXJHQyxrQkFBWSxHQUFTLFlBQVksQ0FBQztRQUNsQyxrQkFBWSxHQUEwQztZQUNwRCxRQUFRLEVBQUUsY0FBYztZQUN4QixNQUFNLEVBQUUsS0FBSztTQUNkLENBQUM7UUFDRixXQUFLLEdBQTBDO1lBQzdDLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxHQUFHO2dCQUNaLE9BQU8sRUFBRSxJQUFJO2FBQ2Q7WUFDRCxhQUFhLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDeEIsZUFBZSxFQUFFLENBQUMsdUNBQXVDLENBQUM7U0FDM0QsQ0FBQztRQUNGLGdCQUFVLEdBQTBDO1lBQ2xELFFBQVEsRUFBRSxZQUFZO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsYUFBYSxFQUFFLENBQUMsT0FBTyxDQUFDO1NBQ3pCLENBQUM7UUFDRiw0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REFJRTs7SUFDRixxREFhRTs7O0FBR0osTUFBTSxLQUFPLDJCQUEyQixHQUFvQyxJQUFJLCtCQUErQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UsIEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgTmJBdXRoU3RyYXRlZ3lPcHRpb25zIH0gZnJvbSAnQG5lYnVsYXIvYXV0aCc7XHJcbmltcG9ydCB7IGdldERlZXBGcm9tT2JqZWN0IH0gZnJvbSAnLi4vaGVscGVyJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUge1xyXG4gIGFsd2F5c0ZhaWw/OiBib29sZWFuO1xyXG4gIGVuZHBvaW50Pzogc3RyaW5nO1xyXG4gIG1ldGhvZD86IHN0cmluZztcclxuICByZWRpcmVjdD86IHtcclxuICAgIHN1Y2Nlc3M/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgZmFpbHVyZT86IHN0cmluZyB8IG51bGw7XHJcbiAgfTtcclxuICBkZWZhdWx0RXJyb3JzPzogc3RyaW5nW107XHJcbiAgZGVmYXVsdE1lc3NhZ2VzPzogc3RyaW5nW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTmFtZVBhc3N3b3JkU3RyYXRlZ3lTdWNjZXNzIHtcclxuICBrZXk/OiBzdHJpbmc7XHJcbiAgZ2V0dGVyPzogRnVuY3Rpb247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNZXNzYWdlIHtcclxuICBrZXk/OiBzdHJpbmc7XHJcbiAgZ2V0dGVyPzogRnVuY3Rpb247XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBOYW1lUGFzc3dvcmRBdXRoU3RyYXRlZ3lPcHRpb25zIGV4dGVuZHMgTmJBdXRoU3RyYXRlZ3lPcHRpb25zIHtcclxuICBiYXNlRW5kcG9pbnQ/OiBhbnkgPSAnL2FwaS9hdXRoLyc7XHJcbiAgZ2V0UHVibGljS2V5PzogYm9vbGVhbiB8IE5hbWVQYXNzd29yZFN0cmF0ZWd5TW9kdWxlID0ge1xyXG4gICAgZW5kcG9pbnQ6ICdnZXRQdWJsaWNLZXknLFxyXG4gICAgbWV0aG9kOiAnZ2V0J1xyXG4gIH07XHJcbiAgbG9naW4/OiBib29sZWFuIHwgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUgPSB7XHJcbiAgICBhbHdheXNGYWlsOiBmYWxzZSxcclxuICAgIGVuZHBvaW50OiAnbG9naW4nLFxyXG4gICAgbWV0aG9kOiAncG9zdCcsXHJcbiAgICByZWRpcmVjdDoge1xyXG4gICAgICBzdWNjZXNzOiAnLycsXHJcbiAgICAgIGZhaWx1cmU6IG51bGxcclxuICAgIH0sXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ+acquefpemUmeivryEnXSxcclxuICAgIGRlZmF1bHRNZXNzYWdlczogWydZb3UgaGF2ZSBiZWVuIHN1Y2Nlc3NmdWxseSBsb2dnZWQgaW4uJ11cclxuICB9O1xyXG4gIGNyZWF0ZVVzZXI/OiBib29sZWFuIHwgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUgPSB7XHJcbiAgICBlbmRwb2ludDogJ2NyZWF0ZVVzZXInLFxyXG4gICAgbWV0aG9kOiAncG9zdCcsXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ+acquefpemUmeivryEnXVxyXG4gIH07XHJcbiAgdXBkYXRlUGFzc3dvcmRGb3JBZG1pbj86IGJvb2xlYW4gfCBOYW1lUGFzc3dvcmRTdHJhdGVneU1vZHVsZSA9IHtcclxuICAgIGVuZHBvaW50OiAndXBkYXRlUGFzc3dvcmRGb3JBZG1pbicsXHJcbiAgICBtZXRob2Q6ICdwYXRjaCcsXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ+acquefpemUmeivryEnXVxyXG4gIH07XHJcbiAgcmVnaXN0ZXI/OiBib29sZWFuIHwgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUgPSB7XHJcbiAgICBhbHdheXNGYWlsOiBmYWxzZSxcclxuICAgIGVuZHBvaW50OiAncmVnaXN0ZXInLFxyXG4gICAgbWV0aG9kOiAncG9zdCcsXHJcbiAgICByZWRpcmVjdDoge1xyXG4gICAgICBzdWNjZXNzOiAnLycsXHJcbiAgICAgIGZhaWx1cmU6IG51bGxcclxuICAgIH0sXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ1NvbWV0aGluZyB3ZW50IHdyb25nLCBwbGVhc2UgdHJ5IGFnYWluLiddLFxyXG4gICAgZGVmYXVsdE1lc3NhZ2VzOiBbJ1lvdSBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlZ2lzdGVyZWQuJ11cclxuICB9O1xyXG4gIHJlcXVlc3RQYXNzPzogYm9vbGVhbiB8IE5hbWVQYXNzd29yZFN0cmF0ZWd5TW9kdWxlID0ge1xyXG4gICAgZW5kcG9pbnQ6ICdyZXF1ZXN0LXBhc3MnLFxyXG4gICAgbWV0aG9kOiAncG9zdCcsXHJcbiAgICByZWRpcmVjdDoge1xyXG4gICAgICBzdWNjZXNzOiAnLycsXHJcbiAgICAgIGZhaWx1cmU6IG51bGxcclxuICAgIH0sXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ1NvbWV0aGluZyB3ZW50IHdyb25nLCBwbGVhc2UgdHJ5IGFnYWluLiddLFxyXG4gICAgZGVmYXVsdE1lc3NhZ2VzOiBbJ1Jlc2V0IHBhc3N3b3JkIGluc3RydWN0aW9ucyBoYXZlIGJlZW4gc2VudCB0byB5b3VyIGVtYWlsLiddXHJcbiAgfTtcclxuICByZXNldFBhc3M/OiBib29sZWFuIHwgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUgPSB7XHJcbiAgICBlbmRwb2ludDogJ3VwZGF0ZVVzZXJQYXNzd29yZCcsXHJcbiAgICBtZXRob2Q6ICdwYXRjaCcsXHJcbiAgICByZWRpcmVjdDoge1xyXG4gICAgICBzdWNjZXNzOiAnLycsXHJcbiAgICAgIGZhaWx1cmU6IG51bGxcclxuICAgIH0sXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ+acquefpemUmeivry4nXSxcclxuICAgIGRlZmF1bHRNZXNzYWdlczogWydZb3VyIHBhc3N3b3JkIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjaGFuZ2VkLiddXHJcbiAgfTtcclxuICBsb2dvdXQ/OiBib29sZWFuIHwgTmFtZVBhc3N3b3JkU3RyYXRlZ3lNb2R1bGUgPSB7XHJcbiAgICBhbHdheXNGYWlsOiBmYWxzZSxcclxuICAgIGVuZHBvaW50OiAnbG9nb3V0JyxcclxuICAgIG1ldGhvZDogJ2RlbGV0ZScsXHJcbiAgICByZWRpcmVjdDoge1xyXG4gICAgICBzdWNjZXNzOiAnLycsXHJcbiAgICAgIGZhaWx1cmU6IG51bGxcclxuICAgIH0sXHJcbiAgICBkZWZhdWx0RXJyb3JzOiBbJ1NvbWV0aGluZyB3ZW50IHdyb25nLCBwbGVhc2UgdHJ5IGFnYWluLiddLFxyXG4gICAgZGVmYXVsdE1lc3NhZ2VzOiBbJ1lvdSBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IGxvZ2dlZCBvdXQuJ11cclxuICB9O1xyXG4gIGVycm9ycz86IE5hbWVQYXNzd29yZFN0cmF0ZWd5TWVzc2FnZSA9IHtcclxuICAgIGtleTogJ21lc3NhZ2VyJyxcclxuICAgIGdldHRlcjogKG1vZHVsZTogc3RyaW5nLCByZXM6IEh0dHBFcnJvclJlc3BvbnNlLCBvcHRpb25zOiBOYW1lUGFzc3dvcmRBdXRoU3RyYXRlZ3lPcHRpb25zKSA9PiBbXHJcbiAgICAgIGdldERlZXBGcm9tT2JqZWN0KHJlcy5lcnJvciwgb3B0aW9ucy5lcnJvcnMua2V5LCBvcHRpb25zW21vZHVsZV0uZGVmYXVsdEVycm9ycylcclxuICAgIF1cclxuICB9O1xyXG4gIG1lc3NhZ2VzPzogTmFtZVBhc3N3b3JkU3RyYXRlZ3lNZXNzYWdlID0ge1xyXG4gICAga2V5OiAnbWVzc2FnZXInLFxyXG4gICAgZ2V0dGVyOiAoXHJcbiAgICAgIG1vZHVsZTogc3RyaW5nLFxyXG4gICAgICByZXM6IEh0dHBSZXNwb25zZTxPYmplY3Q+LFxyXG4gICAgICBvcHRpb25zOiBOYW1lUGFzc3dvcmRBdXRoU3RyYXRlZ3lPcHRpb25zXHJcbiAgICApID0+IFtnZXREZWVwRnJvbU9iamVjdChyZXMuYm9keSwgb3B0aW9ucy5tZXNzYWdlcy5rZXksIGZhbHNlKV1cclxuICB9O1xyXG4gIHN1Y2Nlc3M/OiBOYW1lUGFzc3dvcmRTdHJhdGVneVN1Y2Nlc3MgPSB7XHJcbiAgICBrZXk6ICdzdWNjZXNzJyxcclxuICAgIGdldHRlcjogKG1vZHVsZTogc3RyaW5nLCByZXM6IEh0dHBSZXNwb25zZTxPYmplY3Q+LCBvcHRpb25zOiBOYW1lUGFzc3dvcmRBdXRoU3RyYXRlZ3lPcHRpb25zKSA9PlxyXG4gICAgICBnZXREZWVwRnJvbU9iamVjdChyZXMuYm9keSwgb3B0aW9ucy5zdWNjZXNzLmtleSwgb3B0aW9uc1ttb2R1bGVdLmRlZmF1bHRNZXNzYWdlcylcclxuICB9O1xyXG4gIHZhbGlkYXRpb24/OiB7XHJcbiAgICBwYXNzd29yZD86IHtcclxuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gICAgICBtaW5MZW5ndGg/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgICBtYXhMZW5ndGg/OiBudW1iZXIgfCBudWxsO1xyXG4gICAgICByZWdleHA/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIHVzZXJOYW1lPzoge1xyXG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XHJcbiAgICAgIG1pbkxlbmd0aD86IG51bWJlciB8IG51bGw7XHJcbiAgICAgIG1heExlbmd0aD86IG51bWJlciB8IG51bGw7XHJcbiAgICAgIHJlZ2V4cD86IHN0cmluZyB8IG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBuYW1lUGFzc3dvcmRTdHJhdGVneU9wdGlvbnM6IE5hbWVQYXNzd29yZEF1dGhTdHJhdGVneU9wdGlvbnMgPSBuZXcgTmFtZVBhc3N3b3JkQXV0aFN0cmF0ZWd5T3B0aW9ucygpO1xyXG4iXX0=