@toa.io/extensions.exposition 1.0.0-alpha.185 → 1.0.0-alpha.187

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.
@@ -21,10 +21,11 @@ operations:
21
21
  username: string
22
22
  password: string
23
23
  authority: string
24
- errors:
24
+ errors: &transit.errors
25
25
  - PRINCIPAL_LOCKED
26
26
  - INVALID_USERNAME
27
27
  - INVALID_PASSWORD
28
+ - EXISTS
28
29
  create:
29
30
  forward: transit
30
31
  query: false
@@ -32,6 +33,13 @@ operations:
32
33
  authority*: string
33
34
  username*: string
34
35
  password*: string
36
+ errors: *transit.errors
37
+ add:
38
+ input:
39
+ authority*: string
40
+ username*: string
41
+ password*: string
42
+ errors: *transit.errors
35
43
  incept:
36
44
  input:
37
45
  authority*: string
@@ -81,9 +89,16 @@ exposition:
81
89
  io:output: [id]
82
90
  io:input: [username, password]
83
91
  auth:role: system:identity:basic
84
- auth:scheme: basic
85
92
  auth:id: id
86
- PATCH: transit
93
+ PATCH:
94
+ auth:scheme: basic
95
+ endpoint: transit
96
+ POST:
97
+ map:authority: authority
98
+ map:segments:
99
+ id: id
100
+ endpoint: add
101
+
87
102
  /usernames/:username:
88
103
  GET:
89
104
  map:authority: authority
@@ -0,0 +1,3 @@
1
+ import type { AddInput, Context, IdOutput } from './types';
2
+ import type { Maybe } from '@toa.io/types';
3
+ export declare function effect(input: AddInput, context: Context): Promise<Maybe<IdOutput>>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.effect = void 0;
4
+ async function effect(input, context) {
5
+ return await context.local.transit({
6
+ input: {
7
+ authority: input.authority,
8
+ username: input.username,
9
+ password: input.password,
10
+ inception: true
11
+ },
12
+ query: { id: input.id }
13
+ });
14
+ }
15
+ exports.effect = effect;
16
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../source/add.ts"],"names":[],"mappings":";;;AAGO,KAAK,UAAU,MAAM,CAAC,KAAe,EAAE,OAAgB;IAC5D,OAAO,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QACjC,KAAK,EAAE;YACL,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,IAAI;SAChB;QACD,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;KACxB,CAAC,CAAA;AACJ,CAAC;AAVD,wBAUC"}
@@ -20,8 +20,11 @@ class Transition {
20
20
  }
21
21
  async execute(input, object) {
22
22
  const existent = object._version !== 0;
23
- if (existent)
23
+ if (existent) {
24
+ if (input.inception === true)
25
+ return ERR_EXISTS;
24
26
  await this.tokens.revoke({ query: { id: object.id } });
27
+ }
25
28
  else
26
29
  object.authority = input.authority;
27
30
  if (input.username !== undefined) {
@@ -52,4 +55,5 @@ function invalid(value, expressions) {
52
55
  const ERR_PRINCIPAL_LOCKED = new error_value_1.Err('PRINCIPAL_LOCKED', 'Principal username cannot be changed');
53
56
  const ERR_INVALID_USERNAME = new error_value_1.Err('INVALID_USERNAME', 'Username is not meeting the requirements');
54
57
  const ERR_INVALID_PASSWORD = new error_value_1.Err('INVALID_PASSWORD', 'Password is not meeting the requirements');
58
+ const ERR_EXISTS = new error_value_1.Err('EXISTS', 'Basic credentials already exist');
55
59
  //# sourceMappingURL=transit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transit.js","sourceRoot":"","sources":["../source/transit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transit.js","sourceRoot":"","sources":["../source/transit.ts"],"names":[],"mappings":"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"}