@api-client/core 0.8.9 → 0.8.11

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.
@@ -3,6 +3,7 @@ import http from 'http';
3
3
  interface RawValue {
4
4
  name: string;
5
5
  value: string;
6
+ enabled: boolean;
6
7
  }
7
8
  /**
8
9
  * The same interface as Web platform's Headers but without
@@ -20,7 +21,7 @@ export declare class Headers {
20
21
  /**
21
22
  * Adds value to existing header or creates new header
22
23
  */
23
- append(name: string, value: string | string[] | undefined): void;
24
+ append(name: string, value: string | string[] | undefined, enabled?: boolean): void;
24
25
  /**
25
26
  * Removes a header from the list of headers.
26
27
  * @param name The header name
@@ -38,22 +39,27 @@ export declare class Headers {
38
39
  /**
39
40
  * Creates a new header. If the header exist it replaces the value.
40
41
  */
41
- set(name: string, value: string): void;
42
+ set(name: string, value: string, enabled?: boolean): void;
42
43
  /**
43
44
  * Iterates over each header.
44
45
  */
45
- forEach(callback: (value: string, name: string, headers: Headers) => void, thisArg?: unknown): void;
46
+ forEach(callback: (value: string, name: string, enabled: boolean, headers: Headers) => void, thisArg?: unknown): void;
46
47
  /**
47
48
  * Calls a defined callback function on each element of the headers, and returns an array that contains the results.
48
49
  *
49
50
  * @param callbackfn A function that accepts up to two arguments. The map method calls the callbackfn function one time for each header.
50
51
  * @param thisArg An object to which the `this` keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
51
52
  */
52
- map<U>(callbackfn: (name: string, value: string) => U, thisArg?: any): U[];
53
+ map<U>(callbackfn: (name: string, value: string, enabled: boolean) => U, thisArg?: unknown): U[];
53
54
  /**
54
55
  * @return The headers HTTP string
55
56
  */
56
57
  toString(): string;
58
+ /**
59
+ * @returns The HTTP headers string with `#` marks when the header is disabled
60
+ */
61
+ toRawString(): string;
62
+ protected _generateString(withDisabled?: boolean): string;
57
63
  /**
58
64
  * Iterates over keys.
59
65
  */
@@ -37,18 +37,22 @@ function* headersStringToList(string) {
37
37
  }
38
38
  const headers = string.split(/\n(?=[^ \t]+)/gim);
39
39
  for (let i = 0, len = headers.length; i < len; i++) {
40
- const line = headers[i].trim();
40
+ let line = headers[i].trim();
41
41
  if (line === '') {
42
42
  continue;
43
43
  }
44
+ const disabled = line.startsWith('#');
45
+ if (disabled) {
46
+ line = line.replace('#', '').trim();
47
+ }
44
48
  const sepPosition = line.indexOf(':');
45
49
  if (sepPosition === -1) {
46
- yield [line, ''];
50
+ yield { name: line, value: '', enabled: !disabled };
47
51
  }
48
52
  else {
49
53
  const name = line.substring(0, sepPosition);
50
54
  const value = line.substring(sepPosition + 1).trim();
51
- yield [name, value];
55
+ yield { name, value, enabled: !disabled };
52
56
  }
53
57
  }
54
58
  }
@@ -69,11 +73,8 @@ export class Headers {
69
73
  headers.forEach((value, name) => this.append(name, value));
70
74
  }
