@ecodev/natural 53.4.0 → 54.0.0

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.
@@ -1,5 +1,12 @@
1
+ import { ApolloLink } from '@apollo/client/core';
1
2
  import { isObject } from 'lodash-es';
2
3
  import { formatIsoDateTime } from './utility';
4
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
5
+ // @ts-expect-error
6
+ import extractFiles from 'extract-files/extractFiles.mjs';
7
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
8
+ // @ts-expect-error
9
+ import isExtractableFile from 'extract-files/isExtractableFile.mjs';
3
10
  function isFile(value) {
4
11
  return ((typeof File !== 'undefined' && value instanceof File) ||
5
12
  (typeof Blob !== 'undefined' && value instanceof Blob) ||
@@ -34,4 +41,18 @@ export function hasFilesAndProcessDate(variables) {
34
41
  export function isMutation(query) {
35
42
  return query.definitions.some(definition => definition.kind === 'OperationDefinition' && definition.operation === 'mutation');
36
43
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBvbGxvLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL2NsYXNzZXMvYXBvbGxvLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRTVDLFNBQVMsTUFBTSxDQUFDLEtBQVU7SUFDdEIsT0FBTyxDQUNILENBQUMsT0FBTyxJQUFJLEtBQUssV0FBVyxJQUFJLEtBQUssWUFBWSxJQUFJLENBQUM7UUFDdEQsQ0FBQyxPQUFPLElBQUksS0FBSyxXQUFXLElBQUksS0FBSyxZQUFZLElBQUksQ0FBQztRQUN0RCxDQUFDLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxLQUFLLFlBQVksUUFBUSxDQUFDLENBQ2pFLENBQUM7QUFDTixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLFNBQWtCO0lBQ3JELElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDckMsSUFBSSxLQUFLLFlBQVksSUFBSSxFQUFFO1lBQ3ZCLDZEQUE2RDtZQUM3RCxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDZixTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3BCO1FBRUQsSUFBSSxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQixTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3BCO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsVUFBVSxDQUFDLEtBQW1CO0lBQzFDLE9BQU8sS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ3pCLFVBQVUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksS0FBSyxxQkFBcUIsSUFBSSxVQUFVLENBQUMsU0FBUyxLQUFLLFVBQVUsQ0FDakcsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RvY3VtZW50Tm9kZX0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XG5pbXBvcnQge2lzT2JqZWN0fSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtmb3JtYXRJc29EYXRlVGltZX0gZnJvbSAnLi91dGlsaXR5JztcblxuZnVuY3Rpb24gaXNGaWxlKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgICAodHlwZW9mIEZpbGUgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlIGluc3RhbmNlb2YgRmlsZSkgfHxcbiAgICAgICAgKHR5cGVvZiBCbG9iICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSBpbnN0YW5jZW9mIEJsb2IpIHx8XG4gICAgICAgICh0eXBlb2YgRmlsZUxpc3QgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlIGluc3RhbmNlb2YgRmlsZUxpc3QpXG4gICAgKTtcbn1cblxuLyoqXG4gKiBEZXRlY3QgaWYgdGhlIGdpdmVuIHZhcmlhYmxlcyBoYXZlIGEgZmlsZSB0byBiZSB1cGxvYWRlZCBvciBub3QsIGFuZFxuICogYWxzbyBjb252ZXJ0IGRhdGUgdG8gYmUgc2VyaWFsaXplZCB3aXRoIHRoZWlyIHRpbWV6b25lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzRmlsZXNBbmRQcm9jZXNzRGF0ZSh2YXJpYWJsZXM6IHVua25vd24pOiBib29sZWFuIHtcbiAgICBsZXQgZmlsZUZvdW5kID0gZmFsc2U7XG4gICAgaWYgKCFpc09iamVjdCh2YXJpYWJsZXMpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBPYmplY3QudmFsdWVzKHZhcmlhYmxlcykuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgICAgIC8vIFJlcGxhY2UgbmF0aXZlIHRvSlNPTigpIGZ1bmN0aW9uIGJ5IG91ciBvd24gaW1wbGVtZW50YXRpb25cbiAgICAgICAgICAgIHZhbHVlLnRvSlNPTiA9ICgpID0+IGZvcm1hdElzb0RhdGVUaW1lKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0ZpbGUodmFsdWUpKSB7XG4gICAgICAgICAgICBmaWxlRm91bmQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhhc0ZpbGVzQW5kUHJvY2Vzc0RhdGUodmFsdWUpKSB7XG4gICAgICAgICAgICBmaWxlRm91bmQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZmlsZUZvdW5kO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIEdyYXBoUUwgZG9jdW1lbnQgY29udGFpbnMgYXQgbGVhc3Qgb25lIG11dGF0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc011dGF0aW9uKHF1ZXJ5OiBEb2N1bWVudE5vZGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcXVlcnkuZGVmaW5pdGlvbnMuc29tZShcbiAgICAgICAgZGVmaW5pdGlvbiA9PiBkZWZpbml0aW9uLmtpbmQgPT09ICdPcGVyYXRpb25EZWZpbml0aW9uJyAmJiBkZWZpbml0aW9uLm9wZXJhdGlvbiA9PT0gJ211dGF0aW9uJyxcbiAgICApO1xufVxuIl19
44
+ export const naturalExtractFiles = body => extractFiles(body, isExtractableFile);
45
+ /**
46
+ * Create an Apollo link that supports batched queries and file uploads.
47
+ *
48
+ * File uploads and mutations are never batched.
49
+ */
50
+ export function createHttpLink(httpLink, httpBatchLink, options) {
51
+ // If the query has no file, batch it, otherwise upload only that query
52
+ return ApolloLink.split(operation => hasFilesAndProcessDate(operation.variables) || isMutation(operation.query), httpLink.create({
53
+ ...options,
54
+ useMultipart: true,
55
+ extractFiles: naturalExtractFiles,
56
+ }), httpBatchLink.create(options));
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBvbGxvLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL2NsYXNzZXMvYXBvbGxvLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQWUsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQ25DLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUc1Qyw2REFBNkQ7QUFDN0QsbUJBQW1CO0FBQ25CLE9BQU8sWUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFELDZEQUE2RDtBQUM3RCxtQkFBbUI7QUFDbkIsT0FBTyxpQkFBaUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUVwRSxTQUFTLE1BQU0sQ0FBQyxLQUFjO0lBQzFCLE9BQU8sQ0FDSCxDQUFDLE9BQU8sSUFBSSxLQUFLLFdBQVcsSUFBSSxLQUFLLFlBQVksSUFBSSxDQUFDO1FBQ3RELENBQUMsT0FBTyxJQUFJLEtBQUssV0FBVyxJQUFJLEtBQUssWUFBWSxJQUFJLENBQUM7UUFDdEQsQ0FBQyxPQUFPLFFBQVEsS0FBSyxXQUFXLElBQUksS0FBSyxZQUFZLFFBQVEsQ0FBQyxDQUNqRSxDQUFDO0FBQ04sQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxTQUFrQjtJQUNyRCxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUN0QixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3JDLElBQUksS0FBSyxZQUFZLElBQUksRUFBRTtZQUN2Qiw2REFBNkQ7WUFDN0QsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNqRDtRQUVELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2YsU0FBUyxHQUFHLElBQUksQ0FBQztTQUNwQjtRQUVELElBQUksc0JBQXNCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDL0IsU0FBUyxHQUFHLElBQUksQ0FBQztTQUNwQjtJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFtQjtJQUMxQyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUN6QixVQUFVLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEtBQUsscUJBQXFCLElBQUksVUFBVSxDQUFDLFNBQVMsS0FBSyxVQUFVLENBQ2pHLENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQWlCLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBRS9GOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLFFBQWtCLEVBQUUsYUFBNEIsRUFBRSxPQUFnQjtJQUM3Rix1RUFBdUU7SUFDdkUsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUNuQixTQUFTLENBQUMsRUFBRSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUN2RixRQUFRLENBQUMsTUFBTSxDQUFDO1FBQ1osR0FBRyxPQUFPO1FBQ1YsWUFBWSxFQUFFLElBQUk7UUFDbEIsWUFBWSxFQUFFLG1CQUFtQjtLQUNwQyxDQUFDLEVBQ0YsYUFBYSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FDaEMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fwb2xsb0xpbmssIERvY3VtZW50Tm9kZX0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XG5pbXBvcnQge2lzT2JqZWN0fSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtmb3JtYXRJc29EYXRlVGltZX0gZnJvbSAnLi91dGlsaXR5JztcbmltcG9ydCB7SHR0cEJhdGNoTGluaywgSHR0cExpbmssIE9wdGlvbnN9IGZyb20gJ2Fwb2xsby1hbmd1bGFyL2h0dHAnO1xuaW1wb3J0IHtFeHRyYWN0RmlsZXN9IGZyb20gJ2Fwb2xsby1hbmd1bGFyL2h0dHAvdHlwZXMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuLy8gQHRzLWV4cGVjdC1lcnJvclxuaW1wb3J0IGV4dHJhY3RGaWxlcyBmcm9tICdleHRyYWN0LWZpbGVzL2V4dHJhY3RGaWxlcy5tanMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuLy8gQHRzLWV4cGVjdC1lcnJvclxuaW1wb3J0IGlzRXh0cmFjdGFibGVGaWxlIGZyb20gJ2V4dHJhY3QtZmlsZXMvaXNFeHRyYWN0YWJsZUZpbGUubWpzJztcblxuZnVuY3Rpb24gaXNGaWxlKHZhbHVlOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICAgKHR5cGVvZiBGaWxlICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSBpbnN0YW5jZW9mIEZpbGUpIHx8XG4gICAgICAgICh0eXBlb2YgQmxvYiAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsdWUgaW5zdGFuY2VvZiBCbG9iKSB8fFxuICAgICAgICAodHlwZW9mIEZpbGVMaXN0ICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSBpbnN0YW5jZW9mIEZpbGVMaXN0KVxuICAgICk7XG59XG5cbi8qKlxuICogRGV0ZWN0IGlmIHRoZSBnaXZlbiB2YXJpYWJsZXMgaGF2ZSBhIGZpbGUgdG8gYmUgdXBsb2FkZWQgb3Igbm90LCBhbmRcbiAqIGFsc28gY29udmVydCBkYXRlIHRvIGJlIHNlcmlhbGl6ZWQgd2l0aCB0aGVpciB0aW1lem9uZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc0ZpbGVzQW5kUHJvY2Vzc0RhdGUodmFyaWFibGVzOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgbGV0IGZpbGVGb3VuZCA9IGZhbHNlO1xuICAgIGlmICghaXNPYmplY3QodmFyaWFibGVzKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgT2JqZWN0LnZhbHVlcyh2YXJpYWJsZXMpLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICAgICAgICAvLyBSZXBsYWNlIG5hdGl2ZSB0b0pTT04oKSBmdW5jdGlvbiBieSBvdXIgb3duIGltcGxlbWVudGF0aW9uXG4gICAgICAgICAgICB2YWx1ZS50b0pTT04gPSAoKSA9PiBmb3JtYXRJc29EYXRlVGltZSh2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNGaWxlKHZhbHVlKSkge1xuICAgICAgICAgICAgZmlsZUZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChoYXNGaWxlc0FuZFByb2Nlc3NEYXRlKHZhbHVlKSkge1xuICAgICAgICAgICAgZmlsZUZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZpbGVGb3VuZDtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiBHcmFwaFFMIGRvY3VtZW50IGNvbnRhaW5zIGF0IGxlYXN0IG9uZSBtdXRhdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNNdXRhdGlvbihxdWVyeTogRG9jdW1lbnROb2RlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmRlZmluaXRpb25zLnNvbWUoXG4gICAgICAgIGRlZmluaXRpb24gPT4gZGVmaW5pdGlvbi5raW5kID09PSAnT3BlcmF0aW9uRGVmaW5pdGlvbicgJiYgZGVmaW5pdGlvbi5vcGVyYXRpb24gPT09ICdtdXRhdGlvbicsXG4gICAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IG5hdHVyYWxFeHRyYWN0RmlsZXM6IEV4dHJhY3RGaWxlcyA9IGJvZHkgPT4gZXh0cmFjdEZpbGVzKGJvZHksIGlzRXh0cmFjdGFibGVGaWxlKTtcblxuLyoqXG4gKiBDcmVhdGUgYW4gQXBvbGxvIGxpbmsgdGhhdCBzdXBwb3J0cyBiYXRjaGVkIHF1ZXJpZXMgYW5kIGZpbGUgdXBsb2Fkcy5cbiAqXG4gKiBGaWxlIHVwbG9hZHMgYW5kIG11dGF0aW9ucyBhcmUgbmV2ZXIgYmF0Y2hlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUh0dHBMaW5rKGh0dHBMaW5rOiBIdHRwTGluaywgaHR0cEJhdGNoTGluazogSHR0cEJhdGNoTGluaywgb3B0aW9uczogT3B0aW9ucyk6IEFwb2xsb0xpbmsge1xuICAgIC8vIElmIHRoZSBxdWVyeSBoYXMgbm8gZmlsZSwgYmF0Y2ggaXQsIG90aGVyd2lzZSB1cGxvYWQgb25seSB0aGF0IHF1ZXJ5XG4gICAgcmV0dXJuIEFwb2xsb0xpbmsuc3BsaXQoXG4gICAgICAgIG9wZXJhdGlvbiA9PiBoYXNGaWxlc0FuZFByb2Nlc3NEYXRlKG9wZXJhdGlvbi52YXJpYWJsZXMpIHx8IGlzTXV0YXRpb24ob3BlcmF0aW9uLnF1ZXJ5KSxcbiAgICAgICAgaHR0cExpbmsuY3JlYXRlKHtcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICB1c2VNdWx0aXBhcnQ6IHRydWUsXG4gICAgICAgICAgICBleHRyYWN0RmlsZXM6IG5hdHVyYWxFeHRyYWN0RmlsZXMsXG4gICAgICAgIH0pLFxuICAgICAgICBodHRwQmF0Y2hMaW5rLmNyZWF0ZShvcHRpb25zKSxcbiAgICApO1xufVxuIl19
@@ -0,0 +1,36 @@
1
+ import { HmacSHA256 } from 'crypto-es/lib/sha256';
2
+ function getOperations(req) {
3
+ if (req.body instanceof FormData) {
4
+ const operations = req.body.get('operations');
5
+ if (typeof operations !== 'string') {
6
+ throw new Error('Cannot sign a GraphQL query that is using FormData but that is missing the key `operations`');
7
+ }
8
+ return operations;
9
+ }
10
+ else {
11
+ return JSON.stringify(req.body);
12
+ }
13
+ }
14
+ /**
15
+ * Sign all HTTP POST requests that are GraphQL queries against `/graphql` endpoint with a custom signature.
16
+ *
17
+ * The server will validate the signature before executing the GraphQL query.
18
+ */
19
+ export function graphqlQuerySigner(key) {
20
+ return (req, next) => {
21
+ const mustSign = req.method === 'POST' && req.url.match(/\/graphql(\?|$)/);
22
+ if (!mustSign) {
23
+ return next(req);
24
+ }
25
+ const operations = getOperations(req);
26
+ const timestamp = Math.round(Date.now() / 1000);
27
+ const payload = timestamp + operations;
28
+ const hash = HmacSHA256(payload, key).toString();
29
+ const header = `v1.${timestamp}.${hash}`;
30
+ const signedRequest = req.clone({
31
+ headers: req.headers.set('Authorization', header),
32
+ });
33
+ return next(signedRequest);
34
+ };
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9jbGFzc2VzL3NpZ25pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWhELFNBQVMsYUFBYSxDQUFDLEdBQXlCO0lBQzVDLElBQUksR0FBRyxDQUFDLElBQUksWUFBWSxRQUFRLEVBQUU7UUFDOUIsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDOUMsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FDWCw2RkFBNkYsQ0FDaEcsQ0FBQztTQUNMO1FBQ0QsT0FBTyxVQUFVLENBQUM7S0FDckI7U0FBTTtRQUNILE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDbkM7QUFDTCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxHQUFXO0lBQzFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDakIsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sS0FBSyxNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDcEI7UUFFRCxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDaEQsTUFBTSxPQUFPLEdBQUcsU0FBUyxHQUFHLFVBQVUsQ0FBQztRQUN2QyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pELE1BQU0sTUFBTSxHQUFHLE1BQU0sU0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO1FBRXpDLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDNUIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUM7U0FDcEQsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cEludGVyY2VwdG9yRm4sIEh0dHBSZXF1ZXN0fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0htYWNTSEEyNTZ9IGZyb20gJ2NyeXB0by1lcy9saWIvc2hhMjU2JztcblxuZnVuY3Rpb24gZ2V0T3BlcmF0aW9ucyhyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KTogc3RyaW5nIHtcbiAgICBpZiAocmVxLmJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YSkge1xuICAgICAgICBjb25zdCBvcGVyYXRpb25zID0gcmVxLmJvZHkuZ2V0KCdvcGVyYXRpb25zJyk7XG4gICAgICAgIGlmICh0eXBlb2Ygb3BlcmF0aW9ucyAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAnQ2Fubm90IHNpZ24gYSBHcmFwaFFMIHF1ZXJ5IHRoYXQgaXMgdXNpbmcgRm9ybURhdGEgYnV0IHRoYXQgaXMgbWlzc2luZyB0aGUga2V5IGBvcGVyYXRpb25zYCcsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvcGVyYXRpb25zO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShyZXEuYm9keSk7XG4gICAgfVxufVxuXG4vKipcbiAqIFNpZ24gYWxsIEhUVFAgUE9TVCByZXF1ZXN0cyB0aGF0IGFyZSBHcmFwaFFMIHF1ZXJpZXMgYWdhaW5zdCBgL2dyYXBocWxgIGVuZHBvaW50IHdpdGggYSBjdXN0b20gc2lnbmF0dXJlLlxuICpcbiAqIFRoZSBzZXJ2ZXIgd2lsbCB2YWxpZGF0ZSB0aGUgc2lnbmF0dXJlIGJlZm9yZSBleGVjdXRpbmcgdGhlIEdyYXBoUUwgcXVlcnkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBncmFwaHFsUXVlcnlTaWduZXIoa2V5OiBzdHJpbmcpOiBIdHRwSW50ZXJjZXB0b3JGbiB7XG4gICAgcmV0dXJuIChyZXEsIG5leHQpID0+IHtcbiAgICAgICAgY29uc3QgbXVzdFNpZ24gPSByZXEubWV0aG9kID09PSAnUE9TVCcgJiYgcmVxLnVybC5tYXRjaCgvXFwvZ3JhcGhxbChcXD98JCkvKTtcbiAgICAgICAgaWYgKCFtdXN0U2lnbikge1xuICAgICAgICAgICAgcmV0dXJuIG5leHQocmVxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG9wZXJhdGlvbnMgPSBnZXRPcGVyYXRpb25zKHJlcSk7XG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IE1hdGgucm91bmQoRGF0ZS5ub3coKSAvIDEwMDApO1xuICAgICAgICBjb25zdCBwYXlsb2FkID0gdGltZXN0YW1wICsgb3BlcmF0aW9ucztcbiAgICAgICAgY29uc3QgaGFzaCA9IEhtYWNTSEEyNTYocGF5bG9hZCwga2V5KS50b1N0cmluZygpO1xuICAgICAgICBjb25zdCBoZWFkZXIgPSBgdjEuJHt0aW1lc3RhbXB9LiR7aGFzaH1gO1xuXG4gICAgICAgIGNvbnN0IHNpZ25lZFJlcXVlc3QgPSByZXEuY2xvbmUoe1xuICAgICAgICAgICAgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KCdBdXRob3JpemF0aW9uJywgaGVhZGVyKSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIG5leHQoc2lnbmVkUmVxdWVzdCk7XG4gICAgfTtcbn1cbiJdfQ==
@@ -39,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
39
39
  type: Inject,
40
40
  args: [NATURAL_DROPDOWN_DATA]
41
41
  }] }, { type: i1.NaturalDropdownRef }]; } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1ib29sZWFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1ib29sZWFuL3R5cGUtYm9vbGVhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtb3B0aW9ucy90eXBlLW9wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFjLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSTdFLE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSxrREFBa0QsQ0FBQztBQUU1RyxPQUFPLEVBQUMsb0JBQW9CLEVBQTJCLE1BQU0sd0NBQXdDLENBQUM7QUFFdEcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7Ozs7O0FBWXRFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxvQkFBb0I7SUFDMUQsWUFDbUMsSUFBbUQsRUFDbEYsV0FBK0I7UUFFL0IsMEVBQTBFO1FBQzFFLE1BQU0sYUFBYSxHQUE2QjtZQUM1QyxPQUFPLEVBQUU7Z0JBQ0w7b0JBQ0ksT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCO29CQUM3QyxTQUFTLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLEVBQUM7aUJBQ3BDO2dCQUNEO29CQUNJLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQjtvQkFDL0MsU0FBUyxFQUFFLEVBQUMsS0FBSyxFQUFFLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBQyxFQUFDO2lCQUNyQzthQUNKO1NBQ0osQ0FBQztRQUVGLE1BQU0sZUFBZSxHQUFrRDtZQUNuRSxHQUFHLElBQUk7WUFDUCxHQUFHLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBQztTQUNwQyxDQUFDO1FBRUYsS0FBSyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQXpCUSxvQkFBb0Isa0JBRWpCLHFCQUFxQjtrR0FGeEIsb0JBQW9CLCtGQ3RCakMsd09BS0EsMkNEZWMsV0FBVyxzSUFBRSxtQkFBbUIsa05BQVEsS0FBSyxrSEFBRSxxQkFBcUIsc2hCQUFFLFlBQVk7OzJGQUVuRixvQkFBb0I7a0JBTGhDLFNBQVM7aUNBRU0sSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxDQUFDOzswQkFJeEYsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZSwgTmdGb3IsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdENoZWNrYm94TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0ZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGR9IGZyb20gJy4uLy4uL3NlYXJjaC9jbGFzc2VzL2dyYXBocWwtZG9jdHJpbmUudHlwZXMnO1xuaW1wb3J0IHtOQVRVUkFMX0RST1BET1dOX0RBVEEsIE5hdHVyYWxEcm9wZG93bkRhdGF9IGZyb20gJy4uLy4uL3NlYXJjaC9kcm9wZG93bi1jb250YWluZXIvZHJvcGRvd24uc2VydmljZSc7XG5pbXBvcnQge0Ryb3Bkb3duQ29tcG9uZW50fSBmcm9tICcuLi8uLi9zZWFyY2gvdHlwZXMvZHJvcGRvd24tY29tcG9uZW50JztcbmltcG9ydCB7VHlwZU9wdGlvbnNDb21wb25lbnQsIFR5cGVPcHRpb25zQ29uZmlndXJhdGlvbn0gZnJvbSAnLi4vdHlwZS1vcHRpb25zL3R5cGUtb3B0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHtOYXR1cmFsRHJvcGRvd25SZWZ9IGZyb20gJy4uLy4uL3NlYXJjaC9kcm9wZG93bi1jb250YWluZXIvZHJvcGRvd24tcmVmJztcbmltcG9ydCB7TWF0QnV0dG9uVG9nZ2xlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcblxuZXhwb3J0IGludGVyZmFjZSBUeXBlQm9vbGVhbkNvbmZpZ3VyYXRpb24ge1xuICAgIGRpc3BsYXlXaGVuQWN0aXZlOiBzdHJpbmc7XG4gICAgZGlzcGxheVdoZW5JbmFjdGl2ZTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4uL3R5cGUtb3B0aW9ucy90eXBlLW9wdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ0lmLCBOZ0ZvciwgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLCBDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBUeXBlQm9vbGVhbkNvbXBvbmVudCBleHRlbmRzIFR5cGVPcHRpb25zQ29tcG9uZW50IGltcGxlbWVudHMgRHJvcGRvd25Db21wb25lbnQge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChOQVRVUkFMX0RST1BET1dOX0RBVEEpIGRhdGE6IE5hdHVyYWxEcm9wZG93bkRhdGE8VHlwZUJvb2xlYW5Db25maWd1cmF0aW9uPixcbiAgICAgICAgZHJvcGRvd25SZWY6IE5hdHVyYWxEcm9wZG93blJlZixcbiAgICApIHtcbiAgICAgICAgLy8gU2V0IHVwIG9wdGlvbnMgZnJvbSBoYXJkY29kZWQgY29uZGl0aW9ucyB3aXRoIGN1c3RvbSBsYWJlbHMgZnJvbSBjb25maWdcbiAgICAgICAgY29uc3QgY29uZmlndXJhdGlvbjogVHlwZU9wdGlvbnNDb25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZGF0YS5jb25maWd1cmF0aW9uLmRpc3BsYXlXaGVuQWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb246IHtlcXVhbDoge3ZhbHVlOiB0cnVlfX0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGRhdGEuY29uZmlndXJhdGlvbi5kaXNwbGF5V2hlbkluYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb246IHtlcXVhbDoge3ZhbHVlOiBmYWxzZX19LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHR5cGVPcHRpb25zRGF0YTogTmF0dXJhbERyb3Bkb3duRGF0YTxUeXBlT3B0aW9uc0NvbmZpZ3VyYXRpb24+ID0ge1xuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIC4uLntjb25maWd1cmF0aW9uOiBjb25maWd1cmF0aW9ufSxcbiAgICAgICAgfTtcblxuICAgICAgICBzdXBlcih0eXBlT3B0aW9uc0RhdGEsIGRyb3Bkb3duUmVmKTtcbiAgICB9XG59XG4iLCI8bWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCI+XG4gICAgPG1hdC1idXR0b24tdG9nZ2xlICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgY29uZmlndXJhdGlvbi5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvblwiPnt7XG4gICAgICAgIG9wdGlvbi5kaXNwbGF5XG4gICAgfX08L21hdC1idXR0b24tdG9nZ2xlPlxuPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1ib29sZWFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1ib29sZWFuL3R5cGUtYm9vbGVhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtb3B0aW9ucy90eXBlLW9wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSxrREFBa0QsQ0FBQztBQUU1RyxPQUFPLEVBQUMsb0JBQW9CLEVBQTJCLE1BQU0sd0NBQXdDLENBQUM7QUFFdEcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7Ozs7O0FBWXRFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxvQkFBb0I7SUFDMUQsWUFDbUMsSUFBbUQsRUFDbEYsV0FBK0I7UUFFL0IsMEVBQTBFO1FBQzFFLE1BQU0sYUFBYSxHQUE2QjtZQUM1QyxPQUFPLEVBQUU7Z0JBQ0w7b0JBQ0ksT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCO29CQUM3QyxTQUFTLEVBQUUsRUFBQyxLQUFLLEVBQUUsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLEVBQUM7aUJBQ3BDO2dCQUNEO29CQUNJLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQjtvQkFDL0MsU0FBUyxFQUFFLEVBQUMsS0FBSyxFQUFFLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBQyxFQUFDO2lCQUNyQzthQUNKO1NBQ0osQ0FBQztRQUVGLE1BQU0sZUFBZSxHQUFrRDtZQUNuRSxHQUFHLElBQUk7WUFDUCxHQUFHLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBQztTQUNwQyxDQUFDO1FBRUYsS0FBSyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQXpCUSxvQkFBb0Isa0JBRWpCLHFCQUFxQjtrR0FGeEIsb0JBQW9CLCtGQ25CakMsd09BS0EsMkNEWWMsV0FBVyxzSUFBRSxtQkFBbUIsa05BQVEsS0FBSyxrSEFBRSxxQkFBcUIsc2hCQUFFLFlBQVk7OzJGQUVuRixvQkFBb0I7a0JBTGhDLFNBQVM7aUNBRU0sSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxDQUFDOzswQkFJeEYsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZSwgTmdGb3IsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TkFUVVJBTF9EUk9QRE9XTl9EQVRBLCBOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuLi8uLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi4vLi4vc2VhcmNoL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVPcHRpb25zQ29tcG9uZW50LCBUeXBlT3B0aW9uc0NvbmZpZ3VyYXRpb259IGZyb20gJy4uL3R5cGUtb3B0aW9ucy90eXBlLW9wdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7TmF0dXJhbERyb3Bkb3duUmVmfSBmcm9tICcuLi8uLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLXJlZic7XG5pbXBvcnQge01hdEJ1dHRvblRvZ2dsZU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZUJvb2xlYW5Db25maWd1cmF0aW9uIHtcbiAgICBkaXNwbGF5V2hlbkFjdGl2ZTogc3RyaW5nO1xuICAgIGRpc3BsYXlXaGVuSW5hY3RpdmU6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuLi90eXBlLW9wdGlvbnMvdHlwZS1vcHRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgTmdJZiwgTmdGb3IsIE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHlwZUJvb2xlYW5Db21wb25lbnQgZXh0ZW5kcyBUeXBlT3B0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIERyb3Bkb3duQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTkFUVVJBTF9EUk9QRE9XTl9EQVRBKSBkYXRhOiBOYXR1cmFsRHJvcGRvd25EYXRhPFR5cGVCb29sZWFuQ29uZmlndXJhdGlvbj4sXG4gICAgICAgIGRyb3Bkb3duUmVmOiBOYXR1cmFsRHJvcGRvd25SZWYsXG4gICAgKSB7XG4gICAgICAgIC8vIFNldCB1cCBvcHRpb25zIGZyb20gaGFyZGNvZGVkIGNvbmRpdGlvbnMgd2l0aCBjdXN0b20gbGFiZWxzIGZyb20gY29uZmlnXG4gICAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb246IFR5cGVPcHRpb25zQ29uZmlndXJhdGlvbiA9IHtcbiAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGRhdGEuY29uZmlndXJhdGlvbi5kaXNwbGF5V2hlbkFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgY29uZGl0aW9uOiB7ZXF1YWw6IHt2YWx1ZTogdHJ1ZX19LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBkYXRhLmNvbmZpZ3VyYXRpb24uZGlzcGxheVdoZW5JbmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgY29uZGl0aW9uOiB7ZXF1YWw6IHt2YWx1ZTogZmFsc2V9fSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCB0eXBlT3B0aW9uc0RhdGE6IE5hdHVyYWxEcm9wZG93bkRhdGE8VHlwZU9wdGlvbnNDb25maWd1cmF0aW9uPiA9IHtcbiAgICAgICAgICAgIC4uLmRhdGEsXG4gICAgICAgICAgICAuLi57Y29uZmlndXJhdGlvbjogY29uZmlndXJhdGlvbn0sXG4gICAgICAgIH07XG5cbiAgICAgICAgc3VwZXIodHlwZU9wdGlvbnNEYXRhLCBkcm9wZG93blJlZik7XG4gICAgfVxufVxuIiwiPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiPlxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGNvbmZpZ3VyYXRpb24ub3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb25cIj57e1xuICAgICAgICBvcHRpb24uZGlzcGxheVxuICAgIH19PC9tYXQtYnV0dG9uLXRvZ2dsZT5cbjwvbWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXA+XG4iXX0=
@@ -8,7 +8,7 @@ export * from './lib/classes/abstract-detail';
8
8
  export * from './lib/classes/abstract-editable-list';
9
9
  export * from './lib/classes/abstract-list';
10
10
  export * from './lib/classes/abstract-navigable-list';
11
- export { hasFilesAndProcessDate, isMutation } from './lib/classes/apollo-utils';
11
+ export { createHttpLink } from './lib/classes/apollo-utils';
12
12
  export * from './lib/classes/data-source';
13
13
  export * from './lib/classes/query-variable-manager';
14
14
  export * from './lib/classes/rxjs';
@@ -45,4 +45,5 @@ export * from './lib/modules/matomo/public-api';
45
45
  export * from './lib/modules/logger/public-api';
46
46
  export * from './lib/directives/http-prefix.directive';
47
47
  export { naturalProviders } from './lib/classes/providers';
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0hBQXdIO0FBQ3hILE9BQU8sd0JBQXdCLENBQUM7QUFFaEM7O0dBRUc7QUFFSCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsT0FBTyxFQUFDLHNCQUFzQixFQUFFLFVBQVUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlFLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFNUMsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsT0FBTyxFQUFDLHlCQUF5QixFQUFFLDZCQUE2QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDNUcsY0FBYyxtREFBbUQsQ0FBQztBQUVsRSxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMb2FkIGAkbG9jYWxpemVgIG9udG8gdGhlIGdsb2JhbCBzY29wZSAtIHRvIGJlIGFibGUgdG8gdXNlIHRoYXQgZnVuY3Rpb24gdG8gdHJhbnNsYXRlIHN0cmluZ3MgaW4gY29tcG9uZW50cy9zZXJ2aWNlcy5cbmltcG9ydCAnQGFuZ3VsYXIvbG9jYWxpemUvaW5pdCc7XG5cbi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvYWJzdHJhY3QtY29udHJvbGxlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL2Fic3RyYWN0LWRldGFpbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL2Fic3RyYWN0LWVkaXRhYmxlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9hYnN0cmFjdC1saXN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvYWJzdHJhY3QtbmF2aWdhYmxlLWxpc3QnO1xuZXhwb3J0IHtoYXNGaWxlc0FuZFByb2Nlc3NEYXRlLCBpc011dGF0aW9ufSBmcm9tICcuL2xpYi9jbGFzc2VzL2Fwb2xsby11dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL2RhdGEtc291cmNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvcXVlcnktdmFyaWFibGUtbWFuYWdlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL3J4anMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy91dGlsaXR5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvdmFsaWRhdG9ycyc7XG5leHBvcnQge3ZhbGlkVGxkc30gZnJvbSAnLi9saWIvY2xhc3Nlcy90bGQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hYnN0cmFjdC1tb2RlbC5zZXJ2aWNlJztcbmV4cG9ydCB7TmF0dXJhbERlYm91bmNlU2VydmljZX0gZnJvbSAnLi9saWIvc2VydmljZXMvZGVib3VuY2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9lbnVtLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbGluay1tdXRhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCB7TmF0dXJhbFBlcnNpc3RlbmNlU2VydmljZSwgTkFUVVJBTF9QRVJTSVNURU5DRV9WQUxJREFUT1J9IGZyb20gJy4vbGliL3NlcnZpY2VzL3BlcnNpc3RlbmNlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc3dpc3MtcGFyc2luZy1kYXRlLWFkYXB0ZXIuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzL3R5cGVzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9hbGVydC9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvY29sdW1ucy1waWNrZXIvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2NvbW1vbi9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvZGV0YWlsLWhlYWRlci9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvZHJvcGRvd24tY29tcG9uZW50cy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvZmlsZS9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvZml4ZWQtYnV0dG9uL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9maXhlZC1idXR0b24tZGV0YWlsL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9oaWVyYXJjaGljLXNlbGVjdG9yL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9pY29uL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9wYW5lbHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL3JlbGF0aW9ucy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvc2VhcmNoL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9zZWxlY3QvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL3NpZGVuYXYvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL3N0YW1wL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy90YWJsZS1idXR0b24vcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2RpYWxvZy10cmlnZ2VyL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9hdmF0YXIvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL21hdG9tby9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvbG9nZ2VyL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2h0dHAtcHJlZml4LmRpcmVjdGl2ZSc7XG5leHBvcnQge25hdHVyYWxQcm92aWRlcnN9IGZyb20gJy4vbGliL2NsYXNzZXMvcHJvdmlkZXJzJztcbiJdfQ==
48
+ export { graphqlQuerySigner } from './lib/classes/signing';
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0hBQXdIO0FBQ3hILE9BQU8sd0JBQXdCLENBQUM7QUFFaEM7O0dBRUc7QUFFSCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzFELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFNUMsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsT0FBTyxFQUFDLHlCQUF5QixFQUFFLDZCQUE2QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDNUcsY0FBYyxtREFBbUQsQ0FBQztBQUVsRSxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMb2FkIGAkbG9jYWxpemVgIG9udG8gdGhlIGdsb2JhbCBzY29wZSAtIHRvIGJlIGFibGUgdG8gdXNlIHRoYXQgZnVuY3Rpb24gdG8gdHJhbnNsYXRlIHN0cmluZ3MgaW4gY29tcG9uZW50cy9zZXJ2aWNlcy5cbmltcG9ydCAnQGFuZ3VsYXIvbG9jYWxpemUvaW5pdCc7XG5cbi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvYWJzdHJhY3QtY29udHJvbGxlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL2Fic3RyYWN0LWRldGFpbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL2Fic3RyYWN0LWVkaXRhYmxlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9hYnN0cmFjdC1saXN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvYWJzdHJhY3QtbmF2aWdhYmxlLWxpc3QnO1xuZXhwb3J0IHtjcmVhdGVIdHRwTGlua30gZnJvbSAnLi9saWIvY2xhc3Nlcy9hcG9sbG8tdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9kYXRhLXNvdXJjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL3F1ZXJ5LXZhcmlhYmxlLW1hbmFnZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2xhc3Nlcy9yeGpzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMvdXRpbGl0eSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzL3ZhbGlkYXRvcnMnO1xuZXhwb3J0IHt2YWxpZFRsZHN9IGZyb20gJy4vbGliL2NsYXNzZXMvdGxkJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYWJzdHJhY3QtbW9kZWwuc2VydmljZSc7XG5leHBvcnQge05hdHVyYWxEZWJvdW5jZVNlcnZpY2V9IGZyb20gJy4vbGliL3NlcnZpY2VzL2RlYm91bmNlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZW51bS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xpbmstbXV0YXRpb24uc2VydmljZSc7XG5leHBvcnQge05hdHVyYWxQZXJzaXN0ZW5jZVNlcnZpY2UsIE5BVFVSQUxfUEVSU0lTVEVOQ0VfVkFMSURBVE9SfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3N3aXNzLXBhcnNpbmctZGF0ZS1hZGFwdGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcy90eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvYWxlcnQvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2NvbHVtbnMtcGlja2VyL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9jb21tb24vcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2RldGFpbC1oZWFkZXIvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2ZpbGUvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2ZpeGVkLWJ1dHRvbi9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvZml4ZWQtYnV0dG9uLWRldGFpbC9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvaGllcmFyY2hpYy1zZWxlY3Rvci9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvaWNvbi9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvcGFuZWxzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9yZWxhdGlvbnMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL3NlYXJjaC9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvc2VsZWN0L3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9zaWRlbmF2L3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9zdGFtcC9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvdGFibGUtYnV0dG9uL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9kaWFsb2ctdHJpZ2dlci9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZXMvYXZhdGFyL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy9tYXRvbW8vcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGVzL2xvZ2dlci9wdWJsaWMtYXBpJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9odHRwLXByZWZpeC5kaXJlY3RpdmUnO1xuZXhwb3J0IHtuYXR1cmFsUHJvdmlkZXJzfSBmcm9tICcuL2xpYi9jbGFzc2VzL3Byb3ZpZGVycyc7XG5leHBvcnQge2dyYXBocWxRdWVyeVNpZ25lcn0gZnJvbSAnLi9saWIvY2xhc3Nlcy9zaWduaW5nJztcbiJdfQ==
@@ -37,9 +37,11 @@ import * as i3$1 from '@angular/material/select';
37
37
  import { MatSelectModule } from '@angular/material/select';
38
38
  import * as i3 from '@angular/material/form-field';
39
39
  import { MatFormFieldModule } from '@angular/material/form-field';
40
+ import { ApolloLink, NetworkStatus } from '@apollo/client/core';
41
+ import extractFiles from 'extract-files/extractFiles.mjs';
42
+ import isExtractableFile from 'extract-files/isExtractableFile.mjs';
40
43
  import * as i1$4 from 'apollo-angular';
41
44
  import { gql } from 'apollo-angular';
42
- import { NetworkStatus } from '@apollo/client/core';
43
45
  import * as i1$6 from '@angular/cdk/layout';
44
46
  import { Breakpoints } from '@angular/cdk/layout';
45
47
  import * as i6$1 from '@angular/material/tooltip';
@@ -73,6 +75,7 @@ import * as i2$6 from '@angular/material/sidenav';
73
75
  import { MatSidenavContainer, MatSidenav, MatSidenavModule } from '@angular/material/sidenav';
74
76
  import * as i1$9 from '@angular/common/http';
75
77
  import { HttpHeaders } from '@angular/common/http';
78
+ import { HmacSHA256 } from 'crypto-es/lib/sha256';
76
79
 
77
80
  class NaturalAbstractController {
78
81
  constructor() {
@@ -4152,6 +4155,20 @@ function hasFilesAndProcessDate(variables) {
4152
4155
  function isMutation(query) {
4153
4156
  return query.definitions.some(definition => definition.kind === 'OperationDefinition' && definition.operation === 'mutation');
4154
4157
  }
4158
+ const naturalExtractFiles = body => extractFiles(body, isExtractableFile);
4159
+ /**
4160
+ * Create an Apollo link that supports batched queries and file uploads.
4161
+ *
4162
+ * File uploads and mutations are never batched.
4163
+ */
4164
+ function createHttpLink(httpLink, httpBatchLink, options) {
4165
+ // If the query has no file, batch it, otherwise upload only that query
4166
+ return ApolloLink.split(operation => hasFilesAndProcessDate(operation.variables) || isMutation(operation.query), httpLink.create({
4167
+ ...options,
4168
+ useMultipart: true,
4169
+ extractFiles: naturalExtractFiles,
4170
+ }), httpBatchLink.create(options));
4171
+ }
4155
4172
 
4156
4173
  /**
4157
4174
  * Behave like setTimeout(), but with a mandatory cancel mechanism.
@@ -11188,11 +11205,46 @@ const naturalProviders = [
11188
11205
  localStorageProvider,
11189
11206
  ];
11190
11207
 
11208
+ function getOperations(req) {
11209
+ if (req.body instanceof FormData) {
11210
+ const operations = req.body.get('operations');
11211
+ if (typeof operations !== 'string') {
11212
+ throw new Error('Cannot sign a GraphQL query that is using FormData but that is missing the key `operations`');
11213
+ }
11214
+ return operations;
11215
+ }
11216
+ else {
11217
+ return JSON.stringify(req.body);
11218
+ }
11219
+ }
11220
+ /**
11221
+ * Sign all HTTP POST requests that are GraphQL queries against `/graphql` endpoint with a custom signature.
11222
+ *
11223
+ * The server will validate the signature before executing the GraphQL query.
11224
+ */
11225
+ function graphqlQuerySigner(key) {
11226
+ return (req, next) => {
11227
+ const mustSign = req.method === 'POST' && req.url.match(/\/graphql(\?|$)/);
11228
+ if (!mustSign) {
11229
+ return next(req);
11230
+ }
11231
+ const operations = getOperations(req);
11232
+ const timestamp = Math.round(Date.now() / 1000);
11233
+ const payload = timestamp + operations;
11234
+ const hash = HmacSHA256(payload, key).toString();
11235
+ const header = `v1.${timestamp}.${hash}`;
11236
+ const signedRequest = req.clone({
11237
+ headers: req.headers.set('Authorization', header),
11238
+ });
11239
+ return next(signedRequest);
11240
+ };
11241
+ }
11242
+
11191
11243
  // Load `$localize` onto the global scope - to be able to use that function to translate strings in components/services.
11192
11244
 
11193
11245
  /**
11194
11246
  * Generated bundle index. Do not edit.
11195
11247
  */
11196
11248
 
11197
- export { AvatarService, LOCAL_STORAGE, NATURAL_DROPDOWN_DATA, NATURAL_ICONS_CONFIG, NATURAL_PERSISTENCE_VALIDATOR, NATURAL_SEO_CONFIG, NaturalAbstractController, NaturalAbstractDetail, NaturalAbstractEditableList, NaturalAbstractList, NaturalAbstractModelService, NaturalAbstractNavigableList, NaturalAbstractPanel, NaturalAlertService, NaturalAvatarComponent, NaturalCapitalizePipe, NaturalColumnsPickerComponent, NaturalConfirmComponent, NaturalDataSource, NaturalDebounceService, NaturalDetailHeaderComponent, NaturalDialogTriggerComponent, NaturalDropdownRef, NaturalEllipsisPipe, NaturalEnumPipe, NaturalEnumService, NaturalErrorHandler, NaturalFileComponent, NaturalFileDropDirective, NaturalFileSelectDirective, NaturalFileService, NaturalFixedButtonComponent, NaturalFixedButtonDetailComponent, NaturalHierarchicSelectorComponent, NaturalHierarchicSelectorDialogComponent, NaturalHierarchicSelectorDialogService, NaturalHierarchicSelectorService, NaturalHttpPrefixDirective, NaturalIconDirective, NaturalLinkMutationService, NaturalLinkableTabDirective, NaturalLoggerConfigExtra, NaturalLoggerConfigUrl, NaturalMatomoService, NaturalMemoryStorage, NaturalPanelsComponent, NaturalPanelsService, NaturalPersistenceService, NaturalQueryVariablesManager, NaturalRelationsComponent, NaturalSearchComponent, NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent, NaturalSeoService, NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent, NaturalSidenavService, NaturalSidenavStackService, NaturalSrcDensityDirective, NaturalStampComponent, NaturalSwissDatePipe, NaturalSwissParsingDateAdapter, NaturalTableButtonComponent, NaturalTimeAgoPipe, PanelsHooksConfig, SESSION_STORAGE, SortingOrder, TypeBooleanComponent, TypeDateComponent, TypeDateRangeComponent, TypeHierarchicSelectorComponent, TypeNaturalSelectComponent, TypeNumberComponent, TypeOptionsComponent, TypeSelectComponent, TypeTextComponent, available, cancellableTimeout, cleanSameValues, collectErrors, copyToClipboard, debug, decimal, deepFreeze, deliverableEmail, ensureHttpPrefix, fallbackIfNoOpenedPanels, formatIsoDate, formatIsoDateTime, fromUrl, getForegroundColor, hasFilesAndProcessDate, ifValid, integer, isMutation, localStorageFactory, localStorageProvider, lowerCaseFirstLetter, makePlural, memoryLocalStorageProvider, memorySessionStorageProvider, mergeOverrideArray, money, naturalPanelsUrlMatcher, naturalProviders, provideErrorHandler, provideIcons, providePanels, provideSeo, relationsToIds, replaceObjectKeepingReference, replaceOperatorByField, replaceOperatorByName, sessionStorageFactory, sessionStorageProvider, toGraphQLDoctrineFilter, toNavigationParameters, toUrl, unique, upperCaseFirstLetter, urlValidator, validTlds, validateAllFormControls, wrapLike };
11249
+ export { AvatarService, LOCAL_STORAGE, NATURAL_DROPDOWN_DATA, NATURAL_ICONS_CONFIG, NATURAL_PERSISTENCE_VALIDATOR, NATURAL_SEO_CONFIG, NaturalAbstractController, NaturalAbstractDetail, NaturalAbstractEditableList, NaturalAbstractList, NaturalAbstractModelService, NaturalAbstractNavigableList, NaturalAbstractPanel, NaturalAlertService, NaturalAvatarComponent, NaturalCapitalizePipe, NaturalColumnsPickerComponent, NaturalConfirmComponent, NaturalDataSource, NaturalDebounceService, NaturalDetailHeaderComponent, NaturalDialogTriggerComponent, NaturalDropdownRef, NaturalEllipsisPipe, NaturalEnumPipe, NaturalEnumService, NaturalErrorHandler, NaturalFileComponent, NaturalFileDropDirective, NaturalFileSelectDirective, NaturalFileService, NaturalFixedButtonComponent, NaturalFixedButtonDetailComponent, NaturalHierarchicSelectorComponent, NaturalHierarchicSelectorDialogComponent, NaturalHierarchicSelectorDialogService, NaturalHierarchicSelectorService, NaturalHttpPrefixDirective, NaturalIconDirective, NaturalLinkMutationService, NaturalLinkableTabDirective, NaturalLoggerConfigExtra, NaturalLoggerConfigUrl, NaturalMatomoService, NaturalMemoryStorage, NaturalPanelsComponent, NaturalPanelsService, NaturalPersistenceService, NaturalQueryVariablesManager, NaturalRelationsComponent, NaturalSearchComponent, NaturalSelectComponent, NaturalSelectEnumComponent, NaturalSelectHierarchicComponent, NaturalSeoService, NaturalSidenavComponent, NaturalSidenavContainerComponent, NaturalSidenavContentComponent, NaturalSidenavService, NaturalSidenavStackService, NaturalSrcDensityDirective, NaturalStampComponent, NaturalSwissDatePipe, NaturalSwissParsingDateAdapter, NaturalTableButtonComponent, NaturalTimeAgoPipe, PanelsHooksConfig, SESSION_STORAGE, SortingOrder, TypeBooleanComponent, TypeDateComponent, TypeDateRangeComponent, TypeHierarchicSelectorComponent, TypeNaturalSelectComponent, TypeNumberComponent, TypeOptionsComponent, TypeSelectComponent, TypeTextComponent, available, cancellableTimeout, cleanSameValues, collectErrors, copyToClipboard, createHttpLink, debug, decimal, deepFreeze, deliverableEmail, ensureHttpPrefix, fallbackIfNoOpenedPanels, formatIsoDate, formatIsoDateTime, fromUrl, getForegroundColor, graphqlQuerySigner, ifValid, integer, localStorageFactory, localStorageProvider, lowerCaseFirstLetter, makePlural, memoryLocalStorageProvider, memorySessionStorageProvider, mergeOverrideArray, money, naturalPanelsUrlMatcher, naturalProviders, provideErrorHandler, provideIcons, providePanels, provideSeo, relationsToIds, replaceObjectKeepingReference, replaceOperatorByField, replaceOperatorByName, sessionStorageFactory, sessionStorageProvider, toGraphQLDoctrineFilter, toNavigationParameters, toUrl, unique, upperCaseFirstLetter, urlValidator, validTlds, validateAllFormControls, wrapLike };
11198
11250
  //# sourceMappingURL=ecodev-natural.mjs.map