payload 2.12.1 → 2.14.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 (165) hide show
  1. package/database.d.ts +1 -1
  2. package/database.js +10 -1
  3. package/dist/admin/components/elements/DeleteDocument/index.d.ts.map +1 -1
  4. package/dist/admin/components/elements/DeleteDocument/index.js +1 -1
  5. package/dist/admin/components/elements/DocumentControls/index.js +2 -2
  6. package/dist/admin/components/elements/DuplicateDocument/index.d.ts.map +1 -1
  7. package/dist/admin/components/elements/DuplicateDocument/index.js +8 -3
  8. package/dist/admin/components/elements/EditMany/index.js +4 -4
  9. package/dist/admin/components/elements/Popup/PopupButtonList/index.d.ts +1 -0
  10. package/dist/admin/components/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  11. package/dist/admin/components/elements/Popup/PopupButtonList/index.js +3 -2
  12. package/dist/admin/components/elements/Publish/index.d.ts +6 -2
  13. package/dist/admin/components/elements/Publish/index.d.ts.map +1 -1
  14. package/dist/admin/components/elements/Publish/index.js +1 -1
  15. package/dist/admin/components/elements/WhereBuilder/field-types.d.ts +3 -12
  16. package/dist/admin/components/elements/WhereBuilder/field-types.d.ts.map +1 -1
  17. package/dist/admin/components/elements/WhereBuilder/field-types.js +19 -13
  18. package/dist/admin/components/elements/WhereBuilder/index.d.ts.map +1 -1
  19. package/dist/admin/components/elements/WhereBuilder/index.js +38 -33
  20. package/dist/admin/components/elements/types.d.ts +1 -1
  21. package/dist/admin/components/elements/types.d.ts.map +1 -1
  22. package/dist/admin/components/forms/field-types/Collapsible/index.d.ts.map +1 -1
  23. package/dist/admin/components/forms/field-types/Collapsible/index.js +29 -23
  24. package/dist/admin/components/forms/field-types/JSON/index.d.ts.map +1 -1
  25. package/dist/admin/components/forms/field-types/JSON/index.js +21 -2
  26. package/dist/admin/components/forms/field-types/Number/index.d.ts.map +1 -1
  27. package/dist/admin/components/forms/field-types/Number/index.js +3 -1
  28. package/dist/admin/components/forms/field-types/RichText/types.d.ts +3 -1
  29. package/dist/admin/components/forms/field-types/RichText/types.d.ts.map +1 -1
  30. package/dist/admin/components/forms/field-types/Tabs/index.d.ts.map +1 -1
  31. package/dist/admin/components/forms/field-types/Tabs/index.js +28 -24
  32. package/dist/admin/components/views/collections/Edit/Default.js +3 -3
  33. package/dist/admin/utilities/formatDate/getSupportedDateLocale.d.ts.map +1 -1
  34. package/dist/admin/utilities/formatDate/getSupportedDateLocale.js +27 -2
  35. package/dist/auth/operations/login.d.ts.map +1 -1
  36. package/dist/auth/operations/login.js +17 -1
  37. package/dist/collections/buildEndpoints.d.ts.map +1 -1
  38. package/dist/collections/buildEndpoints.js +6 -1
  39. package/dist/collections/config/schema.d.ts.map +1 -1
  40. package/dist/collections/config/schema.js +4 -2
  41. package/dist/collections/config/types.d.ts +10 -3
  42. package/dist/collections/config/types.d.ts.map +1 -1
  43. package/dist/collections/config/types.js +1 -1
  44. package/dist/collections/graphql/init.d.ts.map +1 -1
  45. package/dist/collections/graphql/init.js +99 -74
  46. package/dist/collections/graphql/resolvers/count.d.ts +15 -0
  47. package/dist/collections/graphql/resolvers/count.d.ts.map +1 -0
  48. package/dist/collections/graphql/resolvers/count.js +37 -0
  49. package/dist/collections/operations/count.d.ts +14 -0
  50. package/dist/collections/operations/count.d.ts.map +1 -0
  51. package/dist/collections/operations/count.js +91 -0
  52. package/dist/collections/operations/local/count.d.ts +21 -0
  53. package/dist/collections/operations/local/count.d.ts.map +1 -0
  54. package/dist/collections/operations/local/count.js +35 -0
  55. package/dist/collections/operations/local/index.d.ts +2 -0
  56. package/dist/collections/operations/local/index.d.ts.map +1 -1
  57. package/dist/collections/operations/local/index.js +3 -1
  58. package/dist/collections/operations/update.js +3 -4
  59. package/dist/collections/operations/updateByID.js +3 -3
  60. package/dist/collections/operations/utils.d.ts +6 -0
  61. package/dist/collections/operations/utils.d.ts.map +1 -1
  62. package/dist/collections/operations/utils.js +1 -1
  63. package/dist/collections/requestHandlers/count.d.ts +6 -0
  64. package/dist/collections/requestHandlers/count.d.ts.map +1 -0
  65. package/dist/collections/requestHandlers/count.js +31 -0
  66. package/dist/collections/requestHandlers/deleteByID.d.ts.map +1 -1
  67. package/dist/collections/requestHandlers/deleteByID.js +8 -2
  68. package/dist/collections/requestHandlers/findByID.d.ts.map +1 -1
  69. package/dist/collections/requestHandlers/findByID.js +8 -2
  70. package/dist/collections/requestHandlers/findVersionByID.d.ts.map +1 -1
  71. package/dist/collections/requestHandlers/findVersionByID.js +8 -2
  72. package/dist/collections/requestHandlers/restoreVersion.d.ts.map +1 -1
  73. package/dist/collections/requestHandlers/restoreVersion.js +8 -2
  74. package/dist/collections/requestHandlers/updateByID.d.ts.map +1 -1
  75. package/dist/collections/requestHandlers/updateByID.js +8 -2
  76. package/dist/database/types.d.ts +14 -0
  77. package/dist/database/types.d.ts.map +1 -1
  78. package/dist/errors/FileRetrievalError.d.ts +7 -0
  79. package/dist/errors/FileRetrievalError.d.ts.map +1 -0
  80. package/dist/errors/FileRetrievalError.js +29 -0
  81. package/dist/errors/MissingEditorProps.d.ts +7 -0
  82. package/dist/errors/MissingEditorProps.d.ts.map +1 -0
  83. package/dist/errors/MissingEditorProps.js +25 -0
  84. package/dist/exports/database.d.ts +1 -1
  85. package/dist/exports/database.d.ts.map +1 -1
  86. package/dist/exports/database.js +10 -1
  87. package/dist/exports/types.d.ts +2 -2
  88. package/dist/exports/types.d.ts.map +1 -1
  89. package/dist/exports/types.js +1 -1
  90. package/dist/fields/config/sanitize.d.ts +7 -1
  91. package/dist/fields/config/sanitize.d.ts.map +1 -1
  92. package/dist/fields/config/sanitize.js +16 -8
  93. package/dist/fields/config/schema.d.ts.map +1 -1
  94. package/dist/fields/config/schema.js +8 -2
  95. package/dist/fields/config/types.d.ts +31 -1
  96. package/dist/fields/config/types.d.ts.map +1 -1
  97. package/dist/fields/config/types.js +1 -1
  98. package/dist/fields/validations.d.ts +1 -0
  99. package/dist/fields/validations.d.ts.map +1 -1
  100. package/dist/fields/validations.js +43 -2
  101. package/dist/globals/config/schema.d.ts.map +1 -1
  102. package/dist/globals/config/schema.js +3 -2
  103. package/dist/globals/config/types.d.ts +8 -4
  104. package/dist/globals/config/types.d.ts.map +1 -1
  105. package/dist/payload.d.ts +9 -0
  106. package/dist/payload.d.ts.map +1 -1
  107. package/dist/payload.js +9 -1
  108. package/dist/translations/ar.json +5 -1
  109. package/dist/translations/az.json +5 -2
  110. package/dist/translations/bg.json +5 -1
  111. package/dist/translations/cs.json +5 -1
  112. package/dist/translations/de.json +5 -1
  113. package/dist/translations/en.json +2 -0
  114. package/dist/translations/es.json +5 -1
  115. package/dist/translations/fa.json +5 -1
  116. package/dist/translations/fr.json +5 -1
  117. package/dist/translations/hr.json +5 -1
  118. package/dist/translations/hu.json +5 -1
  119. package/dist/translations/index.d.ts +116 -1
  120. package/dist/translations/index.d.ts.map +1 -1
  121. package/dist/translations/it.json +5 -1
  122. package/dist/translations/ja.json +5 -1
  123. package/dist/translations/ko.json +4 -0
  124. package/dist/translations/my.json +5 -1
  125. package/dist/translations/nb.json +5 -1
  126. package/dist/translations/nl.json +5 -1
  127. package/dist/translations/pl.json +4 -0
  128. package/dist/translations/pt.json +5 -1
  129. package/dist/translations/ro.json +5 -1
  130. package/dist/translations/rs-latin.json +4 -0
  131. package/dist/translations/rs.json +4 -0
  132. package/dist/translations/ru.json +5 -1
  133. package/dist/translations/sv.json +5 -1
  134. package/dist/translations/th.json +5 -1
  135. package/dist/translations/tr.json +5 -1
  136. package/dist/translations/translation-schema.json +8 -0
  137. package/dist/translations/ua.json +6 -2
  138. package/dist/translations/vi.json +5 -1
  139. package/dist/translations/zh-tw.json +6 -4
  140. package/dist/translations/zh.json +4 -0
  141. package/dist/uploads/generateFileData.d.ts.map +1 -1
  142. package/dist/uploads/generateFileData.js +8 -4
  143. package/dist/uploads/getExternalFile.d.ts +3 -2
  144. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  145. package/dist/uploads/getExternalFile.js +16 -5
  146. package/dist/uploads/types.d.ts +6 -0
  147. package/dist/uploads/types.d.ts.map +1 -1
  148. package/dist/uploads/types.js +1 -1
  149. package/dist/utilities/configToJSONSchema.d.ts +1 -1
  150. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  151. package/dist/utilities/configToJSONSchema.js +9 -8
  152. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  153. package/dist/utilities/createLocalReq.js +9 -2
  154. package/dist/utilities/sanitizeCollectionID.d.ts +9 -0
  155. package/dist/utilities/sanitizeCollectionID.d.ts.map +1 -0
  156. package/dist/utilities/sanitizeCollectionID.js +30 -0
  157. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  158. package/dist/versions/getLatestCollectionVersion.js +3 -1
  159. package/dist/versions/getVersionsModelName.d.ts +5 -0
  160. package/dist/versions/getVersionsModelName.d.ts.map +1 -1
  161. package/dist/versions/getVersionsModelName.js +1 -1
  162. package/dist/versions/saveVersion.js +2 -2
  163. package/package.json +1 -1
  164. package/types.d.ts +2 -2
  165. package/types.js +1 -1
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
5
 
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cGxvYWRzL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuaW1wb3J0IHR5cGUgZXhwcmVzcyBmcm9tICdleHByZXNzJ1xuaW1wb3J0IHR5cGUgc2VydmVTdGF0aWMgZnJvbSAnc2VydmUtc3RhdGljJ1xuaW1wb3J0IHR5cGUgeyBSZXNpemVPcHRpb25zLCBTaGFycCB9IGZyb20gJ3NoYXJwJ1xuXG5leHBvcnQgdHlwZSBGaWxlU2l6ZSA9IHtcbiAgZmlsZW5hbWU6IG51bGwgfCBzdHJpbmdcbiAgZmlsZXNpemU6IG51bGwgfCBudW1iZXJcbiAgaGVpZ2h0OiBudWxsIHwgbnVtYmVyXG4gIG1pbWVUeXBlOiBudWxsIHwgc3RyaW5nXG4gIHdpZHRoOiBudWxsIHwgbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEZpbGVTaXplcyA9IHtcbiAgW3NpemU6IHN0cmluZ106IEZpbGVTaXplXG59XG5cbmV4cG9ydCB0eXBlIEZpbGVEYXRhID0ge1xuICBmaWxlbmFtZTogc3RyaW5nXG4gIGZpbGVzaXplOiBudW1iZXJcbiAgaGVpZ2h0OiBudW1iZXJcbiAgbWltZVR5cGU6IHN0cmluZ1xuICBzaXplczogRmlsZVNpemVzXG4gIHRlbXBGaWxlUGF0aD86IHN0cmluZ1xuICB1cmw/OiBzdHJpbmdcbiAgd2lkdGg6IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBQcm9iZWRJbWFnZVNpemUgPSB7XG4gIGhlaWdodDogbnVtYmVyXG4gIG1pbWU6IHN0cmluZ1xuICB0eXBlOiBzdHJpbmdcbiAgd2lkdGg6IG51bWJlclxufVxuXG4vKipcbiAqIFBhcmFtcyBzZW50IHRvIHRoZSBzaGFycCB0b0Zvcm1hdCgpIGZ1bmN0aW9uXG4gKiBAbGluayBodHRwczovL3NoYXJwLnBpeGVscGx1bWJpbmcuY29tL2FwaS1vdXRwdXQjdG9mb3JtYXRcbiAqL1xuZXhwb3J0IHR5cGUgSW1hZ2VVcGxvYWRGb3JtYXRPcHRpb25zID0ge1xuICBmb3JtYXQ6IFBhcmFtZXRlcnM8U2hhcnBbJ3RvRm9ybWF0J10+WzBdXG4gIG9wdGlvbnM/OiBQYXJhbWV0ZXJzPFNoYXJwWyd0b0Zvcm1hdCddPlsxXVxufVxuXG4vKipcbiAqIFBhcmFtcyBzZW50IHRvIHRoZSBzaGFycCB0cmltKCkgZnVuY3Rpb25cbiAqIEBsaW5rIGh0dHBzOi8vc2hhcnAucGl4ZWxwbHVtYmluZy5jb20vYXBpLXJlc2l6ZSN0cmltXG4gKi9cbmV4cG9ydCB0eXBlIEltYWdlVXBsb2FkVHJpbU9wdGlvbnMgPSBQYXJhbWV0ZXJzPFNoYXJwWyd0cmltJ10+WzBdXG5cbmV4cG9ydCB0eXBlIEltYWdlU2l6ZSA9IE9taXQ8UmVzaXplT3B0aW9ucywgJ3dpdGhvdXRFbmxhcmdlbWVudCc+ICYge1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcHJlZmVyIHBvc2l0aW9uXG4gICAqL1xuICBjcm9wPzogc3RyaW5nIC8vIGNvbWVzIGZyb20gc2hhcnAgcGFja2FnZVxuICBmb3JtYXRPcHRpb25zPzogSW1hZ2VVcGxvYWRGb3JtYXRPcHRpb25zXG4gIG5hbWU6IHN0cmluZ1xuICB0cmltT3B0aW9ucz86IEltYWdlVXBsb2FkVHJpbU9wdGlvbnNcbiAgLyoqXG4gICAqIFdoZW4gYW4gdXBsb2FkZWQgaW1hZ2UgaXMgc21hbGxlciB0aGFuIHRoZSBkZWZpbmVkIGltYWdlIHNpemUsIHdlIGhhdmUgMyBvcHRpb25zOlxuICAgKlxuICAgKiBgdW5kZWZpbmVkIHwgZmFsc2UgfCB0cnVlYFxuICAgKlxuICAgKiAxLiBgdW5kZWZpbmVkYCBbZGVmYXVsdF06IHVwbG9hZGluZyBpbWFnZXMgd2l0aCBzbWFsbGVyIHdpZHRoIEFORCBoZWlnaHQgdGhhbiB0aGUgaW1hZ2Ugc2l6ZSB3aWxsIHJldHVybiBudWxsXG4gICAqIDIuIGBmYWxzZWA6IGFsd2F5cyBlbmxhcmdlIGltYWdlcyB0byB0aGUgaW1hZ2Ugc2l6ZVxuICAgKiAzLiBgdHJ1ZWA6IGlmIHRoZSBpbWFnZSBpcyBzbWFsbGVyIHRoYW4gdGhlIGltYWdlIHNpemUsIHJldHVybiB0aGUgb3JpZ2luYWwgaW1hZ2VcbiAgICovXG4gIHdpdGhvdXRFbmxhcmdlbWVudD86IFJlc2l6ZU9wdGlvbnNbJ3dpdGhvdXRFbmxhcmdlbWVudCddXG59XG5cbmV4cG9ydCB0eXBlIEdldEFkbWluVGh1bWJuYWlsID0gKGFyZ3M6IHsgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB9KSA9PiBmYWxzZSB8IG51bGwgfCBzdHJpbmdcblxuZXhwb3J0IHR5cGUgSW5jb21pbmdVcGxvYWRUeXBlID0ge1xuICBhZG1pblRodW1ibmFpbD86IEdldEFkbWluVGh1bWJuYWlsIHwgc3RyaW5nXG4gIGNyb3A/OiBib29sZWFuXG4gIGRpc2FibGVMb2NhbFN0b3JhZ2U/OiBib29sZWFuXG4gIGZpbGVzUmVxdWlyZWRPbkNyZWF0ZT86IGJvb2xlYW5cbiAgZm9jYWxQb2ludD86IGJvb2xlYW5cbiAgLyoqIE9wdGlvbnMgZm9yIG9yaWdpbmFsIHVwbG9hZCBmaWxlIG9ubHkuIEZvciBzaXplcywgc2V0IGVhY2ggZm9ybWF0T3B0aW9ucyBpbmRpdmlkdWFsbHkuICovXG4gIGZvcm1hdE9wdGlvbnM/OiBJbWFnZVVwbG9hZEZvcm1hdE9wdGlvbnNcbiAgaGFuZGxlcnM/OiBhbnlbXVxuICBpbWFnZVNpemVzPzogSW1hZ2VTaXplW11cbiAgbWltZVR5cGVzPzogc3RyaW5nW11cbiAgcmVzaXplT3B0aW9ucz86IFJlc2l6ZU9wdGlvbnNcbiAgc3RhdGljRGlyPzogc3RyaW5nXG4gIHN0YXRpY09wdGlvbnM/OiBzZXJ2ZVN0YXRpYy5TZXJ2ZVN0YXRpY09wdGlvbnM8ZXhwcmVzcy5SZXNwb25zZTxhbnksIFJlY29yZDxzdHJpbmcsIGFueT4+PlxuICBzdGF0aWNVUkw/OiBzdHJpbmdcbiAgdHJpbU9wdGlvbnM/OiBJbWFnZVVwbG9hZFRyaW1PcHRpb25zXG59XG5cbmV4cG9ydCB0eXBlIFVwbG9hZCA9IHtcbiAgYWRtaW5UaHVtYm5haWw/OiBHZXRBZG1pblRodW1ibmFpbCB8IHN0cmluZ1xuICBjcm9wPzogYm9vbGVhblxuICBkaXNhYmxlTG9jYWxTdG9yYWdlPzogYm9vbGVhblxuICBmaWxlc1JlcXVpcmVkT25DcmVhdGU/OiBib29sZWFuXG4gIGZvY2FsUG9pbnQ/OiBib29sZWFuXG4gIGZvcm1hdE9wdGlvbnM/OiBJbWFnZVVwbG9hZEZvcm1hdE9wdGlvbnNcbiAgaGFuZGxlcnM/OiBhbnlbXVxuICBpbWFnZVNpemVzPzogSW1hZ2VTaXplW11cbiAgbWltZVR5cGVzPzogc3RyaW5nW11cbiAgcmVzaXplT3B0aW9ucz86IFJlc2l6ZU9wdGlvbnNcbiAgc3RhdGljRGlyOiBzdHJpbmdcbiAgc3RhdGljT3B0aW9ucz86IHNlcnZlU3RhdGljLlNlcnZlU3RhdGljT3B0aW9uczxleHByZXNzLlJlc3BvbnNlPGFueSwgUmVjb3JkPHN0cmluZywgYW55Pj4+XG4gIHN0YXRpY1VSTDogc3RyaW5nXG4gIHRyaW1PcHRpb25zPzogSW1hZ2VVcGxvYWRUcmltT3B0aW9uc1xufVxuXG5leHBvcnQgdHlwZSBGaWxlID0ge1xuICBkYXRhOiBCdWZmZXJcbiAgbWltZXR5cGU6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc2l6ZTogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEZpbGVUb1NhdmUgPSB7XG4gIGJ1ZmZlcjogQnVmZmVyXG4gIHBhdGg6IHN0cmluZ1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9EQUFvRCJ9
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cGxvYWRzL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuaW1wb3J0IHR5cGUgZXhwcmVzcyBmcm9tICdleHByZXNzJ1xuaW1wb3J0IHR5cGUgc2VydmVTdGF0aWMgZnJvbSAnc2VydmUtc3RhdGljJ1xuaW1wb3J0IHR5cGUgeyBSZXNpemVPcHRpb25zLCBTaGFycCB9IGZyb20gJ3NoYXJwJ1xuXG5leHBvcnQgdHlwZSBGaWxlU2l6ZSA9IHtcbiAgZmlsZW5hbWU6IG51bGwgfCBzdHJpbmdcbiAgZmlsZXNpemU6IG51bGwgfCBudW1iZXJcbiAgaGVpZ2h0OiBudWxsIHwgbnVtYmVyXG4gIG1pbWVUeXBlOiBudWxsIHwgc3RyaW5nXG4gIHdpZHRoOiBudWxsIHwgbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEZpbGVTaXplcyA9IHtcbiAgW3NpemU6IHN0cmluZ106IEZpbGVTaXplXG59XG5cbmV4cG9ydCB0eXBlIEZpbGVEYXRhID0ge1xuICBmaWxlbmFtZTogc3RyaW5nXG4gIGZpbGVzaXplOiBudW1iZXJcbiAgaGVpZ2h0OiBudW1iZXJcbiAgbWltZVR5cGU6IHN0cmluZ1xuICBzaXplczogRmlsZVNpemVzXG4gIHRlbXBGaWxlUGF0aD86IHN0cmluZ1xuICB1cmw/OiBzdHJpbmdcbiAgd2lkdGg6IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBQcm9iZWRJbWFnZVNpemUgPSB7XG4gIGhlaWdodDogbnVtYmVyXG4gIG1pbWU6IHN0cmluZ1xuICB0eXBlOiBzdHJpbmdcbiAgd2lkdGg6IG51bWJlclxufVxuXG4vKipcbiAqIFBhcmFtcyBzZW50IHRvIHRoZSBzaGFycCB0b0Zvcm1hdCgpIGZ1bmN0aW9uXG4gKiBAbGluayBodHRwczovL3NoYXJwLnBpeGVscGx1bWJpbmcuY29tL2FwaS1vdXRwdXQjdG9mb3JtYXRcbiAqL1xuZXhwb3J0IHR5cGUgSW1hZ2VVcGxvYWRGb3JtYXRPcHRpb25zID0ge1xuICBmb3JtYXQ6IFBhcmFtZXRlcnM8U2hhcnBbJ3RvRm9ybWF0J10+WzBdXG4gIG9wdGlvbnM/OiBQYXJhbWV0ZXJzPFNoYXJwWyd0b0Zvcm1hdCddPlsxXVxufVxuXG4vKipcbiAqIFBhcmFtcyBzZW50IHRvIHRoZSBzaGFycCB0cmltKCkgZnVuY3Rpb25cbiAqIEBsaW5rIGh0dHBzOi8vc2hhcnAucGl4ZWxwbHVtYmluZy5jb20vYXBpLXJlc2l6ZSN0cmltXG4gKi9cbmV4cG9ydCB0eXBlIEltYWdlVXBsb2FkVHJpbU9wdGlvbnMgPSBQYXJhbWV0ZXJzPFNoYXJwWyd0cmltJ10+WzBdXG5cbmV4cG9ydCB0eXBlIEltYWdlU2l6ZSA9IE9taXQ8UmVzaXplT3B0aW9ucywgJ3dpdGhvdXRFbmxhcmdlbWVudCc+ICYge1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcHJlZmVyIHBvc2l0aW9uXG4gICAqL1xuICBjcm9wPzogc3RyaW5nIC8vIGNvbWVzIGZyb20gc2hhcnAgcGFja2FnZVxuICBmb3JtYXRPcHRpb25zPzogSW1hZ2VVcGxvYWRGb3JtYXRPcHRpb25zXG4gIG5hbWU6IHN0cmluZ1xuICB0cmltT3B0aW9ucz86IEltYWdlVXBsb2FkVHJpbU9wdGlvbnNcbiAgLyoqXG4gICAqIFdoZW4gYW4gdXBsb2FkZWQgaW1hZ2UgaXMgc21hbGxlciB0aGFuIHRoZSBkZWZpbmVkIGltYWdlIHNpemUsIHdlIGhhdmUgMyBvcHRpb25zOlxuICAgKlxuICAgKiBgdW5kZWZpbmVkIHwgZmFsc2UgfCB0cnVlYFxuICAgKlxuICAgKiAxLiBgdW5kZWZpbmVkYCBbZGVmYXVsdF06IHVwbG9hZGluZyBpbWFnZXMgd2l0aCBzbWFsbGVyIHdpZHRoIEFORCBoZWlnaHQgdGhhbiB0aGUgaW1hZ2Ugc2l6ZSB3aWxsIHJldHVybiBudWxsXG4gICAqIDIuIGBmYWxzZWA6IGFsd2F5cyBlbmxhcmdlIGltYWdlcyB0byB0aGUgaW1hZ2Ugc2l6ZVxuICAgKiAzLiBgdHJ1ZWA6IGlmIHRoZSBpbWFnZSBpcyBzbWFsbGVyIHRoYW4gdGhlIGltYWdlIHNpemUsIHJldHVybiB0aGUgb3JpZ2luYWwgaW1hZ2VcbiAgICovXG4gIHdpdGhvdXRFbmxhcmdlbWVudD86IFJlc2l6ZU9wdGlvbnNbJ3dpdGhvdXRFbmxhcmdlbWVudCddXG59XG5cbmV4cG9ydCB0eXBlIEdldEFkbWluVGh1bWJuYWlsID0gKGFyZ3M6IHsgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB9KSA9PiBmYWxzZSB8IG51bGwgfCBzdHJpbmdcblxuZXhwb3J0IHR5cGUgSW5jb21pbmdVcGxvYWRUeXBlID0ge1xuICBhZG1pblRodW1ibmFpbD86IEdldEFkbWluVGh1bWJuYWlsIHwgc3RyaW5nXG4gIGNyb3A/OiBib29sZWFuXG4gIGRpc2FibGVMb2NhbFN0b3JhZ2U/OiBib29sZWFuXG4gIC8qKlxuICAgKiBBY2NlcHRzIGV4aXN0aW5nIGhlYWRlcnMgYW5kIGNhbiBmaWx0ZXIvbW9kaWZ5IHRoZW0uXG4gICAqXG4gICAqIFVzZWZ1bCBmb3IgYWRkaW5nIGN1c3RvbSBoZWFkZXJzIHRvIGZldGNoIGZyb20gZXh0ZXJuYWwgcHJvdmlkZXJzLlxuICAgKi9cbiAgZXh0ZXJuYWxGaWxlSGVhZGVyRmlsdGVyPzogKGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pID0+IFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgZmlsZXNSZXF1aXJlZE9uQ3JlYXRlPzogYm9vbGVhblxuICBmb2NhbFBvaW50PzogYm9vbGVhblxuICAvKiogT3B0aW9ucyBmb3Igb3JpZ2luYWwgdXBsb2FkIGZpbGUgb25seS4gRm9yIHNpemVzLCBzZXQgZWFjaCBmb3JtYXRPcHRpb25zIGluZGl2aWR1YWxseS4gKi9cbiAgZm9ybWF0T3B0aW9ucz86IEltYWdlVXBsb2FkRm9ybWF0T3B0aW9uc1xuICBoYW5kbGVycz86IGFueVtdXG4gIGltYWdlU2l6ZXM/OiBJbWFnZVNpemVbXVxuICBtaW1lVHlwZXM/OiBzdHJpbmdbXVxuICByZXNpemVPcHRpb25zPzogUmVzaXplT3B0aW9uc1xuICBzdGF0aWNEaXI/OiBzdHJpbmdcbiAgc3RhdGljT3B0aW9ucz86IHNlcnZlU3RhdGljLlNlcnZlU3RhdGljT3B0aW9uczxleHByZXNzLlJlc3BvbnNlPGFueSwgUmVjb3JkPHN0cmluZywgYW55Pj4+XG4gIHN0YXRpY1VSTD86IHN0cmluZ1xuICB0cmltT3B0aW9ucz86IEltYWdlVXBsb2FkVHJpbU9wdGlvbnNcbn1cblxuZXhwb3J0IHR5cGUgVXBsb2FkID0ge1xuICBhZG1pblRodW1ibmFpbD86IEdldEFkbWluVGh1bWJuYWlsIHwgc3RyaW5nXG4gIGNyb3A/OiBib29sZWFuXG4gIGRpc2FibGVMb2NhbFN0b3JhZ2U/OiBib29sZWFuXG4gIGZpbGVzUmVxdWlyZWRPbkNyZWF0ZT86IGJvb2xlYW5cbiAgZm9jYWxQb2ludD86IGJvb2xlYW5cbiAgZm9ybWF0T3B0aW9ucz86IEltYWdlVXBsb2FkRm9ybWF0T3B0aW9uc1xuICBoYW5kbGVycz86IGFueVtdXG4gIGltYWdlU2l6ZXM/OiBJbWFnZVNpemVbXVxuICBtaW1lVHlwZXM/OiBzdHJpbmdbXVxuICByZXNpemVPcHRpb25zPzogUmVzaXplT3B0aW9uc1xuICBzdGF0aWNEaXI6IHN0cmluZ1xuICBzdGF0aWNPcHRpb25zPzogc2VydmVTdGF0aWMuU2VydmVTdGF0aWNPcHRpb25zPGV4cHJlc3MuUmVzcG9uc2U8YW55LCBSZWNvcmQ8c3RyaW5nLCBhbnk+Pj5cbiAgc3RhdGljVVJMOiBzdHJpbmdcbiAgdHJpbU9wdGlvbnM/OiBJbWFnZVVwbG9hZFRyaW1PcHRpb25zXG59XG5cbmV4cG9ydCB0eXBlIEZpbGUgPSB7XG4gIGRhdGE6IEJ1ZmZlclxuICBtaW1ldHlwZTogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBzaXplOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgRmlsZVRvU2F2ZSA9IHtcbiAgYnVmZmVyOiBCdWZmZXJcbiAgcGF0aDogc3RyaW5nXG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0RBQW9EIn0=
@@ -20,7 +20,7 @@ collectionIDFieldTypes: {
20
20
  /**
21
21
  * Allows you to define new top-level interfaces that can be re-used in the output schema.
22
22
  */
23
- interfaceNameDefinitions: Map<string, JSONSchema4>, payload?: Payload): {
23
+ interfaceNameDefinitions: Map<string, JSONSchema4>, payload?: Payload, config?: SanitizedConfig): {
24
24
  properties: {
25
25
  [k: string]: JSONSchema4;
26
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"configToJSONSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/configToJSONSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAInE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,KAAK,EAA8B,MAAM,wBAAwB,CAAA;AAC/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AA6DzC;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,mBAAmB,EAC9B,UAAU,EAAE,OAAO,GAClB,mBAAmB,GAAG,mBAAmB,EAAE,CAK7C;AAED,wBAAgB,kBAAkB;AAChC;;;;GAIG;AACH,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC9D,MAAM,EAAE,KAAK,EAAE;AACf;;GAEG;AACH,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,OAAO,CAAC,EAAE,OAAO,GAChB;IACD,UAAU,EAAE;QACV,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;KACzB,CAAA;IACD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAmXA;AAGD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,cAAc,EAAE,yBAAyB,GAAG,qBAAqB,EACjE,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,aAAa,EAAE,QAAQ,GAAG,MAAM,EAChC,OAAO,CAAC,EAAE,OAAO,GAChB,WAAW,CA8Cb;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,EACjC,OAAO,CAAC,EAAE,OAAO,GAChB,WAAW,CAgCb"}
1
+ {"version":3,"file":"configToJSONSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/configToJSONSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAInE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,KAAK,EAA8B,MAAM,wBAAwB,CAAA;AAC/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AA6DzC;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,mBAAmB,EAC9B,UAAU,EAAE,OAAO,GAClB,mBAAmB,GAAG,mBAAmB,EAAE,CAK7C;AAED,wBAAgB,kBAAkB;AAChC;;;;GAIG;AACH,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC9D,MAAM,EAAE,KAAK,EAAE;AACf;;GAEG;AACH,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,eAAe,GACvB;IACD,UAAU,EAAE;QACV,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;KACzB,CAAA;IACD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAyXA;AAGD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,cAAc,EAAE,yBAAyB,GAAG,qBAAqB,EACjE,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,aAAa,EAAE,QAAQ,GAAG,MAAM,EAChC,OAAO,CAAC,EAAE,OAAO,GAChB,WAAW,CAoDb;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,EACjC,OAAO,CAAC,EAAE,OAAO,GAChB,WAAW,CAgCb"}
@@ -85,7 +85,7 @@ function fieldsToJSONSchema(/**
85
85
  * if they have custom ID fields.
86
86
  */ collectionIDFieldTypes, fields, /**
87
87
  * Allows you to define new top-level interfaces that can be re-used in the output schema.
88
- */ interfaceNameDefinitions, payload) {
88
+ */ interfaceNameDefinitions, payload, config) {
89
89
  const requiredFieldNames = new Set();
90
90
  return {
91
91
  properties: Object.fromEntries(fields.reduce((fieldSchemas, field)=>{
@@ -159,6 +159,7 @@ function fieldsToJSONSchema(/**
159
159
  if (field.editor.outputSchema) {
160
160
  fieldSchema = field.editor.outputSchema({
161
161
  collectionIDFieldTypes,
162
+ config: config || payload?.config,
162
163
  field,
163
164
  interfaceNameDefinitions,
164
165
  isRequired,
@@ -333,7 +334,7 @@ function fieldsToJSONSchema(/**
333
334
  type: withNullableJSONSchemaType('array', isRequired),
334
335
  items: {
335
336
  oneOf: field.blocks.map((block)=>{
336
- const blockFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, block.fields, interfaceNameDefinitions, payload);
337
+ const blockFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, block.fields, interfaceNameDefinitions, payload, config);
337
338
  const blockSchema = {
338
339
  type: 'object',
339
340
  additionalProperties: false,
@@ -367,7 +368,7 @@ function fieldsToJSONSchema(/**
367
368
  items: {
368
369
  type: 'object',
369
370
  additionalProperties: false,
370
- ...fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload)
371
+ ...fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload, config)
371
372
  }
372
373
  };
373
374
  if (field.interfaceName) {
@@ -381,7 +382,7 @@ function fieldsToJSONSchema(/**
381
382
  case 'row':
382
383
  case 'collapsible':
383
384
  {
384
- const childSchema = fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload);
385
+ const childSchema = fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload, config);
385
386
  Object.entries(childSchema.properties).forEach(([propName, propSchema])=>{
386
387
  fieldSchemas.set(propName, propSchema);
387
388
  });
@@ -393,7 +394,7 @@ function fieldsToJSONSchema(/**
393
394
  case 'tabs':
394
395
  {
395
396
  field.tabs.forEach((tab)=>{
396
- const childSchema = fieldsToJSONSchema(collectionIDFieldTypes, tab.fields, interfaceNameDefinitions, payload);
397
+ const childSchema = fieldsToJSONSchema(collectionIDFieldTypes, tab.fields, interfaceNameDefinitions, payload, config);
397
398
  if ((0, _types.tabHasName)(tab)) {
398
399
  // could have interface
399
400
  fieldSchemas.set(tab.name, {
@@ -418,7 +419,7 @@ function fieldsToJSONSchema(/**
418
419
  fieldSchema = {
419
420
  type: 'object',
420
421
  additionalProperties: false,
421
- ...fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload)
422
+ ...fieldsToJSONSchema(collectionIDFieldTypes, field.fields, interfaceNameDefinitions, payload, config)
422
423
  };
423
424
  if (field.interfaceName) {
424
425
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
@@ -482,7 +483,7 @@ function entityToJSONSchema(config, incomingEntity, interfaceNameDefinitions, de
482
483
  type: 'object',
483
484
  additionalProperties: false,
484
485
  title,
485
- ...fieldsToJSONSchema(collectionIDFieldTypes, entity.fields, interfaceNameDefinitions, payload)
486
+ ...fieldsToJSONSchema(collectionIDFieldTypes, entity.fields, interfaceNameDefinitions, payload, config)
486
487
  };
487
488
  }
488
489
  function configToJSONSchema(config, defaultIDType, payload) {
@@ -517,4 +518,4 @@ function configToJSONSchema(config, defaultIDType, payload) {
517
518
  };
518
519
  }
519
520
 
520
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29uZmlnVG9KU09OU2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgSlNPTlNjaGVtYTQsIEpTT05TY2hlbWE0VHlwZU5hbWUgfSBmcm9tICdqc29uLXNjaGVtYSdcblxuaW1wb3J0IHsgc2luZ3VsYXIgfSBmcm9tICdwbHVyYWxpemUnXG5cbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAnLi4vZXhwb3J0cy9jb25maWcnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBGaWVsZEFmZmVjdGluZ0RhdGEsIE9wdGlvbiB9IGZyb20gJy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vcGF5bG9hZCdcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgdGFiSGFzTmFtZSB9IGZyb20gJy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5pbXBvcnQgeyBkZWVwQ29weU9iamVjdCB9IGZyb20gJy4vZGVlcENvcHlPYmplY3QnXG5pbXBvcnQgeyB0b1dvcmRzIH0gZnJvbSAnLi9mb3JtYXRMYWJlbHMnXG5pbXBvcnQgeyBnZXRDb2xsZWN0aW9uSURGaWVsZFR5cGVzIH0gZnJvbSAnLi9nZXRDb2xsZWN0aW9uSURGaWVsZFR5cGVzJ1xuXG5jb25zdCBmaWVsZElzUmVxdWlyZWQgPSAoZmllbGQ6IEZpZWxkKSA9PiB7XG4gIGNvbnN0IGlzQ29uZGl0aW9uYWwgPSBCb29sZWFuKGZpZWxkPy5hZG1pbiAmJiBmaWVsZD8uYWRtaW4/LmNvbmRpdGlvbilcbiAgaWYgKGlzQ29uZGl0aW9uYWwpIHJldHVybiBmYWxzZVxuXG4gIGNvbnN0IGlzTWFya2VkUmVxdWlyZWQgPSAncmVxdWlyZWQnIGluIGZpZWxkICYmIGZpZWxkLnJlcXVpcmVkID09PSB0cnVlXG4gIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBpc01hcmtlZFJlcXVpcmVkKSByZXR1cm4gdHJ1ZVxuXG4gIC8vIGlmIGFueSBzdWJmaWVsZHMgYXJlIHJlcXVpcmVkLCB0aGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gIGlmICgnZmllbGRzJyBpbiBmaWVsZCAmJiBmaWVsZC50eXBlICE9PSAnYXJyYXknKSB7XG4gICAgcmV0dXJuIGZpZWxkLmZpZWxkcy5zb21lKChzdWJGaWVsZCkgPT4gZmllbGRJc1JlcXVpcmVkKHN1YkZpZWxkKSlcbiAgfVxuXG4gIC8vIGlmIGFueSB0YWIgc3ViZmllbGRzIGhhdmUgcmVxdWlyZWQgZmllbGRzLCB0aGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gIGlmIChmaWVsZC50eXBlID09PSAndGFicycpIHtcbiAgICByZXR1cm4gZmllbGQudGFicy5zb21lKCh0YWIpID0+IHtcbiAgICAgIGlmICgnbmFtZScgaW4gdGFiKSB7XG4gICAgICAgIHJldHVybiB0YWIuZmllbGRzLnNvbWUoKHN1YkZpZWxkKSA9PiBmaWVsZElzUmVxdWlyZWQoc3ViRmllbGQpKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBmYWxzZVxufVxuXG5mdW5jdGlvbiBidWlsZE9wdGlvbkVudW1zKG9wdGlvbnM6IE9wdGlvbltdKTogc3RyaW5nW10ge1xuICByZXR1cm4gb3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgIGlmICh0eXBlb2Ygb3B0aW9uID09PSAnb2JqZWN0JyAmJiAndmFsdWUnIGluIG9wdGlvbikge1xuICAgICAgcmV0dXJuIG9wdGlvbi52YWx1ZVxuICAgIH1cblxuICAgIHJldHVybiBvcHRpb25cbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVFbnRpdHlTY2hlbWFzKFxuICBlbnRpdGllczogKFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBTYW5pdGl6ZWRHbG9iYWxDb25maWcpW10sXG4pOiBKU09OU2NoZW1hNCB7XG4gIGNvbnN0IHByb3BlcnRpZXMgPSBbLi4uZW50aXRpZXNdLnJlZHVjZSgoYWNjLCB7IHNsdWcgfSkgPT4ge1xuICAgIGFjY1tzbHVnXSA9IHtcbiAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7c2x1Z31gLFxuICAgIH1cblxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgcHJvcGVydGllcyxcbiAgICByZXF1aXJlZDogT2JqZWN0LmtleXMocHJvcGVydGllcyksXG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgSlNPTiBTY2hlbWEgVHlwZSB3aXRoICdudWxsJyBhZGRlZCBpZiB0aGUgZmllbGQgaXMgbm90IHJlcXVpcmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoXG4gIGZpZWxkVHlwZTogSlNPTlNjaGVtYTRUeXBlTmFtZSxcbiAgaXNSZXF1aXJlZDogYm9vbGVhbixcbik6IEpTT05TY2hlbWE0VHlwZU5hbWUgfCBKU09OU2NoZW1hNFR5cGVOYW1lW10ge1xuICBjb25zdCBmaWVsZFR5cGVzID0gW2ZpZWxkVHlwZV1cbiAgaWYgKGlzUmVxdWlyZWQpIHJldHVybiBmaWVsZFR5cGVcbiAgZmllbGRUeXBlcy5wdXNoKCdudWxsJylcbiAgcmV0dXJuIGZpZWxkVHlwZXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpZWxkc1RvSlNPTlNjaGVtYShcbiAgLyoqXG4gICAqIFVzZWQgZm9yIHJlbGF0aW9uc2hpcCBmaWVsZHMsIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIHVzZSBhIHN0cmluZyBvciBudW1iZXIgdHlwZSBmb3IgdGhlIElELlxuICAgKiBXaGlsZSB0aGVyZSBpcyBhIGRlZmF1bHQgSUQgZmllbGQgdHlwZSBzZXQgYnkgdGhlIGRiIGFkYXB0ZXIsIHRoZXkgY2FuIGRpZmZlciBvbiBhIGNvbGxlY3Rpb24tbGV2ZWxcbiAgICogaWYgdGhleSBoYXZlIGN1c3RvbSBJRCBmaWVsZHMuXG4gICAqL1xuICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzOiB7IFtrZXk6IHN0cmluZ106ICdudW1iZXInIHwgJ3N0cmluZycgfSxcbiAgZmllbGRzOiBGaWVsZFtdLFxuICAvKipcbiAgICogQWxsb3dzIHlvdSB0byBkZWZpbmUgbmV3IHRvcC1sZXZlbCBpbnRlcmZhY2VzIHRoYXQgY2FuIGJlIHJlLXVzZWQgaW4gdGhlIG91dHB1dCBzY2hlbWEuXG4gICAqL1xuICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnM6IE1hcDxzdHJpbmcsIEpTT05TY2hlbWE0PixcbiAgcGF5bG9hZD86IFBheWxvYWQsXG4pOiB7XG4gIHByb3BlcnRpZXM6IHtcbiAgICBbazogc3RyaW5nXTogSlNPTlNjaGVtYTRcbiAgfVxuICByZXF1aXJlZDogc3RyaW5nW11cbn0ge1xuICBjb25zdCByZXF1aXJlZEZpZWxkTmFtZXMgPSBuZXcgU2V0PHN0cmluZz4oKVxuXG4gIHJldHVybiB7XG4gICAgcHJvcGVydGllczogT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgZmllbGRzLnJlZHVjZSgoZmllbGRTY2hlbWFzLCBmaWVsZCkgPT4ge1xuICAgICAgICBjb25zdCBpc1JlcXVpcmVkID0gZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiYgZmllbGRJc1JlcXVpcmVkKGZpZWxkKVxuICAgICAgICBpZiAoaXNSZXF1aXJlZCkgcmVxdWlyZWRGaWVsZE5hbWVzLmFkZChmaWVsZC5uYW1lKVxuXG4gICAgICAgIGxldCBmaWVsZFNjaGVtYTogSlNPTlNjaGVtYTRcbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgICAgICBpZiAoZmllbGQuaGFzTWFueSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICBpdGVtczogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHsgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ3N0cmluZycsIGlzUmVxdWlyZWQpIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAndGV4dGFyZWEnOlxuICAgICAgICAgIGNhc2UgJ2NvZGUnOlxuICAgICAgICAgIGNhc2UgJ2VtYWlsJzpcbiAgICAgICAgICBjYXNlICdkYXRlJzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7IHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdzdHJpbmcnLCBpc1JlcXVpcmVkKSB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ251bWJlcic6IHtcbiAgICAgICAgICAgIGlmIChmaWVsZC5oYXNNYW55ID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdhcnJheScsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0geyB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnbnVtYmVyJywgaXNSZXF1aXJlZCkgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdjaGVja2JveCc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0geyB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYm9vbGVhbicsIGlzUmVxdWlyZWQpIH1cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2FzZSAnanNvbic6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICB0eXBlOiBbJ29iamVjdCcsICdhcnJheScsICdzdHJpbmcnLCAnbnVtYmVyJywgJ2Jvb2xlYW4nLCAnbnVsbCddLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdyaWNoVGV4dCc6IHtcbiAgICAgICAgICAgIGlmIChmaWVsZC5lZGl0b3Iub3V0cHV0U2NoZW1hKSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0gZmllbGQuZWRpdG9yLm91dHB1dFNjaGVtYSh7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbklERmllbGRUeXBlcyxcbiAgICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICAgICAgICAgICAgaXNSZXF1aXJlZCxcbiAgICAgICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgLy8gTWFpbnRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBleGlzdGluZyByaWNoIHRleHQgZWRpdG9yc1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3JhZGlvJzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdzdHJpbmcnLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgZW51bTogYnVpbGRPcHRpb25FbnVtcyhmaWVsZC5vcHRpb25zKSxcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdzZWxlY3QnOiB7XG4gICAgICAgICAgICBjb25zdCBvcHRpb25FbnVtcyA9IGJ1aWxkT3B0aW9uRW51bXMoZmllbGQub3B0aW9ucylcblxuICAgICAgICAgICAgaWYgKGZpZWxkLmhhc01hbnkpIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ2FycmF5JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgICAgZW51bTogb3B0aW9uRW51bXMsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ3N0cmluZycsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGVudW06IG9wdGlvbkVudW1zLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2FzZSAncG9pbnQnOiB7XG4gICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ2FycmF5JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgIGl0ZW1zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBtYXhJdGVtczogMixcbiAgICAgICAgICAgICAgbWluSXRlbXM6IDIsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3JlbGF0aW9uc2hpcCc6IHtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pKSB7XG4gICAgICAgICAgICAgIGlmIChmaWVsZC5oYXNNYW55KSB7XG4gICAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgICAgICAgIG9uZU9mOiBmaWVsZC5yZWxhdGlvblRvLm1hcCgocmVsYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdDogcmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25lT2Y6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tyZWxhdGlvbl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke3JlbGF0aW9ufWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsndmFsdWUnLCAncmVsYXRpb25UbyddLFxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICAgIG9uZU9mOiBmaWVsZC5yZWxhdGlvblRvLm1hcCgocmVsYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnb2JqZWN0JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Q6IHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uZU9mOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tyZWxhdGlvbl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke3JlbGF0aW9ufWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogWyd2YWx1ZScsICdyZWxhdGlvblRvJ10sXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmIChmaWVsZC5oYXNNYW55KSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdhcnJheScsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tmaWVsZC5yZWxhdGlvblRvXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7ZmllbGQucmVsYXRpb25Ub31gLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZShcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzW2ZpZWxkLnJlbGF0aW9uVG9dLFxuICAgICAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke2ZpZWxkLnJlbGF0aW9uVG99YCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3VwbG9hZCc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6IGNvbGxlY3Rpb25JREZpZWxkVHlwZXNbZmllbGQucmVsYXRpb25Ub10sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke2ZpZWxkLnJlbGF0aW9uVG99YCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFpc1JlcXVpcmVkKSBmaWVsZFNjaGVtYS5vbmVPZi5wdXNoKHsgdHlwZTogJ251bGwnIH0pXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ2Jsb2Nrcyc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgICBvbmVPZjogZmllbGQuYmxvY2tzLm1hcCgoYmxvY2spID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrRmllbGRTY2hlbWFzID0gZmllbGRzVG9KU09OU2NoZW1hKFxuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzLFxuICAgICAgICAgICAgICAgICAgICBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgICAgIClcblxuICAgICAgICAgICAgICAgICAgY29uc3QgYmxvY2tTY2hlbWE6IEpTT05TY2hlbWE0ID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgLi4uYmxvY2tGaWVsZFNjaGVtYXMucHJvcGVydGllcyxcbiAgICAgICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0OiBibG9jay5zbHVnLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBbJ2Jsb2NrVHlwZScsIC4uLmJsb2NrRmllbGRTY2hlbWFzLnJlcXVpcmVkXSxcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrLmludGVyZmFjZU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLnNldChibG9jay5pbnRlcmZhY2VOYW1lLCBibG9ja1NjaGVtYSlcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7YmxvY2suaW50ZXJmYWNlTmFtZX1gLFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHJldHVybiBibG9ja1NjaGVtYVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdhcnJheSc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgICAgLi4uZmllbGRzVG9KU09OU2NoZW1hKFxuICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbklERmllbGRUeXBlcyxcbiAgICAgICAgICAgICAgICAgIGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucyxcbiAgICAgICAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGZpZWxkLmludGVyZmFjZU5hbWUpIHtcbiAgICAgICAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLnNldChmaWVsZC5pbnRlcmZhY2VOYW1lLCBmaWVsZFNjaGVtYSlcblxuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke2ZpZWxkLmludGVyZmFjZU5hbWV9YCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdyb3cnOlxuICAgICAgICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgICAgICAgY29uc3QgY2hpbGRTY2hlbWEgPSBmaWVsZHNUb0pTT05TY2hlbWEoXG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25JREZpZWxkVHlwZXMsXG4gICAgICAgICAgICAgIGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoY2hpbGRTY2hlbWEucHJvcGVydGllcykuZm9yRWFjaCgoW3Byb3BOYW1lLCBwcm9wU2NoZW1hXSkgPT4ge1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYXMuc2V0KHByb3BOYW1lLCBwcm9wU2NoZW1hKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIGNoaWxkU2NoZW1hLnJlcXVpcmVkLmZvckVhY2goKHByb3BOYW1lKSA9PiB7XG4gICAgICAgICAgICAgIHJlcXVpcmVkRmllbGROYW1lcy5hZGQocHJvcE5hbWUpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICd0YWJzJzoge1xuICAgICAgICAgICAgZmllbGQudGFicy5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY2hpbGRTY2hlbWEgPSBmaWVsZHNUb0pTT05TY2hlbWEoXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbklERmllbGRUeXBlcyxcbiAgICAgICAgICAgICAgICB0YWIuZmllbGRzLFxuICAgICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucyxcbiAgICAgICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIGlmICh0YWJIYXNOYW1lKHRhYikpIHtcbiAgICAgICAgICAgICAgICAvLyBjb3VsZCBoYXZlIGludGVyZmFjZVxuICAgICAgICAgICAgICAgIGZpZWxkU2NoZW1hcy5zZXQodGFiLm5hbWUsIHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgLi4uY2hpbGRTY2hlbWEsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICByZXF1aXJlZEZpZWxkTmFtZXMuYWRkKHRhYi5uYW1lKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGNoaWxkU2NoZW1hLnByb3BlcnRpZXMpLmZvckVhY2goKFtwcm9wTmFtZSwgcHJvcFNjaGVtYV0pID0+IHtcbiAgICAgICAgICAgICAgICAgIGZpZWxkU2NoZW1hcy5zZXQocHJvcE5hbWUsIHByb3BTY2hlbWEpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICBjaGlsZFNjaGVtYS5yZXF1aXJlZC5mb3JFYWNoKChwcm9wTmFtZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgcmVxdWlyZWRGaWVsZE5hbWVzLmFkZChwcm9wTmFtZSlcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdncm91cCc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAuLi5maWVsZHNUb0pTT05TY2hlbWEoXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbklERmllbGRUeXBlcyxcbiAgICAgICAgICAgICAgICBmaWVsZC5maWVsZHMsXG4gICAgICAgICAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChmaWVsZC5pbnRlcmZhY2VOYW1lKSB7XG4gICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucy5zZXQoZmllbGQuaW50ZXJmYWNlTmFtZSwgZmllbGRTY2hlbWEpXG5cbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgJHJlZjogYCMvZGVmaW5pdGlvbnMvJHtmaWVsZC5pbnRlcmZhY2VOYW1lfWAsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmllbGRTY2hlbWEgJiYgZmllbGRBZmZlY3RzRGF0YShmaWVsZCkpIHtcbiAgICAgICAgICBmaWVsZFNjaGVtYXMuc2V0KGZpZWxkLm5hbWUsIGZpZWxkU2NoZW1hKVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkU2NoZW1hc1xuICAgICAgfSwgbmV3IE1hcDxzdHJpbmcsIEpTT05TY2hlbWE0PigpKSxcbiAgICApLFxuICAgIHJlcXVpcmVkOiBBcnJheS5mcm9tKHJlcXVpcmVkRmllbGROYW1lcyksXG4gIH1cbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpcyBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJIGFuZCBpcyBleHBvcnRlZCB0aHJvdWdoIHBheWxvYWQvdXRpbGl0aWVzXG5leHBvcnQgZnVuY3Rpb24gZW50aXR5VG9KU09OU2NoZW1hKFxuICBjb25maWc6IFNhbml0aXplZENvbmZpZyxcbiAgaW5jb21pbmdFbnRpdHk6IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBTYW5pdGl6ZWRHbG9iYWxDb25maWcsXG4gIGludGVyZmFjZU5hbWVEZWZpbml0aW9uczogTWFwPHN0cmluZywgSlNPTlNjaGVtYTQ+LFxuICBkZWZhdWx0SURUeXBlOiAnbnVtYmVyJyB8ICd0ZXh0JyxcbiAgcGF5bG9hZD86IFBheWxvYWQsXG4pOiBKU09OU2NoZW1hNCB7XG4gIGNvbnN0IGVudGl0eTogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IFNhbml0aXplZEdsb2JhbENvbmZpZyA9IGRlZXBDb3B5T2JqZWN0KGluY29taW5nRW50aXR5KVxuICBjb25zdCB0aXRsZSA9IGVudGl0eS50eXBlc2NyaXB0Py5pbnRlcmZhY2VcbiAgICA/IGVudGl0eS50eXBlc2NyaXB0LmludGVyZmFjZVxuICAgIDogc2luZ3VsYXIodG9Xb3JkcyhlbnRpdHkuc2x1ZywgdHJ1ZSkpXG5cbiAgY29uc3QgaWRGaWVsZDogRmllbGRBZmZlY3RpbmdEYXRhID0geyBuYW1lOiAnaWQnLCB0eXBlOiBkZWZhdWx0SURUeXBlIGFzICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfVxuICBjb25zdCBjdXN0b21JZEZpZWxkID0gZW50aXR5LmZpZWxkcy5maW5kKFxuICAgIChmaWVsZCkgPT4gZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiYgZmllbGQubmFtZSA9PT0gJ2lkJyxcbiAgKSBhcyBGaWVsZEFmZmVjdGluZ0RhdGFcblxuICBpZiAoY3VzdG9tSWRGaWVsZCAmJiBjdXN0b21JZEZpZWxkLnR5cGUgIT09ICdncm91cCcgJiYgY3VzdG9tSWRGaWVsZC50eXBlICE9PSAndGFiJykge1xuICAgIGN1c3RvbUlkRmllbGQucmVxdWlyZWQgPSB0cnVlXG4gIH0gZWxzZSB7XG4gICAgZW50aXR5LmZpZWxkcy51bnNoaWZ0KGlkRmllbGQpXG4gIH1cblxuICAvLyBtYXJrIHRpbWVzdGFtcCBmaWVsZHMgcmVxdWlyZWRcbiAgaWYgKCd0aW1lc3RhbXBzJyBpbiBlbnRpdHkgJiYgZW50aXR5LnRpbWVzdGFtcHMgIT09IGZhbHNlKSB7XG4gICAgZW50aXR5LmZpZWxkcyA9IGVudGl0eS5maWVsZHMubWFwKChmaWVsZCkgPT4ge1xuICAgICAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIChmaWVsZC5uYW1lID09PSAnY3JlYXRlZEF0JyB8fCBmaWVsZC5uYW1lID09PSAndXBkYXRlZEF0JykpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZpZWxkXG4gICAgfSlcbiAgfVxuXG4gIGlmICgnYXV0aCcgaW4gZW50aXR5ICYmIGVudGl0eS5hdXRoICYmICFlbnRpdHkuYXV0aD8uZGlzYWJsZUxvY2FsU3RyYXRlZ3kpIHtcbiAgICBlbnRpdHkuZmllbGRzLnB1c2goe1xuICAgICAgbmFtZTogJ3Bhc3N3b3JkJyxcbiAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICB9KVxuICB9XG5cbiAgLy8gIFVzZWQgZm9yIHJlbGF0aW9uc2hpcCBmaWVsZHMsIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIHVzZSBhIHN0cmluZyBvciBudW1iZXIgdHlwZSBmb3IgdGhlIElELlxuICBjb25zdCBjb2xsZWN0aW9uSURGaWVsZFR5cGVzID0gZ2V0Q29sbGVjdGlvbklERmllbGRUeXBlcyh7IGNvbmZpZywgZGVmYXVsdElEVHlwZSB9KVxuXG4gIHJldHVybiB7XG4gICAgdHlwZTogJ29iamVjdCcsXG4gICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgIHRpdGxlLFxuICAgIC4uLmZpZWxkc1RvSlNPTlNjaGVtYShjb2xsZWN0aW9uSURGaWVsZFR5cGVzLCBlbnRpdHkuZmllbGRzLCBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsIHBheWxvYWQpLFxuICB9XG59XG5cbi8qKlxuICogVGhpcyBpcyB1c2VkIGZvciBnZW5lcmF0aW5nIHRoZSBUeXBlU2NyaXB0IHR5cGVzIChwYXlsb2FkLXR5cGVzLnRzKSB3aXRoIHRoZSBwYXlsb2FkIGdlbmVyYXRlOnR5cGVzIGNvbW1hbmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25maWdUb0pTT05TY2hlbWEoXG4gIGNvbmZpZzogU2FuaXRpemVkQ29uZmlnLFxuICBkZWZhdWx0SURUeXBlPzogJ251bWJlcicgfCAndGV4dCcsXG4gIHBheWxvYWQ/OiBQYXlsb2FkLFxuKTogSlNPTlNjaGVtYTQge1xuICAvLyBhIG11dGFibGUgTWFwIHRvIHN0b3JlIGN1c3RvbSB0b3AtbGV2ZWwgYGludGVyZmFjZU5hbWVgIHR5cGVzLiBGaWVsZHMgd2l0aCBhbiBgaW50ZXJmYWNlTmFtZWAgcHJvcGVydHkgd2lsbCBiZSBtb3ZlZCB0byB0aGUgdG9wLWxldmVsIGRlZmluaXRpb25zIGhlcmVcbiAgY29uc3QgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zOiBNYXA8c3RyaW5nLCBKU09OU2NoZW1hND4gPSBuZXcgTWFwKClcblxuICAvLyBDb2xsZWN0aW9ucyBhbmQgR2xvYmFscyBoYXZlIHRvIGJlIG1vdmVkIHRvIHRoZSB0b3AtbGV2ZWwgZGVmaW5pdGlvbnMgYXMgd2VsbC4gUmVhc29uOiBUaGUgdG9wLWxldmVsIHR5cGUgd2lsbCBiZSB0aGUgYENvbmZpZ2AgdHlwZSAtIHdlIGRvbid0IHdhbnQgYWxsIGNvbGxlY3Rpb24gYW5kIGdsb2JhbFxuICAvLyB0eXBlcyB0byBiZSBpbmxpbmVkIGluc2lkZSB0aGUgYENvbmZpZ2AgdHlwZVxuICBjb25zdCBlbnRpdHlEZWZpbml0aW9uczogeyBbazogc3RyaW5nXTogSlNPTlNjaGVtYTQgfSA9IFtcbiAgICAuLi5jb25maWcuZ2xvYmFscyxcbiAgICAuLi5jb25maWcuY29sbGVjdGlvbnMsXG4gIF0ucmVkdWNlKChhY2MsIGVudGl0eSkgPT4ge1xuICAgIGFjY1tlbnRpdHkuc2x1Z10gPSBlbnRpdHlUb0pTT05TY2hlbWEoXG4gICAgICBjb25maWcsXG4gICAgICBlbnRpdHksXG4gICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICBkZWZhdWx0SURUeXBlLFxuICAgICAgcGF5bG9hZCxcbiAgICApXG4gICAgcmV0dXJuIGFjY1xuICB9LCB7fSlcblxuICByZXR1cm4ge1xuICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICBkZWZpbml0aW9uczogeyAuLi5lbnRpdHlEZWZpbml0aW9ucywgLi4uT2JqZWN0LmZyb21FbnRyaWVzKGludGVyZmFjZU5hbWVEZWZpbml0aW9ucykgfSxcbiAgICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGhlcmUgd2lsbCBiZSB2ZXJ5IHNpbXBsZSwgYXMgYWxsIHRoZSBjb21wbGV4aXR5IGlzIGluIHRoZSBkZWZpbml0aW9ucy4gVGhlc2UgYXJlIGp1c3QgdGhlIHByb3BlcnRpZXMgZm9yIHRoZSB0b3AtbGV2ZWwgYENvbmZpZ2AgdHlwZVxuICAgIHR5cGU6ICdvYmplY3QnLFxuICAgIHByb3BlcnRpZXM6IHtcbiAgICAgIGNvbGxlY3Rpb25zOiBnZW5lcmF0ZUVudGl0eVNjaGVtYXMoY29uZmlnLmNvbGxlY3Rpb25zIHx8IFtdKSxcbiAgICAgIGdsb2JhbHM6IGdlbmVyYXRlRW50aXR5U2NoZW1hcyhjb25maWcuZ2xvYmFscyB8fCBbXSksXG4gICAgfSxcbiAgICByZXF1aXJlZDogWydjb2xsZWN0aW9ucycsICdnbG9iYWxzJ10sXG4gICAgdGl0bGU6ICdDb25maWcnLFxuICB9XG59XG4iXSwibmFtZXMiOlsiY29uZmlnVG9KU09OU2NoZW1hIiwiZW50aXR5VG9KU09OU2NoZW1hIiwiZmllbGRzVG9KU09OU2NoZW1hIiwid2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUiLCJmaWVsZElzUmVxdWlyZWQiLCJmaWVsZCIsImlzQ29uZGl0aW9uYWwiLCJCb29sZWFuIiwiYWRtaW4iLCJjb25kaXRpb24iLCJpc01hcmtlZFJlcXVpcmVkIiwicmVxdWlyZWQiLCJmaWVsZEFmZmVjdHNEYXRhIiwidHlwZSIsImZpZWxkcyIsInNvbWUiLCJzdWJGaWVsZCIsInRhYnMiLCJ0YWIiLCJidWlsZE9wdGlvbkVudW1zIiwib3B0aW9ucyIsIm1hcCIsIm9wdGlvbiIsInZhbHVlIiwiZ2VuZXJhdGVFbnRpdHlTY2hlbWFzIiwiZW50aXRpZXMiLCJwcm9wZXJ0aWVzIiwicmVkdWNlIiwiYWNjIiwic2x1ZyIsIiRyZWYiLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsIk9iamVjdCIsImtleXMiLCJmaWVsZFR5cGUiLCJpc1JlcXVpcmVkIiwiZmllbGRUeXBlcyIsInB1c2giLCJjb2xsZWN0aW9uSURGaWVsZFR5cGVzIiwiaW50ZXJmYWNlTmFtZURlZmluaXRpb25zIiwicGF5bG9hZCIsInJlcXVpcmVkRmllbGROYW1lcyIsIlNldCIsImZyb21FbnRyaWVzIiwiZmllbGRTY2hlbWFzIiwiYWRkIiwibmFtZSIsImZpZWxkU2NoZW1hIiwiaGFzTWFueSIsIml0ZW1zIiwiZWRpdG9yIiwib3V0cHV0U2NoZW1hIiwiZW51bSIsIm9wdGlvbkVudW1zIiwibWF4SXRlbXMiLCJtaW5JdGVtcyIsIkFycmF5IiwiaXNBcnJheSIsInJlbGF0aW9uVG8iLCJvbmVPZiIsInJlbGF0aW9uIiwiY29uc3QiLCJibG9ja3MiLCJibG9jayIsImJsb2NrRmllbGRTY2hlbWFzIiwiYmxvY2tTY2hlbWEiLCJibG9ja1R5cGUiLCJpbnRlcmZhY2VOYW1lIiwic2V0IiwiY2hpbGRTY2hlbWEiLCJlbnRyaWVzIiwiZm9yRWFjaCIsInByb3BOYW1lIiwicHJvcFNjaGVtYSIsInRhYkhhc05hbWUiLCJNYXAiLCJmcm9tIiwiY29uZmlnIiwiaW5jb21pbmdFbnRpdHkiLCJkZWZhdWx0SURUeXBlIiwiZW50aXR5IiwiZGVlcENvcHlPYmplY3QiLCJ0aXRsZSIsInR5cGVzY3JpcHQiLCJpbnRlcmZhY2UiLCJzaW5ndWxhciIsInRvV29yZHMiLCJpZEZpZWxkIiwiY3VzdG9tSWRGaWVsZCIsImZpbmQiLCJ1bnNoaWZ0IiwidGltZXN0YW1wcyIsImF1dGgiLCJkaXNhYmxlTG9jYWxTdHJhdGVneSIsImdldENvbGxlY3Rpb25JREZpZWxkVHlwZXMiLCJlbnRpdHlEZWZpbml0aW9ucyIsImdsb2JhbHMiLCJjb2xsZWN0aW9ucyIsImRlZmluaXRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQW1oQmdCQSxrQkFBa0I7ZUFBbEJBOztJ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
521
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29uZmlnVG9KU09OU2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgSlNPTlNjaGVtYTQsIEpTT05TY2hlbWE0VHlwZU5hbWUgfSBmcm9tICdqc29uLXNjaGVtYSdcblxuaW1wb3J0IHsgc2luZ3VsYXIgfSBmcm9tICdwbHVyYWxpemUnXG5cbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAnLi4vZXhwb3J0cy9jb25maWcnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBGaWVsZEFmZmVjdGluZ0RhdGEsIE9wdGlvbiB9IGZyb20gJy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vcGF5bG9hZCdcblxuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgdGFiSGFzTmFtZSB9IGZyb20gJy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5pbXBvcnQgeyBkZWVwQ29weU9iamVjdCB9IGZyb20gJy4vZGVlcENvcHlPYmplY3QnXG5pbXBvcnQgeyB0b1dvcmRzIH0gZnJvbSAnLi9mb3JtYXRMYWJlbHMnXG5pbXBvcnQgeyBnZXRDb2xsZWN0aW9uSURGaWVsZFR5cGVzIH0gZnJvbSAnLi9nZXRDb2xsZWN0aW9uSURGaWVsZFR5cGVzJ1xuXG5jb25zdCBmaWVsZElzUmVxdWlyZWQgPSAoZmllbGQ6IEZpZWxkKSA9PiB7XG4gIGNvbnN0IGlzQ29uZGl0aW9uYWwgPSBCb29sZWFuKGZpZWxkPy5hZG1pbiAmJiBmaWVsZD8uYWRtaW4/LmNvbmRpdGlvbilcbiAgaWYgKGlzQ29uZGl0aW9uYWwpIHJldHVybiBmYWxzZVxuXG4gIGNvbnN0IGlzTWFya2VkUmVxdWlyZWQgPSAncmVxdWlyZWQnIGluIGZpZWxkICYmIGZpZWxkLnJlcXVpcmVkID09PSB0cnVlXG4gIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBpc01hcmtlZFJlcXVpcmVkKSByZXR1cm4gdHJ1ZVxuXG4gIC8vIGlmIGFueSBzdWJmaWVsZHMgYXJlIHJlcXVpcmVkLCB0aGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gIGlmICgnZmllbGRzJyBpbiBmaWVsZCAmJiBmaWVsZC50eXBlICE9PSAnYXJyYXknKSB7XG4gICAgcmV0dXJuIGZpZWxkLmZpZWxkcy5zb21lKChzdWJGaWVsZCkgPT4gZmllbGRJc1JlcXVpcmVkKHN1YkZpZWxkKSlcbiAgfVxuXG4gIC8vIGlmIGFueSB0YWIgc3ViZmllbGRzIGhhdmUgcmVxdWlyZWQgZmllbGRzLCB0aGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gIGlmIChmaWVsZC50eXBlID09PSAndGFicycpIHtcbiAgICByZXR1cm4gZmllbGQudGFicy5zb21lKCh0YWIpID0+IHtcbiAgICAgIGlmICgnbmFtZScgaW4gdGFiKSB7XG4gICAgICAgIHJldHVybiB0YWIuZmllbGRzLnNvbWUoKHN1YkZpZWxkKSA9PiBmaWVsZElzUmVxdWlyZWQoc3ViRmllbGQpKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBmYWxzZVxufVxuXG5mdW5jdGlvbiBidWlsZE9wdGlvbkVudW1zKG9wdGlvbnM6IE9wdGlvbltdKTogc3RyaW5nW10ge1xuICByZXR1cm4gb3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgIGlmICh0eXBlb2Ygb3B0aW9uID09PSAnb2JqZWN0JyAmJiAndmFsdWUnIGluIG9wdGlvbikge1xuICAgICAgcmV0dXJuIG9wdGlvbi52YWx1ZVxuICAgIH1cblxuICAgIHJldHVybiBvcHRpb25cbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVFbnRpdHlTY2hlbWFzKFxuICBlbnRpdGllczogKFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBTYW5pdGl6ZWRHbG9iYWxDb25maWcpW10sXG4pOiBKU09OU2NoZW1hNCB7XG4gIGNvbnN0IHByb3BlcnRpZXMgPSBbLi4uZW50aXRpZXNdLnJlZHVjZSgoYWNjLCB7IHNsdWcgfSkgPT4ge1xuICAgIGFjY1tzbHVnXSA9IHtcbiAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7c2x1Z31gLFxuICAgIH1cblxuICAgIHJldHVybiBhY2NcbiAgfSwge30pXG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgcHJvcGVydGllcyxcbiAgICByZXF1aXJlZDogT2JqZWN0LmtleXMocHJvcGVydGllcyksXG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgSlNPTiBTY2hlbWEgVHlwZSB3aXRoICdudWxsJyBhZGRlZCBpZiB0aGUgZmllbGQgaXMgbm90IHJlcXVpcmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoXG4gIGZpZWxkVHlwZTogSlNPTlNjaGVtYTRUeXBlTmFtZSxcbiAgaXNSZXF1aXJlZDogYm9vbGVhbixcbik6IEpTT05TY2hlbWE0VHlwZU5hbWUgfCBKU09OU2NoZW1hNFR5cGVOYW1lW10ge1xuICBjb25zdCBmaWVsZFR5cGVzID0gW2ZpZWxkVHlwZV1cbiAgaWYgKGlzUmVxdWlyZWQpIHJldHVybiBmaWVsZFR5cGVcbiAgZmllbGRUeXBlcy5wdXNoKCdudWxsJylcbiAgcmV0dXJuIGZpZWxkVHlwZXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpZWxkc1RvSlNPTlNjaGVtYShcbiAgLyoqXG4gICAqIFVzZWQgZm9yIHJlbGF0aW9uc2hpcCBmaWVsZHMsIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIHVzZSBhIHN0cmluZyBvciBudW1iZXIgdHlwZSBmb3IgdGhlIElELlxuICAgKiBXaGlsZSB0aGVyZSBpcyBhIGRlZmF1bHQgSUQgZmllbGQgdHlwZSBzZXQgYnkgdGhlIGRiIGFkYXB0ZXIsIHRoZXkgY2FuIGRpZmZlciBvbiBhIGNvbGxlY3Rpb24tbGV2ZWxcbiAgICogaWYgdGhleSBoYXZlIGN1c3RvbSBJRCBmaWVsZHMuXG4gICAqL1xuICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzOiB7IFtrZXk6IHN0cmluZ106ICdudW1iZXInIHwgJ3N0cmluZycgfSxcbiAgZmllbGRzOiBGaWVsZFtdLFxuICAvKipcbiAgICogQWxsb3dzIHlvdSB0byBkZWZpbmUgbmV3IHRvcC1sZXZlbCBpbnRlcmZhY2VzIHRoYXQgY2FuIGJlIHJlLXVzZWQgaW4gdGhlIG91dHB1dCBzY2hlbWEuXG4gICAqL1xuICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnM6IE1hcDxzdHJpbmcsIEpTT05TY2hlbWE0PixcbiAgcGF5bG9hZD86IFBheWxvYWQsXG4gIGNvbmZpZz86IFNhbml0aXplZENvbmZpZyxcbik6IHtcbiAgcHJvcGVydGllczoge1xuICAgIFtrOiBzdHJpbmddOiBKU09OU2NoZW1hNFxuICB9XG4gIHJlcXVpcmVkOiBzdHJpbmdbXVxufSB7XG4gIGNvbnN0IHJlcXVpcmVkRmllbGROYW1lcyA9IG5ldyBTZXQ8c3RyaW5nPigpXG5cbiAgcmV0dXJuIHtcbiAgICBwcm9wZXJ0aWVzOiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBmaWVsZHMucmVkdWNlKChmaWVsZFNjaGVtYXMsIGZpZWxkKSA9PiB7XG4gICAgICAgIGNvbnN0IGlzUmVxdWlyZWQgPSBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZElzUmVxdWlyZWQoZmllbGQpXG4gICAgICAgIGlmIChpc1JlcXVpcmVkKSByZXF1aXJlZEZpZWxkTmFtZXMuYWRkKGZpZWxkLm5hbWUpXG5cbiAgICAgICAgbGV0IGZpZWxkU2NoZW1hOiBKU09OU2NoZW1hNFxuICAgICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICd0ZXh0JzpcbiAgICAgICAgICAgIGlmIChmaWVsZC5oYXNNYW55ID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdhcnJheScsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0geyB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnc3RyaW5nJywgaXNSZXF1aXJlZCkgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd0ZXh0YXJlYSc6XG4gICAgICAgICAgY2FzZSAnY29kZSc6XG4gICAgICAgICAgY2FzZSAnZW1haWwnOlxuICAgICAgICAgIGNhc2UgJ2RhdGUnOiB7XG4gICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHsgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ3N0cmluZycsIGlzUmVxdWlyZWQpIH1cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2FzZSAnbnVtYmVyJzoge1xuICAgICAgICAgICAgaWYgKGZpZWxkLmhhc01hbnkgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ2FycmF5JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgaXRlbXM6IHsgdHlwZTogJ251bWJlcicgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7IHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdudW1iZXInLCBpc1JlcXVpcmVkKSB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ2NoZWNrYm94Jzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7IHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdib29sZWFuJywgaXNSZXF1aXJlZCkgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdqc29uJzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgIHR5cGU6IFsnb2JqZWN0JywgJ2FycmF5JywgJ3N0cmluZycsICdudW1iZXInLCAnYm9vbGVhbicsICdudWxsJ10sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3JpY2hUZXh0Jzoge1xuICAgICAgICAgICAgaWYgKGZpZWxkLmVkaXRvci5vdXRwdXRTY2hlbWEpIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSBmaWVsZC5lZGl0b3Iub3V0cHV0U2NoZW1hKHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzLFxuICAgICAgICAgICAgICAgIGNvbmZpZzogY29uZmlnIHx8IHBheWxvYWQ/LmNvbmZpZyxcbiAgICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICAgICAgICAgICAgaXNSZXF1aXJlZCxcbiAgICAgICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgLy8gTWFpbnRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBleGlzdGluZyByaWNoIHRleHQgZWRpdG9yc1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3JhZGlvJzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdzdHJpbmcnLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgZW51bTogYnVpbGRPcHRpb25FbnVtcyhmaWVsZC5vcHRpb25zKSxcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjYXNlICdzZWxlY3QnOiB7XG4gICAgICAgICAgICBjb25zdCBvcHRpb25FbnVtcyA9IGJ1aWxkT3B0aW9uRW51bXMoZmllbGQub3B0aW9ucylcblxuICAgICAgICAgICAgaWYgKGZpZWxkLmhhc01hbnkpIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ2FycmF5JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgICAgZW51bTogb3B0aW9uRW51bXMsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ3N0cmluZycsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGVudW06IG9wdGlvbkVudW1zLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2FzZSAncG9pbnQnOiB7XG4gICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgdHlwZTogd2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUoJ2FycmF5JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgIGl0ZW1zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBtYXhJdGVtczogMixcbiAgICAgICAgICAgICAgbWluSXRlbXM6IDIsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3JlbGF0aW9uc2hpcCc6IHtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkLnJlbGF0aW9uVG8pKSB7XG4gICAgICAgICAgICAgIGlmIChmaWVsZC5oYXNNYW55KSB7XG4gICAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgICAgICAgIG9uZU9mOiBmaWVsZC5yZWxhdGlvblRvLm1hcCgocmVsYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdDogcmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25lT2Y6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tyZWxhdGlvbl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke3JlbGF0aW9ufWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsndmFsdWUnLCAncmVsYXRpb25UbyddLFxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICAgIG9uZU9mOiBmaWVsZC5yZWxhdGlvblRvLm1hcCgocmVsYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnb2JqZWN0JywgaXNSZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uVG86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Q6IHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uZU9mOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tyZWxhdGlvbl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke3JlbGF0aW9ufWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogWyd2YWx1ZScsICdyZWxhdGlvblRvJ10sXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmIChmaWVsZC5oYXNNYW55KSB7XG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdhcnJheScsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgdHlwZTogY29sbGVjdGlvbklERmllbGRUeXBlc1tmaWVsZC5yZWxhdGlvblRvXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7ZmllbGQucmVsYXRpb25Ub31gLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBmaWVsZFNjaGVtYSA9IHtcbiAgICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZShcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzW2ZpZWxkLnJlbGF0aW9uVG9dLFxuICAgICAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke2ZpZWxkLnJlbGF0aW9uVG99YCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3VwbG9hZCc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICBvbmVPZjogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6IGNvbGxlY3Rpb25JREZpZWxkVHlwZXNbZmllbGQucmVsYXRpb25Ub10sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAkcmVmOiBgIy9kZWZpbml0aW9ucy8ke2ZpZWxkLnJlbGF0aW9uVG99YCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFpc1JlcXVpcmVkKSBmaWVsZFNjaGVtYS5vbmVPZi5wdXNoKHsgdHlwZTogJ251bGwnIH0pXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ2Jsb2Nrcyc6IHtcbiAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICB0eXBlOiB3aXRoTnVsbGFibGVKU09OU2NoZW1hVHlwZSgnYXJyYXknLCBpc1JlcXVpcmVkKSxcbiAgICAgICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgICAgICBvbmVPZjogZmllbGQuYmxvY2tzLm1hcCgoYmxvY2spID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrRmllbGRTY2hlbWFzID0gZmllbGRzVG9KU09OU2NoZW1hKFxuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzLFxuICAgICAgICAgICAgICAgICAgICBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnLFxuICAgICAgICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICAgICAgICBjb25zdCBibG9ja1NjaGVtYTogSlNPTlNjaGVtYTQgPSB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi5ibG9ja0ZpZWxkU2NoZW1hcy5wcm9wZXJ0aWVzLFxuICAgICAgICAgICAgICAgICAgICAgIGJsb2NrVHlwZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Q6IGJsb2NrLnNsdWcsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsnYmxvY2tUeXBlJywgLi4uYmxvY2tGaWVsZFNjaGVtYXMucmVxdWlyZWRdLFxuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBpZiAoYmxvY2suaW50ZXJmYWNlTmFtZSkge1xuICAgICAgICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMuc2V0KGJsb2NrLmludGVyZmFjZU5hbWUsIGJsb2NrU2NoZW1hKVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgJHJlZjogYCMvZGVmaW5pdGlvbnMvJHtibG9jay5pbnRlcmZhY2VOYW1lfWAsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrU2NoZW1hXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ2FycmF5Jzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgIHR5cGU6IHdpdGhOdWxsYWJsZUpTT05TY2hlbWFUeXBlKCdhcnJheScsIGlzUmVxdWlyZWQpLFxuICAgICAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAuLi5maWVsZHNUb0pTT05TY2hlbWEoXG4gICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzLFxuICAgICAgICAgICAgICAgICAgZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgICAgIGNvbmZpZyxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZmllbGQuaW50ZXJmYWNlTmFtZSkge1xuICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMuc2V0KGZpZWxkLmludGVyZmFjZU5hbWUsIGZpZWxkU2NoZW1hKVxuXG4gICAgICAgICAgICAgIGZpZWxkU2NoZW1hID0ge1xuICAgICAgICAgICAgICAgICRyZWY6IGAjL2RlZmluaXRpb25zLyR7ZmllbGQuaW50ZXJmYWNlTmFtZX1gLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ3Jvdyc6XG4gICAgICAgICAgY2FzZSAnY29sbGFwc2libGUnOiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZFNjaGVtYSA9IGZpZWxkc1RvSlNPTlNjaGVtYShcbiAgICAgICAgICAgICAgY29sbGVjdGlvbklERmllbGRUeXBlcyxcbiAgICAgICAgICAgICAgZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICAgIGNvbmZpZyxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGNoaWxkU2NoZW1hLnByb3BlcnRpZXMpLmZvckVhY2goKFtwcm9wTmFtZSwgcHJvcFNjaGVtYV0pID0+IHtcbiAgICAgICAgICAgICAgZmllbGRTY2hlbWFzLnNldChwcm9wTmFtZSwgcHJvcFNjaGVtYSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBjaGlsZFNjaGVtYS5yZXF1aXJlZC5mb3JFYWNoKChwcm9wTmFtZSkgPT4ge1xuICAgICAgICAgICAgICByZXF1aXJlZEZpZWxkTmFtZXMuYWRkKHByb3BOYW1lKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY2FzZSAndGFicyc6IHtcbiAgICAgICAgICAgIGZpZWxkLnRhYnMuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNoaWxkU2NoZW1hID0gZmllbGRzVG9KU09OU2NoZW1hKFxuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25JREZpZWxkVHlwZXMsXG4gICAgICAgICAgICAgICAgdGFiLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgICBjb25maWcsXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgaWYgKHRhYkhhc05hbWUodGFiKSkge1xuICAgICAgICAgICAgICAgIC8vIGNvdWxkIGhhdmUgaW50ZXJmYWNlXG4gICAgICAgICAgICAgICAgZmllbGRTY2hlbWFzLnNldCh0YWIubmFtZSwge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAuLi5jaGlsZFNjaGVtYSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIHJlcXVpcmVkRmllbGROYW1lcy5hZGQodGFiLm5hbWUpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoY2hpbGRTY2hlbWEucHJvcGVydGllcykuZm9yRWFjaCgoW3Byb3BOYW1lLCBwcm9wU2NoZW1hXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgZmllbGRTY2hlbWFzLnNldChwcm9wTmFtZSwgcHJvcFNjaGVtYSlcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIGNoaWxkU2NoZW1hLnJlcXVpcmVkLmZvckVhY2goKHByb3BOYW1lKSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXF1aXJlZEZpZWxkTmFtZXMuYWRkKHByb3BOYW1lKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNhc2UgJ2dyb3VwJzoge1xuICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogZmFsc2UsXG4gICAgICAgICAgICAgIC4uLmZpZWxkc1RvSlNPTlNjaGVtYShcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uSURGaWVsZFR5cGVzLFxuICAgICAgICAgICAgICAgIGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgICBjb25maWcsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChmaWVsZC5pbnRlcmZhY2VOYW1lKSB7XG4gICAgICAgICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9ucy5zZXQoZmllbGQuaW50ZXJmYWNlTmFtZSwgZmllbGRTY2hlbWEpXG5cbiAgICAgICAgICAgICAgZmllbGRTY2hlbWEgPSB7XG4gICAgICAgICAgICAgICAgJHJlZjogYCMvZGVmaW5pdGlvbnMvJHtmaWVsZC5pbnRlcmZhY2VOYW1lfWAsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmllbGRTY2hlbWEgJiYgZmllbGRBZmZlY3RzRGF0YShmaWVsZCkpIHtcbiAgICAgICAgICBmaWVsZFNjaGVtYXMuc2V0KGZpZWxkLm5hbWUsIGZpZWxkU2NoZW1hKVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkU2NoZW1hc1xuICAgICAgfSwgbmV3IE1hcDxzdHJpbmcsIEpTT05TY2hlbWE0PigpKSxcbiAgICApLFxuICAgIHJlcXVpcmVkOiBBcnJheS5mcm9tKHJlcXVpcmVkRmllbGROYW1lcyksXG4gIH1cbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpcyBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJIGFuZCBpcyBleHBvcnRlZCB0aHJvdWdoIHBheWxvYWQvdXRpbGl0aWVzXG5leHBvcnQgZnVuY3Rpb24gZW50aXR5VG9KU09OU2NoZW1hKFxuICBjb25maWc6IFNhbml0aXplZENvbmZpZyxcbiAgaW5jb21pbmdFbnRpdHk6IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBTYW5pdGl6ZWRHbG9iYWxDb25maWcsXG4gIGludGVyZmFjZU5hbWVEZWZpbml0aW9uczogTWFwPHN0cmluZywgSlNPTlNjaGVtYTQ+LFxuICBkZWZhdWx0SURUeXBlOiAnbnVtYmVyJyB8ICd0ZXh0JyxcbiAgcGF5bG9hZD86IFBheWxvYWQsXG4pOiBKU09OU2NoZW1hNCB7XG4gIGNvbnN0IGVudGl0eTogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IFNhbml0aXplZEdsb2JhbENvbmZpZyA9IGRlZXBDb3B5T2JqZWN0KGluY29taW5nRW50aXR5KVxuICBjb25zdCB0aXRsZSA9IGVudGl0eS50eXBlc2NyaXB0Py5pbnRlcmZhY2VcbiAgICA/IGVudGl0eS50eXBlc2NyaXB0LmludGVyZmFjZVxuICAgIDogc2luZ3VsYXIodG9Xb3JkcyhlbnRpdHkuc2x1ZywgdHJ1ZSkpXG5cbiAgY29uc3QgaWRGaWVsZDogRmllbGRBZmZlY3RpbmdEYXRhID0geyBuYW1lOiAnaWQnLCB0eXBlOiBkZWZhdWx0SURUeXBlIGFzICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfVxuICBjb25zdCBjdXN0b21JZEZpZWxkID0gZW50aXR5LmZpZWxkcy5maW5kKFxuICAgIChmaWVsZCkgPT4gZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiYgZmllbGQubmFtZSA9PT0gJ2lkJyxcbiAgKSBhcyBGaWVsZEFmZmVjdGluZ0RhdGFcblxuICBpZiAoY3VzdG9tSWRGaWVsZCAmJiBjdXN0b21JZEZpZWxkLnR5cGUgIT09ICdncm91cCcgJiYgY3VzdG9tSWRGaWVsZC50eXBlICE9PSAndGFiJykge1xuICAgIGN1c3RvbUlkRmllbGQucmVxdWlyZWQgPSB0cnVlXG4gIH0gZWxzZSB7XG4gICAgZW50aXR5LmZpZWxkcy51bnNoaWZ0KGlkRmllbGQpXG4gIH1cblxuICAvLyBtYXJrIHRpbWVzdGFtcCBmaWVsZHMgcmVxdWlyZWRcbiAgaWYgKCd0aW1lc3RhbXBzJyBpbiBlbnRpdHkgJiYgZW50aXR5LnRpbWVzdGFtcHMgIT09IGZhbHNlKSB7XG4gICAgZW50aXR5LmZpZWxkcyA9IGVudGl0eS5maWVsZHMubWFwKChmaWVsZCkgPT4ge1xuICAgICAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIChmaWVsZC5uYW1lID09PSAnY3JlYXRlZEF0JyB8fCBmaWVsZC5uYW1lID09PSAndXBkYXRlZEF0JykpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZpZWxkXG4gICAgfSlcbiAgfVxuXG4gIGlmICgnYXV0aCcgaW4gZW50aXR5ICYmIGVudGl0eS5hdXRoICYmICFlbnRpdHkuYXV0aD8uZGlzYWJsZUxvY2FsU3RyYXRlZ3kpIHtcbiAgICBlbnRpdHkuZmllbGRzLnB1c2goe1xuICAgICAgbmFtZTogJ3Bhc3N3b3JkJyxcbiAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICB9KVxuICB9XG5cbiAgLy8gIFVzZWQgZm9yIHJlbGF0aW9uc2hpcCBmaWVsZHMsIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIHVzZSBhIHN0cmluZyBvciBudW1iZXIgdHlwZSBmb3IgdGhlIElELlxuICBjb25zdCBjb2xsZWN0aW9uSURGaWVsZFR5cGVzID0gZ2V0Q29sbGVjdGlvbklERmllbGRUeXBlcyh7IGNvbmZpZywgZGVmYXVsdElEVHlwZSB9KVxuXG4gIHJldHVybiB7XG4gICAgdHlwZTogJ29iamVjdCcsXG4gICAgYWRkaXRpb25hbFByb3BlcnRpZXM6IGZhbHNlLFxuICAgIHRpdGxlLFxuICAgIC4uLmZpZWxkc1RvSlNPTlNjaGVtYShcbiAgICAgIGNvbGxlY3Rpb25JREZpZWxkVHlwZXMsXG4gICAgICBlbnRpdHkuZmllbGRzLFxuICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgcGF5bG9hZCxcbiAgICAgIGNvbmZpZyxcbiAgICApLFxuICB9XG59XG5cbi8qKlxuICogVGhpcyBpcyB1c2VkIGZvciBnZW5lcmF0aW5nIHRoZSBUeXBlU2NyaXB0IHR5cGVzIChwYXlsb2FkLXR5cGVzLnRzKSB3aXRoIHRoZSBwYXlsb2FkIGdlbmVyYXRlOnR5cGVzIGNvbW1hbmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25maWdUb0pTT05TY2hlbWEoXG4gIGNvbmZpZzogU2FuaXRpemVkQ29uZmlnLFxuICBkZWZhdWx0SURUeXBlPzogJ251bWJlcicgfCAndGV4dCcsXG4gIHBheWxvYWQ/OiBQYXlsb2FkLFxuKTogSlNPTlNjaGVtYTQge1xuICAvLyBhIG11dGFibGUgTWFwIHRvIHN0b3JlIGN1c3RvbSB0b3AtbGV2ZWwgYGludGVyZmFjZU5hbWVgIHR5cGVzLiBGaWVsZHMgd2l0aCBhbiBgaW50ZXJmYWNlTmFtZWAgcHJvcGVydHkgd2lsbCBiZSBtb3ZlZCB0byB0aGUgdG9wLWxldmVsIGRlZmluaXRpb25zIGhlcmVcbiAgY29uc3QgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zOiBNYXA8c3RyaW5nLCBKU09OU2NoZW1hND4gPSBuZXcgTWFwKClcblxuICAvLyBDb2xsZWN0aW9ucyBhbmQgR2xvYmFscyBoYXZlIHRvIGJlIG1vdmVkIHRvIHRoZSB0b3AtbGV2ZWwgZGVmaW5pdGlvbnMgYXMgd2VsbC4gUmVhc29uOiBUaGUgdG9wLWxldmVsIHR5cGUgd2lsbCBiZSB0aGUgYENvbmZpZ2AgdHlwZSAtIHdlIGRvbid0IHdhbnQgYWxsIGNvbGxlY3Rpb24gYW5kIGdsb2JhbFxuICAvLyB0eXBlcyB0byBiZSBpbmxpbmVkIGluc2lkZSB0aGUgYENvbmZpZ2AgdHlwZVxuICBjb25zdCBlbnRpdHlEZWZpbml0aW9uczogeyBbazogc3RyaW5nXTogSlNPTlNjaGVtYTQgfSA9IFtcbiAgICAuLi5jb25maWcuZ2xvYmFscyxcbiAgICAuLi5jb25maWcuY29sbGVjdGlvbnMsXG4gIF0ucmVkdWNlKChhY2MsIGVudGl0eSkgPT4ge1xuICAgIGFjY1tlbnRpdHkuc2x1Z10gPSBlbnRpdHlUb0pTT05TY2hlbWEoXG4gICAgICBjb25maWcsXG4gICAgICBlbnRpdHksXG4gICAgICBpbnRlcmZhY2VOYW1lRGVmaW5pdGlvbnMsXG4gICAgICBkZWZhdWx0SURUeXBlLFxuICAgICAgcGF5bG9hZCxcbiAgICApXG4gICAgcmV0dXJuIGFjY1xuICB9LCB7fSlcblxuICByZXR1cm4ge1xuICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmYWxzZSxcbiAgICBkZWZpbml0aW9uczogeyAuLi5lbnRpdHlEZWZpbml0aW9ucywgLi4uT2JqZWN0LmZyb21FbnRyaWVzKGludGVyZmFjZU5hbWVEZWZpbml0aW9ucykgfSxcbiAgICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGhlcmUgd2lsbCBiZSB2ZXJ5IHNpbXBsZSwgYXMgYWxsIHRoZSBjb21wbGV4aXR5IGlzIGluIHRoZSBkZWZpbml0aW9ucy4gVGhlc2UgYXJlIGp1c3QgdGhlIHByb3BlcnRpZXMgZm9yIHRoZSB0b3AtbGV2ZWwgYENvbmZpZ2AgdHlwZVxuICAgIHR5cGU6ICdvYmplY3QnLFxuICAgIHByb3BlcnRpZXM6IHtcbiAgICAgIGNvbGxlY3Rpb25zOiBnZW5lcmF0ZUVudGl0eVNjaGVtYXMoY29uZmlnLmNvbGxlY3Rpb25zIHx8IFtdKSxcbiAgICAgIGdsb2JhbHM6IGdlbmVyYXRlRW50aXR5U2NoZW1hcyhjb25maWcuZ2xvYmFscyB8fCBbXSksXG4gICAgfSxcbiAgICByZXF1aXJlZDogWydjb2xsZWN0aW9ucycsICdnbG9iYWxzJ10sXG4gICAgdGl0bGU6ICdDb25maWcnLFxuICB9XG59XG4iXSwibmFtZXMiOlsiY29uZmlnVG9KU09OU2NoZW1hIiwiZW50aXR5VG9KU09OU2NoZW1hIiwiZmllbGRzVG9KU09OU2NoZW1hIiwid2l0aE51bGxhYmxlSlNPTlNjaGVtYVR5cGUiLCJmaWVsZElzUmVxdWlyZWQiLCJmaWVsZCIsImlzQ29uZGl0aW9uYWwiLCJCb29sZWFuIiwiYWRtaW4iLCJjb25kaXRpb24iLCJpc01hcmtlZFJlcXVpcmVkIiwicmVxdWlyZWQiLCJmaWVsZEFmZmVjdHNEYXRhIiwidHlwZSIsImZpZWxkcyIsInNvbWUiLCJzdWJGaWVsZCIsInRhYnMiLCJ0YWIiLCJidWlsZE9wdGlvbkVudW1zIiwib3B0aW9ucyIsIm1hcCIsIm9wdGlvbiIsInZhbHVlIiwiZ2VuZXJhdGVFbnRpdHlTY2hlbWFzIiwiZW50aXRpZXMiLCJwcm9wZXJ0aWVzIiwicmVkdWNlIiwiYWNjIiwic2x1ZyIsIiRyZWYiLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsIk9iamVjdCIsImtleXMiLCJmaWVsZFR5cGUiLCJpc1JlcXVpcmVkIiwiZmllbGRUeXBlcyIsInB1c2giLCJjb2xsZWN0aW9uSURGaWVsZFR5cGVzIiwiaW50ZXJmYWNlTmFtZURlZmluaXRpb25zIiwicGF5bG9hZCIsImNvbmZpZyIsInJlcXVpcmVkRmllbGROYW1lcyIsIlNldCIsImZyb21FbnRyaWVzIiwiZmllbGRTY2hlbWFzIiwiYWRkIiwibmFtZSIsImZpZWxkU2NoZW1hIiwiaGFzTWFueSIsIml0ZW1zIiwiZWRpdG9yIiwib3V0cHV0U2NoZW1hIiwiZW51bSIsIm9wdGlvbkVudW1zIiwibWF4SXRlbXMiLCJtaW5JdGVtcyIsIkFycmF5IiwiaXNBcnJheSIsInJlbGF0aW9uVG8iLCJvbmVPZiIsInJlbGF0aW9uIiwiY29uc3QiLCJibG9ja3MiLCJibG9jayIsImJsb2NrRmllbGRTY2hlbWFzIiwiYmxvY2tTY2hlbWEiLCJibG9ja1R5cGUiLCJpbnRlcmZhY2VOYW1lIiwic2V0IiwiY2hpbGRTY2hlbWEiLCJlbnRyaWVzIiwiZm9yRWFjaCIsInByb3BOYW1lIiwicHJvcFNjaGVtYSIsInRhYkhhc05hbWUiLCJNYXAiLCJmcm9tIiwiaW5jb21pbmdFbnRpdHkiLCJkZWZhdWx0SURUeXBlIiwiZW50aXR5IiwiZGVlcENvcHlPYmplY3QiLCJ0aXRsZSIsInR5cGVzY3JpcHQiLCJpbnRlcmZhY2UiLCJzaW5ndWxhciIsInRvV29yZHMiLCJpZEZpZWxkIiwiY3VzdG9tSWRGaWVsZCIsImZpbmQiLCJ1bnNoaWZ0IiwidGltZXN0YW1wcyIsImF1dGgiLCJkaXNhYmxlTG9jYWxTdHJhdGVneSIsImdldENvbGxlY3Rpb25JREZpZWxkVHlwZXMiLCJlbnRpdHlEZWZpbml0aW9ucyIsImdsb2JhbHMiLCJjb2xsZWN0aW9ucyIsImRlZmluaXRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQWdpQmdCQSxrQkFBa0I7ZUFBbEJBOztJQS9EQUMsa0JBQWtCO2VBQWxCQTs7SUEvWUFDLGtCQUFrQjtlQUFsQkE7O0lBVkFDLDBCQUEwQjtlQUExQkE7OzsyQkF0RVM7dUJBUW9CO2dDQUNkOzhCQUNQOzJDQUNrQjtBQUUxQyxNQUFNQyxrQkFBa0IsQ0FBQ0M7SUFDdkIsTUFBTUMsZ0JBQWdCQyxRQUFRRixPQUFPRyxTQUFTSCxPQUFPRyxPQUFPQztJQUM1RCxJQUFJSCxlQUFlLE9BQU87SUFFMUIsTUFBTUksbUJBQW1CLGNBQWNMLFNBQVNBLE1BQU1NLFFBQVEsS0FBSztJQUNuRSxJQUFJQyxJQUFBQSx1QkFBZ0IsRUFBQ1AsVUFBVUssa0JBQWtCLE9BQU87SUFFeEQsd0RBQXdEO0lBQ3hELElBQUksWUFBWUwsU0FBU0EsTUFBTVEsSUFBSSxLQUFLLFNBQVM7UUFDL0MsT0FBT1IsTUFBTVMsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQ0MsV0FBYVosZ0JBQWdCWTtJQUN6RDtJQUVBLG9FQUFvRTtJQUNwRSxJQUFJWCxNQUFNUSxJQUFJLEtBQUssUUFBUTtRQUN6QixPQUFPUixNQUFNWSxJQUFJLENBQUNGLElBQUksQ0FBQyxDQUFDRztZQUN0QixJQUFJLFVBQVVBLEtBQUs7Z0JBQ2pCLE9BQU9BLElBQUlKLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNDLFdBQWFaLGdCQUFnQlk7WUFDdkQ7WUFDQSxPQUFPO1FBQ1Q7SUFDRjtJQUVBLE9BQU87QUFDVDtBQUVBLFNBQVNHLGlC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
@@ -1 +1 @@
1
- {"version":3,"file":"createLocalReq.d.ts","sourceRoot":"","sources":["../../src/utilities/createLocalReq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAqBtD,KAAK,cAAc,GAAG,CACpB,OAAO,EAAE;IACP,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;IACrC,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,EACD,OAAO,EAAE,OAAO,KACb,cAAc,CAAA;AACnB,eAAO,MAAM,cAAc,EAAE,cA6B5B,CAAA"}
1
+ {"version":3,"file":"createLocalReq.d.ts","sourceRoot":"","sources":["../../src/utilities/createLocalReq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAsBtD,KAAK,cAAc,GAAG,CACpB,OAAO,EAAE;IACP,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;IACrC,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,EACD,OAAO,EAAE,OAAO,KACb,cAAc,CAAA;AACnB,eAAO,MAAM,cAAc,EAAE,cA+B5B,CAAA"}
@@ -10,6 +10,12 @@ Object.defineProperty(exports, "createLocalReq", {
10
10
  });
11
11
  const _dataloader = require("../collections/dataloader");
12
12
  const _init = require("../translations/init");
13
+ const _isolateObjectProperty = /*#__PURE__*/ _interop_require_default(require("./isolateObjectProperty"));
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
13
19
  function getRequestContext(req = {
14
20
  context: null
15
21
  }, context = {}) {
@@ -45,9 +51,10 @@ const createLocalReq = ({ collection, context, fallbackLocale, locale, req = {},
45
51
  req.i18n = i18n;
46
52
  req.t = i18n.t;
47
53
  req.user = user || req?.user || null;
48
- req.collection = collection ? payload.collections?.[collection] : null;
49
54
  req.payloadDataLoader = req?.payloadDataLoader || (0, _dataloader.getDataLoader)(req);
55
+ req = (0, _isolateObjectProperty.default)(req, 'collection');
56
+ req.collection = payload.collections[collection];
50
57
  return req;
51
58
  };
52
59
 
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY3JlYXRlTG9jYWxSZXEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYXlsb2FkLCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uL2V4cG9ydHMvdHlwZXMnXG5cbmltcG9ydCB7IGdldERhdGFMb2FkZXIgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9kYXRhbG9hZGVyJ1xuaW1wb3J0IHsgaTE4bkluaXQgfSBmcm9tICcuLi90cmFuc2xhdGlvbnMvaW5pdCdcblxuZnVuY3Rpb24gZ2V0UmVxdWVzdENvbnRleHQoXG4gIHJlcTogUGF5bG9hZFJlcXVlc3QgPSB7IGNvbnRleHQ6IG51bGwgfSBhcyBQYXlsb2FkUmVxdWVzdCxcbiAgY29udGV4dDogUmVxdWVzdENvbnRleHQgPSB7fSxcbik6IFJlcXVlc3RDb250ZXh0IHtcbiAgaWYgKHJlcS5jb250ZXh0KSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHJlcS5jb250ZXh0KS5sZW5ndGggPT09IDAgJiYgcmVxLmNvbnRleHQuY29uc3RydWN0b3IgPT09IE9iamVjdCkge1xuICAgICAgLy8gaWYgcmVxLmNvbnRleHQgaXMgYHt9YCBhdm9pZCB1bm5lY2Vzc2FyeSBzcHJlYWRcbiAgICAgIHJldHVybiBjb250ZXh0XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7IC4uLnJlcS5jb250ZXh0LCAuLi5jb250ZXh0IH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGNvbnRleHRcbiAgfVxufVxuXG50eXBlIENyZWF0ZUxvY2FsUmVxID0gKFxuICBvcHRpb25zOiB7XG4gICAgY29sbGVjdGlvbj86IG51bWJlciB8IHN0cmluZyB8IHN5bWJvbFxuICAgIGNvbnRleHQ/OiBSZXF1ZXN0Q29udGV4dFxuICAgIGZhbGxiYWNrTG9jYWxlPzogc3RyaW5nXG4gICAgbG9jYWxlPzogc3RyaW5nXG4gICAgcmVxPzogUGF5bG9hZFJlcXVlc3RcbiAgICB1c2VyPzogRG9jdW1lbnRcbiAgfSxcbiAgcGF5bG9hZDogUGF5bG9hZCxcbikgPT4gUGF5bG9hZFJlcXVlc3RcbmV4cG9ydCBjb25zdCBjcmVhdGVMb2NhbFJlcTogQ3JlYXRlTG9jYWxSZXEgPSAoXG4gIHsgY29sbGVjdGlvbiwgY29udGV4dCwgZmFsbGJhY2tMb2NhbGUsIGxvY2FsZSwgcmVxID0ge30gYXMgUGF5bG9hZFJlcXVlc3QsIHVzZXIgfSxcbiAgcGF5bG9hZCxcbikgPT4ge1xuICBjb25zdCBpMThuID0gcmVxPy5pMThuIHx8IGkxOG5Jbml0KHBheWxvYWQuY29uZmlnPy5pMThuKVxuXG4gIGlmIChwYXlsb2FkLmNvbmZpZz8ubG9jYWxpemF0aW9uKSB7XG4gICAgY29uc3QgZGVmYXVsdExvY2FsZSA9IHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbi5kZWZhdWx0TG9jYWxlXG4gICAgcmVxLmxvY2FsZSA9IGxvY2FsZSB8fCByZXE/LmxvY2FsZSB8fCBkZWZhdWx0TG9jYWxlXG4gICAgY29uc3QgZmFsbGJhY2tMb2NhbGVGcm9tQ29uZmlnID0gcGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uLmxvY2FsZXMuZmluZChcbiAgICAgICh7IGNvZGUgfSkgPT4gcmVxLmxvY2FsZSA9PT0gY29kZSxcbiAgICApPy5mYWxsYmFja0xvY2FsZVxuICAgIGlmICh0eXBlb2YgZmFsbGJhY2tMb2NhbGUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXEuZmFsbGJhY2tMb2NhbGUgPSBmYWxsYmFja0xvY2FsZVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHJlcT8uZmFsbGJhY2tMb2NhbGUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXEuZmFsbGJhY2tMb2NhbGUgPSBmYWxsYmFja0xvY2FsZUZyb21Db25maWcgfHwgZGVmYXVsdExvY2FsZVxuICAgIH1cbiAgfVxuXG4gIHJlcS5jb250ZXh0ID0gZ2V0UmVxdWVzdENvbnRleHQocmVxLCBjb250ZXh0KVxuICByZXEucGF5bG9hZEFQSSA9IHJlcT8ucGF5bG9hZEFQSSB8fCAnbG9jYWwnXG4gIHJlcS5wYXlsb2FkID0gcGF5bG9hZFxuICByZXEuaTE4biA9IGkxOG5cbiAgcmVxLnQgPSBpMThuLnRcbiAgcmVxLnVzZXIgPSB1c2VyIHx8IHJlcT8udXNlciB8fCBudWxsXG4gIHJlcS5jb2xsZWN0aW9uID0gY29sbGVjdGlvbiA/IHBheWxvYWQuY29sbGVjdGlvbnM/Lltjb2xsZWN0aW9uXSA6IG51bGxcbiAgcmVxLnBheWxvYWREYXRhTG9hZGVyID0gcmVxPy5wYXlsb2FkRGF0YUxvYWRlciB8fCBnZXREYXRhTG9hZGVyKHJlcSlcblxuICByZXR1cm4gcmVxXG59XG4iXSwibmFtZXMiOlsiY3JlYXRlTG9jYWxSZXEiLCJnZXRSZXF1ZXN0Q29udGV4dCIsInJlcSIsImNvbnRleHQiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwiY29uc3RydWN0b3IiLCJjb2xsZWN0aW9uIiwiZmFsbGJhY2tMb2NhbGUiLCJsb2NhbGUiLCJ1c2VyIiwicGF5bG9hZCIsImkxOG4iLCJpMThuSW5pdCIsImNvbmZpZyIsImxvY2FsaXphdGlvbiIsImRlZmF1bHRMb2NhbGUiLCJmYWxsYmFja0xvY2FsZUZyb21Db25maWciLCJsb2NhbGVzIiwiZmluZCIsImNvZGUiLCJwYXlsb2FkQVBJIiwidCIsImNvbGxlY3Rpb25zIiwicGF5bG9hZERhdGFMb2FkZXIiLCJnZXREYXRhTG9hZGVyIl0sIm1hcHBpbmdzIjoiOzs7OytCQWlDYUE7OztlQUFBQTs7OzRCQTlCaUI7c0JBQ0w7QUFFekIsU0FBU0Msa0JBQ1BDLE1BQXNCO0lBQUVDLFNBQVM7QUFBSyxDQUFtQixFQUN6REEsVUFBMEIsQ0FBQyxDQUFDO0lBRTVCLElBQUlELElBQUlDLE9BQU8sRUFBRTtRQUNmLElBQUlDLE9BQU9DLElBQUksQ0FBQ0gsSUFBSUMsT0FBTyxFQUFFRyxNQUFNLEtBQUssS0FBS0osSUFBSUMsT0FBTyxDQUFDSSxXQUFXLEtBQUtILFFBQVE7WUFDL0Usa0RBQWtEO1lBQ2xELE9BQU9EO1FBQ1QsT0FBTztZQUNMLE9BQU87Z0JBQUUsR0FBR0QsSUFBSUMsT0FBTztnQkFBRSxHQUFHQSxPQUFPO1lBQUM7UUFDdEM7SUFDRixPQUFPO1FBQ0wsT0FBT0E7SUFDVDtBQUNGO0FBYU8sTUFBTUgsaUJBQWlDLENBQzVDLEVBQUVRLFVBQVUsRUFBRUwsT0FBTyxFQUFFTSxjQUFjLEVBQUVDLE1BQU0sRUFBRVIsTUFBTSxDQUFDLENBQW1CLEVBQUVTLElBQUksRUFBRSxFQUNqRkM7SUFFQSxNQUFNQyxPQUFPWCxLQUFLVyxRQUFRQyxJQUFBQSxjQUFRLEVBQUNGLFFBQVFHLE1BQU0sRUFBRUY7SUFFbkQsSUFBSUQsUUFBUUcsTUFBTSxFQUFFQyxjQUFjO1FBQ2hDLE1BQU1DLGdCQUFnQkwsUUFBUUcsTUFBTSxDQUFDQyxZQUFZLENBQUNDLGFBQWE7UUFDL0RmLElBQUlRLE1BQU0sR0FBR0EsVUFBVVIsS0FBS1EsVUFBVU87UUFDdEMsTUFBTUMsMkJBQTJCTixRQUFRRyxNQUFNLENBQUNDLFlBQVksQ0FBQ0csT0FBTyxDQUFDQyxJQUFJLENBQ3ZFLENBQUMsRUFBRUMsSUFBSSxFQUFFLEdBQUtuQixJQUFJUSxNQUFNLEtBQUtXLE9BQzVCWjtRQUNILElBQUksT0FBT0EsbUJBQW1CLGFBQWE7WUFDekNQLElBQUlPLGNBQWMsR0FBR0E7UUFDdkIsT0FBTyxJQUFJLE9BQU9QLEtBQUtPLG1CQUFtQixhQUFhO1lBQ3JEUCxJQUFJTyxjQUFjLEdBQUdTLDRCQUE0QkQ7UUFDbkQ7SUFDRjtJQUVBZixJQUFJQyxPQUFPLEdBQUdGLGtCQUFrQkMsS0FBS0M7SUFDckNELElBQUlvQixVQUFVLEdBQUdwQixLQUFLb0IsY0FBYztJQUNwQ3BCLElBQUlVLE9BQU8sR0FBR0E7SUFDZFYsSUFBSVcsSUFBSSxHQUFHQTtJQUNYWCxJQUFJcUIsQ0FBQyxHQUFHVixLQUFLVSxDQUFDO0lBQ2RyQixJQUFJUyxJQUFJLEdBQUdBLFFBQVFULEtBQUtTLFFBQVE7SUFDaENULElBQUlNLFVBQVUsR0FBR0EsYUFBYUksUUFBUVksV0FBVyxFQUFFLENBQUNoQixXQUFXLEdBQUc7SUFDbEVOLElBQUl1QixpQkFBaUIsR0FBR3ZCLEtBQUt1QixxQkFBcUJDLElBQUFBLHlCQUFhLEVBQUN4QjtJQUVoRSxPQUFPQTtBQUNUIn0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY3JlYXRlTG9jYWxSZXEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYXlsb2FkLCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uL2V4cG9ydHMvdHlwZXMnXG5cbmltcG9ydCB7IGdldERhdGFMb2FkZXIgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9kYXRhbG9hZGVyJ1xuaW1wb3J0IHsgaTE4bkluaXQgfSBmcm9tICcuLi90cmFuc2xhdGlvbnMvaW5pdCdcbmltcG9ydCBpc29sYXRlT2JqZWN0UHJvcGVydHkgZnJvbSAnLi9pc29sYXRlT2JqZWN0UHJvcGVydHknXG5cbmZ1bmN0aW9uIGdldFJlcXVlc3RDb250ZXh0KFxuICByZXE6IFBheWxvYWRSZXF1ZXN0ID0geyBjb250ZXh0OiBudWxsIH0gYXMgUGF5bG9hZFJlcXVlc3QsXG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0ID0ge30sXG4pOiBSZXF1ZXN0Q29udGV4dCB7XG4gIGlmIChyZXEuY29udGV4dCkge1xuICAgIGlmIChPYmplY3Qua2V5cyhyZXEuY29udGV4dCkubGVuZ3RoID09PSAwICYmIHJlcS5jb250ZXh0LmNvbnN0cnVjdG9yID09PSBPYmplY3QpIHtcbiAgICAgIC8vIGlmIHJlcS5jb250ZXh0IGlzIGB7fWAgYXZvaWQgdW5uZWNlc3Nhcnkgc3ByZWFkXG4gICAgICByZXR1cm4gY29udGV4dFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4geyAuLi5yZXEuY29udGV4dCwgLi4uY29udGV4dCB9XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiBjb250ZXh0XG4gIH1cbn1cblxudHlwZSBDcmVhdGVMb2NhbFJlcSA9IChcbiAgb3B0aW9uczoge1xuICAgIGNvbGxlY3Rpb24/OiBudW1iZXIgfCBzdHJpbmcgfCBzeW1ib2xcbiAgICBjb250ZXh0PzogUmVxdWVzdENvbnRleHRcbiAgICBmYWxsYmFja0xvY2FsZT86IHN0cmluZ1xuICAgIGxvY2FsZT86IHN0cmluZ1xuICAgIHJlcT86IFBheWxvYWRSZXF1ZXN0XG4gICAgdXNlcj86IERvY3VtZW50XG4gIH0sXG4gIHBheWxvYWQ6IFBheWxvYWQsXG4pID0+IFBheWxvYWRSZXF1ZXN0XG5leHBvcnQgY29uc3QgY3JlYXRlTG9jYWxSZXE6IENyZWF0ZUxvY2FsUmVxID0gKFxuICB7IGNvbGxlY3Rpb24sIGNvbnRleHQsIGZhbGxiYWNrTG9jYWxlLCBsb2NhbGUsIHJlcSA9IHt9IGFzIFBheWxvYWRSZXF1ZXN0LCB1c2VyIH0sXG4gIHBheWxvYWQsXG4pID0+IHtcbiAgY29uc3QgaTE4biA9IHJlcT8uaTE4biB8fCBpMThuSW5pdChwYXlsb2FkLmNvbmZpZz8uaTE4bilcblxuICBpZiAocGF5bG9hZC5jb25maWc/LmxvY2FsaXphdGlvbikge1xuICAgIGNvbnN0IGRlZmF1bHRMb2NhbGUgPSBwYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24uZGVmYXVsdExvY2FsZVxuICAgIHJlcS5sb2NhbGUgPSBsb2NhbGUgfHwgcmVxPy5sb2NhbGUgfHwgZGVmYXVsdExvY2FsZVxuICAgIGNvbnN0IGZhbGxiYWNrTG9jYWxlRnJvbUNvbmZpZyA9IHBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbi5sb2NhbGVzLmZpbmQoXG4gICAgICAoeyBjb2RlIH0pID0+IHJlcS5sb2NhbGUgPT09IGNvZGUsXG4gICAgKT8uZmFsbGJhY2tMb2NhbGVcbiAgICBpZiAodHlwZW9mIGZhbGxiYWNrTG9jYWxlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgcmVxLmZhbGxiYWNrTG9jYWxlID0gZmFsbGJhY2tMb2NhbGVcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXE/LmZhbGxiYWNrTG9jYWxlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmVxLmZhbGxiYWNrTG9jYWxlID0gZmFsbGJhY2tMb2NhbGVGcm9tQ29uZmlnIHx8IGRlZmF1bHRMb2NhbGVcbiAgICB9XG4gIH1cblxuICByZXEuY29udGV4dCA9IGdldFJlcXVlc3RDb250ZXh0KHJlcSwgY29udGV4dClcbiAgcmVxLnBheWxvYWRBUEkgPSByZXE/LnBheWxvYWRBUEkgfHwgJ2xvY2FsJ1xuICByZXEucGF5bG9hZCA9IHBheWxvYWRcbiAgcmVxLmkxOG4gPSBpMThuXG4gIHJlcS50ID0gaTE4bi50XG4gIHJlcS51c2VyID0gdXNlciB8fCByZXE/LnVzZXIgfHwgbnVsbFxuICByZXEucGF5bG9hZERhdGFMb2FkZXIgPSByZXE/LnBheWxvYWREYXRhTG9hZGVyIHx8IGdldERhdGFMb2FkZXIocmVxKVxuICByZXEgPSBpc29sYXRlT2JqZWN0UHJvcGVydHkocmVxLCAnY29sbGVjdGlvbicpXG5cbiAgcmVxLmNvbGxlY3Rpb24gPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25dXG5cbiAgcmV0dXJuIHJlcVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZUxvY2FsUmVxIiwiZ2V0UmVxdWVzdENvbnRleHQiLCJyZXEiLCJjb250ZXh0IiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImNvbnN0cnVjdG9yIiwiY29sbGVjdGlvbiIsImZhbGxiYWNrTG9jYWxlIiwibG9jYWxlIiwidXNlciIsInBheWxvYWQiLCJpMThuIiwiaTE4bkluaXQiLCJjb25maWciLCJsb2NhbGl6YXRpb24iLCJkZWZhdWx0TG9jYWxlIiwiZmFsbGJhY2tMb2NhbGVGcm9tQ29uZmlnIiwibG9jYWxlcyIsImZpbmQiLCJjb2RlIiwicGF5bG9hZEFQSSIsInQiLCJwYXlsb2FkRGF0YUxvYWRlciIsImdldERhdGFMb2FkZXIiLCJpc29sYXRlT2JqZWN0UHJvcGVydHkiLCJjb2xsZWN0aW9ucyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFrQ2FBOzs7ZUFBQUE7Ozs0QkEvQmlCO3NCQUNMOzhFQUNTOzs7Ozs7QUFFbEMsU0FBU0Msa0JBQ1BDLE1BQXNCO0lBQUVDLFNBQVM7QUFBSyxDQUFtQixFQUN6REEsVUFBMEIsQ0FBQyxDQUFDO0lBRTVCLElBQUlELElBQUlDLE9BQU8sRUFBRTtRQUNmLElBQUlDLE9BQU9DLElBQUksQ0FBQ0gsSUFBSUMsT0FBTyxFQUFFRyxNQUFNLEtBQUssS0FBS0osSUFBSUMsT0FBTyxDQUFDSSxXQUFXLEtBQUtILFFBQVE7WUFDL0Usa0RBQWtEO1lBQ2xELE9BQU9EO1FBQ1QsT0FBTztZQUNMLE9BQU87Z0JBQUUsR0FBR0QsSUFBSUMsT0FBTztnQkFBRSxHQUFHQSxPQUFPO1lBQUM7UUFDdEM7SUFDRixPQUFPO1FBQ0wsT0FBT0E7SUFDVDtBQUNGO0FBYU8sTUFBTUgsaUJBQWlDLENBQzVDLEVBQUVRLFVBQVUsRUFBRUwsT0FBTyxFQUFFTSxjQUFjLEVBQUVDLE1BQU0sRUFBRVIsTUFBTSxDQUFDLENBQW1CLEVBQUVTLElBQUksRUFBRSxFQUNqRkM7SUFFQSxNQUFNQyxPQUFPWCxLQUFLVyxRQUFRQyxJQUFBQSxjQUFRLEVBQUNGLFFBQVFHLE1BQU0sRUFBRUY7SUFFbkQsSUFBSUQsUUFBUUcsTUFBTSxFQUFFQyxjQUFjO1FBQ2hDLE1BQU1DLGdCQUFnQkwsUUFBUUcsTUFBTSxDQUFDQyxZQUFZLENBQUNDLGFBQWE7UUFDL0RmLElBQUlRLE1BQU0sR0FBR0EsVUFBVVIsS0FBS1EsVUFBVU87UUFDdEMsTUFBTUMsMkJBQTJCTixRQUFRRyxNQUFNLENBQUNDLFlBQVksQ0FBQ0csT0FBTyxDQUFDQyxJQUFJLENBQ3ZFLENBQUMsRUFBRUMsSUFBSSxFQUFFLEdBQUtuQixJQUFJUSxNQUFNLEtBQUtXLE9BQzVCWjtRQUNILElBQUksT0FBT0EsbUJBQW1CLGFBQWE7WUFDekNQLElBQUlPLGNBQWMsR0FBR0E7UUFDdkIsT0FBTyxJQUFJLE9BQU9QLEtBQUtPLG1CQUFtQixhQUFhO1lBQ3JEUCxJQUFJTyxjQUFjLEdBQUdTLDRCQUE0QkQ7UUFDbkQ7SUFDRjtJQUVBZixJQUFJQyxPQUFPLEdBQUdGLGtCQUFrQkMsS0FBS0M7SUFDckNELElBQUlvQixVQUFVLEdBQUdwQixLQUFLb0IsY0FBYztJQUNwQ3BCLElBQUlVLE9BQU8sR0FBR0E7SUFDZFYsSUFBSVcsSUFBSSxHQUFHQTtJQUNYWCxJQUFJcUIsQ0FBQyxHQUFHVixLQUFLVSxDQUFDO0lBQ2RyQixJQUFJUyxJQUFJLEdBQUdBLFFBQVFULEtBQUtTLFFBQVE7SUFDaENULElBQUlzQixpQkFBaUIsR0FBR3RCLEtBQUtzQixxQkFBcUJDLElBQUFBLHlCQUFhLEVBQUN2QjtJQUNoRUEsTUFBTXdCLElBQUFBLDhCQUFxQixFQUFDeEIsS0FBSztJQUVqQ0EsSUFBSU0sVUFBVSxHQUFHSSxRQUFRZSxXQUFXLENBQUNuQixXQUFXO0lBRWhELE9BQU9OO0FBQ1QifQ==
@@ -0,0 +1,9 @@
1
+ import type { Payload } from '..';
2
+ type Args = {
3
+ collectionSlug: string;
4
+ id: string;
5
+ payload: Payload;
6
+ };
7
+ export declare const sanitizeCollectionID: ({ id, collectionSlug, payload }: Args) => number | string;
8
+ export {};
9
+ //# sourceMappingURL=sanitizeCollectionID.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizeCollectionID.d.ts","sourceRoot":"","sources":["../../src/utilities/sanitizeCollectionID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAIjC,KAAK,IAAI,GAAG;IACV,cAAc,EAAE,MAAM,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,oCAAqC,IAAI,KAAG,MAAM,GAAG,MAgBrF,CAAA"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "sanitizeCollectionID", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return sanitizeCollectionID;
9
+ }
10
+ });
11
+ const _flattenTopLevelFields = /*#__PURE__*/ _interop_require_default(require("./flattenTopLevelFields"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ const sanitizeCollectionID = ({ id, collectionSlug, payload })=>{
18
+ let sanitizedID = id;
19
+ const collection = payload.collections[collectionSlug];
20
+ // If default db ID type is a number, we should sanitize
21
+ let shouldSanitize = Boolean(payload.db.defaultIDType === 'number');
22
+ // UNLESS the custom ID for this collection is text.... then we leave it
23
+ const hasIdField = (0, _flattenTopLevelFields.default)(collection.config.fields).find((field)=>field.name === 'id');
24
+ if (shouldSanitize && hasIdField) shouldSanitize = false;
25
+ // If we still should sanitize, parse float
26
+ if (shouldSanitize) sanitizedID = parseFloat(sanitizedID);
27
+ return sanitizedID;
28
+ };
29
+
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc2FuaXRpemVDb2xsZWN0aW9uSUQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4nXG5cbmltcG9ydCBmbGF0dGVuRmllbGRzIGZyb20gJy4vZmxhdHRlblRvcExldmVsRmllbGRzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbGxlY3Rpb25TbHVnOiBzdHJpbmdcbiAgaWQ6IHN0cmluZ1xuICBwYXlsb2FkOiBQYXlsb2FkXG59XG5cbmV4cG9ydCBjb25zdCBzYW5pdGl6ZUNvbGxlY3Rpb25JRCA9ICh7IGlkLCBjb2xsZWN0aW9uU2x1ZywgcGF5bG9hZCB9OiBBcmdzKTogbnVtYmVyIHwgc3RyaW5nID0+IHtcbiAgbGV0IHNhbml0aXplZElEOiBudW1iZXIgfCBzdHJpbmcgPSBpZFxuICBjb25zdCBjb2xsZWN0aW9uID0gcGF5bG9hZC5jb2xsZWN0aW9uc1tjb2xsZWN0aW9uU2x1Z11cblxuICAvLyBJZiBkZWZhdWx0IGRiIElEIHR5cGUgaXMgYSBudW1iZXIsIHdlIHNob3VsZCBzYW5pdGl6ZVxuICBsZXQgc2hvdWxkU2FuaXRpemUgPSBCb29sZWFuKHBheWxvYWQuZGIuZGVmYXVsdElEVHlwZSA9PT0gJ251bWJlcicpXG5cbiAgLy8gVU5MRVNTIHRoZSBjdXN0b20gSUQgZm9yIHRoaXMgY29sbGVjdGlvbiBpcyB0ZXh0Li4uLiB0aGVuIHdlIGxlYXZlIGl0XG4gIGNvbnN0IGhhc0lkRmllbGQgPSBmbGF0dGVuRmllbGRzKGNvbGxlY3Rpb24uY29uZmlnLmZpZWxkcykuZmluZCgoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdpZCcpXG5cbiAgaWYgKHNob3VsZFNhbml0aXplICYmIGhhc0lkRmllbGQpIHNob3VsZFNhbml0aXplID0gZmFsc2VcblxuICAvLyBJZiB3ZSBzdGlsbCBzaG91bGQgc2FuaXRpemUsIHBhcnNlIGZsb2F0XG4gIGlmIChzaG91bGRTYW5pdGl6ZSkgc2FuaXRpemVkSUQgPSBwYXJzZUZsb2F0KHNhbml0aXplZElEKVxuXG4gIHJldHVybiBzYW5pdGl6ZWRJRFxufVxuIl0sIm5hbWVzIjpbInNhbml0aXplQ29sbGVjdGlvbklEIiwiaWQiLCJjb2xsZWN0aW9uU2x1ZyIsInBheWxvYWQiLCJzYW5pdGl6ZWRJRCIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9ucyIsInNob3VsZFNhbml0aXplIiwiQm9vbGVhbiIsImRiIiwiZGVmYXVsdElEVHlwZSIsImhhc0lkRmllbGQiLCJmbGF0dGVuRmllbGRzIiwiY29uZmlnIiwiZmllbGRzIiwiZmluZCIsImZpZWxkIiwibmFtZSIsInBhcnNlRmxvYXQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBVWFBOzs7ZUFBQUE7Ozs4RUFSYTs7Ozs7O0FBUW5CLE1BQU1BLHVCQUF1QixDQUFDLEVBQUVDLEVBQUUsRUFBRUMsY0FBYyxFQUFFQyxPQUFPLEVBQVE7SUFDeEUsSUFBSUMsY0FBK0JIO0lBQ25DLE1BQU1JLGFBQWFGLFFBQVFHLFdBQVcsQ0FBQ0osZUFBZTtJQUV0RCx3REFBd0Q7SUFDeEQsSUFBSUssaUJBQWlCQyxRQUFRTCxRQUFRTSxFQUFFLENBQUNDLGFBQWEsS0FBSztJQUUxRCx3RUFBd0U7SUFDeEUsTUFBTUMsYUFBYUMsSUFBQUEsOEJBQWEsRUFBQ1AsV0FBV1EsTUFBTSxDQUFDQyxNQUFNLEVBQUVDLElBQUksQ0FBQyxDQUFDQyxRQUFVQSxNQUFNQyxJQUFJLEtBQUs7SUFFMUYsSUFBSVYsa0JBQWtCSSxZQUFZSixpQkFBaUI7SUFFbkQsMkNBQTJDO0lBQzNDLElBQUlBLGdCQUFnQkgsY0FBY2MsV0FBV2Q7SUFFN0MsT0FBT0E7QUFDVCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestCollectionVersion.d.ts","sourceRoot":"","sources":["../../src/versions/getLatestCollectionVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAK9C,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,yBAAyB,CAAA;IACjC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,WAAW,CAAA;IAClB,GAAG,CAAC,EAAE,cAAc,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,0BAA0B,qEAMpC,IAAI,eAyBN,CAAA"}
1
+ {"version":3,"file":"getLatestCollectionVersion.d.ts","sourceRoot":"","sources":["../../src/versions/getLatestCollectionVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAK9C,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,yBAAyB,CAAA;IACjC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,WAAW,CAAA;IAClB,GAAG,CAAC,EAAE,cAAc,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,0BAA0B,qEAMpC,IAAI,eA2BN,CAAA"}
@@ -14,6 +14,8 @@ const getLatestCollectionVersion = async ({ id, config, payload, query, req })=>
14
14
  if (config.versions?.drafts) {
15
15
  const { docs } = await payload.db.findVersions({
16
16
  collection: config.slug,
17
+ limit: 1,
18
+ pagination: false,
17
19
  req,
18
20
  sort: '-updatedAt',
19
21
  where: {
@@ -39,4 +41,4 @@ const getLatestCollectionVersion = async ({ id, config, payload, query, req })=>
39
41
  };
40
42
  };
41
43
 
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9nZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcsIFR5cGVXaXRoSUQgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi9wYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBUeXBlV2l0aFZlcnNpb24gfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBkb2NIYXNUaW1lc3RhbXBzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29uZmlnOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnXG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgcGF5bG9hZDogUGF5bG9hZFxuICBxdWVyeTogRmluZE9uZUFyZ3NcbiAgcmVxPzogUGF5bG9hZFJlcXVlc3Rcbn1cblxuZXhwb3J0IGNvbnN0IGdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uID0gYXN5bmMgPFQgZXh0ZW5kcyBUeXBlV2l0aElEID0gYW55Pih7XG4gIGlkLFxuICBjb25maWcsXG4gIHBheWxvYWQsXG4gIHF1ZXJ5LFxuICByZXEsXG59OiBBcmdzKTogUHJvbWlzZTxUPiA9PiB7XG4gIGxldCBsYXRlc3RWZXJzaW9uOiBUeXBlV2l0aFZlcnNpb248VD5cblxuICBpZiAoY29uZmlnLnZlcnNpb25zPy5kcmFmdHMpIHtcbiAgICBjb25zdCB7IGRvY3MgfSA9IGF3YWl0IHBheWxvYWQuZGIuZmluZFZlcnNpb25zPFQ+KHtcbiAgICAgIGNvbGxlY3Rpb246IGNvbmZpZy5zbHVnLFxuICAgICAgcmVxLFxuICAgICAgc29ydDogJy11cGRhdGVkQXQnLFxuICAgICAgd2hlcmU6IHsgcGFyZW50OiB7IGVxdWFsczogaWQgfSB9LFxuICAgIH0pXG4gICAgO1tsYXRlc3RWZXJzaW9uXSA9IGRvY3NcbiAgfVxuXG4gIGNvbnN0IGRvYyA9IGF3YWl0IHBheWxvYWQuZGIuZmluZE9uZTxUPih7IC4uLnF1ZXJ5LCByZXEgfSlcblxuICBpZiAoIWxhdGVzdFZlcnNpb24gfHwgKGRvY0hhc1RpbWVzdGFtcHMoZG9jKSAmJiBsYXRlc3RWZXJzaW9uLnVwZGF0ZWRBdCA8IGRvYy51cGRhdGVkQXQpKSB7XG4gICAgcmV0dXJuIGRvY1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5sYXRlc3RWZXJzaW9uLnZlcnNpb24sXG4gICAgaWQsXG4gICAgY3JlYXRlZEF0OiBsYXRlc3RWZXJzaW9uLmNyZWF0ZWRBdCxcbiAgICB1cGRhdGVkQXQ6IGxhdGVzdFZlcnNpb24udXBkYXRlZEF0LFxuICB9XG59XG4iXSwibmFtZXMiOlsiZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24iLCJpZCIsImNvbmZpZyIsInBheWxvYWQiLCJxdWVyeSIsInJlcSIsImxhdGVzdFZlcnNpb24iLCJ2ZXJzaW9ucyIsImRyYWZ0cyIsImRvY3MiLCJkYiIsImZpbmRWZXJzaW9ucyIsImNvbGxlY3Rpb24iLCJzbHVnIiwic29ydCIsIndoZXJlIiwicGFyZW50IiwiZXF1YWxzIiwiZG9jIiwiZmluZE9uZSIsImRvY0hhc1RpbWVzdGFtcHMiLCJ1cGRhdGVkQXQiLCJ2ZXJzaW9uIiwiY3JlYXRlZEF0Il0sIm1hcHBpbmdzIjoiOzs7OytCQWdCYUE7OztlQUFBQTs7O3VCQVZvQjtBQVUxQixNQUFNQSw2QkFBNkIsT0FBbUMsRUFDM0VDLEVBQUUsRUFDRkMsTUFBTSxFQUNOQyxPQUFPLEVBQ1BDLEtBQUssRUFDTEMsR0FBRyxFQUNFO0lBQ0wsSUFBSUM7SUFFSixJQUFJSixPQUFPSyxRQUFRLEVBQUVDLFFBQVE7UUFDM0IsTUFBTSxFQUFFQyxJQUFJLEVBQUUsR0FBRyxNQUFNTixRQUFRTyxFQUFFLENBQUNDLFlBQVksQ0FBSTtZQUNoREMsWUFBWVYsT0FBT1csSUFBSTtZQUN2QlI7WUFDQVMsTUFBTTtZQUNOQyxPQUFPO2dCQUFFQyxRQUFRO29CQUFFQyxRQUFRaEI7Z0JBQUc7WUFBRTtRQUNsQztRQUNDLENBQUNLLGNBQWMsR0FBR0c7SUFDckI7SUFFQSxNQUFNUyxNQUFNLE1BQU1mLFFBQVFPLEVBQUUsQ0FBQ1MsT0FBTyxDQUFJO1FBQUUsR0FBR2YsS0FBSztRQUFFQztJQUFJO0lBRXhELElBQUksQ0FBQ0MsaUJBQWtCYyxJQUFBQSx1QkFBZ0IsRUFBQ0YsUUFBUVosY0FBY2UsU0FBUyxHQUFHSCxJQUFJRyxTQUFTLEVBQUc7UUFDeEYsT0FBT0g7SUFDVDtJQUVBLE9BQU87UUFDTCxHQUFHWixjQUFjZ0IsT0FBTztRQUN4QnJCO1FBQ0FzQixXQUFXakIsY0FBY2lCLFNBQVM7UUFDbENGLFdBQVdmLGNBQWNlLFNBQVM7SUFDcEM7QUFDRiJ9
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9nZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcsIFR5cGVXaXRoSUQgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi9wYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBUeXBlV2l0aFZlcnNpb24gfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBkb2NIYXNUaW1lc3RhbXBzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29uZmlnOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnXG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgcGF5bG9hZDogUGF5bG9hZFxuICBxdWVyeTogRmluZE9uZUFyZ3NcbiAgcmVxPzogUGF5bG9hZFJlcXVlc3Rcbn1cblxuZXhwb3J0IGNvbnN0IGdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uID0gYXN5bmMgPFQgZXh0ZW5kcyBUeXBlV2l0aElEID0gYW55Pih7XG4gIGlkLFxuICBjb25maWcsXG4gIHBheWxvYWQsXG4gIHF1ZXJ5LFxuICByZXEsXG59OiBBcmdzKTogUHJvbWlzZTxUPiA9PiB7XG4gIGxldCBsYXRlc3RWZXJzaW9uOiBUeXBlV2l0aFZlcnNpb248VD5cblxuICBpZiAoY29uZmlnLnZlcnNpb25zPy5kcmFmdHMpIHtcbiAgICBjb25zdCB7IGRvY3MgfSA9IGF3YWl0IHBheWxvYWQuZGIuZmluZFZlcnNpb25zPFQ+KHtcbiAgICAgIGNvbGxlY3Rpb246IGNvbmZpZy5zbHVnLFxuICAgICAgbGltaXQ6IDEsXG4gICAgICBwYWdpbmF0aW9uOiBmYWxzZSxcbiAgICAgIHJlcSxcbiAgICAgIHNvcnQ6ICctdXBkYXRlZEF0JyxcbiAgICAgIHdoZXJlOiB7IHBhcmVudDogeyBlcXVhbHM6IGlkIH0gfSxcbiAgICB9KVxuICAgIDtbbGF0ZXN0VmVyc2lvbl0gPSBkb2NzXG4gIH1cblxuICBjb25zdCBkb2MgPSBhd2FpdCBwYXlsb2FkLmRiLmZpbmRPbmU8VD4oeyAuLi5xdWVyeSwgcmVxIH0pXG5cbiAgaWYgKCFsYXRlc3RWZXJzaW9uIHx8IChkb2NIYXNUaW1lc3RhbXBzKGRvYykgJiYgbGF0ZXN0VmVyc2lvbi51cGRhdGVkQXQgPCBkb2MudXBkYXRlZEF0KSkge1xuICAgIHJldHVybiBkb2NcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgLi4ubGF0ZXN0VmVyc2lvbi52ZXJzaW9uLFxuICAgIGlkLFxuICAgIGNyZWF0ZWRBdDogbGF0ZXN0VmVyc2lvbi5jcmVhdGVkQXQsXG4gICAgdXBkYXRlZEF0OiBsYXRlc3RWZXJzaW9uLnVwZGF0ZWRBdCxcbiAgfVxufVxuIl0sIm5hbWVzIjpbImdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uIiwiaWQiLCJjb25maWciLCJwYXlsb2FkIiwicXVlcnkiLCJyZXEiLCJsYXRlc3RWZXJzaW9uIiwidmVyc2lvbnMiLCJkcmFmdHMiLCJkb2NzIiwiZGIiLCJmaW5kVmVyc2lvbnMiLCJjb2xsZWN0aW9uIiwic2x1ZyIsImxpbWl0IiwicGFnaW5hdGlvbiIsInNvcnQiLCJ3aGVyZSIsInBhcmVudCIsImVxdWFscyIsImRvYyIsImZpbmRPbmUiLCJkb2NIYXNUaW1lc3RhbXBzIiwidXBkYXRlZEF0IiwidmVyc2lvbiIsImNyZWF0ZWRBdCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFnQmFBOzs7ZUFBQUE7Ozt1QkFWb0I7QUFVMUIsTUFBTUEsNkJBQTZCLE9BQW1DLEVBQzNFQyxFQUFFLEVBQ0ZDLE1BQU0sRUFDTkMsT0FBTyxFQUNQQyxLQUFLLEVBQ0xDLEdBQUcsRUFDRTtJQUNMLElBQUlDO0lBRUosSUFBSUosT0FBT0ssUUFBUSxFQUFFQyxRQUFRO1FBQzNCLE1BQU0sRUFBRUMsSUFBSSxFQUFFLEdBQUcsTUFBTU4sUUFBUU8sRUFBRSxDQUFDQyxZQUFZLENBQUk7WUFDaERDLFlBQVlWLE9BQU9XLElBQUk7WUFDdkJDLE9BQU87WUFDUEMsWUFBWTtZQUNaVjtZQUNBVyxNQUFNO1lBQ05DLE9BQU87Z0JBQUVDLFFBQVE7b0JBQUVDLFFBQVFsQjtnQkFBRztZQUFFO1FBQ2xDO1FBQ0MsQ0FBQ0ssY0FBYyxHQUFHRztJQUNyQjtJQUVBLE1BQU1XLE1BQU0sTUFBTWpCLFFBQVFPLEVBQUUsQ0FBQ1csT0FBTyxDQUFJO1FBQUUsR0FBR2pCLEtBQUs7UUFBRUM7SUFBSTtJQUV4RCxJQUFJLENBQUNDLGlCQUFrQmdCLElBQUFBLHVCQUFnQixFQUFDRixRQUFRZCxjQUFjaUIsU0FBUyxHQUFHSCxJQUFJRyxTQUFTLEVBQUc7UUFDeEYsT0FBT0g7SUFDVDtJQUVBLE9BQU87UUFDTCxHQUFHZCxjQUFja0IsT0FBTztRQUN4QnZCO1FBQ0F3QixXQUFXbkIsY0FBY21CLFNBQVM7UUFDbENGLFdBQVdqQixjQUFjaUIsU0FBUztJQUNwQztBQUNGIn0=
@@ -1,4 +1,9 @@
1
1
  import type { SanitizedCollectionConfig } from '../collections/config/types';
2
2
  import type { SanitizedGlobalConfig } from '../globals/config/types';
3
+ /**
4
+ * This function is not being used and will no longer be exported in the future
5
+ * @deprecated
6
+ * @param entity
7
+ */
3
8
  export declare const getVersionsModelName: (entity: SanitizedCollectionConfig | SanitizedGlobalConfig) => string;
4
9
  //# sourceMappingURL=getVersionsModelName.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getVersionsModelName.d.ts","sourceRoot":"","sources":["../../src/versions/getVersionsModelName.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAEpE,eAAO,MAAM,oBAAoB,WACvB,yBAAyB,GAAG,qBAAqB,KACxD,MAAoC,CAAA"}
1
+ {"version":3,"file":"getVersionsModelName.d.ts","sourceRoot":"","sources":["../../src/versions/getVersionsModelName.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAEpE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,WACvB,yBAAyB,GAAG,qBAAqB,KACxD,MAAoC,CAAA"}
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "getVersionsModelName", {
10
10
  });
11
11
  const getVersionsModelName = (entity)=>`_${entity.slug}_versions`;
12
12
 
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9nZXRWZXJzaW9uc01vZGVsTmFtZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuXG5leHBvcnQgY29uc3QgZ2V0VmVyc2lvbnNNb2RlbE5hbWUgPSAoXG4gIGVudGl0eTogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IFNhbml0aXplZEdsb2JhbENvbmZpZyxcbik6IHN0cmluZyA9PiBgXyR7ZW50aXR5LnNsdWd9X3ZlcnNpb25zYFxuIl0sIm5hbWVzIjpbImdldFZlcnNpb25zTW9kZWxOYW1lIiwiZW50aXR5Iiwic2x1ZyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFHYUE7OztlQUFBQTs7O0FBQU4sTUFBTUEsdUJBQXVCLENBQ2xDQyxTQUNXLENBQUMsQ0FBQyxFQUFFQSxPQUFPQyxJQUFJLENBQUMsU0FBUyxDQUFDIn0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9nZXRWZXJzaW9uc01vZGVsTmFtZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaXMgbm90IGJlaW5nIHVzZWQgYW5kIHdpbGwgbm8gbG9uZ2VyIGJlIGV4cG9ydGVkIGluIHRoZSBmdXR1cmVcbiAqIEBkZXByZWNhdGVkXG4gKiBAcGFyYW0gZW50aXR5XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRWZXJzaW9uc01vZGVsTmFtZSA9IChcbiAgZW50aXR5OiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIHwgU2FuaXRpemVkR2xvYmFsQ29uZmlnLFxuKTogc3RyaW5nID0+IGBfJHtlbnRpdHkuc2x1Z31fdmVyc2lvbnNgXG4iXSwibmFtZXMiOlsiZ2V0VmVyc2lvbnNNb2RlbE5hbWUiLCJlbnRpdHkiLCJzbHVnIl0sIm1hcHBpbmdzIjoiOzs7OytCQVFhQTs7O2VBQUFBOzs7QUFBTixNQUFNQSx1QkFBdUIsQ0FDbENDLFNBQ1csQ0FBQyxDQUFDLEVBQUVBLE9BQU9DLElBQUksQ0FBQyxTQUFTLENBQUMifQ==
@@ -126,8 +126,8 @@ const saveVersion = async ({ id, autosave, collection, docWithLocales: doc, draf
126
126
  createdVersion.createdAt = result.createdAt;
127
127
  createdVersion.updatedAt = result.updatedAt;
128
128
  createdVersion = (0, _sanitizeInternalFields.default)(createdVersion);
129
- createdVersion.id = id;
129
+ createdVersion.id = result.parent;
130
130
  return createdVersion;
131
131
  };
132
132
 
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9zYXZlVmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcsIFR5cGVXaXRoSUQgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkR2xvYmFsQ29uZmlnIH0gZnJvbSAnLi4vZ2xvYmFscy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi9wYXlsb2FkJ1xuXG5pbXBvcnQgeyBkZWVwQ29weU9iamVjdCB9IGZyb20gJy4uL3V0aWxpdGllcy9kZWVwQ29weU9iamVjdCdcbmltcG9ydCBzYW5pdGl6ZUludGVybmFsRmllbGRzIGZyb20gJy4uL3V0aWxpdGllcy9zYW5pdGl6ZUludGVybmFsRmllbGRzJ1xuaW1wb3J0IHsgZW5mb3JjZU1heFZlcnNpb25zIH0gZnJvbSAnLi9lbmZvcmNlTWF4VmVyc2lvbnMnXG5cbnR5cGUgQXJncyA9IHtcbiAgYXV0b3NhdmU/OiBib29sZWFuXG4gIGNvbGxlY3Rpb24/OiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnXG4gIGRvY1dpdGhMb2NhbGVzOiBhbnlcbiAgZHJhZnQ/OiBib29sZWFuXG4gIGdsb2JhbD86IFNhbml0aXplZEdsb2JhbENvbmZpZ1xuICBpZD86IG51bWJlciB8IHN0cmluZ1xuICBwYXlsb2FkOiBQYXlsb2FkXG4gIHJlcT86IFBheWxvYWRSZXF1ZXN0XG59XG5cbmV4cG9ydCBjb25zdCBzYXZlVmVyc2lvbiA9IGFzeW5jICh7XG4gIGlkLFxuICBhdXRvc2F2ZSxcbiAgY29sbGVjdGlvbixcbiAgZG9jV2l0aExvY2FsZXM6IGRvYyxcbiAgZHJhZnQsXG4gIGdsb2JhbCxcbiAgcGF5bG9hZCxcbiAgcmVxLFxufTogQXJncyk6IFByb21pc2U8VHlwZVdpdGhJRD4gPT4ge1xuICBsZXQgcmVzdWx0XG4gIGxldCBjcmVhdGVOZXdWZXJzaW9uID0gdHJ1ZVxuICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKClcbiAgY29uc3QgdmVyc2lvbkRhdGEgPSBkZWVwQ29weU9iamVjdChkb2MpXG4gIGlmIChkcmFmdCkgdmVyc2lvbkRhdGEuX3N0YXR1cyA9ICdkcmFmdCdcbiAgaWYgKHZlcnNpb25EYXRhLl9pZCkgZGVsZXRlIHZlcnNpb25EYXRhLl9pZFxuXG4gIHRyeSB7XG4gICAgaWYgKGF1dG9zYXZlKSB7XG4gICAgICBsZXQgZG9jc1xuICAgICAgY29uc3QgZmluZFZlcnNpb25BcmdzID0ge1xuICAgICAgICBsaW1pdDogMSxcbiAgICAgICAgcmVxLFxuICAgICAgICBzb3J0OiAnLXVwZGF0ZWRBdCcsXG4gICAgICB9XG4gICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICA7KHsgZG9jcyB9ID0gYXdhaXQgcGF5bG9hZC5kYi5maW5kVmVyc2lvbnMoe1xuICAgICAgICAgIC4uLmZpbmRWZXJzaW9uQXJncyxcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uLnNsdWcsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICBwYXJlbnQ6IHtcbiAgICAgICAgICAgICAgZXF1YWxzOiBpZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICA7KHsgZG9jcyB9ID0gYXdhaXQgcGF5bG9hZC5kYi5maW5kR2xvYmFsVmVyc2lvbnMoe1xuICAgICAgICAgIC4uLmZpbmRWZXJzaW9uQXJncyxcbiAgICAgICAgICBnbG9iYWw6IGdsb2JhbC5zbHVnLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpXG4gICAgICB9XG4gICAgICBjb25zdCBbbGF0ZXN0VmVyc2lvbl0gPSBkb2NzXG5cbiAgICAgIC8vIG92ZXJ3cml0ZSB0aGUgbGF0ZXN0IHZlcnNpb24gaWYgaXQncyBzZXQgdG8gYXV0b3NhdmVcbiAgICAgIGlmIChsYXRlc3RWZXJzaW9uPy5hdXRvc2F2ZSA9PT0gdHJ1ZSkge1xuICAgICAgICBjcmVhdGVOZXdWZXJzaW9uID0gZmFsc2VcblxuICAgICAgICBjb25zdCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKGxhdGVzdFZlcnNpb24uY3JlYXRlZEF0KS50b0lTT1N0cmluZygpLFxuICAgICAgICAgIHVwZGF0ZWRBdDogZHJhZnQgPyBub3cgOiBuZXcgRGF0ZShkb2MudXBkYXRlZEF0KS50b0lTT1N0cmluZygpLFxuICAgICAgICAgIHZlcnNpb246IHZlcnNpb25EYXRhLFxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdXBkYXRlVmVyc2lvbkFyZ3MgPSB7XG4gICAgICAgICAgaWQ6IGxhdGVzdFZlcnNpb24uaWQsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHZlcnNpb25EYXRhOiBkYXRhIGFzIFR5cGVXaXRoSUQsXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHBheWxvYWQuZGIudXBkYXRlVmVyc2lvbih7XG4gICAgICAgICAgICAuLi51cGRhdGVWZXJzaW9uQXJncyxcbiAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb24uc2x1ZyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHBheWxvYWQuZGIudXBkYXRlR2xvYmFsVmVyc2lvbih7XG4gICAgICAgICAgICAuLi51cGRhdGVWZXJzaW9uQXJncyxcbiAgICAgICAgICAgIGdsb2JhbDogZ2xvYmFsLnNsdWcsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjcmVhdGVOZXdWZXJzaW9uKSB7XG4gICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICByZXN1bHQgPSBhd2FpdCBwYXlsb2FkLmRiLmNyZWF0ZVZlcnNpb24oe1xuICAgICAgICAgIGF1dG9zYXZlOiBCb29sZWFuKGF1dG9zYXZlKSxcbiAgICAgICAgICBjb2xsZWN0aW9uU2x1ZzogY29sbGVjdGlvbi5zbHVnLFxuICAgICAgICAgIGNyZWF0ZWRBdDogZG9jPy5jcmVhdGVkQXQgPyBuZXcgRGF0ZShkb2MuY3JlYXRlZEF0KS50b0lTT1N0cmluZygpIDogbm93LFxuICAgICAgICAgIHBhcmVudDogY29sbGVjdGlvbiA/IGlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICB1cGRhdGVkQXQ6IGRyYWZ0ID8gbm93IDogbmV3IERhdGUoZG9jLnVwZGF0ZWRBdCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgICB2ZXJzaW9uRGF0YSxcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGdsb2JhbCkge1xuICAgICAgICByZXN1bHQgPSBhd2FpdCBwYXlsb2FkLmRiLmNyZWF0ZUdsb2JhbFZlcnNpb24oe1xuICAgICAgICAgIGF1dG9zYXZlOiBCb29sZWFuKGF1dG9zYXZlKSxcbiAgICAgICAgICBjcmVhdGVkQXQ6IGRvYz8uY3JlYXRlZEF0ID8gbmV3IERhdGUoZG9jLmNyZWF0ZWRBdCkudG9JU09TdHJpbmcoKSA6IG5vdyxcbiAgICAgICAgICBnbG9iYWxTbHVnOiBnbG9iYWwuc2x1ZyxcbiAgICAgICAgICBwYXJlbnQ6IGNvbGxlY3Rpb24gPyBpZCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgdXBkYXRlZEF0OiBkcmFmdCA/IG5vdyA6IG5ldyBEYXRlKGRvYy51cGRhdGVkQXQpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgICAgdmVyc2lvbkRhdGEsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBsZXQgZXJyb3JNZXNzYWdlOiBzdHJpbmdcblxuICAgIGlmIChjb2xsZWN0aW9uKVxuICAgICAgZXJyb3JNZXNzYWdlID0gYFRoZXJlIHdhcyBhbiBlcnJvciB3aGlsZSBzYXZpbmcgYSB2ZXJzaW9uIGZvciB0aGUgJHtjb2xsZWN0aW9uLmxhYmVscy5zaW5ndWxhcn0gd2l0aCBJRCAke2lkfS5gXG4gICAgaWYgKGdsb2JhbClcbiAgICAgIGVycm9yTWVzc2FnZSA9IGBUaGVyZSB3YXMgYW4gZXJyb3Igd2hpbGUgc2F2aW5nIGEgdmVyc2lvbiBmb3IgdGhlIGdsb2JhbCAke2dsb2JhbC5sYWJlbH0uYFxuICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKGVycm9yTWVzc2FnZSlcbiAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcihlcnIpXG4gIH1cblxuICBsZXQgbWF4ID0gMTAwXG5cbiAgaWYgKGNvbGxlY3Rpb24gJiYgdHlwZW9mIGNvbGxlY3Rpb24udmVyc2lvbnMubWF4UGVyRG9jID09PSAnbnVtYmVyJylcbiAgICBtYXggPSBjb2xsZWN0aW9uLnZlcnNpb25zLm1heFBlckRvY1xuICBpZiAoZ2xvYmFsICYmIHR5cGVvZiBnbG9iYWwudmVyc2lvbnMubWF4ID09PSAnbnVtYmVyJykgbWF4ID0gZ2xvYmFsLnZlcnNpb25zLm1heFxuXG4gIGlmIChjcmVhdGVOZXdWZXJzaW9uICYmIG1heCA+IDApIHtcbiAgICBhd2FpdCBlbmZvcmNlTWF4VmVyc2lvbnMoe1xuICAgICAgaWQsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZ2xvYmFsLFxuICAgICAgbWF4LFxuICAgICAgcGF5bG9hZCxcbiAgICAgIHJlcSxcbiAgICB9KVxuICB9XG5cbiAgbGV0IGNyZWF0ZWRWZXJzaW9uID0gcmVzdWx0LnZlcnNpb25cbiAgY3JlYXRlZFZlcnNpb24uY3JlYXRlZEF0ID0gcmVzdWx0LmNyZWF0ZWRBdFxuICBjcmVhdGVkVmVyc2lvbi51cGRhdGVkQXQgPSByZXN1bHQudXBkYXRlZEF0XG5cbiAgY3JlYXRlZFZlcnNpb24gPSBzYW5pdGl6ZUludGVybmFsRmllbGRzKGNyZWF0ZWRWZXJzaW9uKVxuICBjcmVhdGVkVmVyc2lvbi5pZCA9IGlkXG5cbiAgcmV0dXJuIGNyZWF0ZWRWZXJzaW9uXG59XG4iXSwibmFtZXMiOlsic2F2ZVZlcnNpb24iLCJpZCIsImF1dG9zYXZlIiwiY29sbGVjdGlvbiIsImRvY1dpdGhMb2NhbGVzIiwiZG9jIiwiZHJhZnQiLCJnbG9iYWwiLCJwYXlsb2FkIiwicmVxIiwicmVzdWx0IiwiY3JlYXRlTmV3VmVyc2lvbiIsIm5vdyIsIkRhdGUiLCJ0b0lTT1N0cmluZyIsInZlcnNpb25EYXRhIiwiZGVlcENvcHlPYmplY3QiLCJfc3RhdHVzIiwiX2lkIiwiZG9jcyIsImZpbmRWZXJzaW9uQXJncyIsImxpbWl0Iiwic29ydCIsImRiIiwiZmluZFZlcnNpb25zIiwic2x1ZyIsIndoZXJlIiwicGFyZW50IiwiZXF1YWxzIiwiZmluZEdsb2JhbFZlcnNpb25zIiwibGF0ZXN0VmVyc2lvbiIsImRhdGEiLCJjcmVhdGVkQXQiLCJ1cGRhdGVkQXQiLCJ2ZXJzaW9uIiwidXBkYXRlVmVyc2lvbkFyZ3MiLCJ1cGRhdGVWZXJzaW9uIiwidXBkYXRlR2xvYmFsVmVyc2lvbiIsImNyZWF0ZVZlcnNpb24iLCJCb29sZWFuIiwiY29sbGVjdGlvblNsdWciLCJ1bmRlZmluZWQiLCJjcmVhdGVHbG9iYWxWZXJzaW9uIiwiZ2xvYmFsU2x1ZyIsImVyciIsImVycm9yTWVzc2FnZSIsImxhYmVscyIsInNpbmd1bGFyIiwibGFiZWwiLCJsb2dnZXIiLCJlcnJvciIsIm1heCIsInZlcnNpb25zIiwibWF4UGVyRG9jIiwiZW5mb3JjZU1heFZlcnNpb25zIiwiY3JlYXRlZFZlcnNpb24iLCJzYW5pdGl6ZUludGVybmFsRmllbGRzIl0sIm1hcHBpbmdzIjoiOzs7OytCQW9CYUE7OztlQUFBQTs7O2dDQWZrQjsrRUFDSTtvQ0FDQTs7Ozs7O0FBYTVCLE1BQU1B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
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9zYXZlVmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcsIFR5cGVXaXRoSUQgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkR2xvYmFsQ29uZmlnIH0gZnJvbSAnLi4vZ2xvYmFscy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi9wYXlsb2FkJ1xuXG5pbXBvcnQgeyBkZWVwQ29weU9iamVjdCB9IGZyb20gJy4uL3V0aWxpdGllcy9kZWVwQ29weU9iamVjdCdcbmltcG9ydCBzYW5pdGl6ZUludGVybmFsRmllbGRzIGZyb20gJy4uL3V0aWxpdGllcy9zYW5pdGl6ZUludGVybmFsRmllbGRzJ1xuaW1wb3J0IHsgZW5mb3JjZU1heFZlcnNpb25zIH0gZnJvbSAnLi9lbmZvcmNlTWF4VmVyc2lvbnMnXG5cbnR5cGUgQXJncyA9IHtcbiAgYXV0b3NhdmU/OiBib29sZWFuXG4gIGNvbGxlY3Rpb24/OiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnXG4gIGRvY1dpdGhMb2NhbGVzOiBhbnlcbiAgZHJhZnQ/OiBib29sZWFuXG4gIGdsb2JhbD86IFNhbml0aXplZEdsb2JhbENvbmZpZ1xuICBpZD86IG51bWJlciB8IHN0cmluZ1xuICBwYXlsb2FkOiBQYXlsb2FkXG4gIHJlcT86IFBheWxvYWRSZXF1ZXN0XG59XG5cbmV4cG9ydCBjb25zdCBzYXZlVmVyc2lvbiA9IGFzeW5jICh7XG4gIGlkLFxuICBhdXRvc2F2ZSxcbiAgY29sbGVjdGlvbixcbiAgZG9jV2l0aExvY2FsZXM6IGRvYyxcbiAgZHJhZnQsXG4gIGdsb2JhbCxcbiAgcGF5bG9hZCxcbiAgcmVxLFxufTogQXJncyk6IFByb21pc2U8VHlwZVdpdGhJRD4gPT4ge1xuICBsZXQgcmVzdWx0XG4gIGxldCBjcmVhdGVOZXdWZXJzaW9uID0gdHJ1ZVxuICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKClcbiAgY29uc3QgdmVyc2lvbkRhdGEgPSBkZWVwQ29weU9iamVjdChkb2MpXG4gIGlmIChkcmFmdCkgdmVyc2lvbkRhdGEuX3N0YXR1cyA9ICdkcmFmdCdcbiAgaWYgKHZlcnNpb25EYXRhLl9pZCkgZGVsZXRlIHZlcnNpb25EYXRhLl9pZFxuXG4gIHRyeSB7XG4gICAgaWYgKGF1dG9zYXZlKSB7XG4gICAgICBsZXQgZG9jc1xuICAgICAgY29uc3QgZmluZFZlcnNpb25BcmdzID0ge1xuICAgICAgICBsaW1pdDogMSxcbiAgICAgICAgcmVxLFxuICAgICAgICBzb3J0OiAnLXVwZGF0ZWRBdCcsXG4gICAgICB9XG4gICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICA7KHsgZG9jcyB9ID0gYXdhaXQgcGF5bG9hZC5kYi5maW5kVmVyc2lvbnMoe1xuICAgICAgICAgIC4uLmZpbmRWZXJzaW9uQXJncyxcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uLnNsdWcsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICBwYXJlbnQ6IHtcbiAgICAgICAgICAgICAgZXF1YWxzOiBpZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICA7KHsgZG9jcyB9ID0gYXdhaXQgcGF5bG9hZC5kYi5maW5kR2xvYmFsVmVyc2lvbnMoe1xuICAgICAgICAgIC4uLmZpbmRWZXJzaW9uQXJncyxcbiAgICAgICAgICBnbG9iYWw6IGdsb2JhbC5zbHVnLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpXG4gICAgICB9XG4gICAgICBjb25zdCBbbGF0ZXN0VmVyc2lvbl0gPSBkb2NzXG5cbiAgICAgIC8vIG92ZXJ3cml0ZSB0aGUgbGF0ZXN0IHZlcnNpb24gaWYgaXQncyBzZXQgdG8gYXV0b3NhdmVcbiAgICAgIGlmIChsYXRlc3RWZXJzaW9uPy5hdXRvc2F2ZSA9PT0gdHJ1ZSkge1xuICAgICAgICBjcmVhdGVOZXdWZXJzaW9uID0gZmFsc2VcblxuICAgICAgICBjb25zdCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKGxhdGVzdFZlcnNpb24uY3JlYXRlZEF0KS50b0lTT1N0cmluZygpLFxuICAgICAgICAgIHVwZGF0ZWRBdDogZHJhZnQgPyBub3cgOiBuZXcgRGF0ZShkb2MudXBkYXRlZEF0KS50b0lTT1N0cmluZygpLFxuICAgICAgICAgIHZlcnNpb246IHZlcnNpb25EYXRhLFxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdXBkYXRlVmVyc2lvbkFyZ3MgPSB7XG4gICAgICAgICAgaWQ6IGxhdGVzdFZlcnNpb24uaWQsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHZlcnNpb25EYXRhOiBkYXRhIGFzIFR5cGVXaXRoSUQsXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHBheWxvYWQuZGIudXBkYXRlVmVyc2lvbih7XG4gICAgICAgICAgICAuLi51cGRhdGVWZXJzaW9uQXJncyxcbiAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb24uc2x1ZyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHBheWxvYWQuZGIudXBkYXRlR2xvYmFsVmVyc2lvbih7XG4gICAgICAgICAgICAuLi51cGRhdGVWZXJzaW9uQXJncyxcbiAgICAgICAgICAgIGdsb2JhbDogZ2xvYmFsLnNsdWcsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjcmVhdGVOZXdWZXJzaW9uKSB7XG4gICAgICBpZiAoY29sbGVjdGlvbikge1xuICAgICAgICByZXN1bHQgPSBhd2FpdCBwYXlsb2FkLmRiLmNyZWF0ZVZlcnNpb24oe1xuICAgICAgICAgIGF1dG9zYXZlOiBCb29sZWFuKGF1dG9zYXZlKSxcbiAgICAgICAgICBjb2xsZWN0aW9uU2x1ZzogY29sbGVjdGlvbi5zbHVnLFxuICAgICAgICAgIGNyZWF0ZWRBdDogZG9jPy5jcmVhdGVkQXQgPyBuZXcgRGF0ZShkb2MuY3JlYXRlZEF0KS50b0lTT1N0cmluZygpIDogbm93LFxuICAgICAgICAgIHBhcmVudDogY29sbGVjdGlvbiA/IGlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICB1cGRhdGVkQXQ6IGRyYWZ0ID8gbm93IDogbmV3IERhdGUoZG9jLnVwZGF0ZWRBdCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgICB2ZXJzaW9uRGF0YSxcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKGdsb2JhbCkge1xuICAgICAgICByZXN1bHQgPSBhd2FpdCBwYXlsb2FkLmRiLmNyZWF0ZUdsb2JhbFZlcnNpb24oe1xuICAgICAgICAgIGF1dG9zYXZlOiBCb29sZWFuKGF1dG9zYXZlKSxcbiAgICAgICAgICBjcmVhdGVkQXQ6IGRvYz8uY3JlYXRlZEF0ID8gbmV3IERhdGUoZG9jLmNyZWF0ZWRBdCkudG9JU09TdHJpbmcoKSA6IG5vdyxcbiAgICAgICAgICBnbG9iYWxTbHVnOiBnbG9iYWwuc2x1ZyxcbiAgICAgICAgICBwYXJlbnQ6IGNvbGxlY3Rpb24gPyBpZCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgdXBkYXRlZEF0OiBkcmFmdCA/IG5vdyA6IG5ldyBEYXRlKGRvYy51cGRhdGVkQXQpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgICAgdmVyc2lvbkRhdGEsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBsZXQgZXJyb3JNZXNzYWdlOiBzdHJpbmdcblxuICAgIGlmIChjb2xsZWN0aW9uKVxuICAgICAgZXJyb3JNZXNzYWdlID0gYFRoZXJlIHdhcyBhbiBlcnJvciB3aGlsZSBzYXZpbmcgYSB2ZXJzaW9uIGZvciB0aGUgJHtjb2xsZWN0aW9uLmxhYmVscy5zaW5ndWxhcn0gd2l0aCBJRCAke2lkfS5gXG4gICAgaWYgKGdsb2JhbClcbiAgICAgIGVycm9yTWVzc2FnZSA9IGBUaGVyZSB3YXMgYW4gZXJyb3Igd2hpbGUgc2F2aW5nIGEgdmVyc2lvbiBmb3IgdGhlIGdsb2JhbCAke2dsb2JhbC5sYWJlbH0uYFxuICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKGVycm9yTWVzc2FnZSlcbiAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcihlcnIpXG4gIH1cblxuICBsZXQgbWF4ID0gMTAwXG5cbiAgaWYgKGNvbGxlY3Rpb24gJiYgdHlwZW9mIGNvbGxlY3Rpb24udmVyc2lvbnMubWF4UGVyRG9jID09PSAnbnVtYmVyJylcbiAgICBtYXggPSBjb2xsZWN0aW9uLnZlcnNpb25zLm1heFBlckRvY1xuICBpZiAoZ2xvYmFsICYmIHR5cGVvZiBnbG9iYWwudmVyc2lvbnMubWF4ID09PSAnbnVtYmVyJykgbWF4ID0gZ2xvYmFsLnZlcnNpb25zLm1heFxuXG4gIGlmIChjcmVhdGVOZXdWZXJzaW9uICYmIG1heCA+IDApIHtcbiAgICBhd2FpdCBlbmZvcmNlTWF4VmVyc2lvbnMoe1xuICAgICAgaWQsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZ2xvYmFsLFxuICAgICAgbWF4LFxuICAgICAgcGF5bG9hZCxcbiAgICAgIHJlcSxcbiAgICB9KVxuICB9XG5cbiAgbGV0IGNyZWF0ZWRWZXJzaW9uID0gcmVzdWx0LnZlcnNpb25cbiAgY3JlYXRlZFZlcnNpb24uY3JlYXRlZEF0ID0gcmVzdWx0LmNyZWF0ZWRBdFxuICBjcmVhdGVkVmVyc2lvbi51cGRhdGVkQXQgPSByZXN1bHQudXBkYXRlZEF0XG5cbiAgY3JlYXRlZFZlcnNpb24gPSBzYW5pdGl6ZUludGVybmFsRmllbGRzKGNyZWF0ZWRWZXJzaW9uKVxuICBjcmVhdGVkVmVyc2lvbi5pZCA9IHJlc3VsdC5wYXJlbnRcblxuICByZXR1cm4gY3JlYXRlZFZlcnNpb25cbn1cbiJdLCJuYW1lcyI6WyJzYXZlVmVyc2lvbiIsImlkIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uIiwiZG9jV2l0aExvY2FsZXMiLCJkb2MiLCJkcmFmdCIsImdsb2JhbCIsInBheWxvYWQiLCJyZXEiLCJyZXN1bHQiLCJjcmVhdGVOZXdWZXJzaW9uIiwibm93IiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwidmVyc2lvbkRhdGEiLCJkZWVwQ29weU9iamVjdCIsIl9zdGF0dXMiLCJfaWQiLCJkb2NzIiwiZmluZFZlcnNpb25BcmdzIiwibGltaXQiLCJzb3J0IiwiZGIiLCJmaW5kVmVyc2lvbnMiLCJzbHVnIiwid2hlcmUiLCJwYXJlbnQiLCJlcXVhbHMiLCJmaW5kR2xvYmFsVmVyc2lvbnMiLCJsYXRlc3RWZXJzaW9uIiwiZGF0YSIsImNyZWF0ZWRBdCIsInVwZGF0ZWRBdCIsInZlcnNpb24iLCJ1cGRhdGVWZXJzaW9uQXJncyIsInVwZGF0ZVZlcnNpb24iLCJ1cGRhdGVHbG9iYWxWZXJzaW9uIiwiY3JlYXRlVmVyc2lvbiIsIkJvb2xlYW4iLCJjb2xsZWN0aW9uU2x1ZyIsInVuZGVmaW5lZCIsImNyZWF0ZUdsb2JhbFZlcnNpb24iLCJnbG9iYWxTbHVnIiwiZXJyIiwiZXJyb3JNZXNzYWdlIiwibGFiZWxzIiwic2luZ3VsYXIiLCJsYWJlbCIsImxvZ2dlciIsImVycm9yIiwibWF4IiwidmVyc2lvbnMiLCJtYXhQZXJEb2MiLCJlbmZvcmNlTWF4VmVyc2lvbnMiLCJjcmVhdGVkVmVyc2lvbiIsInNhbml0aXplSW50ZXJuYWxGaWVsZHMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBb0JhQTs7O2VBQUFBOzs7Z0NBZmtCOytFQUNJO29DQUNBOzs7Ozs7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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payload",
3
- "version": "2.12.1",
3
+ "version": "2.14.0",
4
4
  "description": "Node, React and MongoDB Headless CMS and Application Framework",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",
package/types.d.ts CHANGED
@@ -3,11 +3,11 @@ export type { CreateFormData, Data, Fields, FormField, FormFieldsContext, } from
3
3
  export type { RichTextAdapter, RichTextFieldProps, } from './dist/admin/components/forms/field-types/RichText/types';
4
4
  export type { CellComponentProps } from './dist/admin/components/views/collections/List/Cell/types';
5
5
  export { FileData, ImageSize, IncomingUploadType } from './dist/uploads/types';
6
- export type { CustomPublishButtonProps, CustomSaveButtonProps, CustomSaveDraftButtonProps, } from './dist/admin/components/elements/types';
6
+ export type { CustomPublishButtonProps, CustomPublishButtonType, CustomSaveButtonProps, CustomSaveDraftButtonProps, } from './dist/admin/components/elements/types';
7
7
  export type { RowLabel } from './dist/admin/components/forms/RowLabel/types';
8
8
  export type { AfterChangeHook as CollectionAfterChangeHook, AfterDeleteHook as CollectionAfterDeleteHook, AfterForgotPasswordHook as CollectionAfterForgotPasswordHook, AfterLoginHook as CollectionAfterLoginHook, AfterOperationHook as CollectionAfterOperationHook, AfterReadHook as CollectionAfterReadHook, BeforeChangeHook as CollectionBeforeChangeHook, BeforeDeleteHook as CollectionBeforeDeleteHook, BeforeDuplicate, BeforeLoginHook as CollectionBeforeLoginHook, BeforeOperationHook as CollectionBeforeOperationHook, BeforeReadHook as CollectionBeforeReadHook, BeforeValidateHook as CollectionBeforeValidateHook, Collection, CollectionConfig, SanitizedCollectionConfig, TypeWithID, } from './dist/collections/config/types';
9
9
  export type { Access, AccessArgs } from './dist/config/types';
10
- export type { ArrayField, Block, BlockField, CheckboxField, CodeField, CollapsibleField, Condition, DateField, EmailField, Field, FieldAccess, FieldAffectingData, FieldBase, FieldHook, FieldHookArgs, FieldPresentationalOnly, FieldWithMany, FieldWithMaxDepth, FieldWithPath, FieldWithSubFields, FilterOptions, FilterOptionsProps, GroupField, HookName, JSONField, Labels, NamedTab, NonPresentationalField, NumberField, Option, OptionObject, PointField, PolymorphicRelationshipField, RadioField, RelationshipField, RelationshipValue, RichTextField, RowAdmin, RowField, SelectField, SingleRelationshipField, Tab, TabAsField, TabsAdmin, TabsField, TextField, TextareaField, UIField, UnnamedTab, UploadField, Validate, ValidateOptions, ValueWithRelation, } from './dist/fields/config/types';
10
+ export type { ArrayField, Block, BlockField, CheckboxField, CodeField, CollapsibleField, Condition, DateField, EmailField, Field, FieldAccess, FieldAffectingData, FieldBase, FieldHook, FieldHookArgs, FieldPresentationalOnly, FieldWithMany, FieldWithMaxDepth, FieldWithPath, FieldWithRichTextRequiredEditor, FieldWithSubFields, FilterOptions, FilterOptionsProps, GroupField, HookName, JSONField, Labels, NamedTab, NonPresentationalField, NumberField, Option, OptionObject, PointField, PolymorphicRelationshipField, RadioField, RelationshipField, RelationshipValue, RichTextField, RichTextFieldRequiredEditor, RowAdmin, RowField, SelectField, SingleRelationshipField, Tab, TabAsField, TabsAdmin, TabsField, TextField, TextareaField, UIField, UnnamedTab, UploadField, Validate, ValidateOptions, ValueWithRelation, } from './dist/fields/config/types';
11
11
  export { fieldAffectsData, fieldHasMaxDepth, fieldHasSubFields, fieldIsArrayType, fieldIsBlockType, fieldIsGroupType, fieldIsLocalized, fieldIsPresentationalOnly, fieldSupportsMany, optionIsObject, optionIsValue, optionsAreObjects, tabHasName, valueIsValueWithRelation, } from './dist/fields/config/types';
12
12
  export type { AfterChangeHook as GlobalAfterChangeHook, AfterReadHook as GlobalAfterReadHook, BeforeChangeHook as GlobalBeforeChangeHook, BeforeReadHook as GlobalBeforeReadHook, BeforeValidateHook as GlobalBeforeValidateHook, GlobalConfig, SanitizedGlobalConfig, } from './dist/globals/config/types';
13
13
  export { validOperators } from './dist/types/constants';
package/types.js CHANGED
@@ -82,4 +82,4 @@ function _export_star(from, to) {
82
82
  return from;
83
83
  }
84
84
 
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRzL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vLi4vdHlwZXMnXG5cbmV4cG9ydCB0eXBlIHtcbiAgQ3JlYXRlRm9ybURhdGEsXG4gIERhdGEsXG4gIEZpZWxkcyxcbiAgRm9ybUZpZWxkLFxuICBGb3JtRmllbGRzQ29udGV4dCxcbn0gZnJvbSAnLi4vYWRtaW4vY29tcG9uZW50cy9mb3Jtcy9Gb3JtL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7XG4gIFJpY2hUZXh0QWRhcHRlcixcbiAgUmljaFRleHRGaWVsZFByb3BzLFxufSBmcm9tICcuLi9hZG1pbi9jb21wb25lbnRzL2Zvcm1zL2ZpZWxkLXR5cGVzL1JpY2hUZXh0L3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7IENlbGxDb21wb25lbnRQcm9wcyB9IGZyb20gJy4uL2FkbWluL2NvbXBvbmVudHMvdmlld3MvY29sbGVjdGlvbnMvTGlzdC9DZWxsL3R5cGVzJ1xuXG5leHBvcnQgeyBGaWxlRGF0YSwgSW1hZ2VTaXplLCBJbmNvbWluZ1VwbG9hZFR5cGUgfSBmcm9tICcuLi91cGxvYWRzL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7XG4gIEN1c3RvbVB1Ymxpc2hCdXR0b25Qcm9wcyxcbiAgQ3VzdG9tU2F2ZUJ1dHRvblByb3BzLFxuICBDdXN0b21TYXZlRHJhZnRCdXR0b25Qcm9wcyxcbn0gZnJvbSAnLi8uLi9hZG1pbi9jb21wb25lbnRzL2VsZW1lbnRzL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7IFJvd0xhYmVsIH0gZnJvbSAnLi8uLi9hZG1pbi9jb21wb25lbnRzL2Zvcm1zL1Jvd0xhYmVsL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7XG4gIEFmdGVyQ2hhbmdlSG9vayBhcyBDb2xsZWN0aW9uQWZ0ZXJDaGFuZ2VIb29rLFxuICBBZnRlckRlbGV0ZUhvb2sgYXMgQ29sbGVjdGlvbkFmdGVyRGVsZXRlSG9vayxcbiAgQWZ0ZXJGb3Jnb3RQYXNzd29yZEhvb2sgYXMgQ29sbGVjdGlvbkFmdGVyRm9yZ290UGFzc3dvcmRIb29rLFxuICBBZnRlckxvZ2luSG9vayBhcyBDb2xsZWN0aW9uQWZ0ZXJMb2dpbkhvb2ssXG4gIEFmdGVyT3BlcmF0aW9uSG9vayBhcyBDb2xsZWN0aW9uQWZ0ZXJPcGVyYXRpb25Ib29rLFxuICBBZnRlclJlYWRIb29rIGFzIENvbGxlY3Rpb25BZnRlclJlYWRIb29rLFxuICBCZWZvcmVDaGFuZ2VIb29rIGFzIENvbGxlY3Rpb25CZWZvcmVDaGFuZ2VIb29rLFxuICBCZWZvcmVEZWxldGVIb29rIGFzIENvbGxlY3Rpb25CZWZvcmVEZWxldGVIb29rLFxuICBCZWZvcmVEdXBsaWNhdGUsXG4gIEJlZm9yZUxvZ2luSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlTG9naW5Ib29rLFxuICBCZWZvcmVPcGVyYXRpb25Ib29rIGFzIENvbGxlY3Rpb25CZWZvcmVPcGVyYXRpb25Ib29rLFxuICBCZWZvcmVSZWFkSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlUmVhZEhvb2ssXG4gIEJlZm9yZVZhbGlkYXRlSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlVmFsaWRhdGVIb29rLFxuICBDb2xsZWN0aW9uLFxuICBDb2xsZWN0aW9uQ29uZmlnLFxuICBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnLFxuICBUeXBlV2l0aElELFxufSBmcm9tICcuLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IHR5cGUgeyBBY2Nlc3MsIEFjY2Vzc0FyZ3MgfSBmcm9tICcuLy4uL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IHR5cGUge1xuICBBcnJheUZpZWxkLFxuICBCbG9jayxcbiAgQmxvY2tGaWVsZCxcbiAgQ2hlY2tib3hGaWVsZCxcbiAgQ29kZUZpZWxkLFxuICBDb2xsYXBzaWJsZUZpZWxkLFxuICBDb25kaXRpb24sXG4gIERhdGVGaWVsZCxcbiAgRW1haWxGaWVsZCxcbiAgRmllbGQsXG4gIEZpZWxkQWNjZXNzLFxuICBGaWVsZEFmZmVjdGluZ0RhdGEsXG4gIEZpZWxkQmFzZSxcbiAgRmllbGRIb29rLFxuICBGaWVsZEhvb2tBcmdzLFxuICBGaWVsZFByZXNlbnRhdGlvbmFsT25seSxcbiAgRmllbGRXaXRoTWFueSxcbiAgRmllbGRXaXRoTWF4RGVwdGgsXG4gIEZpZWxkV2l0aFBhdGgsXG4gIEZpZWxkV2l0aFN1YkZpZWxkcyxcbiAgRmlsdGVyT3B0aW9ucyxcbiAgRmlsdGVyT3B0aW9uc1Byb3BzLFxuICBHcm91cEZpZWxkLFxuICBIb29rTmFtZSxcbiAgSlNPTkZpZWxkLFxuICBMYWJlbHMsXG4gIE5hbWVkVGFiLFxuICBOb25QcmVzZW50YXRpb25hbEZpZWxkLFxuICBOdW1iZXJGaWVsZCxcbiAgT3B0aW9uLFxuICBPcHRpb25PYmplY3QsXG4gIFBvaW50RmllbGQsXG4gIFBvbHltb3JwaGljUmVsYXRpb25zaGlwRmllbGQsXG4gIFJhZGlvRmllbGQsXG4gIFJlbGF0aW9uc2hpcEZpZWxkLFxuICBSZWxhdGlvbnNoaXBWYWx1ZSxcbiAgUmljaFRleHRGaWVsZCxcbiAgUm93QWRtaW4sXG4gIFJvd0ZpZWxkLFxuICBTZWxlY3RGaWVsZCxcbiAgU2luZ2xlUmVsYXRpb25zaGlwRmllbGQsXG4gIFRhYixcbiAgVGFiQXNGaWVsZCxcbiAgVGFic0FkbWluLFxuICBUYWJzRmllbGQsXG4gIFRleHRGaWVsZCxcbiAgVGV4dGFyZWFGaWVsZCxcbiAgVUlGaWVsZCxcbiAgVW5uYW1lZFRhYixcbiAgVXBsb2FkRmllbGQsXG4gIFZhbGlkYXRlLFxuICBWYWxpZGF0ZU9wdGlvbnMsXG4gIFZhbHVlV2l0aFJlbGF0aW9uLFxufSBmcm9tICcuLy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5cbmV4cG9ydCB7XG4gIGZpZWxkQWZmZWN0c0RhdGEsXG4gIGZpZWxkSGFzTWF4RGVwdGgsXG4gIGZpZWxkSGFzU3ViRmllbGRzLFxuICBmaWVsZElzQXJyYXlUeXBlLFxuICBmaWVsZElzQmxvY2tUeXBlLFxuICBmaWVsZElzR3JvdXBUeXBlLFxuICBmaWVsZElzTG9jYWxpemVkLFxuICBmaWVsZElzUHJlc2VudGF0aW9uYWxPbmx5LFxuICBmaWVsZFN1cHBvcnRzTWFueSxcbiAgb3B0aW9uSXNPYmplY3QsXG4gIG9wdGlvbklzVmFsdWUsXG4gIG9wdGlvbnNBcmVPYmplY3RzLFxuICB0YWJIYXNOYW1lLFxuICB2YWx1ZUlzVmFsdWVXaXRoUmVsYXRpb24sXG59IGZyb20gJy4vLi4vZmllbGRzL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IHR5cGUge1xuICBBZnRlckNoYW5nZUhvb2sgYXMgR2xvYmFsQWZ0ZXJDaGFuZ2VIb29rLFxuICBBZnRlclJlYWRIb29rIGFzIEdsb2JhbEFmdGVyUmVhZEhvb2ssXG4gIEJlZm9yZUNoYW5nZUhvb2sgYXMgR2xvYmFsQmVmb3JlQ2hhbmdlSG9vayxcbiAgQmVmb3JlUmVhZEhvb2sgYXMgR2xvYmFsQmVmb3JlUmVhZEhvb2ssXG4gIEJlZm9yZVZhbGlkYXRlSG9vayBhcyBHbG9iYWxCZWZvcmVWYWxpZGF0ZUhvb2ssXG4gIEdsb2JhbENvbmZpZyxcbiAgU2FuaXRpemVkR2xvYmFsQ29uZmlnLFxufSBmcm9tICcuLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuXG5leHBvcnQgeyB2YWxpZE9wZXJhdG9ycyB9IGZyb20gJy4vLi4vdHlwZXMvY29uc3RhbnRzJ1xuIl0sIm5hbWVzIjpbIkZpbGVEYXRhIiwiSW1hZ2VTaXplIiwiSW5jb21pbmdVcGxvYWRUeXBlIiwiZmllbGRBZmZlY3RzRGF0YSIsImZpZWxkSGFzTWF4RGVwdGgiLCJmaWVsZEhhc1N1YkZpZWxkcyIsImZpZWxkSXNBcnJheVR5cGUiLCJmaWVsZElzQmxvY2tUeXBlIiwiZmllbGRJc0dyb3VwVHlwZSIsImZpZWxkSXNMb2NhbGl6ZWQiLCJmaWVsZElzUHJlc2VudGF0aW9uYWxPbmx5IiwiZmllbGRTdXBwb3J0c01hbnkiLCJvcHRpb25Jc09iamVjdCIsIm9wdGlvbklzVmFsdWUiLCJvcHRpb25zQXJlT2JqZWN0cyIsInRhYkhhc05hbWUiLCJ2YWxpZE9wZXJhdG9ycyIsInZhbHVlSXNWYWx1ZVdpdGhSZWxhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFpQlNBLFFBQVE7ZUFBUkEsZUFBUTs7SUFBRUMsU0FBUztlQUFUQSxnQkFBUzs7SUFBRUMsa0JBQWtCO2VBQWxCQSx5QkFBa0I7O0lBeUY5Q0MsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLHdCQUFnQjs7SUFDaEJDLGlCQUFpQjtlQUFqQkEseUJBQWlCOztJQUNqQkMsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLHdCQUFnQjs7SUFDaEJDLGdCQUFnQjtlQUFoQkEsd0JBQWdCOztJQUNoQkMsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyx5QkFBeUI7ZUFBekJBLGlDQUF5Qjs7SUFDekJDLGlCQUFpQjtlQUFqQkEseUJBQWlCOztJQUNqQkMsY0FBYztlQUFkQSxzQkFBYzs7SUFDZEMsYUFBYTtlQUFiQSxxQkFBYTs7SUFDYkMsaUJBQWlCO2VBQWpCQSx5QkFBaUI7O0lBQ2pCQyxVQUFVO2VBQVZBLGtCQUFVOztJQWNIQyxjQUFjO2VBQWRBLHlCQUFjOztJQWJyQkMsd0JBQXdCO2VBQXhCQSxnQ0FBd0I7OztxQkF2SFo7dUJBaUIwQzt3QkF1R2pEOzJCQVl3QiJ9
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHBvcnRzL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vLi4vdHlwZXMnXG5cbmV4cG9ydCB0eXBlIHtcbiAgQ3JlYXRlRm9ybURhdGEsXG4gIERhdGEsXG4gIEZpZWxkcyxcbiAgRm9ybUZpZWxkLFxuICBGb3JtRmllbGRzQ29udGV4dCxcbn0gZnJvbSAnLi4vYWRtaW4vY29tcG9uZW50cy9mb3Jtcy9Gb3JtL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7XG4gIFJpY2hUZXh0QWRhcHRlcixcbiAgUmljaFRleHRGaWVsZFByb3BzLFxufSBmcm9tICcuLi9hZG1pbi9jb21wb25lbnRzL2Zvcm1zL2ZpZWxkLXR5cGVzL1JpY2hUZXh0L3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7IENlbGxDb21wb25lbnRQcm9wcyB9IGZyb20gJy4uL2FkbWluL2NvbXBvbmVudHMvdmlld3MvY29sbGVjdGlvbnMvTGlzdC9DZWxsL3R5cGVzJ1xuXG5leHBvcnQgeyBGaWxlRGF0YSwgSW1hZ2VTaXplLCBJbmNvbWluZ1VwbG9hZFR5cGUgfSBmcm9tICcuLi91cGxvYWRzL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSB7XG4gIEN1c3RvbVB1Ymxpc2hCdXR0b25Qcm9wcyxcbiAgQ3VzdG9tUHVibGlzaEJ1dHRvblR5cGUsXG4gIEN1c3RvbVNhdmVCdXR0b25Qcm9wcyxcbiAgQ3VzdG9tU2F2ZURyYWZ0QnV0dG9uUHJvcHMsXG59IGZyb20gJy4vLi4vYWRtaW4vY29tcG9uZW50cy9lbGVtZW50cy90eXBlcydcblxuZXhwb3J0IHR5cGUgeyBSb3dMYWJlbCB9IGZyb20gJy4vLi4vYWRtaW4vY29tcG9uZW50cy9mb3Jtcy9Sb3dMYWJlbC90eXBlcydcblxuZXhwb3J0IHR5cGUge1xuICBBZnRlckNoYW5nZUhvb2sgYXMgQ29sbGVjdGlvbkFmdGVyQ2hhbmdlSG9vayxcbiAgQWZ0ZXJEZWxldGVIb29rIGFzIENvbGxlY3Rpb25BZnRlckRlbGV0ZUhvb2ssXG4gIEFmdGVyRm9yZ290UGFzc3dvcmRIb29rIGFzIENvbGxlY3Rpb25BZnRlckZvcmdvdFBhc3N3b3JkSG9vayxcbiAgQWZ0ZXJMb2dpbkhvb2sgYXMgQ29sbGVjdGlvbkFmdGVyTG9naW5Ib29rLFxuICBBZnRlck9wZXJhdGlvbkhvb2sgYXMgQ29sbGVjdGlvbkFmdGVyT3BlcmF0aW9uSG9vayxcbiAgQWZ0ZXJSZWFkSG9vayBhcyBDb2xsZWN0aW9uQWZ0ZXJSZWFkSG9vayxcbiAgQmVmb3JlQ2hhbmdlSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlQ2hhbmdlSG9vayxcbiAgQmVmb3JlRGVsZXRlSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlRGVsZXRlSG9vayxcbiAgQmVmb3JlRHVwbGljYXRlLFxuICBCZWZvcmVMb2dpbkhvb2sgYXMgQ29sbGVjdGlvbkJlZm9yZUxvZ2luSG9vayxcbiAgQmVmb3JlT3BlcmF0aW9uSG9vayBhcyBDb2xsZWN0aW9uQmVmb3JlT3BlcmF0aW9uSG9vayxcbiAgQmVmb3JlUmVhZEhvb2sgYXMgQ29sbGVjdGlvbkJlZm9yZVJlYWRIb29rLFxuICBCZWZvcmVWYWxpZGF0ZUhvb2sgYXMgQ29sbGVjdGlvbkJlZm9yZVZhbGlkYXRlSG9vayxcbiAgQ29sbGVjdGlvbixcbiAgQ29sbGVjdGlvbkNvbmZpZyxcbiAgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyxcbiAgVHlwZVdpdGhJRCxcbn0gZnJvbSAnLi8uLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5cbmV4cG9ydCB0eXBlIHsgQWNjZXNzLCBBY2Nlc3NBcmdzIH0gZnJvbSAnLi8uLi9jb25maWcvdHlwZXMnXG5cbmV4cG9ydCB0eXBlIHtcbiAgQXJyYXlGaWVsZCxcbiAgQmxvY2ssXG4gIEJsb2NrRmllbGQsXG4gIENoZWNrYm94RmllbGQsXG4gIENvZGVGaWVsZCxcbiAgQ29sbGFwc2libGVGaWVsZCxcbiAgQ29uZGl0aW9uLFxuICBEYXRlRmllbGQsXG4gIEVtYWlsRmllbGQsXG4gIEZpZWxkLFxuICBGaWVsZEFjY2VzcyxcbiAgRmllbGRBZmZlY3RpbmdEYXRhLFxuICBGaWVsZEJhc2UsXG4gIEZpZWxkSG9vayxcbiAgRmllbGRIb29rQXJncyxcbiAgRmllbGRQcmVzZW50YXRpb25hbE9ubHksXG4gIEZpZWxkV2l0aE1hbnksXG4gIEZpZWxkV2l0aE1heERlcHRoLFxuICBGaWVsZFdpdGhQYXRoLFxuICBGaWVsZFdpdGhSaWNoVGV4dFJlcXVpcmVkRWRpdG9yLFxuICBGaWVsZFdpdGhTdWJGaWVsZHMsXG4gIEZpbHRlck9wdGlvbnMsXG4gIEZpbHRlck9wdGlvbnNQcm9wcyxcbiAgR3JvdXBGaWVsZCxcbiAgSG9va05hbWUsXG4gIEpTT05GaWVsZCxcbiAgTGFiZWxzLFxuICBOYW1lZFRhYixcbiAgTm9uUHJlc2VudGF0aW9uYWxGaWVsZCxcbiAgTnVtYmVyRmllbGQsXG4gIE9wdGlvbixcbiAgT3B0aW9uT2JqZWN0LFxuICBQb2ludEZpZWxkLFxuICBQb2x5bW9ycGhpY1JlbGF0aW9uc2hpcEZpZWxkLFxuICBSYWRpb0ZpZWxkLFxuICBSZWxhdGlvbnNoaXBGaWVsZCxcbiAgUmVsYXRpb25zaGlwVmFsdWUsXG4gIFJpY2hUZXh0RmllbGQsXG4gIFJpY2hUZXh0RmllbGRSZXF1aXJlZEVkaXRvcixcbiAgUm93QWRtaW4sXG4gIFJvd0ZpZWxkLFxuICBTZWxlY3RGaWVsZCxcbiAgU2luZ2xlUmVsYXRpb25zaGlwRmllbGQsXG4gIFRhYixcbiAgVGFiQXNGaWVsZCxcbiAgVGFic0FkbWluLFxuICBUYWJzRmllbGQsXG4gIFRleHRGaWVsZCxcbiAgVGV4dGFyZWFGaWVsZCxcbiAgVUlGaWVsZCxcbiAgVW5uYW1lZFRhYixcbiAgVXBsb2FkRmllbGQsXG4gIFZhbGlkYXRlLFxuICBWYWxpZGF0ZU9wdGlvbnMsXG4gIFZhbHVlV2l0aFJlbGF0aW9uLFxufSBmcm9tICcuLy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5cbmV4cG9ydCB7XG4gIGZpZWxkQWZmZWN0c0RhdGEsXG4gIGZpZWxkSGFzTWF4RGVwdGgsXG4gIGZpZWxkSGFzU3ViRmllbGRzLFxuICBmaWVsZElzQXJyYXlUeXBlLFxuICBmaWVsZElzQmxvY2tUeXBlLFxuICBmaWVsZElzR3JvdXBUeXBlLFxuICBmaWVsZElzTG9jYWxpemVkLFxuICBmaWVsZElzUHJlc2VudGF0aW9uYWxPbmx5LFxuICBmaWVsZFN1cHBvcnRzTWFueSxcbiAgb3B0aW9uSXNPYmplY3QsXG4gIG9wdGlvbklzVmFsdWUsXG4gIG9wdGlvbnNBcmVPYmplY3RzLFxuICB0YWJIYXNOYW1lLFxuICB2YWx1ZUlzVmFsdWVXaXRoUmVsYXRpb24sXG59IGZyb20gJy4vLi4vZmllbGRzL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IHR5cGUge1xuICBBZnRlckNoYW5nZUhvb2sgYXMgR2xvYmFsQWZ0ZXJDaGFuZ2VIb29rLFxuICBBZnRlclJlYWRIb29rIGFzIEdsb2JhbEFmdGVyUmVhZEhvb2ssXG4gIEJlZm9yZUNoYW5nZUhvb2sgYXMgR2xvYmFsQmVmb3JlQ2hhbmdlSG9vayxcbiAgQmVmb3JlUmVhZEhvb2sgYXMgR2xvYmFsQmVmb3JlUmVhZEhvb2ssXG4gIEJlZm9yZVZhbGlkYXRlSG9vayBhcyBHbG9iYWxCZWZvcmVWYWxpZGF0ZUhvb2ssXG4gIEdsb2JhbENvbmZpZyxcbiAgU2FuaXRpemVkR2xvYmFsQ29uZmlnLFxufSBmcm9tICcuLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuXG5leHBvcnQgeyB2YWxpZE9wZXJhdG9ycyB9IGZyb20gJy4vLi4vdHlwZXMvY29uc3RhbnRzJ1xuIl0sIm5hbWVzIjpbIkZpbGVEYXRhIiwiSW1hZ2VTaXplIiwiSW5jb21pbmdVcGxvYWRUeXBlIiwiZmllbGRBZmZlY3RzRGF0YSIsImZpZWxkSGFzTWF4RGVwdGgiLCJmaWVsZEhhc1N1YkZpZWxkcyIsImZpZWxkSXNBcnJheVR5cGUiLCJmaWVsZElzQmxvY2tUeXBlIiwiZmllbGRJc0dyb3VwVHlwZSIsImZpZWxkSXNMb2NhbGl6ZWQiLCJmaWVsZElzUHJlc2VudGF0aW9uYWxPbmx5IiwiZmllbGRTdXBwb3J0c01hbnkiLCJvcHRpb25Jc09iamVjdCIsIm9wdGlvbklzVmFsdWUiLCJvcHRpb25zQXJlT2JqZWN0cyIsInRhYkhhc05hbWUiLCJ2YWxpZE9wZXJhdG9ycyIsInZhbHVlSXNWYWx1ZVdpdGhSZWxhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFpQlNBLFFBQVE7ZUFBUkEsZUFBUTs7SUFBRUMsU0FBUztlQUFUQSxnQkFBUzs7SUFBRUMsa0JBQWtCO2VBQWxCQSx5QkFBa0I7O0lBNEY5Q0MsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLHdCQUFnQjs7SUFDaEJDLGlCQUFpQjtlQUFqQkEseUJBQWlCOztJQUNqQkMsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLHdCQUFnQjs7SUFDaEJDLGdCQUFnQjtlQUFoQkEsd0JBQWdCOztJQUNoQkMsZ0JBQWdCO2VBQWhCQSx3QkFBZ0I7O0lBQ2hCQyx5QkFBeUI7ZUFBekJBLGlDQUF5Qjs7SUFDekJDLGlCQUFpQjtlQUFqQkEseUJBQWlCOztJQUNqQkMsY0FBYztlQUFkQSxzQkFBYzs7SUFDZEMsYUFBYTtlQUFiQSxxQkFBYTs7SUFDYkMsaUJBQWlCO2VBQWpCQSx5QkFBaUI7O0lBQ2pCQyxVQUFVO2VBQVZBLGtCQUFVOztJQWNIQyxjQUFjO2VBQWRBLHlCQUFjOztJQWJyQkMsd0JBQXdCO2VBQXhCQSxnQ0FBd0I7OztxQkExSFo7dUJBaUIwQzt3QkEwR2pEOzJCQVl3QiJ9