71
75
  else if (typeof headers === 'string') {
72
- const iterator = headersStringToList(headers);
73
- let result = iterator.next();
74
- while (!result.done) {
75
- this.append(result.value[0], result.value[1]);
76
- result = iterator.next();
76
+ for (const item of headersStringToList(headers)) {
77
+ this.append(item.name, item.value, item.enabled);
77
78
  }
78
79
  }
79
80
  else if (headers) {
@@ -83,7 +84,7 @@ export class Headers {
83
84
  /**
84
85
  * Adds value to existing header or creates new header
85
86
  */
86
- append(name, value) {
87
+ append(name, value, enabled = true) {
87
88
  if (Array.isArray(value)) {
88
89
  value.forEach(v => this.append(name, v));
89
90
  return;
@@ -99,6 +100,7 @@ export class Headers {
99
100
  item = {
100
101
  name,
101
102
  value,
103
+ enabled,
102
104
  };
103
105
  }
104
106
  this._map[normalizedName] = item;
@@ -116,22 +118,30 @@ export class Headers {
116
118
  */
117
119
  get(name) {
118
120
  name = normalizeName(name);
119
- return this.has(name) ? this._map[name].value : undefined;
121
+ if (!this.has(name)) {
122
+ return undefined;
123
+ }
124
+ if (!this._map[name].enabled) {
125
+ return undefined;
126
+ }
127
+ return this._map[name].value;
120
128
  }
121
129
  /**
122
130
  * Checks if the header exists.
123
131
  */
124
132
  has(name) {
125
- return Object.prototype.hasOwnProperty.call(this._map, normalizeName(name));
133
+ const normalized = normalizeName(name);
134
+ return Object.prototype.hasOwnProperty.call(this._map, normalized) && this._map[normalized].enabled;
126
135
  }
127
136
  /**
128
137
  * Creates a new header. If the header exist it replaces the value.
129
138
  */
130
- set(name, value) {
139
+ set(name, value, enabled = true) {
131
140
  const normalizedName = normalizeName(name);
132
141
  this._map[normalizedName] = {
133
142
  value: normalizeValue(value),
134
143
  name,
144
+ enabled,
135
145
  };
136
146
  }
137
147
  /**
@@ -141,7 +151,7 @@ export class Headers {
141
151
  const keys = Object.keys(this._map);
142
152
  keys.forEach((key) => {
143
153
  const item = this._map[key];
144
- callback.call(thisArg, item.value, item.name, this);
154
+ callback.call(thisArg, item.value, item.name, item.enabled, this);
145
155
  });
146
156
  }
147
157
  /**
@@ -155,7 +165,7 @@ export class Headers {
155
165
  const results = [];
156
166
  for (const name of keys) {
157
167
  const item = this._map[name];
158
- const cbReturn = callbackfn.call(thisArg, item.value, item.name);
168
+ const cbReturn = callbackfn.call(thisArg, item.value, item.name, item.enabled);
159
169
  results.push(cbReturn);
160
170
  }
161
171
  return results;
@@ -164,15 +174,33 @@ export class Headers {
164
174
  * @return The headers HTTP string
165
175
  */
166
176
  toString() {
177
+ return this._generateString();
178
+ }
179
+ /**
180
+ * @returns The HTTP headers string with `#` marks when the header is disabled
181
+ */
182
+ toRawString() {
183
+ return this._generateString(true);
184
+ }
185
+ _generateString(withDisabled = false) {
167
186
  const result = [];
168
187
  const keys = Object.keys(this._map);
169
188
  for (const name of keys) {
170
189
  const item = this._map[name];
171
- let tmp = `${item.name}: `;
190
+ let line = '';
191
+ if (!item.enabled) {
192
+ if (withDisabled) {
193
+ line += '# ';
194
+ }
195
+ else {
196
+ continue;
197
+ }
198
+ }
199
+ line += `${item.name}: `;
172
200
  if (item.value) {
173
- tmp += item.value;
201
+ line += item.value;
174
202
  }
175
- result.push(tmp);
203
+ result.push(line);
176
204
  }
177
205
  return result.join('\n');
178
206
  }
@@ -182,7 +210,10 @@ export class Headers {
182
210
  *keys() {
183
211
  const keys = Object.keys(this._map);
184
212
  for (const name of keys) {
185
- yield this._map[name].name;
213
+ const item = this._map[name];
214
+ if (item.enabled) {
215
+ yield this._map[name].name;
216
+ }
186
217
  }
187
218
  }
188
219
  /**
@@ -191,7 +222,10 @@ export class Headers {
191
222
  *values() {
192
223
  const keys = Object.keys(this._map);
193
224
  for (const name of keys) {
194
- yield this._map[name].value;
225
+ const item = this._map[name];
226
+ if (item.enabled) {
227
+ yield this._map[name].value;
228
+ }
195
229
  }
196
230
  }
197
231
  /**
@@ -200,7 +234,10 @@ export class Headers {
200
234
  *entries() {
201
235
  const keys = Object.keys(this._map);
202
236
  for (const name of keys) {
203
- yield [this._map[name].name, this._map[name].value];
237
+ const item = this._map[name];
238
+ if (item.enabled) {
239
+ yield [this._map[name].name, this._map[name].value];
240
+ }
204
241
  }
205
242
  }
206
243
  /**
@@ -209,7 +246,10 @@ export class Headers {
209
246
  *[Symbol.iterator]() {
210
247
  const keys = Object.keys(this._map);
211
248
  for (const name of keys) {
212
- yield [this._map[name].name, this._map[name].value];
249
+ const item = this._map[name];
250
+ if (item.enabled) {
251
+ yield [this._map[name].name, this._map[name].value];
252
+ }
213
253
  }
214
254
  }
215
255
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Headers.js","sourceRoot":"","sources":["../../../../src/lib/headers/Headers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Headers.js","sourceRoot":"","sources":["../../../../src/lib/headers/Headers.ts"],"names":[],"mappings":"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"}
@@ -135,7 +135,7 @@ export declare class UrlSearchParams {
135
135
  /**
136
136
  * A reference to the URL processor's parts.
137
137
  */
138
- parts: UrlPart[];
138
+ protected parts: UrlPart[];
139
139
  constructor(parts: UrlPart[]);
140
140
  /**
141
141
  * Iterates over each query parameter, in order.
@@ -150,8 +150,9 @@ export declare class UrlSearchParams {
150
150
  *
151
151
  * @param name The name of the parameter.
152
152
  * @param value The value of the parameter.
153
+ * @param enabled Whether her parameter is enabled.
153
154
  */
154
- append(name: string, value?: string): void;
155
+ append(name: string, value?: string, enabled?: boolean): number;
155
156
  /**
156
157
  * Replaces the param part in the parts list.
157
158
  *
@@ -166,8 +167,14 @@ export declare class UrlSearchParams {
166
167
  *
167
168
  * @param name The name of the parameter
168
169
  * @param value the value of the parameter
170
+ * @param enabled Whether her parameter is enabled.
171
+ */
172
+ set(name: string, value: string, enabled?: boolean): number;
173
+ /**
174
+ * @param name The name of the parameter to search for.
175
+ * @returns The reference to the parameter.
169
176
  */
170
- set(name: string, value: string): void;
177
+ get(name: string): IUrlParamPart | undefined;
171
178
  /**
172
179
  * Removes a query parameter from the parameters list.
173
180
  *
@@ -181,6 +188,28 @@ export declare class UrlSearchParams {
181
188
  * @param enabled The enabled state of the parameter.
182
189
  */
183
190
  toggle(index: number, enabled: boolean): void;
191
+ /**
192
+ * Removes all query parameters.
193
+ */
194
+ clear(): void;
195
+ /**
196
+ * Transforms the parameters to a key-value pair separated by a comma,
197
+ * ech in a new line.
198
+ *
199
+ * For example `a=b&c=d` is translated to:
200
+ * ```
201
+ * a: b
202
+ * c: d
203
+ * ```
204
+ * Disabled parameters have `#` sign at the beginning of the line.
205
+ */
206
+ toParamsString(): string;
207
+ /**
208
+ * The opposite of `toParamsString()`. Takes the input string
209
+ * and creates a new list of query parameters from it.
210
+ */
211
+ fromParamsString(value: string): void;
212
+ private processLine;
184
213
  }
185
214
  /**
186
215
  * A class that parses a string a treats it as a value that may include
@@ -127,16 +127,18 @@ export class UrlSearchParams {
127
127
  *
128
128
  * @param name The name of the parameter.
129
129
  * @param value The value of the parameter.
130
+ * @param enabled Whether her parameter is enabled.
130
131
  */
131
- append(name, value = '') {
132
+ append(name, value = '', enabled = true) {
132
133
  const part = {
133
134
  type: PartType.param,
134
135
  expression: `${name}=${value}`,
135
136
  name,
136
137
  value,
137
- enabled: true,
138
+ enabled,
138
139
  };
139
- this.parts.push(part);
140
+ const length = this.parts.push(part);
141
+ return length - 1;
140
142
  }
141
143
  /**
142
144
  * Replaces the param part in the parts list.
@@ -170,8 +172,9 @@ export class UrlSearchParams {
170
172
  *
171
173
  * @param name The name of the parameter
172
174
  * @param value the value of the parameter
175
+ * @param enabled Whether her parameter is enabled.
173
176
  */
174
- set(name, value) {
177
+ set(name, value, enabled = true) {
175
178
  let firstIndex = -1;
176
179
  for (let i = this.parts.length - 1; i >= 0; i--) {
177
180
  const part = this.parts[i];
@@ -188,14 +191,25 @@ export class UrlSearchParams {
188
191
  expression: `${name}=${value}`,
189
192
  name,
190
193
  value,
191
- enabled: true,
194
+ enabled,
192
195
  };
196
+ let position;
193
197
  if (firstIndex === -1) {
194
- this.parts.push(part);
198
+ const len = this.parts.push(part);
199
+ position = len - 1;
195
200
  }
196
201
  else {
197
202
  this.parts.splice(firstIndex, 0, part);
203
+ position = firstIndex;
198
204
  }
205
+ return position;
206
+ }
207
+ /**
208
+ * @param name The name of the parameter to search for.
209
+ * @returns The reference to the parameter.
210
+ */
211
+ get(name) {
212
+ return this.parts.find(i => i.type === PartType.param && i.name === name);
199
213
  }
200
214
  /**
201
215
  * Removes a query parameter from the parameters list.
@@ -230,6 +244,72 @@ export class UrlSearchParams {
230
244
  }
231
245
  param.enabled = enabled;
232
246
  }
247
+ /**
248
+ * Removes all query parameters.
249
+ */
250
+ clear() {
251
+ for (let i = this.parts.length - 1; i >= 0; i--) {
252
+ const part = this.parts[i];
253
+ if (part.type !== PartType.param) {
254
+ continue;
255
+ }
256
+ this.parts.splice(i, 1);
257
+ }
258
+ }
259
+ /**
260
+ * Transforms the parameters to a key-value pair separated by a comma,
261
+ * ech in a new line.
262
+ *
263
+ * For example `a=b&c=d` is translated to:
264
+ * ```
265
+ * a: b
266
+ * c: d
267
+ * ```
268
+ * Disabled parameters have `#` sign at the beginning of the line.
269
+ */
270
+ toParamsString() {
271
+ const lines = [];
272
+ for (const part of this) {
273
+ const { enabled, name, value } = part;
274
+ if (!name && !value) {
275
+ continue;
276
+ }
277
+ let line = '';
278
+ if (!enabled) {
279
+ line += '# ';
280
+ }
281
+ if (name) {
282
+ line += name;
283
+ }
284
+ line += ': ';
285
+ if (value) {
286
+ line += value;
287
+ }
288
+ lines.push(line);
289
+ }
290
+ return lines.join('\n');
291
+ }
292
+ /**
293
+ * The opposite of `toParamsString()`. Takes the input string
294
+ * and creates a new list of query parameters from it.
295
+ */
296
+ fromParamsString(value) {
297
+ this.clear();
298
+ const lines = value.split('\n');
299
+ lines.forEach((line) => this.processLine(line));
300
+ }
301
+ processLine(line) {
302
+ let text = line.trim();
303
+ const disabled = text.startsWith('#');
304
+ if (disabled) {
305
+ text = text.replace('#', '').trim();
306
+ }
307
+ const parts = text.split(':');
308
+ const [nameRaw, ...values] = parts;
309
+ const name = nameRaw.trim();
310
+ const value = values.join(':').trim();
311
+ this.append(name, value, !disabled);
312
+ }
233
313
  }
234
314
  /**
235
315
  * A class that parses a string a treats it as a value that may include
@@ -1 +1 @@
1
- {"version":3,"file":"UrlProcessor.js","sourceRoot":"","sources":["../../../../src/lib/parsers/UrlProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UrlProcessor.js","sourceRoot":"","sources":["../../../../src/lib/parsers/UrlProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { IProperty, Property } from "./Property.js";
2
+ /**
3
+ * An array that specializes in keeping HTTP headers data.
4
+ * Unlike the `Headers` class, this can be serialized with the state.
5
+ */
6
+ export declare class HeadersArray extends Array<Property> {
7
+ static fromHeaders(headersStr?: string): HeadersArray;
8
+ static from(arrayLike: ArrayLike<IProperty>): HeadersArray;
9
+ /**
10
+ * Overrides native toString to generate the headers string.
11
+ * @returns HTTP headers string.
12
+ */
13
+ toString(): string;
14
+ /**
15
+ * @returns The HTTP headers string with `#` marks when the header is disabled
16
+ */
17
+ toRawString(): string;
18
+ toJSON(): Array<IProperty>;
19
+ }
@@ -0,0 +1,50 @@
1
+ import { Property } from "./Property.js";
2
+ import { Headers } from '../lib/headers/Headers.js';
3
+ /**
4
+ * An array that specializes in keeping HTTP headers data.
5
+ * Unlike the `Headers` class, this can be serialized with the state.
6
+ */
7
+ export class HeadersArray extends Array {
8
+ static fromHeaders(headersStr) {
9
+ const headers = new Headers(headersStr);
10
+ const array = new HeadersArray();
11
+ headers.forEach((value, name, enabled) => {
12
+ const p = Property.String(name, value, enabled);
13
+ array.push(p);
14
+ });
15
+ return array;
16
+ }
17
+ static from(arrayLike) {
18
+ const arr = Array.from(arrayLike);
19
+ const result = new HeadersArray();
20
+ arr.forEach((item) => result.push(new Property(item)));
21
+ return result;
22
+ }
23
+ /**
24
+ * Overrides native toString to generate the headers string.
25
+ * @returns HTTP headers string.
26
+ */
27
+ toString() {
28
+ const headers = new Headers();
29
+ this.forEach((item) => {
30
+ const header = item;
31
+ headers.append(header.name, header.value, header.enabled);
32
+ });
33
+ return headers.toString();
34
+ }
35
+ /**
36
+ * @returns The HTTP headers string with `#` marks when the header is disabled
37
+ */
38
+ toRawString() {
39
+ const headers = new Headers();
40
+ this.forEach((item) => {
41
+ const header = item;
42
+ headers.append(header.name, header.value, header.enabled);
43
+ });
44
+ return headers.toRawString();
45
+ }
46
+ toJSON() {
47
+ return this.map(i => i.toJSON());
48
+ }
49
+ }
50
+ //# sourceMappingURL=HeadersArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeadersArray.js","sourceRoot":"","sources":["../../../src/models/HeadersArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAe;IAC/C,MAAM,CAAC,WAAW,CAAC,UAAmB;QACpC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;QACjC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACvC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAChD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAU,IAAI,CAAC,SAA+B;QAClD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAClC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACM,QAAQ;QACf,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,IAAgB,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAe,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,IAAgB,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAe,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;CACF"}
@@ -1,5 +1,7 @@
1
1
  import { SerializablePayload } from './SerializablePayload.js';
2
2
  import { Payload } from '../lib/transformers/PayloadSerializer.js';
3
+ import { IProperty } from './Property.js';
4
+ import { HeadersArray } from './HeadersArray.js';
3
5
  export declare const Kind = "Core#HttpRequest";
4
6
  export interface IBaseHttpRequest {
5
7
  /**
@@ -25,6 +27,11 @@ export interface IBaseHttpRequest {
25
27
  */
26
28
  export interface IHttpRequest extends IBaseHttpRequest {
27
29
  kind?: string;
30
+ /**
31
+ * Headers model, if any.
32
+ * When reading headers string, the value of `headers` is preferred over the model.
33
+ */
34
+ headersModel?: Array<IProperty>;
28
35
  }
29
36
  /**
30
37
  * The base model of an HTTP request.
@@ -50,6 +57,11 @@ export declare class HttpRequest extends SerializablePayload {
50
57
  * HTTP headers string
51
58
  */
52
59
  headers?: string;
60
+ /**
61
+ * Headers model, if any.
62
+ * When reading headers string, the value of `headers` is preferred over the model.
63
+ */
64
+ headersModel?: HeadersArray;
53
65
  static fromBaseValues(values: IBaseHttpRequest): HttpRequest;
54
66
  /**
55
67
  * @param input The request definition used to restore the state.