@coveo/push-api-client 2.1.19 → 2.2.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.
Files changed (74) hide show
  1. package/dist/definitions/documentBuilder.d.ts +14 -5
  2. package/dist/definitions/errors/fieldErrors.d.ts +7 -0
  3. package/dist/definitions/errors/index.d.ts +3 -0
  4. package/dist/definitions/fieldAnalyser/fieldAnalyser.d.ts +1 -1
  5. package/dist/definitions/fieldAnalyser/fieldUtils.d.ts +3 -0
  6. package/dist/definitions/help/fileConsumer.d.ts +2 -2
  7. package/dist/definitions/index.d.ts +2 -0
  8. package/dist/definitions/interfaces.d.ts +17 -2
  9. package/dist/definitions/source/documentUploader.d.ts +1 -1
  10. package/dist/definitions/validation/parseFile.d.ts +2 -1
  11. package/dist/definitions/validation/transformers/transformer.d.ts +31 -0
  12. package/dist/definitions/validation/transformers/transformer.spec.d.ts +1 -0
  13. package/dist/docs/assets/search.js +1 -1
  14. package/dist/docs/classes/AnySecurityIdentityBuilder.html +3 -3
  15. package/dist/docs/classes/CatalogSource.html +7 -7
  16. package/dist/docs/classes/DocumentBuilder.html +17 -17
  17. package/dist/docs/classes/FieldAnalyser.html +4 -4
  18. package/dist/docs/classes/GroupSecurityIdentityBuilder.html +3 -3
  19. package/dist/docs/classes/PushSource.html +14 -14
  20. package/dist/docs/classes/UserSecurityIdentityBuilder.html +3 -3
  21. package/dist/docs/classes/VirtualGroupSecurityIdentityBuilder.html +3 -3
  22. package/dist/docs/classes/errors.FieldTypeInconsistencyError.html +6 -0
  23. package/dist/docs/classes/errors.InvalidDocument.html +6 -0
  24. package/dist/docs/classes/errors.InvalidPermanentId.html +6 -0
  25. package/dist/docs/classes/errors.NotAFileError.html +6 -0
  26. package/dist/docs/classes/errors.NotAJsonFileError.html +6 -0
  27. package/dist/docs/classes/errors.PrivilegeError.html +6 -0
  28. package/dist/docs/classes/errors.UnsupportedAttribute.html +6 -0
  29. package/dist/docs/classes/errors.UnsupportedFieldError.html +6 -0
  30. package/dist/docs/enums/PlatformEnvironment.html +1 -1
  31. package/dist/docs/enums/Region.html +1 -1
  32. package/dist/docs/enums/SourceVisibility.html +1 -1
  33. package/dist/docs/index.html +1 -1
  34. package/dist/docs/interfaces/BatchUpdateDocuments.html +1 -1
  35. package/dist/docs/interfaces/Document.html +14 -14
  36. package/dist/docs/interfaces/SecurityIdentity.html +4 -4
  37. package/dist/docs/interfaces/SecurityIdentityBuilder.html +1 -1
  38. package/dist/docs/interfaces/UploadBatchCallbackData.html +1 -1
  39. package/dist/docs/modules/errors.html +1 -0
  40. package/dist/docs/modules.html +3 -3
  41. package/dist/documentBuilder.js +38 -9
  42. package/dist/documentBuilder.js.map +1 -1
  43. package/dist/documentBuilder.spec.js +41 -0
  44. package/dist/documentBuilder.spec.js.map +1 -1
  45. package/dist/errors/fieldErrors.js +19 -1
  46. package/dist/errors/fieldErrors.js.map +1 -1
  47. package/dist/errors/index.js +20 -0
  48. package/dist/errors/index.js.map +1 -0
  49. package/dist/fieldAnalyser/fieldAnalyser.js +1 -1
  50. package/dist/fieldAnalyser/fieldUtils.js +16 -1
  51. package/dist/fieldAnalyser/fieldUtils.js.map +1 -1
  52. package/dist/help/fileConsumer.js +2 -2
  53. package/dist/help/fileConsumer.js.map +1 -1
  54. package/dist/index.js +3 -1
  55. package/dist/index.js.map +1 -1
  56. package/dist/source/batchUploadDocumentsFromFile.js +5 -9
  57. package/dist/source/batchUploadDocumentsFromFile.js.map +1 -1
  58. package/dist/source/catalog.spec.js +4 -4
  59. package/dist/source/catalog.spec.js.map +1 -1
  60. package/dist/source/documentUploader.js +6 -12
  61. package/dist/source/documentUploader.js.map +1 -1
  62. package/dist/source/push.js +3 -7
  63. package/dist/source/push.js.map +1 -1
  64. package/dist/source/push.spec.js +21 -4
  65. package/dist/source/push.spec.js.map +1 -1
  66. package/dist/validation/parseFile.js +9 -7
  67. package/dist/validation/parseFile.js.map +1 -1
  68. package/dist/validation/parseFile.spec.js +4 -0
  69. package/dist/validation/parseFile.spec.js.map +1 -1
  70. package/dist/validation/transformers/transformer.js +52 -0
  71. package/dist/validation/transformers/transformer.js.map +1 -0
  72. package/dist/validation/transformers/transformer.spec.js +22 -0
  73. package/dist/validation/transformers/transformer.spec.js.map +1 -0
  74. package/package.json +2 -1
