@nmshd/content 2.0.0-alpha.9 → 2.0.0-beta.3

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 (405) hide show
  1. package/README.md +2 -2
  2. package/dist/attributes/AbstractAttribute.d.ts +17 -0
  3. package/dist/attributes/{AttributeV2.js → AbstractAttribute.js} +9 -26
  4. package/dist/attributes/AbstractAttribute.js.map +1 -0
  5. package/dist/attributes/AbstractAttributeQuery.d.ts +17 -0
  6. package/dist/attributes/{AttributeQuery.js → AbstractAttributeQuery.js} +14 -21
  7. package/dist/attributes/AbstractAttributeQuery.js.map +1 -0
  8. package/dist/attributes/AbstractAttributeValue.d.ts +10 -2
  9. package/dist/attributes/AbstractAttributeValue.js +12 -0
  10. package/dist/attributes/AbstractAttributeValue.js.map +1 -1
  11. package/dist/attributes/AbstractComplexValue.d.ts +9 -0
  12. package/dist/attributes/AbstractComplexValue.js +15 -0
  13. package/dist/attributes/AbstractComplexValue.js.map +1 -0
  14. package/dist/attributes/IdentityAttribute.d.ts +16 -0
  15. package/dist/attributes/IdentityAttribute.js +38 -0
  16. package/dist/attributes/IdentityAttribute.js.map +1 -0
  17. package/dist/attributes/IdentityAttributeQuery.d.ts +12 -0
  18. package/dist/attributes/IdentityAttributeQuery.js +32 -0
  19. package/dist/attributes/IdentityAttributeQuery.js.map +1 -0
  20. package/dist/attributes/RelationshipAttribute.d.ts +53 -0
  21. package/dist/attributes/RelationshipAttribute.js +88 -0
  22. package/dist/attributes/RelationshipAttribute.js.map +1 -0
  23. package/dist/attributes/RelationshipAttributeQuery.d.ts +23 -0
  24. package/dist/attributes/RelationshipAttributeQuery.js +49 -0
  25. package/dist/attributes/RelationshipAttributeQuery.js.map +1 -0
  26. package/dist/attributes/constants/CountriesAlpha2.d.ts +252 -0
  27. package/dist/attributes/constants/CountriesAlpha2.js +507 -0
  28. package/dist/attributes/constants/CountriesAlpha2.js.map +1 -0
  29. package/dist/attributes/constants/LanguagesISO639.d.ts +191 -0
  30. package/dist/attributes/constants/LanguagesISO639.js +377 -0
  31. package/dist/attributes/constants/LanguagesISO639.js.map +1 -0
  32. package/dist/attributes/constants/index.d.ts +2 -0
  33. package/dist/attributes/{types/idcard → constants}/index.js +2 -4
  34. package/dist/attributes/constants/index.js.map +1 -0
  35. package/dist/attributes/hints/RelationshipAttributeCreationHints.d.ts +31 -0
  36. package/dist/attributes/hints/RelationshipAttributeCreationHints.js +64 -0
  37. package/dist/attributes/hints/RelationshipAttributeCreationHints.js.map +1 -0
  38. package/dist/attributes/hints/RenderHints.d.ts +40 -0
  39. package/dist/attributes/hints/RenderHints.js +119 -0
  40. package/dist/attributes/hints/RenderHints.js.map +1 -0
  41. package/dist/attributes/hints/RenderHintsDataType.d.ts +19 -0
  42. package/dist/attributes/hints/RenderHintsDataType.js +24 -0
  43. package/dist/attributes/hints/RenderHintsDataType.js.map +1 -0
  44. package/dist/attributes/hints/RenderHintsEditType.d.ts +11 -0
  45. package/dist/attributes/hints/RenderHintsEditType.js +16 -0
  46. package/dist/attributes/hints/RenderHintsEditType.js.map +1 -0
  47. package/dist/attributes/hints/RenderHintsTechnicalType.d.ts +7 -0
  48. package/dist/attributes/hints/RenderHintsTechnicalType.js +12 -0
  49. package/dist/attributes/hints/RenderHintsTechnicalType.js.map +1 -0
  50. package/dist/attributes/hints/ValueHints.d.ts +50 -0
  51. package/dist/attributes/hints/ValueHints.js +149 -0
  52. package/dist/attributes/hints/ValueHints.js.map +1 -0
  53. package/dist/attributes/hints/ValueHintsValue.d.ts +14 -0
  54. package/dist/attributes/hints/ValueHintsValue.js +33 -0
  55. package/dist/attributes/hints/ValueHintsValue.js.map +1 -0
  56. package/dist/attributes/hints/index.d.ts +7 -0
  57. package/dist/attributes/hints/index.js +24 -0
  58. package/dist/attributes/hints/index.js.map +1 -0
  59. package/dist/attributes/index.d.ts +9 -2
  60. package/dist/attributes/index.js +9 -2
  61. package/dist/attributes/index.js.map +1 -1
  62. package/dist/attributes/types/AbstractBoolean.d.ts +16 -0
  63. package/dist/attributes/types/AbstractBoolean.js +41 -0
  64. package/dist/attributes/types/AbstractBoolean.js.map +1 -0
  65. package/dist/attributes/types/AbstractFloat.d.ts +16 -0
  66. package/dist/attributes/types/{AbstractFloatValue.js → AbstractFloat.js} +23 -5
  67. package/dist/attributes/types/AbstractFloat.js.map +1 -0
  68. package/dist/attributes/types/AbstractInteger.d.ts +17 -0
  69. package/dist/attributes/types/{AbstractIntegerValue.js → AbstractInteger.js} +26 -5
  70. package/dist/attributes/types/AbstractInteger.js.map +1 -0
  71. package/dist/attributes/types/AbstractString.d.ts +16 -0
  72. package/dist/attributes/types/AbstractString.js +43 -0
  73. package/dist/attributes/types/AbstractString.js.map +1 -0
  74. package/dist/attributes/types/address/AbstractAddress.d.ts +282 -2
  75. package/dist/attributes/types/address/AbstractAddress.js +25 -2
  76. package/dist/attributes/types/address/AbstractAddress.js.map +1 -1
  77. package/dist/attributes/types/address/City.d.ts +2 -2
  78. package/dist/attributes/types/address/City.js +2 -2
  79. package/dist/attributes/types/address/City.js.map +1 -1
  80. package/dist/attributes/types/address/Country.d.ts +2 -2
  81. package/dist/attributes/types/address/Country.js +2 -2
  82. package/dist/attributes/types/address/Country.js.map +1 -1
  83. package/dist/attributes/types/address/DeliveryBoxAddress.d.ts +1710 -2
  84. package/dist/attributes/types/address/DeliveryBoxAddress.js +69 -4
  85. package/dist/attributes/types/address/DeliveryBoxAddress.js.map +1 -1
  86. package/dist/attributes/types/address/HouseNumber.d.ts +2 -2
  87. package/dist/attributes/types/address/HouseNumber.js +2 -2
  88. package/dist/attributes/types/address/HouseNumber.js.map +1 -1
  89. package/dist/attributes/types/address/PostOfficeBoxAddress.d.ts +1419 -2
  90. package/dist/attributes/types/address/PostOfficeBoxAddress.js +52 -4
  91. package/dist/attributes/types/address/PostOfficeBoxAddress.js.map +1 -1
  92. package/dist/attributes/types/address/State.d.ts +2 -2
  93. package/dist/attributes/types/address/State.js +2 -2
  94. package/dist/attributes/types/address/State.js.map +1 -1
  95. package/dist/attributes/types/address/Street.d.ts +2 -2
  96. package/dist/attributes/types/address/Street.js +2 -2
  97. package/dist/attributes/types/address/Street.js.map +1 -1
  98. package/dist/attributes/types/address/StreetAddress.d.ts +1970 -2
  99. package/dist/attributes/types/address/StreetAddress.js +49 -6
  100. package/dist/attributes/types/address/StreetAddress.js.map +1 -1
  101. package/dist/attributes/types/address/ZipCode.d.ts +2 -2
  102. package/dist/attributes/types/address/ZipCode.js +2 -2
  103. package/dist/attributes/types/address/ZipCode.js.map +1 -1
  104. package/dist/attributes/types/birth/BirthDate.d.ts +1123 -2
  105. package/dist/attributes/types/birth/BirthDate.js +40 -4
  106. package/dist/attributes/types/birth/BirthDate.js.map +1 -1
  107. package/dist/attributes/types/birth/BirthDay.d.ts +1 -1
  108. package/dist/attributes/types/birth/BirthDay.js +1 -1
  109. package/dist/attributes/types/birth/BirthDay.js.map +1 -1
  110. package/dist/attributes/types/birth/BirthMonth.d.ts +3 -1
  111. package/dist/attributes/types/birth/BirthMonth.js +6 -1
  112. package/dist/attributes/types/birth/BirthMonth.js.map +1 -1
  113. package/dist/attributes/types/birth/BirthPlace.d.ts +1124 -3
  114. package/dist/attributes/types/birth/BirthPlace.js +41 -5
  115. package/dist/attributes/types/birth/BirthPlace.js.map +1 -1
  116. package/dist/attributes/types/birth/BirthYear.d.ts +1 -1
  117. package/dist/attributes/types/birth/BirthYear.js +1 -1
  118. package/dist/attributes/types/birth/BirthYear.js.map +1 -1
  119. package/dist/attributes/types/communication/CommunicationLanguage.d.ts +3 -0
  120. package/dist/attributes/types/{idcard/IDCardIssuingDate.js → communication/CommunicationLanguage.js} +8 -8
  121. package/dist/attributes/types/communication/CommunicationLanguage.js.map +1 -0
  122. package/dist/attributes/types/communication/EMailAddress.d.ts +3 -0
  123. package/dist/{relationships/RelationshipExistsAction.js → attributes/types/communication/EMailAddress.js} +8 -7
  124. package/dist/attributes/types/communication/EMailAddress.js.map +1 -0
  125. package/dist/attributes/types/communication/Fax.d.ts +3 -0
  126. package/dist/attributes/types/{name/Title.js → communication/Fax.js} +8 -8
  127. package/dist/attributes/types/communication/Fax.js.map +1 -0
  128. package/dist/attributes/types/communication/Phone.d.ts +3 -0
  129. package/dist/attributes/types/communication/Phone.js +18 -0
  130. package/dist/attributes/types/communication/Phone.js.map +1 -0
  131. package/dist/attributes/types/communication/Website.d.ts +3 -0
  132. package/dist/attributes/types/communication/Website.js +18 -0
  133. package/dist/attributes/types/communication/Website.js.map +1 -0
  134. package/dist/attributes/types/communication/index.d.ts +5 -0
  135. package/dist/attributes/types/communication/index.js +22 -0
  136. package/dist/attributes/types/communication/index.js.map +1 -0
  137. package/dist/attributes/types/dates/AbstractDateString.d.ts +8 -0
  138. package/dist/attributes/types/{AbstractDateString.js → dates/AbstractDateString.js} +17 -2
  139. package/dist/attributes/types/dates/AbstractDateString.js.map +1 -0
  140. package/dist/attributes/types/dates/AbstractDay.d.ts +10 -0
  141. package/dist/attributes/types/{AbstractDay.js → dates/AbstractDay.js} +15 -2
  142. package/dist/attributes/types/dates/AbstractDay.js.map +1 -0
  143. package/dist/attributes/types/{AbstractMonth.d.ts → dates/AbstractMonth.d.ts} +6 -2
  144. package/dist/attributes/types/{AbstractMonth.js → dates/AbstractMonth.js} +15 -2
  145. package/dist/attributes/types/dates/AbstractMonth.js.map +1 -0
  146. package/dist/attributes/types/dates/AbstractYear.d.ts +7 -0
  147. package/dist/attributes/types/dates/AbstractYear.js +38 -0
  148. package/dist/attributes/types/dates/AbstractYear.js.map +1 -0
  149. package/dist/attributes/types/dates/index.d.ts +4 -0
  150. package/dist/attributes/types/dates/index.js +21 -0
  151. package/dist/attributes/types/dates/index.js.map +1 -0
  152. package/dist/attributes/types/files/FileReference.d.ts +3 -0
  153. package/dist/attributes/types/files/FileReference.js +18 -0
  154. package/dist/attributes/types/files/FileReference.js.map +1 -0
  155. package/dist/attributes/types/files/index.d.ts +1 -0
  156. package/dist/attributes/types/files/index.js +18 -0
  157. package/dist/attributes/types/files/index.js.map +1 -0
  158. package/dist/attributes/types/index.d.ts +11 -1
  159. package/dist/attributes/types/index.js +11 -1
  160. package/dist/attributes/types/index.js.map +1 -1
  161. package/dist/attributes/types/measurements/{LengthMeasurement.d.ts → AbstractLengthMeasurement.d.ts} +3 -1
  162. package/dist/attributes/types/measurements/{LengthMeasurement.js → AbstractLengthMeasurement.js} +19 -9
  163. package/dist/attributes/types/measurements/AbstractLengthMeasurement.js.map +1 -0
  164. package/dist/attributes/types/measurements/AbstractMeasurement.d.ts +299 -2
  165. package/dist/attributes/types/measurements/AbstractMeasurement.js +33 -2
  166. package/dist/attributes/types/measurements/AbstractMeasurement.js.map +1 -1
  167. package/dist/attributes/types/measurements/index.d.ts +2 -1
  168. package/dist/attributes/types/measurements/index.js +2 -1
  169. package/dist/attributes/types/measurements/index.js.map +1 -1
  170. package/dist/attributes/types/name/AbstractLegalName.d.ts +2 -2
  171. package/dist/attributes/types/name/AbstractLegalName.js +4 -4
  172. package/dist/attributes/types/name/AbstractLegalName.js.map +1 -1
  173. package/dist/attributes/types/name/BirthName.d.ts +2 -2
  174. package/dist/attributes/types/name/BirthName.js +2 -2
  175. package/dist/attributes/types/name/BirthName.js.map +1 -1
  176. package/dist/attributes/types/name/DisplayName.d.ts +2 -2
  177. package/dist/attributes/types/name/DisplayName.js +2 -2
  178. package/dist/attributes/types/name/DisplayName.js.map +1 -1
  179. package/dist/attributes/types/name/GivenName.d.ts +2 -2
  180. package/dist/attributes/types/name/GivenName.js +2 -2
  181. package/dist/attributes/types/name/GivenName.js.map +1 -1
  182. package/dist/attributes/types/name/HonorificPrefix.d.ts +3 -0
  183. package/dist/attributes/types/name/HonorificPrefix.js +18 -0
  184. package/dist/attributes/types/name/HonorificPrefix.js.map +1 -0
  185. package/dist/attributes/types/name/HonorificSuffix.d.ts +3 -0
  186. package/dist/attributes/types/name/HonorificSuffix.js +18 -0
  187. package/dist/attributes/types/name/HonorificSuffix.js.map +1 -0
  188. package/dist/attributes/types/name/LegalNameDE.d.ts +1691 -2
  189. package/dist/attributes/types/name/LegalNameDE.js +52 -5
  190. package/dist/attributes/types/name/LegalNameDE.js.map +1 -1
  191. package/dist/attributes/types/name/Pseudonym.d.ts +2 -2
  192. package/dist/attributes/types/name/Pseudonym.js +2 -2
  193. package/dist/attributes/types/name/Pseudonym.js.map +1 -1
  194. package/dist/attributes/types/name/Salutation.d.ts +1694 -5
  195. package/dist/attributes/types/name/Salutation.js +51 -10
  196. package/dist/attributes/types/name/Salutation.js.map +1 -1
  197. package/dist/attributes/types/name/Surname.d.ts +2 -2
  198. package/dist/attributes/types/name/Surname.js +2 -2
  199. package/dist/attributes/types/name/Surname.js.map +1 -1
  200. package/dist/attributes/types/name/index.d.ts +2 -1
  201. package/dist/attributes/types/name/index.js +2 -1
  202. package/dist/attributes/types/name/index.js.map +1 -1
  203. package/dist/attributes/types/person/Age.d.ts +5 -2
  204. package/dist/attributes/types/person/Age.js +18 -2
  205. package/dist/attributes/types/person/Age.js.map +1 -1
  206. package/dist/attributes/types/person/Citizenship.d.ts +3 -0
  207. package/dist/attributes/types/person/{PersonEyeColor.js → Citizenship.js} +8 -8
  208. package/dist/attributes/types/person/Citizenship.js.map +1 -0
  209. package/dist/attributes/types/person/Nationality.d.ts +3 -0
  210. package/dist/attributes/types/person/Nationality.js +18 -0
  211. package/dist/attributes/types/person/Nationality.js.map +1 -0
  212. package/dist/attributes/types/person/Picture.d.ts +3 -0
  213. package/dist/attributes/types/person/{Gender.js → Picture.js} +8 -11
  214. package/dist/attributes/types/person/Picture.js.map +1 -0
  215. package/dist/attributes/types/person/Sex.d.ts +8 -5
  216. package/dist/attributes/types/person/Sex.js +21 -10
  217. package/dist/attributes/types/person/Sex.js.map +1 -1
  218. package/dist/attributes/types/person/index.d.ts +3 -3
  219. package/dist/attributes/types/person/index.js +3 -3
  220. package/dist/attributes/types/person/index.js.map +1 -1
  221. package/dist/attributes/types/proprietary/ProprietaryBoolean.d.ts +13 -0
  222. package/dist/attributes/types/proprietary/ProprietaryBoolean.js +31 -0
  223. package/dist/attributes/types/proprietary/ProprietaryBoolean.js.map +1 -0
  224. package/dist/attributes/types/proprietary/ProprietaryCountry.d.ts +14 -0
  225. package/dist/attributes/types/proprietary/ProprietaryCountry.js +31 -0
  226. package/dist/attributes/types/proprietary/ProprietaryCountry.js.map +1 -0
  227. package/dist/attributes/types/proprietary/ProprietaryDataURL.d.ts +14 -0
  228. package/dist/attributes/types/proprietary/ProprietaryDataURL.js +31 -0
  229. package/dist/attributes/types/proprietary/ProprietaryDataURL.js.map +1 -0
  230. package/dist/attributes/types/proprietary/ProprietaryEMailAddress.d.ts +14 -0
  231. package/dist/attributes/types/proprietary/ProprietaryEMailAddress.js +31 -0
  232. package/dist/attributes/types/proprietary/ProprietaryEMailAddress.js.map +1 -0
  233. package/dist/attributes/types/proprietary/ProprietaryFileReference.d.ts +14 -0
  234. package/dist/attributes/types/proprietary/ProprietaryFileReference.js +31 -0
  235. package/dist/attributes/types/proprietary/ProprietaryFileReference.js.map +1 -0
  236. package/dist/attributes/types/proprietary/ProprietaryFloat.d.ts +13 -0
  237. package/dist/attributes/types/{AbstractStringValue.js → proprietary/ProprietaryFloat.js} +15 -7
  238. package/dist/attributes/types/proprietary/ProprietaryFloat.js.map +1 -0
  239. package/dist/attributes/types/proprietary/ProprietaryHEXColor.d.ts +14 -0
  240. package/dist/attributes/types/proprietary/ProprietaryHEXColor.js +31 -0
  241. package/dist/attributes/types/proprietary/ProprietaryHEXColor.js.map +1 -0
  242. package/dist/attributes/types/proprietary/ProprietaryInteger.d.ts +21 -0
  243. package/dist/attributes/types/proprietary/ProprietaryInteger.js +51 -0
  244. package/dist/attributes/types/proprietary/ProprietaryInteger.js.map +1 -0
  245. package/dist/attributes/types/proprietary/ProprietaryLanguage.d.ts +14 -0
  246. package/dist/attributes/types/proprietary/ProprietaryLanguage.js +31 -0
  247. package/dist/attributes/types/proprietary/ProprietaryLanguage.js.map +1 -0
  248. package/dist/attributes/types/proprietary/ProprietaryPhoneNumber.d.ts +14 -0
  249. package/dist/attributes/types/proprietary/ProprietaryPhoneNumber.js +31 -0
  250. package/dist/attributes/types/proprietary/ProprietaryPhoneNumber.js.map +1 -0
  251. package/dist/attributes/types/proprietary/ProprietaryString.d.ts +13 -0
  252. package/dist/attributes/types/{person/PersonHeight.js → proprietary/ProprietaryString.js} +15 -13
  253. package/dist/attributes/types/proprietary/ProprietaryString.js.map +1 -0
  254. package/dist/attributes/types/proprietary/ProprietaryURL.d.ts +14 -0
  255. package/dist/{authorizations/Authorization.js → attributes/types/proprietary/ProprietaryURL.js} +12 -14
  256. package/dist/attributes/types/proprietary/ProprietaryURL.js.map +1 -0
  257. package/dist/attributes/types/proprietary/index.d.ts +12 -0
  258. package/dist/attributes/types/proprietary/index.js +29 -0
  259. package/dist/attributes/types/proprietary/index.js.map +1 -0
  260. package/dist/attributes/types/strings/AbstractCountry.d.ts +8 -0
  261. package/dist/attributes/types/strings/AbstractCountry.js +40 -0
  262. package/dist/attributes/types/strings/AbstractCountry.js.map +1 -0
  263. package/dist/attributes/types/strings/AbstractDataURL.d.ts +7 -0
  264. package/dist/attributes/types/strings/AbstractDataURL.js +40 -0
  265. package/dist/attributes/types/strings/AbstractDataURL.js.map +1 -0
  266. package/dist/attributes/types/strings/AbstractEMailAddress.d.ts +7 -0
  267. package/dist/attributes/types/strings/AbstractEMailAddress.js +41 -0
  268. package/dist/attributes/types/strings/AbstractEMailAddress.js.map +1 -0
  269. package/dist/attributes/types/strings/AbstractFileReference.d.ts +7 -0
  270. package/dist/attributes/types/strings/AbstractFileReference.js +39 -0
  271. package/dist/attributes/types/strings/AbstractFileReference.js.map +1 -0
  272. package/dist/attributes/types/strings/AbstractHEXColor.d.ts +7 -0
  273. package/dist/attributes/types/strings/AbstractHEXColor.js +37 -0
  274. package/dist/attributes/types/strings/AbstractHEXColor.js.map +1 -0
  275. package/dist/attributes/types/strings/AbstractLanguage.d.ts +8 -0
  276. package/dist/attributes/types/strings/AbstractLanguage.js +42 -0
  277. package/dist/attributes/types/strings/AbstractLanguage.js.map +1 -0
  278. package/dist/attributes/types/strings/AbstractPhoneNumber.d.ts +7 -0
  279. package/dist/attributes/types/strings/AbstractPhoneNumber.js +37 -0
  280. package/dist/attributes/types/strings/AbstractPhoneNumber.js.map +1 -0
  281. package/dist/attributes/types/strings/AbstractURL.d.ts +7 -0
  282. package/dist/attributes/types/strings/AbstractURL.js +42 -0
  283. package/dist/attributes/types/strings/AbstractURL.js.map +1 -0
  284. package/dist/attributes/types/strings/index.d.ts +8 -0
  285. package/dist/attributes/types/strings/index.js +25 -0
  286. package/dist/attributes/types/strings/index.js.map +1 -0
  287. package/dist/buildInformation.js +5 -5
  288. package/dist/index.d.ts +0 -1
  289. package/dist/index.js +0 -1
  290. package/dist/index.js.map +1 -1
  291. package/dist/relationships/RelationshipCreationChangeRequestBody.d.ts +8 -21
  292. package/dist/relationships/RelationshipCreationChangeRequestBody.js +5 -26
  293. package/dist/relationships/RelationshipCreationChangeRequestBody.js.map +1 -1
  294. package/dist/relationships/RelationshipTemplateBody.d.ts +11 -31
  295. package/dist/relationships/RelationshipTemplateBody.js +6 -34
  296. package/dist/relationships/RelationshipTemplateBody.js.map +1 -1
  297. package/dist/relationships/index.d.ts +0 -2
  298. package/dist/relationships/index.js +0 -2
  299. package/dist/relationships/index.js.map +1 -1
  300. package/dist/requests/Request.d.ts +38 -8
  301. package/dist/requests/Request.js +18 -0
  302. package/dist/requests/Request.js.map +1 -1
  303. package/dist/requests/RequestItem.d.ts +10 -5
  304. package/dist/requests/RequestItem.js +4 -1
  305. package/dist/requests/RequestItem.js.map +1 -1
  306. package/dist/requests/RequestItemGroup.d.ts +12 -11
  307. package/dist/requests/RequestItemGroup.js +6 -2
  308. package/dist/requests/RequestItemGroup.js.map +1 -1
  309. package/dist/requests/index.d.ts +1 -0
  310. package/dist/requests/index.js +1 -0
  311. package/dist/requests/index.js.map +1 -1
  312. package/dist/requests/items/consent/ConsentRequestItem.d.ts +17 -0
  313. package/dist/requests/items/consent/ConsentRequestItem.js +36 -0
  314. package/dist/requests/items/consent/ConsentRequestItem.js.map +1 -0
  315. package/dist/requests/items/createAttribute/CreateAttributeAcceptResponseItem.d.ts +12 -0
  316. package/dist/requests/items/createAttribute/CreateAttributeAcceptResponseItem.js +30 -0
  317. package/dist/requests/items/createAttribute/CreateAttributeAcceptResponseItem.js.map +1 -0
  318. package/dist/requests/items/createAttribute/CreateAttributeRequestItem.d.ts +17 -0
  319. package/dist/requests/items/createAttribute/CreateAttributeRequestItem.js +36 -0
  320. package/dist/requests/items/createAttribute/CreateAttributeRequestItem.js.map +1 -0
  321. package/dist/requests/items/index.d.ts +8 -0
  322. package/dist/requests/items/index.js +25 -0
  323. package/dist/requests/items/index.js.map +1 -0
  324. package/dist/requests/items/proposeAttribute/ProposeAttributeAcceptResponseItem.d.ts +16 -0
  325. package/dist/requests/items/proposeAttribute/ProposeAttributeAcceptResponseItem.js +36 -0
  326. package/dist/requests/items/proposeAttribute/ProposeAttributeAcceptResponseItem.js.map +1 -0
  327. package/dist/requests/items/proposeAttribute/ProposeAttributeRequestItem.d.ts +17 -0
  328. package/dist/requests/items/proposeAttribute/ProposeAttributeRequestItem.js +53 -0
  329. package/dist/requests/items/proposeAttribute/ProposeAttributeRequestItem.js.map +1 -0
  330. package/dist/requests/items/readAttribute/ReadAttributeAcceptResponseItem.d.ts +16 -0
  331. package/dist/requests/items/readAttribute/ReadAttributeAcceptResponseItem.js +36 -0
  332. package/dist/requests/items/readAttribute/ReadAttributeAcceptResponseItem.js.map +1 -0
  333. package/dist/requests/items/readAttribute/ReadAttributeRequestItem.d.ts +12 -0
  334. package/dist/{relationships/RelationshipExistsMessageAction.js → requests/items/readAttribute/ReadAttributeRequestItem.js} +14 -10
  335. package/dist/requests/items/readAttribute/ReadAttributeRequestItem.js.map +1 -0
  336. package/dist/requests/items/shareAttribute/ShareAttributeRequestItem.d.ts +15 -0
  337. package/dist/requests/items/shareAttribute/ShareAttributeRequestItem.js +35 -0
  338. package/dist/requests/items/shareAttribute/ShareAttributeRequestItem.js.map +1 -0
  339. package/dist/requests/response/AcceptResponseItem.d.ts +5 -0
  340. package/dist/requests/response/AcceptResponseItem.js +3 -0
  341. package/dist/requests/response/AcceptResponseItem.js.map +1 -1
  342. package/dist/requests/response/ErrorResponseItem.d.ts +4 -0
  343. package/dist/requests/response/ErrorResponseItem.js +3 -0
  344. package/dist/requests/response/ErrorResponseItem.js.map +1 -1
  345. package/dist/requests/response/RejectResponseItem.d.ts +4 -0
  346. package/dist/requests/response/RejectResponseItem.js +3 -0
  347. package/dist/requests/response/RejectResponseItem.js.map +1 -1
  348. package/dist/requests/response/Response.d.ts +5 -4
  349. package/dist/requests/response/Response.js +3 -0
  350. package/dist/requests/response/Response.js.map +1 -1
  351. package/dist/requests/response/ResponseItem.d.ts +7 -3
  352. package/dist/requests/response/ResponseItem.js +3 -5
  353. package/dist/requests/response/ResponseItem.js.map +1 -1
  354. package/dist/requests/response/ResponseItemGroup.d.ts +5 -7
  355. package/dist/requests/response/ResponseItemGroup.js +3 -5
  356. package/dist/requests/response/ResponseItemGroup.js.map +1 -1
  357. package/lib-web/nmshd.content.js +5280 -1339
  358. package/lib-web/nmshd.content.min.js +1 -1
  359. package/package.json +16 -15
  360. package/dist/attributes/AttributeQuery.d.ts +0 -12
  361. package/dist/attributes/AttributeQuery.js.map +0 -1
  362. package/dist/attributes/AttributeV2.d.ts +0 -25
  363. package/dist/attributes/AttributeV2.js.map +0 -1
  364. package/dist/attributes/types/AbstractDateString.d.ts +0 -5
  365. package/dist/attributes/types/AbstractDateString.js.map +0 -1
  366. package/dist/attributes/types/AbstractDay.d.ts +0 -7
  367. package/dist/attributes/types/AbstractDay.js.map +0 -1
  368. package/dist/attributes/types/AbstractFloatValue.d.ts +0 -4
  369. package/dist/attributes/types/AbstractFloatValue.js.map +0 -1
  370. package/dist/attributes/types/AbstractIntegerValue.d.ts +0 -4
  371. package/dist/attributes/types/AbstractIntegerValue.js.map +0 -1
  372. package/dist/attributes/types/AbstractMonth.js.map +0 -1
  373. package/dist/attributes/types/AbstractStringValue.d.ts +0 -4
  374. package/dist/attributes/types/AbstractStringValue.js.map +0 -1
  375. package/dist/attributes/types/AbstractYear.d.ts +0 -3
  376. package/dist/attributes/types/AbstractYear.js +0 -8
  377. package/dist/attributes/types/AbstractYear.js.map +0 -1
  378. package/dist/attributes/types/idcard/AbstractIDCard.d.ts +0 -3
  379. package/dist/attributes/types/idcard/AbstractIDCard.js +0 -8
  380. package/dist/attributes/types/idcard/AbstractIDCard.js.map +0 -1
  381. package/dist/attributes/types/idcard/IDCardAuthorityName.d.ts +0 -3
  382. package/dist/attributes/types/idcard/IDCardAuthorityName.js +0 -18
  383. package/dist/attributes/types/idcard/IDCardAuthorityName.js.map +0 -1
  384. package/dist/attributes/types/idcard/IDCardDE.d.ts +0 -13
  385. package/dist/attributes/types/idcard/IDCardDE.js +0 -51
  386. package/dist/attributes/types/idcard/IDCardDE.js.map +0 -1
  387. package/dist/attributes/types/idcard/IDCardIssuingDate.d.ts +0 -3
  388. package/dist/attributes/types/idcard/IDCardIssuingDate.js.map +0 -1
  389. package/dist/attributes/types/idcard/index.d.ts +0 -4
  390. package/dist/attributes/types/idcard/index.js.map +0 -1
  391. package/dist/attributes/types/measurements/LengthMeasurement.js.map +0 -1
  392. package/dist/attributes/types/name/Title.d.ts +0 -3
  393. package/dist/attributes/types/name/Title.js.map +0 -1
  394. package/dist/attributes/types/person/Gender.d.ts +0 -6
  395. package/dist/attributes/types/person/Gender.js.map +0 -1
  396. package/dist/attributes/types/person/PersonEyeColor.d.ts +0 -3
  397. package/dist/attributes/types/person/PersonEyeColor.js.map +0 -1
  398. package/dist/attributes/types/person/PersonHeight.d.ts +0 -4
  399. package/dist/attributes/types/person/PersonHeight.js.map +0 -1
  400. package/dist/authorizations/Authorization.d.ts +0 -14
  401. package/dist/authorizations/Authorization.js.map +0 -1
  402. package/dist/relationships/RelationshipExistsAction.d.ts +0 -7
  403. package/dist/relationships/RelationshipExistsAction.js.map +0 -1
  404. package/dist/relationships/RelationshipExistsMessageAction.d.ts +0 -11
  405. package/dist/relationships/RelationshipExistsMessageAction.js.map +0 -1