@@ -1,4 +1,4 @@
1
- <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@coveo/push-api-client</title><meta name="description" content="Documentation for @coveo/push-api-client"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script async src="assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base="."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">@coveo/push-api-client</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><h1>@coveo/push-api-client </h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Enumerations</h3><ul class="tsd-index-list"><li class="tsd-kind-enum"><a href="enums/PlatformEnvironment.html" class="tsd-kind-icon">Platform<wbr/>Environment</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/Region.html" class="tsd-kind-icon">Region</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/SourceVisibility.html" class="tsd-kind-icon">Source<wbr/>Visibility</a></li></ul></section><section class="tsd-index-section "><h3>Classes</h3><ul class="tsd-index-list"><li class="tsd-kind-class"><a href="classes/AnySecurityIdentityBuilder.html" class="tsd-kind-icon">Any<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/CatalogSource.html" class="tsd-kind-icon">Catalog<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/DocumentBuilder.html" class="tsd-kind-icon">Document<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/FieldAnalyser.html" class="tsd-kind-icon">Field<wbr/>Analyser</a></li><li class="tsd-kind-class"><a href="classes/GroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/PushSource.html" class="tsd-kind-icon">Push<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/UserSecurityIdentityBuilder.html" class="tsd-kind-icon">User<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/VirtualGroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Virtual<wbr/>Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li></ul></section><section class="tsd-index-section "><h3>Interfaces</h3><ul class="tsd-index-list"><li class="tsd-kind-interface"><a href="interfaces/BatchUpdateDocuments.html" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents</a></li><li class="tsd-kind-interface"><a href="interfaces/Document.html" class="tsd-kind-icon">Document</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentity.html" class="tsd-kind-icon">Security<wbr/>Identity</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentityBuilder.html" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/UploadBatchCallbackData.html" class="tsd-kind-icon">Upload<wbr/>Batch<wbr/>Callback<wbr/>Data</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias"><a href="modules.html#BatchUpdateDocumentsFromFiles" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CompressionType" class="tsd-kind-icon">Compression<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#FailedUploadCallback" class="tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Metadata" class="tsd-kind-icon">Metadata</a></li><li class="tsd-kind-type-alias"><a href="modules.html#MetadataValue" class="tsd-kind-icon">Metadata<wbr/>Value</a></li><li class="tsd-kind-type-alias"><a href="modules.html#PlatformUrlOptions" class="tsd-kind-icon">Platform<wbr/>Url<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SecurityIdentityType" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SuccessfulUploadCallback" class="tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback</a></li></ul></section><section class="tsd-index-section "><h3>Variables</h3><ul class="tsd-index-list"><li class="tsd-kind-variable"><a href="modules.html#Source" class="tsd-kind-icon">Source</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="BatchUpdateDocumentsFromFiles" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files<a href="#BatchUpdateDocumentsFromFiles" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">BatchUpdateDocumentsOptions</span><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-type">ConcurrentProcessing</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/interfaces.ts#L41">src/interfaces.ts:41</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="CompressionType" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Compression<wbr/>Type<a href="#CompressionType" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Compression<wbr/>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;UNCOMPRESSED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;DEFLATE&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;GZIP&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LZMA&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;ZLIB&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/document.ts#L42">src/document.ts:42</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
1
+ <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@coveo/push-api-client</title><meta name="description" content="Documentation for @coveo/push-api-client"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script async src="assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base="."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">@coveo/push-api-client</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><h1>@coveo/push-api-client </h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Namespaces</h3><ul class="tsd-index-list"><li class="tsd-kind-namespace"><a href="modules/errors.html" class="tsd-kind-icon">errors</a></li></ul></section><section class="tsd-index-section "><h3>Enumerations</h3><ul class="tsd-index-list"><li class="tsd-kind-enum"><a href="enums/PlatformEnvironment.html" class="tsd-kind-icon">Platform<wbr/>Environment</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/Region.html" class="tsd-kind-icon">Region</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/SourceVisibility.html" class="tsd-kind-icon">Source<wbr/>Visibility</a></li></ul></section><section class="tsd-index-section "><h3>Classes</h3><ul class="tsd-index-list"><li class="tsd-kind-class"><a href="classes/AnySecurityIdentityBuilder.html" class="tsd-kind-icon">Any<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/CatalogSource.html" class="tsd-kind-icon">Catalog<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/DocumentBuilder.html" class="tsd-kind-icon">Document<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/FieldAnalyser.html" class="tsd-kind-icon">Field<wbr/>Analyser</a></li><li class="tsd-kind-class"><a href="classes/GroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/PushSource.html" class="tsd-kind-icon">Push<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/UserSecurityIdentityBuilder.html" class="tsd-kind-icon">User<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/VirtualGroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Virtual<wbr/>Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li></ul></section><section class="tsd-index-section "><h3>Interfaces</h3><ul class="tsd-index-list"><li class="tsd-kind-interface"><a href="interfaces/BatchUpdateDocuments.html" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents</a></li><li class="tsd-kind-interface"><a href="interfaces/Document.html" class="tsd-kind-icon">Document</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentity.html" class="tsd-kind-icon">Security<wbr/>Identity</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentityBuilder.html" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/UploadBatchCallbackData.html" class="tsd-kind-icon">Upload<wbr/>Batch<wbr/>Callback<wbr/>Data</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias"><a href="modules.html#BatchUpdateDocumentsFromFiles" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CompressionType" class="tsd-kind-icon">Compression<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#FailedUploadCallback" class="tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Metadata" class="tsd-kind-icon">Metadata</a></li><li class="tsd-kind-type-alias"><a href="modules.html#MetadataValue" class="tsd-kind-icon">Metadata<wbr/>Value</a></li><li class="tsd-kind-type-alias"><a href="modules.html#PlatformUrlOptions" class="tsd-kind-icon">Platform<wbr/>Url<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SecurityIdentityType" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SuccessfulUploadCallback" class="tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Transformer" class="tsd-kind-icon">Transformer</a></li></ul></section><section class="tsd-index-section "><h3>Variables</h3><ul class="tsd-index-list"><li class="tsd-kind-variable"><a href="modules.html#BuiltInTransformers" class="tsd-kind-icon">Built<wbr/>In<wbr/>Transformers</a></li><li class="tsd-kind-variable"><a href="modules.html#Source" class="tsd-kind-icon">Source</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="BatchUpdateDocumentsFromFiles" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files<a href="#BatchUpdateDocumentsFromFiles" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">BatchUpdateDocumentsOptions</span><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-type">ConcurrentProcessing</span><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-type">ParseDocumentOptions</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/interfaces.ts#L59">src/interfaces.ts:59</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="CompressionType" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Compression<wbr/>Type<a href="#CompressionType" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Compression<wbr/>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;UNCOMPRESSED&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;DEFLATE&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;GZIP&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;LZMA&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;ZLIB&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/document.ts#L42">src/document.ts:42</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
2
2
  <p>The compression type that was applied to your compressed document.</p>