package/README.md CHANGED
@@ -7,7 +7,7 @@ The content library defines data structures that can be transmitted using the [t
7
7
 
8
8
  ## Documentation
9
9
 
10
- The documentation for this project is currently under construction.
10
+ You can find the documentation for Enmeshed on [enmeshed.eu](https://enmeshed.eu).
11
11
 
12
12
  ## Feedback
13
13
 
@@ -17,7 +17,7 @@ Share your feedback with the Enmeshed team by contributing to the [discussions](
17
17
 
18
18
  ## Contribute
19
19
 
20
- Currently contribution to this project is not possible. This will change soon.
20
+ Contribution to this project is highly apprecicated. Head over to our [contribution guide](https://github.com/nmshd/.github/blob/main/CONTRIBUTING.md) to learn more.
21
21
 
22
22
  ## License
23
23
 
@@ -0,0 +1,17 @@
1
+ import { CoreAddress, CoreDate, CoreSerializable, ICoreAddress, ICoreDate, ICoreSerializable } from "@nmshd/transport";
2
+ import { ContentJSON } from "../ContentJSON";
3
+ export interface AbstractAttributeJSON extends ContentJSON {
4
+ owner: string;
5
+ validFrom?: string;
6
+ validTo?: string;
7
+ }
8
+ export interface IAbstractAttribute extends ICoreSerializable {
9
+ owner: ICoreAddress;
10
+ validFrom?: ICoreDate;
11
+ validTo?: ICoreDate;
12
+ }
13
+ export declare abstract class AbstractAttribute extends CoreSerializable implements IAbstractAttribute {
14
+ owner: CoreAddress;
15
+ validFrom?: CoreDate;
16
+ validTo?: CoreDate;
17
+ }
@@ -9,42 +9,25 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.AttributeV2 = void 0;
12
+ exports.AbstractAttribute = void 0;
13
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const transport_1 = require("@nmshd/transport");
15
- const AbstractAttributeValue_1 = require("./AbstractAttributeValue");
16
- let AttributeV2 = class AttributeV2 extends transport_1.CoreSerializable {
17
- static from(value) {
18
- return this.fromAny(value);
19
- }
20
- };
21
- __decorate([
22
- (0, ts_serval_1.serialize)(),
23
- (0, ts_serval_1.validate)(),
24
- __metadata("design:type", AbstractAttributeValue_1.AbstractAttributeValue)
25
- ], AttributeV2.prototype, "value", void 0);
15
+ class AbstractAttribute extends transport_1.CoreSerializable {
16
+ }
26
17
  __decorate([
27
18
  (0, ts_serval_1.validate)(),
28
19
  (0, ts_serval_1.serialize)(),
29
- __metadata("design:type", transport_1.CoreDate)
30
- ], AttributeV2.prototype, "createdAt", void 0);
31
- __decorate([
32
- (0, ts_serval_1.serialize)({ type: String }),
33
- (0, ts_serval_1.validate)({ nullable: true }),
34
- __metadata("design:type", Array)
35
- ], AttributeV2.prototype, "tags", void 0);
20
+ __metadata("design:type", transport_1.CoreAddress)
21
+ ], AbstractAttribute.prototype, "owner", void 0);
36
22
  __decorate([
37
23
  (0, ts_serval_1.serialize)(),
38
24
  (0, ts_serval_1.validate)({ nullable: true }),
39
25
  __metadata("design:type", transport_1.CoreDate)
40
- ], AttributeV2.prototype, "validFrom", void 0);
26
+ ], AbstractAttribute.prototype, "validFrom", void 0);
41
27
  __decorate([
42
28
  (0, ts_serval_1.serialize)(),
43
29
  (0, ts_serval_1.validate)({ nullable: true }),
44
30
  __metadata("design:type", transport_1.CoreDate)
45
- ], AttributeV2.prototype, "validTo", void 0);
46
- AttributeV2 = __decorate([
47
- (0, ts_serval_1.type)("Attribute", { version: 2 })
48
- ], AttributeV2);
49
- exports.AttributeV2 = AttributeV2;
50
- //# sourceMappingURL=AttributeV2.js.map
31
+ ], AbstractAttribute.prototype, "validTo", void 0);
32
+ exports.AbstractAttribute = AbstractAttribute;
33
+ //# sourceMappingURL=AbstractAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractAttribute.js","sourceRoot":"","sources":["../../src/attributes/AbstractAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAwD;AACxD,gDAAsH;AAetH,MAAsB,iBAAkB,SAAQ,4BAAgB;CAY/D;AATG;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACE,uBAAW;gDAAA;AAIzB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACV,oBAAQ;oDAAA;AAI3B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACZ,oBAAQ;kDAAA;AAX7B,8CAYC"}
@@ -0,0 +1,17 @@
1
+ import { CoreDate, CoreSerializable, ICoreDate, ICoreSerializable } from "@nmshd/transport";
2
+ import { ContentJSON } from "../ContentJSON";
3
+ export interface AbstractAttributeQueryJSON extends ContentJSON {
4
+ valueType: string;
5
+ validFrom?: string;
6
+ validTo?: string;
7
+ }
8
+ export interface IAbstractAttributeQuery extends ICoreSerializable {
9
+ valueType: string;
10
+ validFrom?: ICoreDate;
11
+ validTo?: ICoreDate;
12
+ }
13
+ export declare abstract class AbstractAttributeQuery extends CoreSerializable implements IAbstractAttributeQuery {
14
+ valueType: string;
15
+ validFrom?: CoreDate;
16
+ validTo?: CoreDate;
17
+ }
@@ -9,34 +9,27 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.AttributeQuery = void 0;
12
+ exports.AbstractAttributeQuery = void 0;
13
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const transport_1 = require("@nmshd/transport");
15
- let AttributeQuery = class AttributeQuery extends transport_1.CoreSerializable {
16
- static from(value) {
17
- return this.fromAny(value);
18
- }
19
- };
20
- __decorate([
21
- (0, ts_serval_1.serialize)(),
22
- (0, ts_serval_1.validate)(),
23
- __metadata("design:type", Boolean)
24
- ], AttributeQuery.prototype, "onlyValid", void 0);
15
+ class AbstractAttributeQuery extends transport_1.CoreSerializable {
16
+ }
25
17
  __decorate([
26
18
  (0, ts_serval_1.serialize)(),
27
19
  (0, ts_serval_1.validate)({
28
- nullable: true,
29
20
  customValidator: (v) => (v === "" ? "must not be an empty string" : undefined)
30
21
  }),
31
22
  __metadata("design:type", String)
32
- ], AttributeQuery.prototype, "attributeType", void 0);
23
+ ], AbstractAttributeQuery.prototype, "valueType", void 0);
33
24
  __decorate([
34
- (0, ts_serval_1.serialize)({ type: String }),
25
+ (0, ts_serval_1.serialize)(),
26
+ (0, ts_serval_1.validate)({ nullable: true }),
27
+ __metadata("design:type", transport_1.CoreDate)
28
+ ], AbstractAttributeQuery.prototype, "validFrom", void 0);
29
+ __decorate([
30
+ (0, ts_serval_1.serialize)(),
35
31
  (0, ts_serval_1.validate)({ nullable: true }),
36
- __metadata("design:type", Array)
37
- ], AttributeQuery.prototype, "tags", void 0);
38
- AttributeQuery = __decorate([
39
- (0, ts_serval_1.type)("AttributeQuery")
40
- ], AttributeQuery);
41
- exports.AttributeQuery = AttributeQuery;
42
- //# sourceMappingURL=AttributeQuery.js.map
32
+ __metadata("design:type", transport_1.CoreDate)
33
+ ], AbstractAttributeQuery.prototype, "validTo", void 0);
34
+ exports.AbstractAttributeQuery = AbstractAttributeQuery;
35
+ //# sourceMappingURL=AbstractAttributeQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractAttributeQuery.js","sourceRoot":"","sources":["../../src/attributes/AbstractAttributeQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAwD;AACxD,gDAA2F;AAe3F,MAAsB,sBAAuB,SAAQ,4BAAgB;CAcpE;AATG;IAJC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC;QACN,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,SAAS,CAAC;KACjF,CAAC;;yDACsB;AAIxB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACV,oBAAQ;yDAAA;AAI3B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACZ,oBAAQ;uDAAA;AAb7B,wDAcC"}
@@ -1,9 +1,17 @@
1
1
  import { ISerializable, Serializable } from "@js-soft/ts-serval";
2
2
  import { ContentJSON } from "../ContentJSON";
3
+ import { RenderHints, ValueHints } from "./hints";
4
+ import { AbstractBoolean } from "./types/AbstractBoolean";
5
+ import { AbstractFloat } from "./types/AbstractFloat";
6
+ import { AbstractInteger } from "./types/AbstractInteger";
7
+ import { AbstractString } from "./types/AbstractString";
3
8
  export interface AbstractAttributeValueJSON extends ContentJSON, Record<string, unknown> {
4
9
  }
5
- export interface IAbstractAttributeValue extends ISerializable, Record<string, unknown> {
10
+ export interface IAbstractAttributeValue extends ISerializable {
6
11
  }
7
12
  export declare abstract class AbstractAttributeValue extends Serializable implements IAbstractAttributeValue {
8
- [key: string]: unknown;
13
+ static valueGenerator(v: AbstractBoolean | AbstractFloat | AbstractInteger | AbstractString): boolean | number | string;
14
+ static valueArrayGenerator(v: (AbstractBoolean | AbstractFloat | AbstractInteger | AbstractString)[]): (boolean | number | string)[];
15
+ get valueHints(): ValueHints;
16
+ get renderHints(): RenderHints;
9
17
  }
@@ -3,6 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractAttributeValue = void 0;
4
4
  const ts_serval_1 = require("@js-soft/ts-serval");
5
5
  class AbstractAttributeValue extends ts_serval_1.Serializable {
6
+ static valueGenerator(v) {
7
+ return v.value;
8
+ }
9
+ static valueArrayGenerator(v) {
10
+ return v.map((v) => v.value);
11
+ }
12
+ get valueHints() {
13
+ return this.constructor.valueHints;
14
+ }
15
+ get renderHints() {
16
+ return this.constructor.renderHints;
17
+ }
6
18
  }
7
19
  exports.AbstractAttributeValue = AbstractAttributeValue;
8
20
  //# sourceMappingURL=AbstractAttributeValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractAttributeValue.js","sourceRoot":"","sources":["../../src/attributes/AbstractAttributeValue.ts"],"names":[],"mappings":";;;AAAA,kDAAgE;AAOhE,MAAsB,sBAAuB,SAAQ,wBAAY;CAEhE;AAFD,wDAEC"}
1
+ {"version":3,"file":"AbstractAttributeValue.js","sourceRoot":"","sources":["../../src/attributes/AbstractAttributeValue.ts"],"names":[],"mappings":";;;AAAA,kDAAgE;AAYhE,MAAsB,sBAAuB,SAAQ,wBAAY;IACtD,MAAM,CAAC,cAAc,CACxB,CAAqE;QAErE,OAAO,CAAC,CAAC,KAAK,CAAA;IAClB,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAC7B,CAAyE;QAEzE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAED,IAAW,UAAU;QACjB,OAAQ,IAAI,CAAC,WAAmB,CAAC,UAAU,CAAA;IAC/C,CAAC;IAED,IAAW,WAAW;QAClB,OAAQ,IAAI,CAAC,WAAmB,CAAC,WAAW,CAAA;IAChD,CAAC;CACJ;AApBD,wDAoBC"}
@@ -0,0 +1,9 @@
1
+ import { AbstractAttributeValue, AbstractAttributeValueJSON, IAbstractAttributeValue } from "./AbstractAttributeValue";
2
+ import { RenderHints } from "./hints";
3
+ export interface AbstractComplexValueJSON extends AbstractAttributeValueJSON {
4
+ }
5
+ export interface IAbstractComplexValue extends IAbstractAttributeValue {
6
+ }
7
+ export declare abstract class AbstractComplexValue extends AbstractAttributeValue implements IAbstractComplexValue {
8
+ static get renderHints(): RenderHints;
9
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractComplexValue = void 0;
4
+ const AbstractAttributeValue_1 = require("./AbstractAttributeValue");
5
+ const hints_1 = require("./hints");
6
+ class AbstractComplexValue extends AbstractAttributeValue_1.AbstractAttributeValue {
7
+ static get renderHints() {
8
+ return hints_1.RenderHints.from({
9
+ technicalType: hints_1.RenderHintsTechnicalType.Object,
10
+ editType: hints_1.RenderHintsEditType.Complex
11
+ });
12
+ }
13
+ }
14
+ exports.AbstractComplexValue = AbstractComplexValue;
15
+ //# sourceMappingURL=AbstractComplexValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractComplexValue.js","sourceRoot":"","sources":["../../src/attributes/AbstractComplexValue.ts"],"names":[],"mappings":";;;AAAA,qEAAsH;AACtH,mCAAoF;AAMpF,MAAsB,oBAAqB,SAAQ,+CAAsB;IAC9D,MAAM,KAAK,WAAW;QACzB,OAAO,mBAAW,CAAC,IAAI,CAAC;YACpB,aAAa,EAAE,gCAAwB,CAAC,MAAM;YAC9C,QAAQ,EAAE,2BAAmB,CAAC,OAAO;SACxC,CAAC,CAAA;IACN,CAAC;CACJ;AAPD,oDAOC"}
@@ -0,0 +1,16 @@
1
+ import { AbstractAttribute, AbstractAttributeJSON, IAbstractAttribute } from "./AbstractAttribute";
2
+ import { AbstractAttributeValue, AbstractAttributeValueJSON, IAbstractAttributeValue } from "./AbstractAttributeValue";
3
+ export interface IdentityAttributeJSON<TValueJSONInterface extends AbstractAttributeValueJSON = AbstractAttributeValueJSON> extends AbstractAttributeJSON {
4
+ value: TValueJSONInterface;
5
+ tags?: string[];
6
+ }
7
+ export interface IIdentityAttribute<TValueInterface extends IAbstractAttributeValue = IAbstractAttributeValue> extends IAbstractAttribute {
8
+ value: TValueInterface;
9
+ tags?: string[];
10
+ }
11
+ export declare class IdentityAttribute<TValueClass extends AbstractAttributeValue = AbstractAttributeValue> extends AbstractAttribute implements IIdentityAttribute<TValueClass> {
12
+ value: TValueClass;
13
+ tags?: string[];
14
+ static from<TValueClass extends AbstractAttributeValue = AbstractAttributeValue, TValueInterface extends IAbstractAttributeValue = IAbstractAttributeValue, TValueJSONInterface extends AbstractAttributeValueJSON = AbstractAttributeValueJSON>(value: IIdentityAttribute<TValueInterface> | IdentityAttributeJSON<TValueJSONInterface>): IdentityAttribute<TValueClass>;
15
+ toJSON(): IdentityAttributeJSON;
16
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.IdentityAttribute = void 0;
13
+ const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const AbstractAttribute_1 = require("./AbstractAttribute");
15
+ const AbstractAttributeValue_1 = require("./AbstractAttributeValue");
16
+ let IdentityAttribute = class IdentityAttribute extends AbstractAttribute_1.AbstractAttribute {
17
+ static from(value) {
18
+ return this.fromAny(value);
19
+ }
20
+ toJSON() {
21
+ return super.toJSON();
22
+ }
23
+ };
24
+ __decorate([
25
+ (0, ts_serval_1.serialize)({ unionTypes: [AbstractAttributeValue_1.AbstractAttributeValue] }),
26
+ (0, ts_serval_1.validate)(),
27
+ __metadata("design:type", Object)
28
+ ], IdentityAttribute.prototype, "value", void 0);
29
+ __decorate([
30
+ (0, ts_serval_1.serialize)({ type: String }),
31
+ (0, ts_serval_1.validate)({ nullable: true }),
32
+ __metadata("design:type", Array)
33
+ ], IdentityAttribute.prototype, "tags", void 0);
34
+ IdentityAttribute = __decorate([
35
+ (0, ts_serval_1.type)("IdentityAttribute")
36
+ ], IdentityAttribute);
37
+ exports.IdentityAttribute = IdentityAttribute;
38
+ //# sourceMappingURL=IdentityAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityAttribute.js","sourceRoot":"","sources":["../../src/attributes/IdentityAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,2DAAkG;AAClG,qEAAsH;AAgBtH,IAAa,iBAAiB,GAA9B,MAAa,iBACT,SAAQ,qCAAiB;IAYlB,MAAM,CAAC,IAAI,CAKd,KAAuF;QAEvF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAmC,CAAA;IAChE,CAAC;IAEe,MAAM;QAClB,OAAO,KAAK,CAAC,MAAM,EAA2B,CAAA;IAClD,CAAC;CACJ,CAAA;AAnBG;IAFC,IAAA,qBAAS,EAAC,EAAE,UAAU,EAAE,CAAC,+CAAsB,CAAC,EAAE,CAAC;IACnD,IAAA,oBAAQ,GAAE;;gDACc;AAIzB;IAFC,IAAA,qBAAS,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC3B,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACP;AAXb,iBAAiB;IAD7B,IAAA,gBAAI,EAAC,mBAAmB,CAAC;GACb,iBAAiB,CA0B7B;AA1BY,8CAAiB"}
@@ -0,0 +1,12 @@
1
+ import { AbstractAttributeQuery, AbstractAttributeQueryJSON, IAbstractAttributeQuery } from "./AbstractAttributeQuery";
2
+ export interface IdentityAttributeQueryJSON extends AbstractAttributeQueryJSON {
3
+ tags?: string[];
4
+ }
5
+ export interface IIdentityAttributeQuery extends IAbstractAttributeQuery {
6
+ tags?: string[];
7
+ }
8
+ export declare class IdentityAttributeQuery extends AbstractAttributeQuery implements IIdentityAttributeQuery {
9
+ tags?: string[];
10
+ static from(value: IIdentityAttributeQuery | IdentityAttributeQueryJSON): IdentityAttributeQuery;
11
+ toJSON(): IdentityAttributeQueryJSON;
12
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.IdentityAttributeQuery = void 0;
13
+ const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const AbstractAttributeQuery_1 = require("./AbstractAttributeQuery");
15
+ let IdentityAttributeQuery = class IdentityAttributeQuery extends AbstractAttributeQuery_1.AbstractAttributeQuery {
16
+ static from(value) {
17
+ return this.fromAny(value);
18
+ }
19
+ toJSON() {
20
+ return super.toJSON();
21
+ }
22
+ };
23
+ __decorate([
24
+ (0, ts_serval_1.serialize)({ type: String }),
25
+ (0, ts_serval_1.validate)({ nullable: true }),
26
+ __metadata("design:type", Array)
27
+ ], IdentityAttributeQuery.prototype, "tags", void 0);
28
+ IdentityAttributeQuery = __decorate([
29
+ (0, ts_serval_1.type)("IdentityAttributeQuery")
30
+ ], IdentityAttributeQuery);
31
+ exports.IdentityAttributeQuery = IdentityAttributeQuery;
32
+ //# sourceMappingURL=IdentityAttributeQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityAttributeQuery.js","sourceRoot":"","sources":["../../src/attributes/IdentityAttributeQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,qEAAsH;AAWtH,IAAa,sBAAsB,GAAnC,MAAa,sBAAuB,SAAQ,+CAAsB;IAKvD,MAAM,CAAC,IAAI,CAAC,KAA2D;QAC1E,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;IAEe,MAAM;QAClB,OAAO,KAAK,CAAC,MAAM,EAAgC,CAAA;IACvD,CAAC;CACJ,CAAA;AATG;IAFC,IAAA,qBAAS,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC3B,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACP;AAHb,sBAAsB;IADlC,IAAA,gBAAI,EAAC,wBAAwB,CAAC;GAClB,sBAAsB,CAYlC;AAZY,wDAAsB"}
@@ -0,0 +1,53 @@
1
+ import { AbstractAttribute, AbstractAttributeJSON, IAbstractAttribute } from "./AbstractAttribute";
2
+ import { AbstractAttributeValue, AbstractAttributeValueJSON, IAbstractAttributeValue } from "./AbstractAttributeValue";
3
+ export declare enum RelationshipAttributeConfidentiality {
4
+ /**
5
+ * If a third party queries a public RelationshipAttribute from an Identity, there is no
6
+ * warning message for a user that possibly sensitive information from within a Relationship
7
+ * is shared to a third party. However, this does not mean that the request for such an
8
+ * Attribute can or is automatically accepted, as the user might not want to share it with
9
+ * this third party - nevertheless it is public.
10
+ *
11
+ * Good examples for public RelationshipAttributes are bonus membership ids or social network
12
+ * account names/channels.
13
+ */
14
+ Public = "public",
15
+ /**
16
+ * A private Attribute may never be queried by a third party. Even if queried, a user cannot
17
+ * "override" this rule and accept such a sharing request. Querying such an Attribute will
18
+ * result in an error.
19
+ *
20
+ * An example would be a telephone PIN with a bank which is used as the authentication factor.
21
+ */
22
+ Private = "private",
23
+ /**
24
+ * A protected RelationshipAttribute may be queried by a third party, but the user is
25
+ * specifically warned about this query and needs to give consent.
26
+ *
27
+ * This is great for all kinds of scenarios, in which giving out the RelationshipAttribute
28
+ * is a "common real-world edge case". For example given out a car insurance id to the
29
+ * other party once you had an accident.
30
+ */
31
+ Protected = "protected"
32
+ }
33
+ export interface RelationshipAttributeJSON<TValueJSONInterface extends AbstractAttributeValueJSON = AbstractAttributeValueJSON> extends AbstractAttributeJSON {
34
+ value: TValueJSONInterface;
35
+ key: string;
36
+ isTechnical?: boolean;
37
+ confidentiality: RelationshipAttributeConfidentiality;
38
+ }
39
+ export interface IRelationshipAttribute<TValueInterface extends IAbstractAttributeValue = IAbstractAttributeValue> extends IAbstractAttribute {
40
+ value: TValueInterface;
41
+ key: string;
42
+ isTechnical?: boolean;
43
+ confidentiality: RelationshipAttributeConfidentiality;
44
+ }
45
+ export declare class RelationshipAttribute<TValueClass extends AbstractAttributeValue = AbstractAttributeValue> extends AbstractAttribute implements IRelationshipAttribute<TValueClass> {
46
+ value: TValueClass;
47
+ key: string;
48
+ isTechnical: boolean;
49
+ confidentiality: RelationshipAttributeConfidentiality;
50
+ protected static preFrom(value: any): any;
51
+ static from<TValueClass extends AbstractAttributeValue = AbstractAttributeValue, TValueInterface extends IAbstractAttributeValue = IAbstractAttributeValue, TValueJSONInterface extends AbstractAttributeValueJSON = AbstractAttributeValueJSON>(value: IRelationshipAttribute<TValueInterface> | RelationshipAttributeJSON<TValueJSONInterface>): RelationshipAttribute<TValueClass>;
52
+ toJSON(): RelationshipAttributeJSON;
53
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RelationshipAttribute = exports.RelationshipAttributeConfidentiality = void 0;
13
+ const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const AbstractAttribute_1 = require("./AbstractAttribute");
15
+ const AbstractAttributeValue_1 = require("./AbstractAttributeValue");
16
+ var RelationshipAttributeConfidentiality;
17
+ (function (RelationshipAttributeConfidentiality) {
18
+ /**
19
+ * If a third party queries a public RelationshipAttribute from an Identity, there is no
20
+ * warning message for a user that possibly sensitive information from within a Relationship
21
+ * is shared to a third party. However, this does not mean that the request for such an
22
+ * Attribute can or is automatically accepted, as the user might not want to share it with
23
+ * this third party - nevertheless it is public.
24
+ *
25
+ * Good examples for public RelationshipAttributes are bonus membership ids or social network
26
+ * account names/channels.
27
+ */
28
+ RelationshipAttributeConfidentiality["Public"] = "public";
29
+ /**
30
+ * A private Attribute may never be queried by a third party. Even if queried, a user cannot
31
+ * "override" this rule and accept such a sharing request. Querying such an Attribute will
32
+ * result in an error.
33
+ *
34
+ * An example would be a telephone PIN with a bank which is used as the authentication factor.
35
+ */
36
+ RelationshipAttributeConfidentiality["Private"] = "private";
37
+ /**
38
+ * A protected RelationshipAttribute may be queried by a third party, but the user is
39
+ * specifically warned about this query and needs to give consent.
40
+ *
41
+ * This is great for all kinds of scenarios, in which giving out the RelationshipAttribute
42
+ * is a "common real-world edge case". For example given out a car insurance id to the
43
+ * other party once you had an accident.
44
+ */
45
+ RelationshipAttributeConfidentiality["Protected"] = "protected";
46
+ })(RelationshipAttributeConfidentiality = exports.RelationshipAttributeConfidentiality || (exports.RelationshipAttributeConfidentiality = {}));
47
+ let RelationshipAttribute = class RelationshipAttribute extends AbstractAttribute_1.AbstractAttribute {
48
+ static preFrom(value) {
49
+ if (typeof value.isTechnical === "undefined")
50
+ value.isTechnical = false;
51
+ return value;
52
+ }
53
+ static from(value) {
54
+ return this.fromAny(value);
55
+ }
56
+ toJSON() {
57
+ return super.toJSON();
58
+ }
59
+ };
60
+ __decorate([
61
+ (0, ts_serval_1.serialize)({ unionTypes: [AbstractAttributeValue_1.AbstractAttributeValue] }),
62
+ (0, ts_serval_1.validate)(),
63
+ __metadata("design:type", Object)
64
+ ], RelationshipAttribute.prototype, "value", void 0);
65
+ __decorate([
66
+ (0, ts_serval_1.serialize)(),
67
+ (0, ts_serval_1.validate)(),
68
+ __metadata("design:type", String)
69
+ ], RelationshipAttribute.prototype, "key", void 0);
70
+ __decorate([
71
+ (0, ts_serval_1.serialize)(),
72
+ (0, ts_serval_1.validate)({ nullable: true }),
73
+ __metadata("design:type", Boolean)
74
+ ], RelationshipAttribute.prototype, "isTechnical", void 0);
75
+ __decorate([
76
+ (0, ts_serval_1.serialize)(),
77
+ (0, ts_serval_1.validate)({
78
+ customValidator: (v) => !Object.values(RelationshipAttributeConfidentiality).includes(v)
79
+ ? `must be one of: ${Object.values(RelationshipAttributeConfidentiality)}`
80
+ : undefined
81
+ }),
82
+ __metadata("design:type", String)
83
+ ], RelationshipAttribute.prototype, "confidentiality", void 0);
84
+ RelationshipAttribute = __decorate([
85
+ (0, ts_serval_1.type)("RelationshipAttribute")
86
+ ], RelationshipAttribute);
87
+ exports.RelationshipAttribute = RelationshipAttribute;
88
+ //# sourceMappingURL=RelationshipAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipAttribute.js","sourceRoot":"","sources":["../../src/attributes/RelationshipAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,2DAAkG;AAClG,qEAAsH;AAEtH,IAAY,oCA6BX;AA7BD,WAAY,oCAAoC;IAC5C;;;;;;;;;OASG;IACH,yDAAiB,CAAA;IACjB;;;;;;OAMG;IACH,2DAAmB,CAAA;IACnB;;;;;;;OAOG;IACH,+DAAuB,CAAA;AAC3B,CAAC,EA7BW,oCAAoC,GAApC,4CAAoC,KAApC,4CAAoC,QA6B/C;AAoBD,IAAa,qBAAqB,GAAlC,MAAa,qBACT,SAAQ,qCAAiB;IAyBf,MAAM,CAAU,OAAO,CAAC,KAAU;QACxC,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,WAAW;YAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAA;QAEvE,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,MAAM,CAAC,IAAI,CAKd,KAA+F;QAE/F,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAuC,CAAA;IACpE,CAAC;IAEe,MAAM;QAClB,OAAO,KAAK,CAAC,MAAM,EAA+B,CAAA;IACtD,CAAC;CACJ,CAAA;AAtCG;IAFC,IAAA,qBAAS,EAAC,EAAE,UAAU,EAAE,CAAC,+CAAsB,CAAC,EAAE,CAAC;IACnD,IAAA,oBAAQ,GAAE;;oDACc;AAIzB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;kDACO;AAIlB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DACF;AAS3B;IAPC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC;QACN,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CACnB,CAAC,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5D,CAAC,CAAC,mBAAmB,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC,EAAE;YAC1E,CAAC,CAAC,SAAS;KACtB,CAAC;;8DAC0D;AAxBnD,qBAAqB;IADjC,IAAA,gBAAI,EAAC,uBAAuB,CAAC;GACjB,qBAAqB,CA6CjC;AA7CY,sDAAqB"}
@@ -0,0 +1,23 @@
1
+ import { CoreAddress, ICoreAddress } from "@nmshd/transport";
2
+ import { AbstractAttributeQuery, AbstractAttributeQueryJSON, IAbstractAttributeQuery } from "./AbstractAttributeQuery";
3
+ import { IRelationshipAttributeCreationHints, RelationshipAttributeCreationHints, RelationshipAttributeCreationHintsJSON } from "./hints/RelationshipAttributeCreationHints";
4
+ export interface RelationshipAttributeQueryJSON extends AbstractAttributeQueryJSON {
5
+ key: string;
6
+ owner: string;
7
+ thirdParty?: string;
8
+ attributeCreationHints: RelationshipAttributeCreationHintsJSON;
9
+ }
10
+ export interface IRelationshipAttributeQuery extends IAbstractAttributeQuery {
11
+ key: string;
12
+ owner: ICoreAddress;
13
+ thirdParty?: ICoreAddress;
14
+ attributeCreationHints: IRelationshipAttributeCreationHints;
15
+ }
16
+ export declare class RelationshipAttributeQuery extends AbstractAttributeQuery implements IRelationshipAttributeQuery {
17
+ key: string;
18
+ owner: CoreAddress;
19
+ thirdParty?: CoreAddress;
20
+ attributeCreationHints: RelationshipAttributeCreationHints;
21
+ static from(value: IRelationshipAttributeQuery | RelationshipAttributeQueryJSON): RelationshipAttributeQuery;
22
+ toJSON(): RelationshipAttributeQueryJSON;
23
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RelationshipAttributeQuery = void 0;
13
+ const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const transport_1 = require("@nmshd/transport");
15
+ const AbstractAttributeQuery_1 = require("./AbstractAttributeQuery");
16
+ const RelationshipAttributeCreationHints_1 = require("./hints/RelationshipAttributeCreationHints");
17
+ let RelationshipAttributeQuery = class RelationshipAttributeQuery extends AbstractAttributeQuery_1.AbstractAttributeQuery {
18
+ static from(value) {
19
+ return this.fromAny(value);
20
+ }
21
+ toJSON() {
22
+ return super.toJSON();
23
+ }
24
+ };
25
+ __decorate([
26
+ (0, ts_serval_1.serialize)(),
27
+ (0, ts_serval_1.validate)(),
28
+ __metadata("design:type", String)
29
+ ], RelationshipAttributeQuery.prototype, "key", void 0);
30
+ __decorate([
31
+ (0, ts_serval_1.serialize)(),
32
+ (0, ts_serval_1.validate)(),
33
+ __metadata("design:type", transport_1.CoreAddress)
34
+ ], RelationshipAttributeQuery.prototype, "owner", void 0);
35
+ __decorate([
36
+ (0, ts_serval_1.serialize)(),
37
+ (0, ts_serval_1.validate)({ nullable: true }),
38
+ __metadata("design:type", transport_1.CoreAddress)
39
+ ], RelationshipAttributeQuery.prototype, "thirdParty", void 0);
40
+ __decorate([
41
+ (0, ts_serval_1.serialize)(),
42
+ (0, ts_serval_1.validate)(),
43
+ __metadata("design:type", RelationshipAttributeCreationHints_1.RelationshipAttributeCreationHints)
44
+ ], RelationshipAttributeQuery.prototype, "attributeCreationHints", void 0);
45
+ RelationshipAttributeQuery = __decorate([
46
+ (0, ts_serval_1.type)("RelationshipAttributeQuery")
47
+ ], RelationshipAttributeQuery);
48
+ exports.RelationshipAttributeQuery = RelationshipAttributeQuery;
49
+ //# sourceMappingURL=RelationshipAttributeQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipAttributeQuery.js","sourceRoot":"","sources":["../../src/attributes/RelationshipAttributeQuery.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,gDAA4D;AAC5D,qEAAsH;AACtH,mGAImD;AAiBnD,IAAa,0BAA0B,GAAvC,MAAa,0BAA2B,SAAQ,+CAAsB;IAiB3D,MAAM,CAAC,IAAI,CACd,KAAmE;QAEnE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;IAEe,MAAM;QAClB,OAAO,KAAK,CAAC,MAAM,EAAoC,CAAA;IAC3D,CAAC;CACJ,CAAA;AAvBG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;uDACO;AAIlB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACG,uBAAW;yDAAA;AAIzB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACT,uBAAW;8DAAA;AAI/B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACoB,uEAAkC;0EAAA;AAfxD,0BAA0B;IADtC,IAAA,gBAAI,EAAC,4BAA4B,CAAC;GACtB,0BAA0B,CA0BtC;AA1BY,gEAA0B"}