3
- </div></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="FailedUploadCallback" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Failed<wbr/>Upload<wbr/>Callback<a href="#FailedUploadCallback" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>err<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">unknown</span>, value<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/help/fileConsumer.ts#L13">src/help/fileConsumer.ts:13</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-type-alias"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>err<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">unknown</span>, value<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>err: <span class="tsd-signature-type">unknown</span></h5></li><li><h5>value: <a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="Metadata" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Metadata<a href="#Metadata" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Metadata<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="modules.html#MetadataValue" class="tsd-signature-type" data-tsd-kind="Type alias">MetadataValue</a><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/document.ts#L37">src/document.ts:37</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="MetadataValue" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Metadata<wbr/>Value<a href="#MetadataValue" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Metadata<wbr/>Value<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/document.ts#L36">src/document.ts:36</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="PlatformUrlOptions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Platform<wbr/>Url<wbr/>Options<a href="#PlatformUrlOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Platform<wbr/>Url<wbr/>Options<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>environment<span class="tsd-signature-symbol">?: </span><a href="enums/PlatformEnvironment.html" class="tsd-signature-type" data-tsd-kind="Enumeration">PlatformEnvironment</a><span class="tsd-signature-symbol">; </span>region<span class="tsd-signature-symbol">?: </span><a href="enums/Region.html" class="tsd-signature-type" data-tsd-kind="Enumeration">Region</a><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/environment.ts#L14">src/environment.ts:14</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> environment<span class="tsd-signature-symbol">?: </span><a href="enums/PlatformEnvironment.html" class="tsd-signature-type" data-tsd-kind="Enumeration">PlatformEnvironment</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> region<span class="tsd-signature-symbol">?: </span><a href="enums/Region.html" class="tsd-signature-type" data-tsd-kind="Enumeration">Region</a></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="SecurityIdentityType" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Security<wbr/>Identity<wbr/>Type<a href="#SecurityIdentityType" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Security<wbr/>Identity<wbr/>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;UNKNOWN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;USER&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;GROUP&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;VIRTUAL_GROUP&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/document.ts#L1">src/document.ts:1</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="SuccessfulUploadCallback" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Successful<wbr/>Upload<wbr/>Callback<a href="#SuccessfulUploadCallback" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/help/fileConsumer.ts#L12">src/help/fileConsumer.ts:12</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-type-alias"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>data: <a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Variables</h2><section class="tsd-panel tsd-member tsd-kind-variable"><a id="Source" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> Source<a href="#Source" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Source<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><a href="classes/PushSource.html" class="tsd-signature-type" data-tsd-kind="Class">PushSource</a><span class="tsd-signature-symbol"> = PushSource</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/38f3f56/src/source/source.ts#L6">src/source/source.ts:6</a></li></ul></aside><div class="tsd-comment tsd-typography"><dl class="tsd-comment-tags"><dt>deprecated</dt><dd><p>This class has been replaced by <a href="classes/PushSource.html">PushSource</a></p>
4
- </dd></dl></div></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-enum"><a href="enums/PlatformEnvironment.html" class="tsd-kind-icon">Platform<wbr/>Environment</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/Region.html" class="tsd-kind-icon">Region</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/SourceVisibility.html" class="tsd-kind-icon">Source<wbr/>Visibility</a></li><li class="tsd-kind-class"><a href="classes/AnySecurityIdentityBuilder.html" class="tsd-kind-icon">Any<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/CatalogSource.html" class="tsd-kind-icon">Catalog<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/DocumentBuilder.html" class="tsd-kind-icon">Document<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/FieldAnalyser.html" class="tsd-kind-icon">Field<wbr/>Analyser</a></li><li class="tsd-kind-class"><a href="classes/GroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/PushSource.html" class="tsd-kind-icon">Push<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/UserSecurityIdentityBuilder.html" class="tsd-kind-icon">User<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/VirtualGroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Virtual<wbr/>Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/BatchUpdateDocuments.html" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents</a></li><li class="tsd-kind-interface"><a href="interfaces/Document.html" class="tsd-kind-icon">Document</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentity.html" class="tsd-kind-icon">Security<wbr/>Identity</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentityBuilder.html" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/UploadBatchCallbackData.html" class="tsd-kind-icon">Upload<wbr/>Batch<wbr/>Callback<wbr/>Data</a></li><li class="tsd-kind-type-alias"><a href="modules.html#BatchUpdateDocumentsFromFiles" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CompressionType" class="tsd-kind-icon">Compression<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#FailedUploadCallback" class="tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Metadata" class="tsd-kind-icon">Metadata</a></li><li class="tsd-kind-type-alias"><a href="modules.html#MetadataValue" class="tsd-kind-icon">Metadata<wbr/>Value</a></li><li class="tsd-kind-type-alias"><a href="modules.html#PlatformUrlOptions" class="tsd-kind-icon">Platform<wbr/>Url<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SecurityIdentityType" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SuccessfulUploadCallback" class="tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-variable"><a href="modules.html#Source" class="tsd-kind-icon">Source</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>
3
+ </div></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="FailedUploadCallback" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Failed<wbr/>Upload<wbr/>Callback<a href="#FailedUploadCallback" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>err<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">unknown</span>, value<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/help/fileConsumer.ts#L14">src/help/fileConsumer.ts:14</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-type-alias"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>err<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">unknown</span>, value<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>err: <span class="tsd-signature-type">unknown</span></h5></li><li><h5>value: <a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="Metadata" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Metadata<a href="#Metadata" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Metadata<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="modules.html#MetadataValue" class="tsd-signature-type" data-tsd-kind="Type alias">MetadataValue</a><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/document.ts#L37">src/document.ts:37</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="MetadataValue" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Metadata<wbr/>Value<a href="#MetadataValue" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Metadata<wbr/>Value<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/document.ts#L36">src/document.ts:36</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="PlatformUrlOptions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Platform<wbr/>Url<wbr/>Options<a href="#PlatformUrlOptions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Platform<wbr/>Url<wbr/>Options<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>environment<span class="tsd-signature-symbol">?: </span><a href="enums/PlatformEnvironment.html" class="tsd-signature-type" data-tsd-kind="Enumeration">PlatformEnvironment</a><span class="tsd-signature-symbol">; </span>region<span class="tsd-signature-symbol">?: </span><a href="enums/Region.html" class="tsd-signature-type" data-tsd-kind="Enumeration">Region</a><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/environment.ts#L14">src/environment.ts:14</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> environment<span class="tsd-signature-symbol">?: </span><a href="enums/PlatformEnvironment.html" class="tsd-signature-type" data-tsd-kind="Enumeration">PlatformEnvironment</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> region<span class="tsd-signature-symbol">?: </span><a href="enums/Region.html" class="tsd-signature-type" data-tsd-kind="Enumeration">Region</a></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="SecurityIdentityType" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Security<wbr/>Identity<wbr/>Type<a href="#SecurityIdentityType" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Security<wbr/>Identity<wbr/>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;UNKNOWN&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;USER&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;GROUP&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;VIRTUAL_GROUP&quot;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/document.ts#L1">src/document.ts:1</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="SuccessfulUploadCallback" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Successful<wbr/>Upload<wbr/>Callback<a href="#SuccessfulUploadCallback" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/help/fileConsumer.ts#L13">src/help/fileConsumer.ts:13</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-type-alias"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>data: <a href="interfaces/UploadBatchCallbackData.html" class="tsd-signature-type" data-tsd-kind="Interface">UploadBatchCallbackData</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="Transformer" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Transformer<a href="#Transformer" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Transformer<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>str<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/validation/transformers/transformer.ts#L1">src/validation/transformers/transformer.ts:1</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter-signature"><ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-type-alias"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>str<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>str: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></li></ul></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Variables</h2><section class="tsd-panel tsd-member tsd-kind-variable"><a id="BuiltInTransformers" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> Built<wbr/>In<wbr/>Transformers<a href="#BuiltInTransformers" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Built<wbr/>In<wbr/>Transformers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Readonly</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-symbol">{ </span>identity<span class="tsd-signature-symbol">: </span><a href="modules.html#Transformer" class="tsd-signature-type" data-tsd-kind="Type alias">Transformer</a><span class="tsd-signature-symbol">; </span>toLowerCase<span class="tsd-signature-symbol">: </span><a href="modules.html#Transformer" class="tsd-signature-type" data-tsd-kind="Type alias">Transformer</a><span class="tsd-signature-symbol">; </span>toSnakeCase<span class="tsd-signature-symbol">: </span><a href="modules.html#Transformer" class="tsd-signature-type" data-tsd-kind="Type alias">Transformer</a><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/validation/transformers/transformer.ts#L56">src/validation/transformers/transformer.ts:56</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="Source" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> Source<a href="#Source" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Source<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><a href="classes/PushSource.html" class="tsd-signature-type" data-tsd-kind="Class">PushSource</a><span class="tsd-signature-symbol"> = PushSource</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/coveo/push-api-client.js/blob/fac916c/src/source/source.ts#L6">src/source/source.ts:6</a></li></ul></aside><div class="tsd-comment tsd-typography"><dl class="tsd-comment-tags"><dt>deprecated</dt><dd><p>This class has been replaced by <a href="classes/PushSource.html">PushSource</a></p>
4
+ </dd></dl></div></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="modules.html">Exports</a></li><li class=" tsd-kind-namespace"><a href="modules/errors.html">errors</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-enum"><a href="enums/PlatformEnvironment.html" class="tsd-kind-icon">Platform<wbr/>Environment</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/Region.html" class="tsd-kind-icon">Region</a></li><li class="tsd-kind-enum tsd-is-external"><a href="enums/SourceVisibility.html" class="tsd-kind-icon">Source<wbr/>Visibility</a></li><li class="tsd-kind-class"><a href="classes/AnySecurityIdentityBuilder.html" class="tsd-kind-icon">Any<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/CatalogSource.html" class="tsd-kind-icon">Catalog<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/DocumentBuilder.html" class="tsd-kind-icon">Document<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/FieldAnalyser.html" class="tsd-kind-icon">Field<wbr/>Analyser</a></li><li class="tsd-kind-class"><a href="classes/GroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/PushSource.html" class="tsd-kind-icon">Push<wbr/>Source</a></li><li class="tsd-kind-class"><a href="classes/UserSecurityIdentityBuilder.html" class="tsd-kind-icon">User<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-class"><a href="classes/VirtualGroupSecurityIdentityBuilder.html" class="tsd-kind-icon">Virtual<wbr/>Group<wbr/>Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/BatchUpdateDocuments.html" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents</a></li><li class="tsd-kind-interface"><a href="interfaces/Document.html" class="tsd-kind-icon">Document</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentity.html" class="tsd-kind-icon">Security<wbr/>Identity</a></li><li class="tsd-kind-interface"><a href="interfaces/SecurityIdentityBuilder.html" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Builder</a></li><li class="tsd-kind-interface"><a href="interfaces/UploadBatchCallbackData.html" class="tsd-kind-icon">Upload<wbr/>Batch<wbr/>Callback<wbr/>Data</a></li><li class="tsd-kind-type-alias"><a href="modules.html#BatchUpdateDocumentsFromFiles" class="tsd-kind-icon">Batch<wbr/>Update<wbr/>Documents<wbr/>From<wbr/>Files</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CompressionType" class="tsd-kind-icon">Compression<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#FailedUploadCallback" class="tsd-kind-icon">Failed<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Metadata" class="tsd-kind-icon">Metadata</a></li><li class="tsd-kind-type-alias"><a href="modules.html#MetadataValue" class="tsd-kind-icon">Metadata<wbr/>Value</a></li><li class="tsd-kind-type-alias"><a href="modules.html#PlatformUrlOptions" class="tsd-kind-icon">Platform<wbr/>Url<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SecurityIdentityType" class="tsd-kind-icon">Security<wbr/>Identity<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#SuccessfulUploadCallback" class="tsd-kind-icon">Successful<wbr/>Upload<wbr/>Callback</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Transformer" class="tsd-kind-icon">Transformer</a></li><li class="tsd-kind-variable"><a href="modules.html#BuiltInTransformers" class="tsd-kind-icon">Built<wbr/>In<wbr/>Transformers</a></li><li class="tsd-kind-variable"><a href="modules.html#Source" class="tsd-kind-icon">Source</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>
@@ -14,6 +14,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.DocumentBuilder = void 0;
15
15
  const dayjs = require("dayjs");
16
16
  const crypto_1 = require("crypto");
17
+ const fieldUtils_1 = require("./fieldAnalyser/fieldUtils");
18
+ const fieldErrors_1 = require("./errors/fieldErrors");
19
+ const transformer_1 = require("./validation/transformers/transformer");
17
20
  /**
18
21
  * Utility class to build a {@link Document}.
19
22
  */
@@ -125,11 +128,16 @@ class DocumentBuilder {
125
128
  }
126
129
  /**
127
130
  * Add a single metadata key and value pair on the document. See {@link Document.metadata}
128
- * @param key
129
- * @param value
131
+ * @param {string} key
132
+ * @param {MetadataValue} value
133
+ * @param {Transformer} [metadataKeyTransformer=BuiltInTransformers.identity] The {@link Transformer} to apply to the metadata key.
134
+ * If not specified, no transformation will be applied to the metadata key.
135
+ *
136
+ * For a list of built-in transformers, use {@link BuiltInTransformers}.
130
137
  * @returns
131
138
  */
132
- withMetadataValue(key, value) {
139
+ withMetadataValue(key, value, keyTransformer = transformer_1.BuiltInTransformers.identity) {
140
+ const transformedKey = keyTransformer(key);
133
141
  const reservedKeyNames = [
134
142
  'compressedBinaryData',
135
143
  'compressedBinaryDataFileId',
@@ -140,20 +148,41 @@ class DocumentBuilder {
140
148
  'documentId',
141
149
  'orderingId',
142
150
  ];
143
- if (reservedKeyNames.some((reservedKey) => reservedKey.toLowerCase() === key.toLowerCase())) {
144
- throw `Cannot use ${key} as a metadata key: It is a reserved key name. See https://docs.coveo.com/en/78/index-content/push-api-reference#json-document-reserved-key-names`;
151
+ if (reservedKeyNames.some((reservedKey) => reservedKey.toLowerCase() === transformedKey.toLowerCase())) {
152
+ throw `Cannot use ${transformedKey} as a metadata key: It is a reserved key name. See https://docs.coveo.com/en/78/index-content/push-api-reference#json-document-reserved-key-names`;
153
+ }
154
+ if (!(0, fieldUtils_1.isFieldNameValid)(transformedKey)) {
155
+ throw new fieldErrors_1.UnsupportedFieldError([key, transformedKey]);
145
156
  }
146
- this.doc.metadata[key] = value;
157
+ this.doc.metadata[transformedKey] = value;
147
158
  return this;
148
159
  }
149
160
  /**
150
161
  * Set metadata on the document. See {@link Document.metadata}
151
- * @param metadata
162
+ * @param {Metadata} metadata
163
+ * @param {Transformer} [metadataKeyTransformer=BuiltInTransformers.identity] The {@link Transformer} to apply to all the document metadata keys.
164
+ * If not specified, no transformation will be applied to the metadata keys.
165
+ *
166
+ * For a list of built-in transformers, use {@link BuiltInTransformers}.
152
167
  * @returns
153
168
  */
154
- withMetadata(metadata) {
169
+ withMetadata(metadata, metadataKeyTransformer = transformer_1.BuiltInTransformers.identity) {
170
+ const invalidKeys = [];
155
171
  for (const [k, v] of Object.entries(metadata)) {
156
- this.withMetadataValue(k, v);
172
+ try {
173
+ this.withMetadataValue(k, v, metadataKeyTransformer);
174
+ }
175
+ catch (error) {
176
+ if (error instanceof fieldErrors_1.UnsupportedFieldError) {
177
+ invalidKeys.push(...error.unsupportedFields);
178
+ }
179
+ else {
180
+ throw error;
181
+ }
182
+ }
183
+ }
184
+ if (invalidKeys.length > 0) {
185
+ throw new fieldErrors_1.UnsupportedFieldError(...invalidKeys);
157
186
  }
158
187
  return this;
159
188
  }
@@ -1 +1 @@
1
- {"version":3,"file":"documentBuilder.js","sourceRoot":"","sources":["../src/documentBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documentBuilder.js","sourceRoot":"","sources":["../src/documentBuilder.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const documentBuilder_1 = require("./documentBuilder");
4
4
  const securityIdentityBuilder_1 = require("./securityIdentityBuilder");
5
+ const transformer_1 = require("./validation/transformers/transformer");
5
6
  describe('DocumentBuilder', () => {
6
7
  let docBuilder;
7
8
  beforeEach(() => {
@@ -32,6 +33,46 @@ describe('DocumentBuilder', () => {
32
33
  it('should marshal metadata', () => {
33
34
  expect(docBuilder.withMetadata({ foo: 'bar', buzz: ['bazz', 'bozz'] }).marshal()).toMatchObject({ foo: 'bar', buzz: ['bazz', 'bozz'] });
34
35
  });
36
+ it('should throw error for invalid single metadata value', () => {
37
+ expect(() => {
38
+ docBuilder.withMetadataValue('f-o=o', 'bar').marshal();
39
+ }).toThrowError('f-o=o');
40
+ });
41
+ it('should throw error for invalid metadata values', () => {
42
+ expect(() => {
43
+ docBuilder
44
+ .withMetadata({ 'f-o=o': 'bar', '<buzz>': ['bazz', 'bozz'] })
45
+ .marshal();
46
+ }).toThrowErrorMatchingSnapshot();
47
+ });
48
+ it('should throw error for invalid metadata values even after transformation', () => {
49
+ const poorTransformer = (text) => text.replace(/[\W_]+/g, '*');
50
+ expect(() => {
51
+ docBuilder
52
+ .withMetadata({ 'f-o=o': 'bar', '<buzz>': ['bazz', 'bozz'] }, poorTransformer)
53
+ .marshal();
54
+ }).toThrowErrorMatchingSnapshot();
55
+ });
56
+ describe.each([
57
+ {
58
+ title: 'default',
59
+ transformer: transformer_1.BuiltInTransformers.toLowerCase,
60
+ expectedKey: 'foo',
61
+ },
62
+ {
63
+ title: 'underscore',
64
+ transformer: transformer_1.BuiltInTransformers.toSnakeCase,
65
+ expectedKey: 'f_o_o',
66
+ },
67
+ ])('when using the $title transformer', ({ transformer, expectedKey }) => {
68
+ it(`should format to ${expectedKey}`, () => {
69
+ expect(new documentBuilder_1.DocumentBuilder('uri', 'title')
70
+ .withMetadataValue('f-o=o', 'bar', transformer)
71
+ .marshal()).toMatchObject({
72
+ [expectedKey]: 'bar',
73
+ });
74
+ });
75
+ });
35
76
  it('should marshal single metadata value', () => {
36
77
  expect(docBuilder.withMetadataValue('foo', 'bar').marshal()).toMatchObject({
37
78
  foo: 'bar',
@@ -1 +1 @@
1
- {"version":3,"file":"documentBuilder.spec.js","sourceRoot":"","sources":["../src/documentBuilder.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documentBuilder.spec.js","sourceRoot":"","sources":["../src/documentBuilder.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InvalidPermanentId = exports.FieldTypeInconsistencyError = void 0;
3
+ exports.UnsupportedFieldError = exports.InvalidPermanentId = exports.FieldTypeInconsistencyError = void 0;
4
4
  const baseError_1 = require("./baseError");
5
5
  class FieldTypeInconsistencyError extends baseError_1.PushApiClientBaseError {
6
6
  constructor(inconsitencies) {
@@ -35,4 +35,22 @@ class InvalidPermanentId extends baseError_1.PushApiClientBaseError {
35
35
  }
36
36
  }
37
37
  exports.InvalidPermanentId = InvalidPermanentId;
38
+ class UnsupportedFieldError extends baseError_1.PushApiClientBaseError {
39
+ constructor(...unsupportedFields) {
40
+ super();
41
+ this.name = 'Unsupported field Error';
42
+ this.unsupportedFields = unsupportedFields;
43
+ this.message = `
44
+ The following field names are still invalid after transformation:
45
+ ${this.formattedFieldList}
46
+ Field names can only contain lowercase letters (a-z), numbers (0-9), and underscores. Field names must be at least one character long and must start with a lowercase letter.
47
+ `;
48
+ }
49
+ get formattedFieldList() {
50
+ const replacer = UnsupportedFieldError.emptyFieldNameReplacer;
51
+ return this.unsupportedFields.reduce((prev, curr) => (prev += ` • ${curr[0] || replacer} --> ${curr[1] || replacer}\n`), '');
52
+ }
53
+ }
54
+ exports.UnsupportedFieldError = UnsupportedFieldError;
55
+ UnsupportedFieldError.emptyFieldNameReplacer = '<empty field name>';
38
56
  //# sourceMappingURL=fieldErrors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fieldErrors.js","sourceRoot":"","sources":["../../src/errors/fieldErrors.ts"],"names":[],"mappings":";;;AAEA,2CAAmD;AAEnD,MAAa,2BAA4B,SAAQ,kCAAsB;IAErE,YAAmB,cAA+B;QAChD,KAAK,EAAE,CAAC;QAFH,SAAI,GAAG,gCAAgC,CAAC;QAG7C,IAAI,CAAC,OAAO,GAAG,qDACb,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAClC,GAAG,CAAC;QACJ,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACxC,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;gBAC1B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YACD,IAAI,CAAC,OAAO,IAAI;QACd,KAAK,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,4DAA4D;QAC5D,IAAI,CAAC,OAAO,IAAI;wEACoD,CAAC;IACvE,CAAC;CACF;AApBD,kEAoBC;AAED,MAAa,kBAAmB,SAAQ,kCAAsB;IAE5D,YAAmB,KAAiB;QAClC,KAAK,CAAC;;;0BAGgB,KAAK,CAAC,IAAI;;;;KAI/B,CAAC,CAAC;QATE,SAAI,GAAG,iCAAiC,CAAC;IAUhD,CAAC;CACF;AAZD,gDAYC"}
1
+ {"version":3,"file":"fieldErrors.js","sourceRoot":"","sources":["../../src/errors/fieldErrors.ts"],"names":[],"mappings":";;;AAEA,2CAAmD;AAEnD,MAAa,2BAA4B,SAAQ,kCAAsB;IAErE,YAAmB,cAA+B;QAChD,KAAK,EAAE,CAAC;QAFH,SAAI,GAAG,gCAAgC,CAAC;QAG7C,IAAI,CAAC,OAAO,GAAG,qDACb,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAClC,GAAG,CAAC;QACJ,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACxC,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;gBAC1B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YACD,IAAI,CAAC,OAAO,IAAI;QACd,KAAK,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,4DAA4D;QAC5D,IAAI,CAAC,OAAO,IAAI;wEACoD,CAAC;IACvE,CAAC;CACF;AApBD,kEAoBC;AAED,MAAa,kBAAmB,SAAQ,kCAAsB;IAE5D,YAAmB,KAAiB;QAClC,KAAK,CAAC;;;0BAGgB,KAAK,CAAC,IAAI;;;;KAI/B,CAAC,CAAC;QATE,SAAI,GAAG,iCAAiC,CAAC;IAUhD,CAAC;CACF;AAZD,gDAYC;AACD,MAAa,qBAAsB,SAAQ,kCAAsB;IAI/D,YAAmB,GAAG,iBAAqC;QACzD,KAAK,EAAE,CAAC;QAJH,SAAI,GAAG,yBAAyB,CAAC;QAKtC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG;;EAEjB,IAAI,CAAC,kBAAkB;;KAEpB,CAAC;IACJ,CAAC;IAED,IAAY,kBAAkB;QAC5B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,sBAAsB,CAAC;QAC9D,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAClC,CAAC,IAAY,EAAE,IAAsB,EAAE,EAAE,CACvC,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,IAAI,CAAC,EACrE,EAAE,CACH,CAAC;IACJ,CAAC;;AArBH,sDAsBC;AApBe,4CAAsB,GAAG,oBAAoB,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fieldErrors"), exports);
18
+ __exportStar(require("./privilegeError"), exports);
19
+ __exportStar(require("./validatorErrors"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,oDAAkC"}
@@ -20,7 +20,7 @@ class FieldAnalyser {
20
20
  this.missingFields = new fieldStore_1.FieldStore();
21
21
  }
22
22
  /**
23
- * Adds a batch of document builders to the analyser
23
+ * Adds a batch of document builders to the analyser to extract all the missing fields that need to be created in the organization.
24
24
  * This method can be called as many time as needed as it will take into consideration document builders previously added.
25
25
  *
26
26
  * @param {DocumentBuilder[]} batch
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createFields = exports.listAllFieldsFromOrg = void 0;
3
+ exports.isFieldNameValid = exports.createFieldsFromReport = exports.createFields = exports.listAllFieldsFromOrg = void 0;
4
+ const fieldErrors_1 = require("../errors/fieldErrors");
4
5
  const apiKeyPrivilege_1 = require("../validation/preconditions/apiKeyPrivilege");
5
6
  const platformPrivilege_1 = require("../validation/preconditions/platformPrivilege");
7
+ const allowedCharRegExp = new RegExp('^[a-z]+[a-z0-9_]*$');
6
8
  const listAllFieldsFromOrg = async (client, page = 0, fields = []) => {
7
9
  await (0, apiKeyPrivilege_1.ensureNecessaryCoveoPrivileges)(client, platformPrivilege_1.readFieldsPrivilege);
8
10
  const list = await client.field.list({
@@ -24,4 +26,17 @@ const createFields = async (client, fields, fieldBatch = 500) => {
24
26
  }
25
27
  };
26
28
  exports.createFields = createFields;
29
+ const createFieldsFromReport = async (client, report) => {
30
+ {
31
+ if (report.inconsistencies.size > 0) {
32
+ throw new fieldErrors_1.FieldTypeInconsistencyError(report.inconsistencies);
33
+ }
34
+ await (0, exports.createFields)(client, report.fields);
35
+ }
36
+ };
37
+ exports.createFieldsFromReport = createFieldsFromReport;
38
+ const isFieldNameValid = (fieldName) => {
39
+ return allowedCharRegExp.test(fieldName.toLowerCase());
40
+ };
41
+ exports.isFieldNameValid = isFieldNameValid;
27
42
  //# sourceMappingURL=fieldUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fieldUtils.js","sourceRoot":"","sources":["../../src/fieldAnalyser/fieldUtils.ts"],"names":[],"mappings":";;;AACA,iFAA2F;AAC3F,qFAGuD;AAEhD,MAAM,oBAAoB,GAAG,KAAK,EACvC,MAAsB,EACtB,IAAI,GAAG,CAAC,EACR,SAAuB,EAAE,EACF,EAAE;IACzB,MAAM,IAAA,gDAA8B,EAAC,MAAM,EAAE,uCAAmB,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,IAAI;QACJ,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IAE3B,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;QAC9B,OAAO,IAAA,4BAAoB,EAAC,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;KACvD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAlBW,QAAA,oBAAoB,wBAkB/B;AAEK,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAsB,EACtB,MAAoB,EACpB,UAAU,GAAG,GAAG,EAChB,EAAE;IACF,MAAM,IAAA,gDAA8B,EAAC,MAAM,EAAE,wCAAoB,CAAC,CAAC;IACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;QAC9C,MAAM,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB"}
1
+ {"version":3,"file":"fieldUtils.js","sourceRoot":"","sources":["../../src/fieldAnalyser/fieldUtils.ts"],"names":[],"mappings":";;;AACA,uDAAkE;AAClE,iFAA2F;AAC3F,qFAGuD;AAGvD,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEpD,MAAM,oBAAoB,GAAG,KAAK,EACvC,MAAsB,EACtB,IAAI,GAAG,CAAC,EACR,SAAuB,EAAE,EACF,EAAE;IACzB,MAAM,IAAA,gDAA8B,EAAC,MAAM,EAAE,uCAAmB,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,IAAI;QACJ,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IAE3B,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;QAC9B,OAAO,IAAA,4BAAoB,EAAC,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;KACvD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAlBW,QAAA,oBAAoB,wBAkB/B;AAEK,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAsB,EACtB,MAAoB,EACpB,UAAU,GAAG,GAAG,EAChB,EAAE;IACF,MAAM,IAAA,gDAA8B,EAAC,MAAM,EAAE,wCAAoB,CAAC,CAAC;IACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;QAC9C,MAAM,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,sBAAsB,GAAG,KAAK,EACzC,MAAsB,EACtB,MAA2B,EAC3B,EAAE;IACF;QACE,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE;YACnC,MAAM,IAAI,yCAA2B,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;SAC/D;QACD,MAAM,IAAA,oBAAY,EAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;KAC3C;AACH,CAAC,CAAC;AAVW,QAAA,sBAAsB,0BAUjC;AAEK,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAW,EAAE;IAC7D,OAAO,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AACzD,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B"}
@@ -19,7 +19,7 @@ class FileConsumer {
19
19
  this.cbSuccess = () => { };
20
20
  this.cbFail = () => { };
21
21
  }
22
- async consume(files) {
22
+ async consume(files, options) {
23
23
  const fileNames = files.map((path) => (0, path_1.basename)(path));
24
24
  const { chunksToUpload, close } = this.splitByChunkAndUpload(fileNames);
25
25
  const docBuilderGenerator = function* (docBuilders) {
@@ -30,7 +30,7 @@ class FileConsumer {
30
30
  // parallelize uploads across multiple files
31
31
  const fileGenerator = function* () {
32
32
  for (const filePath of files.values()) {
33
- const docBuilders = (0, parseFile_1.parseAndGetDocumentBuilderFromJSONDocument)(filePath);
33
+ const docBuilders = (0, parseFile_1.parseAndGetDocumentBuilderFromJSONDocument)(filePath, options);
34
34
  yield* docBuilderGenerator(docBuilders);
35
35
  }
36
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fileConsumer.js","sourceRoot":"","sources":["../../src/help/fileConsumer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileConsumer.js","sourceRoot":"","sources":["../../src/help/fileConsumer.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,8 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SourceVisibility = exports.Region = exports.PlatformEnvironment = exports.DocumentBuilder = exports.FieldAnalyser = exports.CatalogSource = exports.PushSource = exports.Source = void 0;
17
+ exports.SourceVisibility = exports.Region = exports.PlatformEnvironment = exports.DocumentBuilder = exports.FieldAnalyser = exports.CatalogSource = exports.PushSource = exports.Source = exports.errors = void 0;
18
18
  __exportStar(require("./document"), exports);
19
+ __exportStar(require("./validation/transformers/transformer"), exports);
20
+ exports.errors = require("./errors");
19
21
  var source_1 = require("./source/source");
20
22
  Object.defineProperty(exports, "Source", { enumerable: true, get: function () { return source_1.Source; } });
21
23
  var push_1 = require("./source/push");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,0CAAuC;AAA/B,gGAAA,MAAM,OAAA;AACd,sCAAyC;AAAjC,kGAAA,UAAU,OAAA;AAClB,4CAA+C;AAAvC,wGAAA,aAAa,OAAA;AAUrB,+DAA4D;AAApD,8GAAA,aAAa,OAAA;AACrB,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AACvB,4DAA0C;AAC1C,6CAA8E;AAAtE,kHAAA,mBAAmB,OAAA;AAAE,qGAAA,MAAM,OAAA;AACnC,4DAA0D;AAAlD,mHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,wEAAsD;AACtD,qCAAmC;AACnC,0CAAuC;AAA/B,gGAAA,MAAM,OAAA;AACd,sCAAyC;AAAjC,kGAAA,UAAU,OAAA;AAClB,4CAA+C;AAAvC,wGAAA,aAAa,OAAA;AAUrB,+DAA4D;AAApD,8GAAA,aAAa,OAAA;AACrB,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AACvB,4DAA0C;AAC1C,6CAA8E;AAAtE,kHAAA,mBAAmB,OAAA;AAAE,qGAAA,MAAM,OAAA;AACnC,4DAA0D;AAAlD,mHAAA,gBAAgB,OAAA"}