@umbraco/playwright-testhelpers 2.0.0-beta.4 → 2.0.0-beta.41

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 (169) hide show
  1. package/dist/lib/helpers/ApiHelpers.d.ts +34 -4
  2. package/dist/lib/helpers/ApiHelpers.js +125 -4
  3. package/dist/lib/helpers/ApiHelpers.js.map +1 -1
  4. package/dist/lib/helpers/ConstantHelper.js +1 -1
  5. package/dist/lib/helpers/ConstantHelper.js.map +1 -1
  6. package/dist/lib/helpers/DataTypeApiHelper.d.ts +14 -14
  7. package/dist/lib/helpers/DataTypeApiHelper.js +114 -133
  8. package/dist/lib/helpers/DataTypeApiHelper.js.map +1 -1
  9. package/dist/lib/helpers/DataTypeUiHelper.d.ts +159 -0
  10. package/dist/lib/helpers/DataTypeUiHelper.js +509 -0
  11. package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -0
  12. package/dist/lib/helpers/DictionaryApiHelper.d.ts +12 -8
  13. package/dist/lib/helpers/DictionaryApiHelper.js +104 -66
  14. package/dist/lib/helpers/DictionaryApiHelper.js.map +1 -1
  15. package/dist/lib/helpers/DictionaryUiHelper.d.ts +31 -0
  16. package/dist/lib/helpers/DictionaryUiHelper.js +92 -0
  17. package/dist/lib/helpers/DictionaryUiHelper.js.map +1 -0
  18. package/dist/lib/helpers/DocumentApiHelper.d.ts +17 -0
  19. package/dist/lib/helpers/DocumentApiHelper.js +159 -0
  20. package/dist/lib/helpers/DocumentApiHelper.js.map +1 -1
  21. package/dist/lib/helpers/DocumentTypeApiHelper.d.ts +25 -0
  22. package/dist/lib/helpers/DocumentTypeApiHelper.js +227 -0
  23. package/dist/lib/helpers/DocumentTypeApiHelper.js.map +1 -0
  24. package/dist/lib/helpers/DocumentTypeUiHelper.d.ts +23 -0
  25. package/dist/lib/helpers/DocumentTypeUiHelper.js +62 -0
  26. package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -0
  27. package/dist/lib/helpers/ExamineManagementUiHelper.d.ts +15 -0
  28. package/dist/lib/helpers/ExamineManagementUiHelper.js +38 -0
  29. package/dist/lib/helpers/ExamineManagementUiHelper.js.map +1 -0
  30. package/dist/lib/helpers/HealthCheckApiHelper.d.ts +13 -0
  31. package/dist/lib/helpers/HealthCheckApiHelper.js +47 -0
  32. package/dist/lib/helpers/HealthCheckApiHelper.js.map +1 -0
  33. package/dist/lib/helpers/HealthCheckUiHelper.d.ts +23 -0
  34. package/dist/lib/helpers/HealthCheckUiHelper.js +59 -0
  35. package/dist/lib/helpers/HealthCheckUiHelper.js.map +1 -0
  36. package/dist/lib/helpers/IndexerApiHelper.d.ts +7 -0
  37. package/dist/lib/helpers/IndexerApiHelper.js +19 -0
  38. package/dist/lib/helpers/IndexerApiHelper.js.map +1 -0
  39. package/dist/lib/helpers/LanguageApiHelper.d.ts +8 -4
  40. package/dist/lib/helpers/LanguageApiHelper.js +46 -26
  41. package/dist/lib/helpers/LanguageApiHelper.js.map +1 -1
  42. package/dist/lib/helpers/LanguageUiHelper.d.ts +22 -0
  43. package/dist/lib/helpers/LanguageUiHelper.js +62 -0
  44. package/dist/lib/helpers/LanguageUiHelper.js.map +1 -0
  45. package/dist/lib/helpers/LogViewerUiHelper.d.ts +37 -0
  46. package/dist/lib/helpers/LogViewerUiHelper.js +102 -0
  47. package/dist/lib/helpers/LogViewerUiHelper.js.map +1 -0
  48. package/dist/lib/helpers/LoginUiHelper.d.ts +11 -0
  49. package/dist/lib/helpers/LoginUiHelper.js +30 -0
  50. package/dist/lib/helpers/LoginUiHelper.js.map +1 -0
  51. package/dist/lib/helpers/MediaApiHelper.d.ts +22 -0
  52. package/dist/lib/helpers/MediaApiHelper.js +168 -0
  53. package/dist/lib/helpers/MediaApiHelper.js.map +1 -0
  54. package/dist/lib/helpers/MediaTypeApiHelper.d.ts +22 -0
  55. package/dist/lib/helpers/MediaTypeApiHelper.js +194 -0
  56. package/dist/lib/helpers/MediaTypeApiHelper.js.map +1 -0
  57. package/dist/lib/helpers/MediaTypeUiHelper.d.ts +15 -0
  58. package/dist/lib/helpers/MediaTypeUiHelper.js +39 -0
  59. package/dist/lib/helpers/MediaTypeUiHelper.js.map +1 -0
  60. package/dist/lib/helpers/MediaUiHelper.d.ts +40 -0
  61. package/dist/lib/helpers/MediaUiHelper.js +128 -0
  62. package/dist/lib/helpers/MediaUiHelper.js.map +1 -0
  63. package/dist/lib/helpers/MemberApiHelper.d.ts +16 -0
  64. package/dist/lib/helpers/MemberApiHelper.js +88 -0
  65. package/dist/lib/helpers/MemberApiHelper.js.map +1 -0
  66. package/dist/lib/helpers/MemberGroupApiHelper.d.ts +14 -0
  67. package/dist/lib/helpers/MemberGroupApiHelper.js +63 -0
  68. package/dist/lib/helpers/MemberGroupApiHelper.js.map +1 -0
  69. package/dist/lib/helpers/MemberGroupUiHelper.d.ts +16 -0
  70. package/dist/lib/helpers/MemberGroupUiHelper.js +42 -0
  71. package/dist/lib/helpers/MemberGroupUiHelper.js.map +1 -0
  72. package/dist/lib/helpers/MemberTypeApiHelper.d.ts +17 -0
  73. package/dist/lib/helpers/MemberTypeApiHelper.js +121 -0
  74. package/dist/lib/helpers/MemberTypeApiHelper.js.map +1 -0
  75. package/dist/lib/helpers/MemberTypeUiHelper.d.ts +13 -0
  76. package/dist/lib/helpers/MemberTypeUiHelper.js +35 -0
  77. package/dist/lib/helpers/MemberTypeUiHelper.js.map +1 -0
  78. package/dist/lib/helpers/MemberUiHelper.d.ts +40 -0
  79. package/dist/lib/helpers/MemberUiHelper.js +114 -0
  80. package/dist/lib/helpers/MemberUiHelper.js.map +1 -0
  81. package/dist/lib/helpers/ModelsBuilderApiHelper.d.ts +6 -0
  82. package/dist/lib/helpers/ModelsBuilderApiHelper.js +15 -0
  83. package/dist/lib/helpers/ModelsBuilderApiHelper.js.map +1 -0
  84. package/dist/lib/helpers/ModelsBuilderUiHelper.d.ts +9 -0
  85. package/dist/lib/helpers/ModelsBuilderUiHelper.js +22 -0
  86. package/dist/lib/helpers/ModelsBuilderUiHelper.js.map +1 -0
  87. package/dist/lib/helpers/ObjectTypesApiHelper.d.ts +7 -0
  88. package/dist/lib/helpers/ObjectTypesApiHelper.js +25 -0
  89. package/dist/lib/helpers/ObjectTypesApiHelper.js.map +1 -0
  90. package/dist/lib/helpers/PackageApiHelper.d.ts +3 -2
  91. package/dist/lib/helpers/PackageApiHelper.js +6 -3
  92. package/dist/lib/helpers/PackageApiHelper.js.map +1 -1
  93. package/dist/lib/helpers/PackageUiHelper.d.ts +49 -0
  94. package/dist/lib/helpers/PackageUiHelper.js +134 -0
  95. package/dist/lib/helpers/PackageUiHelper.js.map +1 -0
  96. package/dist/lib/helpers/PartialViewApiHelper.d.ts +14 -10
  97. package/dist/lib/helpers/PartialViewApiHelper.js +124 -98
  98. package/dist/lib/helpers/PartialViewApiHelper.js.map +1 -1
  99. package/dist/lib/helpers/PartialViewUiHelper.d.ts +19 -0
  100. package/dist/lib/helpers/PartialViewUiHelper.js +57 -0
  101. package/dist/lib/helpers/PartialViewUiHelper.js.map +1 -0
  102. package/dist/lib/helpers/ProfilingUiHelper.d.ts +11 -0
  103. package/dist/lib/helpers/ProfilingUiHelper.js +27 -0
  104. package/dist/lib/helpers/ProfilingUiHelper.js.map +1 -0
  105. package/dist/lib/helpers/PublishedCacheApiHelper.d.ts +6 -0
  106. package/dist/lib/helpers/PublishedCacheApiHelper.js +15 -0
  107. package/dist/lib/helpers/PublishedCacheApiHelper.js.map +1 -0
  108. package/dist/lib/helpers/PublishedStatusUiHelper.d.ts +19 -0
  109. package/dist/lib/helpers/PublishedStatusUiHelper.js +47 -0
  110. package/dist/lib/helpers/PublishedStatusUiHelper.js.map +1 -0
  111. package/dist/lib/helpers/RelationTypeApiHelper.d.ts +15 -0
  112. package/dist/lib/helpers/{RelationType.js → RelationTypeApiHelper.js} +45 -58
  113. package/dist/lib/helpers/RelationTypeApiHelper.js.map +1 -0
  114. package/dist/lib/helpers/RelationTypeUiHelper.d.ts +21 -0
  115. package/dist/lib/helpers/RelationTypeUiHelper.js +55 -0
  116. package/dist/lib/helpers/RelationTypeUiHelper.js.map +1 -0
  117. package/dist/lib/helpers/ScriptApiHelper.d.ts +15 -10
  118. package/dist/lib/helpers/ScriptApiHelper.js +144 -97
  119. package/dist/lib/helpers/ScriptApiHelper.js.map +1 -1
  120. package/dist/lib/helpers/ScriptUiHelper.d.ts +18 -0
  121. package/dist/lib/helpers/ScriptUiHelper.js +57 -0
  122. package/dist/lib/helpers/ScriptUiHelper.js.map +1 -0
  123. package/dist/lib/helpers/StylesheetApiHelper.d.ts +14 -10
  124. package/dist/lib/helpers/StylesheetApiHelper.js +131 -105
  125. package/dist/lib/helpers/StylesheetApiHelper.js.map +1 -1
  126. package/dist/lib/helpers/StylesheetUiHelper.d.ts +28 -0
  127. package/dist/lib/helpers/StylesheetUiHelper.js +90 -0
  128. package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -0
  129. package/dist/lib/helpers/TelemetryDataUiHelper.d.ts +10 -0
  130. package/dist/lib/helpers/TelemetryDataUiHelper.js +25 -0
  131. package/dist/lib/helpers/TelemetryDataUiHelper.js.map +1 -0
  132. package/dist/lib/helpers/TemplateApiHelper.d.ts +7 -5
  133. package/dist/lib/helpers/TemplateApiHelper.js +75 -51
  134. package/dist/lib/helpers/TemplateApiHelper.js.map +1 -1
  135. package/dist/lib/helpers/TemplateUiHelper.d.ts +25 -0
  136. package/dist/lib/helpers/TemplateUiHelper.js +89 -0
  137. package/dist/lib/helpers/TemplateUiHelper.js.map +1 -0
  138. package/dist/lib/helpers/TemporaryFileApiHelper.d.ts +1 -1
  139. package/dist/lib/helpers/TemporaryFileApiHelper.js +6 -10
  140. package/dist/lib/helpers/TemporaryFileApiHelper.js.map +1 -1
  141. package/dist/lib/helpers/UiBaseLocators.d.ts +183 -0
  142. package/dist/lib/helpers/UiBaseLocators.js +575 -0
  143. package/dist/lib/helpers/UiBaseLocators.js.map +1 -0
  144. package/dist/lib/helpers/UiHelpers.d.ts +56 -6
  145. package/dist/lib/helpers/UiHelpers.js +87 -20
  146. package/dist/lib/helpers/UiHelpers.js.map +1 -1
  147. package/dist/lib/helpers/UserApiHelper.d.ts +7 -3
  148. package/dist/lib/helpers/UserApiHelper.js +35 -13
  149. package/dist/lib/helpers/UserApiHelper.js.map +1 -1
  150. package/dist/lib/helpers/UserGroupApiHelper.d.ts +5 -3
  151. package/dist/lib/helpers/UserGroupApiHelper.js +20 -19
  152. package/dist/lib/helpers/UserGroupApiHelper.js.map +1 -1
  153. package/dist/lib/helpers/UserGroupUiHelper.d.ts +20 -0
  154. package/dist/lib/helpers/UserGroupUiHelper.js +56 -0
  155. package/dist/lib/helpers/UserGroupUiHelper.js.map +1 -0
  156. package/dist/lib/helpers/UserUiHelper.d.ts +41 -0
  157. package/dist/lib/helpers/UserUiHelper.js +116 -0
  158. package/dist/lib/helpers/UserUiHelper.js.map +1 -0
  159. package/dist/lib/helpers/WelcomeDashboardUiHelper.d.ts +9 -0
  160. package/dist/lib/helpers/WelcomeDashboardUiHelper.js +22 -0
  161. package/dist/lib/helpers/WelcomeDashboardUiHelper.js.map +1 -0
  162. package/dist/lib/helpers/testExtension.js +2 -0
  163. package/dist/lib/helpers/testExtension.js.map +1 -1
  164. package/dist/tsconfig.tsbuildinfo +1 -1
  165. package/dist/umbraco.config.js +1 -1
  166. package/dist/umbraco.config.js.map +1 -1
  167. package/package.json +10 -8
  168. package/dist/lib/helpers/RelationType.d.ts +0 -15
  169. package/dist/lib/helpers/RelationType.js.map +0 -1
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.UserGroupApiHelper = void 0;
4
+ const json_models_builders_1 = require("@umbraco/json-models-builders");
4
5
  class UserGroupApiHelper {
5
6
  api;
6
7
  constructor(api) {
7
8
  this.api = api;
8
9
  }
9
10
  async ensureNameNotExists(name) {
10
- const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');
11
- const json = await response.json();
11
+ const json = await this.getAll();
12
12
  for (const sb of json.items) {
13
13
  if (sb.name === name) {
14
14
  if (sb.id !== null) {
@@ -18,28 +18,17 @@ class UserGroupApiHelper {
18
18
  }
19
19
  return null;
20
20
  }
21
- async exist(id) {
21
+ async doesExist(id) {
22
22
  const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);
23
23
  return response.status() === 200;
24
24
  }
25
- async create(name, hasAccessToAllLanguages, sections = [], languages = [], permissions = [], icon, documentStartNodeId, mediaStartNodeId) {
26
- const userGroupData = {
27
- "name": name,
28
- "icon": icon,
29
- "sections": sections,
30
- "languages": languages,
31
- "hasAccessToAllLanguages": hasAccessToAllLanguages,
32
- "documentStartNodeId": documentStartNodeId,
33
- "mediaStartNodeId": mediaStartNodeId,
34
- "permissions": permissions
35
- };
25
+ async create(userGroupData) {
36
26
  const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/user-group', userGroupData);
37
27
  // Returns the id of the userGroup
38
28
  return response.headers().location.split("/").pop();
39
29
  }
40
30
  async getByName(name) {
41
- const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');
42
- const json = await response.json();
31
+ const json = await this.getAll();
43
32
  for (const sb of json.items) {
44
33
  if (sb.name === name) {
45
34
  if (sb.id !== null) {
@@ -70,9 +59,8 @@ class UserGroupApiHelper {
70
59
  const response = await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id, userGroup);
71
60
  return response.text();
72
61
  }
73
- async nameExists(name) {
74
- const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');
75
- const json = await response.json();
62
+ async doesNameExist(name) {
63
+ const json = await this.getAll();
76
64
  for (const sb of json.items) {
77
65
  if (sb.name === name) {
78
66
  return true;
@@ -83,6 +71,19 @@ class UserGroupApiHelper {
83
71
  async delete(id) {
84
72
  return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);
85
73
  }
74
+ async createEmptyUserGroup(name) {
75
+ const userGroup = new json_models_builders_1.UserGroupBuilder()
76
+ .withName(name)
77
+ .build();
78
+ return await this.create(userGroup);
79
+ }
80
+ async createSimpleUserGroupWithContentSection(name) {
81
+ const userGroup = new json_models_builders_1.UserGroupBuilder()
82
+ .withName(name)
83
+ .addSection('Umb.Section.Content')
84
+ .build();
85
+ return await this.create(userGroup);
86
+ }
86
87
  }
87
88
  exports.UserGroupApiHelper = UserGroupApiHelper;
88
89
  //# sourceMappingURL=UserGroupApiHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserGroupApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/UserGroupApiHelper.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;IAC7B,GAAG,CAAY;IAEf,YAAY,GAAe;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAY;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,yDAAyD,CAAC,CAAC;QAClH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE;YAC3B,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE;gBACpB,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE;oBAClB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;iBACnG;aACF;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAU;QACpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,CAAC,CAAC;QACtG,OAAO,QAAQ,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,uBAAgC,EAAE,WAAqB,EAAE,EAAE,YAAsB,EAAE,EAAE,cAAwB,EAAE,EAAE,IAAa,EAAE,mBAA4B,EAAE,gBAAyB;QAChN,MAAM,aAAa,GAAG;YACpB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,SAAS;YACtB,yBAAyB,EAAE,uBAAuB;YAClD,qBAAqB,EAAE,mBAAmB;YAC1C,kBAAkB,EAAE,gBAAgB;YACpC,aAAa,EAAE,WAAW;SAC3B,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,uCAAuC,EAAE,aAAa,CAAC,CAAC;QAChH,kCAAkC;QAClC,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,yDAAyD,CAAC,CAAC;QAClH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE;YAC3B,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE;gBACpB,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE;oBAClB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;oBACzG,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;iBAC9B;aACF;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,CAAC,CAAC;QACtG,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,yDAAyD,CAAC,CAAC;QAClH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,SAAS;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;QACjH,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,yDAAyD,CAAC,CAAC;QAClH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE;YAC3B,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE;gBACpB,OAAO,IAAI,CAAC;aACb;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,wCAAwC,GAAG,EAAE,CAAC,CAAC;IACjG,CAAC;CACF;AAhGD,gDAgGC","sourcesContent":["import {ApiHelpers} from \"./ApiHelpers\";\n\nexport class UserGroupApiHelper {\n api: ApiHelpers\n\n constructor(api: ApiHelpers) {\n this.api = api;\n }\n\n async ensureNameNotExists(name: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');\n const json = await response.json();\n\n for (const sb of json.items) {\n if (sb.name === name) {\n if (sb.id !== null) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + sb.id);\n }\n }\n }\n return null;\n }\n\n async exist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n return response.status() === 200;\n }\n\n async create(name: string, hasAccessToAllLanguages: boolean, sections: string[] = [], languages: string[] = [], permissions: string[] = [], icon?: string, documentStartNodeId?: string, mediaStartNodeId?: string) {\n const userGroupData = {\n \"name\": name,\n \"icon\": icon,\n \"sections\": sections,\n \"languages\": languages,\n \"hasAccessToAllLanguages\": hasAccessToAllLanguages,\n \"documentStartNodeId\": documentStartNodeId,\n \"mediaStartNodeId\": mediaStartNodeId,\n \"permissions\": permissions\n };\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/user-group', userGroupData);\n // Returns the id of the userGroup\n return response.headers().location.split(\"/\").pop();\n }\n\n async getByName(name: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');\n const json = await response.json();\n\n for (const sb of json.items) {\n if (sb.name === name) {\n if (sb.id !== null) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + sb.id);\n return await response.json();\n }\n }\n }\n return null;\n }\n\n async get(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n const json = await response.json();\n\n if (json !== null) {\n return json;\n }\n return null;\n }\n\n async getAll() {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');\n const json = await response.json();\n\n if (json !== null) {\n return json;\n }\n return null;\n }\n\n async update(id: string, userGroup) {\n const response = await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id, userGroup);\n return response.text();\n }\n\n async nameExists(name: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');\n const json = await response.json();\n for (const sb of json.items) {\n if (sb.name === name) {\n return true;\n }\n }\n return false;\n }\n\n async delete(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n }\n}"]}
1
+ {"version":3,"file":"UserGroupApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/UserGroupApiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ApiHelpers} from \"./ApiHelpers\";\nimport {UserGroupBuilder} from \"@umbraco/json-models-builders\";\n\n\nexport class UserGroupApiHelper {\n api: ApiHelpers\n\n constructor(api: ApiHelpers) {\n this.api = api;\n }\n\n async ensureNameNotExists(name: string) {\n const json = await this.getAll();\n\n for (const sb of json.items) {\n if (sb.name === name) {\n if (sb.id !== null) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + sb.id);\n }\n }\n }\n return null;\n }\n\n async doesExist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n return response.status() === 200;\n }\n\n async create(userGroupData) {\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/user-group', userGroupData);\n // Returns the id of the userGroup\n return response.headers().location.split(\"/\").pop();\n }\n\n async getByName(name: string) {\n const json = await this.getAll();\n\n for (const sb of json.items) {\n if (sb.name === name) {\n if (sb.id !== null) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + sb.id);\n return await response.json();\n }\n }\n }\n return null;\n }\n\n async get(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n const json = await response.json();\n\n if (json !== null) {\n return json;\n }\n return null;\n }\n\n async getAll() {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/user-group?skip=0&take=10000');\n const json = await response.json();\n\n if (json !== null) {\n return json;\n }\n return null;\n }\n\n async update(id: string, userGroup) {\n const response = await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id, userGroup);\n return response.text();\n }\n\n async doesNameExist(name: string) {\n const json = await this.getAll();\n\n for (const sb of json.items) {\n if (sb.name === name) {\n return true;\n }\n }\n return false;\n }\n\n async delete(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/user-group/' + id);\n }\n\n async createEmptyUserGroup(name: string) {\n const userGroup = new UserGroupBuilder()\n .withName(name)\n .build();\n\n return await this.create(userGroup);\n }\n\n async createSimpleUserGroupWithContentSection(name: string) {\n const userGroup = new UserGroupBuilder()\n .withName(name)\n .addSection('Umb.Section.Content')\n .build();\n\n return await this.create(userGroup);\n }\n}"]}
@@ -0,0 +1,20 @@
1
+ import { Page } from "@playwright/test";
2
+ import { UiBaseLocators } from "./UiBaseLocators";
3
+ export declare class UserGroupUiHelper extends UiBaseLocators {
4
+ private readonly userGroupsTabBtn;
5
+ private readonly userGroupNameTxt;
6
+ private readonly addSectionsBtn;
7
+ private readonly permissionVerbBtn;
8
+ constructor(page: Page);
9
+ clickUserGroupsTabButton(): Promise<void>;
10
+ enterUserGroupName(name: string): Promise<void>;
11
+ isUserGroupWithNameVisible(name: string, isVisible?: boolean): Promise<void>;
12
+ clickUserGroupWithName(name: string): Promise<void>;
13
+ clickPermissionByName(permissionName: string[]): Promise<void>;
14
+ doesUserGroupHavePermission(permissionName: string, hasPermission?: boolean): Promise<void>;
15
+ addSectionWithNameToUserGroup(sectionName: string): Promise<void>;
16
+ clickAddSectionsButton(): Promise<void>;
17
+ doesUserGroupHaveSection(userGroupName: string, sectionName: string, hasSection?: boolean): Promise<void>;
18
+ removeSectionFromUserGroup(sectionName: string): Promise<void>;
19
+ doesUserGroupHavePermissionEnabled(permissionName: string[]): Promise<void[]>;
20
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserGroupUiHelper = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ const UiBaseLocators_1 = require("./UiBaseLocators");
6
+ class UserGroupUiHelper extends UiBaseLocators_1.UiBaseLocators {
7
+ userGroupsTabBtn;
8
+ userGroupNameTxt;
9
+ addSectionsBtn;
10
+ permissionVerbBtn;
11
+ constructor(page) {
12
+ super(page);
13
+ this.userGroupsTabBtn = page.getByRole('tab', { name: 'User Groups' });
14
+ this.userGroupNameTxt = page.getByLabel('Name', { exact: true });
15
+ this.permissionVerbBtn = page.locator('umb-input-user-permission-verb');
16
+ this.addSectionsBtn = page.locator('[label="Sections"]').getByLabel('open', { exact: true });
17
+ }
18
+ async clickUserGroupsTabButton() {
19
+ await this.userGroupsTabBtn.click({ force: true });
20
+ }
21
+ async enterUserGroupName(name) {
22
+ await this.userGroupNameTxt.clear();
23
+ await this.userGroupNameTxt.fill(name);
24
+ }
25
+ async isUserGroupWithNameVisible(name, isVisible = true) {
26
+ return await (0, test_1.expect)(this.page.locator('uui-table-row', { hasText: name })).toBeVisible({ visible: isVisible });
27
+ }
28
+ async clickUserGroupWithName(name) {
29
+ await this.page.getByRole('link', { name: name }).click();
30
+ }
31
+ async clickPermissionByName(permissionName) {
32
+ for (let i = 0; i < permissionName.length; i++) {
33
+ await this.permissionVerbBtn.getByText(permissionName[i], { exact: true }).click();
34
+ }
35
+ }
36
+ async doesUserGroupHavePermission(permissionName, hasPermission = true) {
37
+ return await (0, test_1.expect)(this.permissionVerbBtn.filter({ has: this.page.getByText(permissionName, { exact: true }) }).locator('uui-toggle').locator('#icon-checked').getByRole('img')).toBeVisible({ visible: hasPermission });
38
+ }
39
+ async addSectionWithNameToUserGroup(sectionName) {
40
+ await this.page.getByLabel(sectionName).click();
41
+ }
42
+ async clickAddSectionsButton() {
43
+ await this.addSectionsBtn.click();
44
+ }
45
+ async doesUserGroupHaveSection(userGroupName, sectionName, hasSection = true) {
46
+ return await (0, test_1.expect)(this.page.locator('uui-table-row', { hasText: userGroupName }).locator('umb-user-group-table-sections-column-layout', { hasText: sectionName })).toBeVisible({ visible: hasSection });
47
+ }
48
+ async removeSectionFromUserGroup(sectionName) {
49
+ await this.page.locator('umb-ref-section', { hasText: sectionName }).getByText('Remove').click();
50
+ }
51
+ async doesUserGroupHavePermissionEnabled(permissionName) {
52
+ return await Promise.all(permissionName.map(permission => this.doesUserGroupHavePermission(permission)));
53
+ }
54
+ }
55
+ exports.UserGroupUiHelper = UserGroupUiHelper;
56
+ //# sourceMappingURL=UserGroupUiHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserGroupUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/UserGroupUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {expect, Locator, Page} from \"@playwright/test\"\nimport {UiBaseLocators} from \"./UiBaseLocators\";\n\nexport class UserGroupUiHelper extends UiBaseLocators {\n private readonly userGroupsTabBtn: Locator;\n private readonly userGroupNameTxt: Locator;\n private readonly addSectionsBtn: Locator;\n private readonly permissionVerbBtn: Locator;\n\n constructor(page: Page) {\n super(page);\n this.userGroupsTabBtn = page.getByRole('tab', {name: 'User Groups'});\n this.userGroupNameTxt = page.getByLabel('Name', {exact: true});\n this.permissionVerbBtn = page.locator('umb-input-user-permission-verb');\n this.addSectionsBtn = page.locator('[label=\"Sections\"]').getByLabel('open', {exact: true});\n }\n\n async clickUserGroupsTabButton() {\n await this.userGroupsTabBtn.click({force: true});\n }\n\n async enterUserGroupName(name: string) {\n await this.userGroupNameTxt.clear();\n await this.userGroupNameTxt.fill(name);\n }\n\n async isUserGroupWithNameVisible(name: string, isVisible = true) {\n return await expect(this.page.locator('uui-table-row', {hasText: name})).toBeVisible({visible: isVisible});\n }\n\n async clickUserGroupWithName(name: string) {\n await this.page.getByRole('link', {name: name}).click();\n }\n\n async clickPermissionByName(permissionName: string[]) {\n for (let i = 0; i < permissionName.length; i++) {\n await this.permissionVerbBtn.getByText(permissionName[i], {exact: true}).click();\n }\n }\n\n async doesUserGroupHavePermission(permissionName: string, hasPermission = true) {\n return await expect(this.permissionVerbBtn.filter({has: this.page.getByText(permissionName, {exact: true})}).locator('uui-toggle').locator('#icon-checked').getByRole('img')).toBeVisible({visible: hasPermission});\n }\n\n async addSectionWithNameToUserGroup(sectionName: string) {\n await this.page.getByLabel(sectionName).click();\n }\n\n async clickAddSectionsButton() {\n await this.addSectionsBtn.click();\n }\n\n async doesUserGroupHaveSection(userGroupName: string, sectionName: string, hasSection = true) {\n return await expect(this.page.locator('uui-table-row', {hasText: userGroupName}).locator('umb-user-group-table-sections-column-layout', {hasText: sectionName})).toBeVisible({visible: hasSection});\n }\n\n async removeSectionFromUserGroup(sectionName: string) {\n await this.page.locator('umb-ref-section', {hasText: sectionName}).getByText('Remove').click();\n }\n\n async doesUserGroupHavePermissionEnabled(permissionName: string[]) {\n return await Promise.all(\n permissionName.map(permission => this.doesUserGroupHavePermission(permission))\n );\n }\n}"]}
@@ -0,0 +1,41 @@
1
+ import { Page } from "@playwright/test";
2
+ import { UiBaseLocators } from "./UiBaseLocators";
3
+ export declare class UserUiHelper extends UiBaseLocators {
4
+ private readonly usersTabBtn;
5
+ private readonly createUserBtn;
6
+ private readonly nameOfTheUserTxt;
7
+ private readonly userEmailTxt;
8
+ private readonly addUserGroupsBtn;
9
+ private readonly openUserGroupsBtn;
10
+ private readonly updatedNameOfTheUserTxt;
11
+ private readonly changePasswordBtn;
12
+ private readonly newPasswordTxt;
13
+ private readonly confirmPasswordTxt;
14
+ private readonly changePhotoBtn;
15
+ private readonly removePhotoBtn;
16
+ private readonly searchInUserSectionTxt;
17
+ private readonly userSectionCard;
18
+ private readonly statusBtn;
19
+ private readonly groupBtn;
20
+ constructor(page: Page);
21
+ clickUsersTabButton(): Promise<void>;
22
+ clickCreateUserButton(): Promise<void>;
23
+ enterNameOfTheUser(name: string): Promise<void>;
24
+ enterUserEmail(email: string): Promise<void>;
25
+ clickAddUserGroupsButton(): Promise<void>;
26
+ clickOpenUserGroupsButton(): Promise<void>;
27
+ enterUpdatedNameOfUser(name: string): Promise<void>;
28
+ clickUserWithName(name: string): Promise<void>;
29
+ clickChangePasswordButton(): Promise<void>;
30
+ updatePassword(newPassword: string): Promise<void>;
31
+ isUserVisible(name: string, isVisible?: boolean): Promise<void>;
32
+ clickChangePhotoButton(): Promise<void>;
33
+ clickRemovePhotoButton(): Promise<void>;
34
+ changePhotoWithFileChooser(filePath: string): Promise<void>;
35
+ searchInUserSection(name: string): Promise<void>;
36
+ doesUserSectionContainUserAmount(amount: number): Promise<void>;
37
+ doesUserSectionContainUserWithText(name: string): Promise<void>;
38
+ filterByStatusName(statusName: string): Promise<void>;
39
+ filterByGroupName(groupName: string): Promise<void>;
40
+ isPasswordUpdatedForUserWithId(userId: string): Promise<void>;
41
+ }
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserUiHelper = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ const UiBaseLocators_1 = require("./UiBaseLocators");
6
+ const umbraco_config_1 = require("../../umbraco.config");
7
+ class UserUiHelper extends UiBaseLocators_1.UiBaseLocators {
8
+ usersTabBtn;
9
+ createUserBtn;
10
+ nameOfTheUserTxt;
11
+ userEmailTxt;
12
+ addUserGroupsBtn;
13
+ openUserGroupsBtn;
14
+ updatedNameOfTheUserTxt;
15
+ changePasswordBtn;
16
+ newPasswordTxt;
17
+ confirmPasswordTxt;
18
+ changePhotoBtn;
19
+ removePhotoBtn;
20
+ searchInUserSectionTxt;
21
+ userSectionCard;
22
+ statusBtn;
23
+ groupBtn;
24
+ constructor(page) {
25
+ super(page);
26
+ this.usersTabBtn = page.locator('#views').getByRole('tab', { name: 'Users' });
27
+ this.createUserBtn = page.getByLabel('Create user');
28
+ this.nameOfTheUserTxt = page.getByLabel('name');
29
+ this.userEmailTxt = page.getByLabel('email');
30
+ this.addUserGroupsBtn = page.locator('#userGroups').getByLabel('open', { exact: true });
31
+ this.openUserGroupsBtn = page.locator('[label="Groups"]').getByLabel('open', { exact: true });
32
+ this.updatedNameOfTheUserTxt = page.locator('#name #input');
33
+ this.changePasswordBtn = page.getByLabel('Change Password');
34
+ this.newPasswordTxt = page.locator('input[name="newPassword"]');
35
+ this.confirmPasswordTxt = page.locator('input[name="confirmPassword"]');
36
+ this.changePhotoBtn = page.getByLabel('Change photo');
37
+ this.removePhotoBtn = page.getByLabel('Remove photo');
38
+ this.searchInUserSectionTxt = page.getByLabel('Search the users section');
39
+ this.userSectionCard = page.locator('uui-card-user');
40
+ this.statusBtn = page.locator('uui-button', { hasText: 'Status' });
41
+ this.groupBtn = page.locator('uui-button', { hasText: 'Groups' });
42
+ }
43
+ async clickUsersTabButton() {
44
+ await this.usersTabBtn.click({ force: true });
45
+ }
46
+ async clickCreateUserButton() {
47
+ await this.createUserBtn.click();
48
+ }
49
+ async enterNameOfTheUser(name) {
50
+ await this.nameOfTheUserTxt.fill(name);
51
+ }
52
+ async enterUserEmail(email) {
53
+ await this.userEmailTxt.fill(email);
54
+ }
55
+ async clickAddUserGroupsButton() {
56
+ await this.addUserGroupsBtn.click();
57
+ // This wait is necessary to avoid the click on the user group button to be ignored
58
+ await this.page.waitForTimeout(200);
59
+ }
60
+ async clickOpenUserGroupsButton() {
61
+ await this.openUserGroupsBtn.click();
62
+ }
63
+ async enterUpdatedNameOfUser(name) {
64
+ await this.updatedNameOfTheUserTxt.fill(name);
65
+ }
66
+ async clickUserWithName(name) {
67
+ await this.page.getByText(name, { exact: true }).click();
68
+ }
69
+ async clickChangePasswordButton() {
70
+ await this.changePasswordBtn.click();
71
+ }
72
+ async updatePassword(newPassword) {
73
+ await this.newPasswordTxt.fill(newPassword);
74
+ await this.confirmPasswordTxt.fill(newPassword);
75
+ }
76
+ async isUserVisible(name, isVisible = true) {
77
+ return await (0, test_1.expect)(this.page.getByText(name, { exact: true })).toBeVisible({ visible: isVisible });
78
+ }
79
+ async clickChangePhotoButton() {
80
+ await this.changePhotoBtn.click();
81
+ }
82
+ async clickRemovePhotoButton() {
83
+ await this.removePhotoBtn.click();
84
+ }
85
+ async changePhotoWithFileChooser(filePath) {
86
+ const fileChooserPromise = this.page.waitForEvent('filechooser');
87
+ await this.clickChangePhotoButton();
88
+ const fileChooser = await fileChooserPromise;
89
+ await fileChooser.setFiles(filePath);
90
+ }
91
+ async searchInUserSection(name) {
92
+ await this.searchInUserSectionTxt.fill(name);
93
+ }
94
+ async doesUserSectionContainUserAmount(amount) {
95
+ return await (0, test_1.expect)(this.userSectionCard).toHaveCount(amount);
96
+ }
97
+ async doesUserSectionContainUserWithText(name) {
98
+ return await (0, test_1.expect)(this.userSectionCard).toContainText(name);
99
+ }
100
+ async filterByStatusName(statusName) {
101
+ await this.statusBtn.click();
102
+ await this.page.locator('label').filter({ hasText: statusName }).click();
103
+ }
104
+ async filterByGroupName(groupName) {
105
+ await this.groupBtn.click();
106
+ await this.page.locator('label').filter({ hasText: groupName }).click();
107
+ }
108
+ async isPasswordUpdatedForUserWithId(userId) {
109
+ await Promise.all([
110
+ this.page.waitForResponse(resp => resp.url().includes(umbraco_config_1.umbracoConfig.environment.baseUrl + '/umbraco/management/api/v1/user/' + userId + '/change-password') && resp.status() === 200),
111
+ await this.clickConfirmButton()
112
+ ]);
113
+ }
114
+ }
115
+ exports.UserUiHelper = UserUiHelper;
116
+ //# sourceMappingURL=UserUiHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/UserUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {expect, Locator, Page} from \"@playwright/test\"\nimport {UiBaseLocators} from \"./UiBaseLocators\";\nimport {umbracoConfig} from \"../../umbraco.config\";\n\nexport class UserUiHelper extends UiBaseLocators {\n private readonly usersTabBtn: Locator;\n private readonly createUserBtn: Locator;\n private readonly nameOfTheUserTxt: Locator;\n private readonly userEmailTxt: Locator;\n private readonly addUserGroupsBtn: Locator;\n private readonly openUserGroupsBtn: Locator;\n private readonly updatedNameOfTheUserTxt : Locator;\n private readonly changePasswordBtn: Locator;\n private readonly newPasswordTxt: Locator;\n private readonly confirmPasswordTxt: Locator;\n private readonly changePhotoBtn: Locator;\n private readonly removePhotoBtn: Locator;\n private readonly searchInUserSectionTxt: Locator;\n private readonly userSectionCard: Locator;\n private readonly statusBtn: Locator;\n private readonly groupBtn: Locator;\n\n constructor(page: Page) {\n super(page);\n this.usersTabBtn = page.locator('#views').getByRole('tab', {name: 'Users'});\n this.createUserBtn = page.getByLabel('Create user');\n this.nameOfTheUserTxt = page.getByLabel('name');\n this.userEmailTxt = page.getByLabel('email');\n this.addUserGroupsBtn = page.locator('#userGroups').getByLabel('open', {exact: true});\n this.openUserGroupsBtn = page.locator('[label=\"Groups\"]').getByLabel('open', {exact: true});\n this.updatedNameOfTheUserTxt = page.locator('#name #input');\n this.changePasswordBtn = page.getByLabel('Change Password');\n this.newPasswordTxt = page.locator('input[name=\"newPassword\"]');\n this.confirmPasswordTxt = page.locator('input[name=\"confirmPassword\"]');\n this.changePhotoBtn = page.getByLabel('Change photo');\n this.removePhotoBtn = page.getByLabel('Remove photo');\n this.searchInUserSectionTxt = page.getByLabel('Search the users section');\n this.userSectionCard = page.locator('uui-card-user');\n this.statusBtn = page.locator('uui-button', {hasText: 'Status'});\n this.groupBtn = page.locator('uui-button', {hasText: 'Groups'});\n }\n\n async clickUsersTabButton() {\n await this.usersTabBtn.click({force: true});\n }\n\n async clickCreateUserButton() {\n await this.createUserBtn.click();\n }\n\n async enterNameOfTheUser(name: string) {\n await this.nameOfTheUserTxt.fill(name);\n }\n\n async enterUserEmail(email: string) {\n await this.userEmailTxt.fill(email);\n }\n\n async clickAddUserGroupsButton() {\n await this.addUserGroupsBtn.click();\n // This wait is necessary to avoid the click on the user group button to be ignored\n await this.page.waitForTimeout(200);\n }\n\n async clickOpenUserGroupsButton() {\n await this.openUserGroupsBtn.click();\n }\n\n async enterUpdatedNameOfUser(name: string) {\n await this.updatedNameOfTheUserTxt .fill(name);\n }\n\n async clickUserWithName(name: string) {\n await this.page.getByText(name, {exact: true}).click();\n }\n\n async clickChangePasswordButton() {\n await this.changePasswordBtn.click();\n }\n\n async updatePassword(newPassword: string) {\n await this.newPasswordTxt.fill(newPassword);\n await this.confirmPasswordTxt.fill(newPassword);\n }\n\n async isUserVisible(name: string, isVisible = true) {\n return await expect(this.page.getByText(name, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async clickChangePhotoButton() {\n await this.changePhotoBtn.click();\n }\n\n async clickRemovePhotoButton() {\n await this.removePhotoBtn.click();\n }\n\n async changePhotoWithFileChooser(filePath: string) {\n const fileChooserPromise = this.page.waitForEvent('filechooser');\n await this.clickChangePhotoButton();\n const fileChooser = await fileChooserPromise;\n await fileChooser.setFiles(filePath);\n }\n\n async searchInUserSection(name: string) {\n await this.searchInUserSectionTxt.fill(name);\n }\n\n async doesUserSectionContainUserAmount(amount: number) {\n return await expect(this.userSectionCard).toHaveCount(amount);\n }\n\n async doesUserSectionContainUserWithText(name: string) {\n return await expect(this.userSectionCard).toContainText(name);\n }\n\n async filterByStatusName(statusName: string) {\n await this.statusBtn.click();\n await this.page.locator('label').filter({hasText: statusName}).click();\n }\n\n async filterByGroupName(groupName: string) {\n await this.groupBtn.click();\n await this.page.locator('label').filter({hasText: groupName}).click();\n }\n\n async isPasswordUpdatedForUserWithId(userId: string) {\n await Promise.all([\n this.page.waitForResponse(resp => resp.url().includes(umbracoConfig.environment.baseUrl + '/umbraco/management/api/v1/user/' + userId + '/change-password') && resp.status() === 200),\n await this.clickConfirmButton()\n ]);\n }\n}"]}
@@ -0,0 +1,9 @@
1
+ import { Page } from "@playwright/test";
2
+ import { UiBaseLocators } from "./UiBaseLocators";
3
+ export declare class WelcomeDashboardUiHelper extends UiBaseLocators {
4
+ private readonly welcomeTab;
5
+ private readonly welcomeBox;
6
+ constructor(page: Page);
7
+ clickWelcomeTab(): Promise<void>;
8
+ doesButtonWithLabelInBoxHaveLink(label: string, boxName: string, link: string): Promise<void>;
9
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WelcomeDashboardUiHelper = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ const UiBaseLocators_1 = require("./UiBaseLocators");
6
+ class WelcomeDashboardUiHelper extends UiBaseLocators_1.UiBaseLocators {
7
+ welcomeTab;
8
+ welcomeBox;
9
+ constructor(page) {
10
+ super(page);
11
+ this.welcomeTab = page.getByRole('tab', { name: 'Welcome' });
12
+ this.welcomeBox = page.locator('uui-box');
13
+ }
14
+ async clickWelcomeTab() {
15
+ await this.welcomeTab.click();
16
+ }
17
+ async doesButtonWithLabelInBoxHaveLink(label, boxName, link) {
18
+ return (0, test_1.expect)(this.welcomeBox.filter({ hasText: boxName }).getByLabel(label)).toHaveAttribute('href', link);
19
+ }
20
+ }
21
+ exports.WelcomeDashboardUiHelper = WelcomeDashboardUiHelper;
22
+ //# sourceMappingURL=WelcomeDashboardUiHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WelcomeDashboardUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/WelcomeDashboardUiHelper.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AACvD,qDAAgD;AAEhD,MAAa,wBAAyB,SAAQ,+BAAc;IACzC,UAAU,CAAU;IACpB,UAAU,CAAU;IAGrC,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,gCAAgC,CAAC,KAAa,EAAE,OAAe,EAAE,IAAY;QACjF,OAAO,IAAA,aAAM,EAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5G,CAAC;CACF;AAlBD,4DAkBC","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\n\nexport class WelcomeDashboardUiHelper extends UiBaseLocators {\n private readonly welcomeTab: Locator;\n private readonly welcomeBox: Locator;\n\n\n constructor(page: Page) {\n super(page);\n this.welcomeTab = page.getByRole('tab', {name: 'Welcome'});\n this.welcomeBox = page.locator('uui-box');\n }\n\n async clickWelcomeTab() {\n await this.welcomeTab.click();\n }\n\n async doesButtonWithLabelInBoxHaveLink(label: string, boxName: string, link: string) {\n return expect(this.welcomeBox.filter({hasText: boxName}).getByLabel(label)).toHaveAttribute('href', link);\n }\n}\n"]}
@@ -6,6 +6,8 @@ const _1 = require(".");
6
6
  const test = test_1.test.extend({
7
7
  umbracoApi: async ({ page }, use) => {
8
8
  const umbracoApi = new _1.ApiHelpers(page);
9
+ // Runs the isAccessTokenValid before each implementation of umbracoApi in our tests (Which is every single one)
10
+ await umbracoApi.isAccessTokenValid();
9
11
  await use(umbracoApi);
10
12
  },
11
13
  umbracoUi: async ({ page }, use) => {
@@ -1 +1 @@
1
- {"version":3,"file":"testExtension.js","sourceRoot":"","sources":["../../../lib/helpers/testExtension.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAC9C,wBAA0C;AAE1C,MAAM,IAAI,GAAG,WAAI,CAAC,MAAM,CAAqD;IAC3E,UAAU,EAAG,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;QACnC,MAAM,UAAU,GAAG,IAAI,aAAU,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,EAAG,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,IAAI,YAAS,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAA;AAEM,oBAAI","sourcesContent":["import { test as base} from \"@playwright/test\"\nimport { ApiHelpers, UiHelpers } from \".\";\n\nconst test = base.extend<{umbracoApi: ApiHelpers} & {umbracoUi : UiHelpers}>({\n umbracoApi : async ({ page }, use) => {\n const umbracoApi = new ApiHelpers(page);\n await use(umbracoApi);\n },\n\n umbracoUi : async ({ page }, use) => {\n const umbracoApi = new UiHelpers(page);\n await use(umbracoApi);\n }\n})\n\nexport {test};"]}
1
+ {"version":3,"file":"testExtension.js","sourceRoot":"","sources":["../../../lib/helpers/testExtension.ts"],"names":[],"mappings":";;;AAAA,2CAA6C;AAC7C,wBAAwC;AAExC,MAAM,IAAI,GAAG,WAAI,CAAC,MAAM,CAAwD;IAC9E,UAAU,EAAE,KAAK,EAAE,EAAC,IAAI,EAAC,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,UAAU,GAAG,IAAI,aAAU,CAAC,IAAI,CAAC,CAAC;QACxC,gHAAgH;QAChH,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC;QACtC,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,EAAE,KAAK,EAAE,EAAC,IAAI,EAAC,EAAE,GAAG,EAAE,EAAE;QAC/B,MAAM,UAAU,GAAG,IAAI,YAAS,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAA;AAEM,oBAAI","sourcesContent":["import {test as base} from \"@playwright/test\"\nimport {ApiHelpers, UiHelpers} from \".\";\n\nconst test = base.extend<{ umbracoApi: ApiHelpers } & { umbracoUi: UiHelpers }>({\n umbracoApi: async ({page}, use) => {\n const umbracoApi = new ApiHelpers(page);\n // Runs the isAccessTokenValid before each implementation of umbracoApi in our tests (Which is every single one)\n await umbracoApi.isAccessTokenValid();\n await use(umbracoApi);\n },\n\n umbracoUi: async ({page}, use) => {\n const umbracoApi = new UiHelpers(page);\n await use(umbracoApi);\n }\n})\n\nexport {test};"]}
@@ -1 +1 @@
1
- {"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/tslib/tslib.d.ts","../node_modules/playwright-core/types/protocol.d.ts","../node_modules/playwright-core/types/structs.d.ts","../node_modules/playwright-core/types/types.d.ts","../node_modules/playwright/types/test.d.ts","../node_modules/playwright/test.d.ts","../node_modules/@playwright/test/index.d.ts","../umbraco.config.ts","../lib/helpers/ReportHelper.ts","../lib/helpers/TelemetryDataApiHelper.ts","../lib/helpers/LanguageApiHelper.ts","../lib/helpers/DictionaryApiHelper.ts","../lib/helpers/RelationType.ts","../lib/helpers/UserGroupApiHelper.ts","../lib/helpers/TemplateApiHelper.ts","../lib/helpers/AliasHelper.ts","../lib/helpers/DataTypeApiHelper.ts","../lib/helpers/UserApiHelper.ts","../lib/helpers/TemporaryFileApiHelper.ts","../lib/helpers/DocumentApiHelper.ts","../lib/helpers/PackageApiHelper.ts","../lib/helpers/ScriptApiHelper.ts","../lib/helpers/PartialViewApiHelper.ts","../lib/helpers/StylesheetApiHelper.ts","../lib/helpers/LogViewerApiHelper.ts","../lib/helpers/ApiHelpers.ts","../lib/helpers/ConstantHelper.ts","../lib/helpers/UiHelpers.ts","../lib/helpers/testExtension.ts","../lib/helpers/index.ts","../lib/index.ts","../node_modules/@types/node/base.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},"14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e","08f466e76048fdad5b11cfea3e71f14dd81392831483f098c92715d62f2855db","8d13c86e53ac8a5ed2c205497dbf9446fa854c7b8a23288de62cb797fb4ca486","eacf1ea6f35270dcfba0a5931e753616734d11ccddc6b2c2a9767b38058a3279",{"version":"de6d2e55195064e4460f0dcc4d560f4aaf84c202290dd4b5306affaf4eb4cb1d","affectsGlobalScope":true},"3f00324f263189b385c3a9383b1f4dae6237697bcf0801f96aa35c340512d79c","ec8997c2e5cea26befc76e7bf990750e96babb16977673a9ff3b5c0575d01e48",{"version":"c93350324664aeec0217741e56c4950435f58ebba7c4589b99deec894b33d67b","signature":"22fea8c28752d1a841afd4b34f886b6ddd7701982943de4a92694a371824b818"},{"version":"e598311445ebe4378af1cb00abfb7222659a7851aaa3d9549c64628857ab4838","signature":"d9e590839d9b5259ea85c4b7b8abedd8459bfadad3aa2ab707df5f06d838a879"},{"version":"16bc0fd4adf6f83440a9f0401fc64bd45c73ca0e5e3efa7a3df152e884420ccd","signature":"f4c914bf76148b4feba712d9e6b2b33b52ee537448d9002e48faaadd12d8f1e9"},{"version":"7a4a8fa9be7dd4a0eacf6fcc79982805195f24c62c8419af326ec22b1a534345","signature":"9631597fd2063026932c3a99645b68682cef2081aead168c0416026468c64388"},{"version":"64ea91ed2aae8aeb8e45e53934fe756af0d7fa3a05172300a3b9404a6192c390","signature":"cd091e88f3461938d185a251e0146b32d0be6b29ad3deab8baa1f5d4fc1597d8"},{"version":"08a26c1d6bbbfb44ef2484675d96f5bf36d427b0e6edad61b38d68858a884098","signature":"e7bfac5c6a6ab4c11b72866e86bbf758f38a8c7c983ea10787a54f10460ae013"},{"version":"7426201624290b4bbe597a6e4bdaa8a5b84ec70333e28b324ee95f51af08c296","signature":"7407519d4b5aefa9a1d72b84833ebc8bf55ae8f45cc37ee2448eb1ee1e61deb3"},{"version":"1fa79a7893e5d300d0d535beec045b99fa3179fece057e40faae11d1b3557bec","signature":"31da70ceb2eb41e94cda849a79c8fe2361fee003c39a2bd21375582a6f2262a0"},{"version":"e17f07b028b14f80d6c625470844ec2f52f37efcd58f80dffc607fb8653cd4d0","signature":"7c9803e8b478726fc90dac32492eb1904cf2ddf6cacc9393a823a1f56c8de2b6"},{"version":"324203f35fe8c0bb25b887cd8325314e672f884200fe9b6b93c8dc9eba09fcee","signature":"0eafac28ea0186d351cdda9458653d1dbd6f283bd0f8c571d7169b1dbcf7e978"},{"version":"39fbeac72c4027903be763529c6caa5dc5c1c4ee359b6f6adfdc912484e57116","signature":"e024dceb8caff34db9cfba3b2ac19170b0afc1b817a0b66e22e0141b34e2fc6e"},{"version":"95b1d0701ff22a984ce1b67910110194ed14ffa433b44a3be5111174d5695559","signature":"b3e9372b4dbae48465582902ca7446cd9ef9dae6092670eaa18af04d5c089c00"},{"version":"fadb42657de31f353a17a9cce4ca0bdb0424b58179197ce97f1f49313b35df93","signature":"4af44936bc7df88f3d8bbf0b250cf4fd76ad9d38bd2884db6ca9b0c97c42ce99"},{"version":"d609d8b0a013e2645316b975ab68855dfbd72cbd5311e0093c4f14d87defd34f","signature":"2698823199b9e32187daacb96108ed9a06e913d2e5347bf99ea2c1d1d33df20a"},{"version":"65a9aa25ba5766698759b6dac11748c748b3fe789933c295ba5216d8b0365919","signature":"fe505f3be60d71c2669aa753385861c1cc84f1f9a4fa3f65e64d40a7bc9854fb"},{"version":"88a8deea4903f2b6219f77a2f8c30b1277852441f4f36d447f58acc9f565298f","signature":"f6bcea6d0ed15c89143a3362fc8d4f8f523da6c4da16bc4eef2859cb1b0be90d"},{"version":"961e703fe7be2fa3a307ccaf8e381de7444d22a6417bb3b811fbb59341ee3c6f","signature":"52ed0834eed3548ac5adff54c0ffb7cc33496d90f8aef9ba30dca85bc005d6c9"},{"version":"f1bd24334e503e833a2cecf306de16ba4c5cf2fefd6fda9d57c19d838f6cb8ec","signature":"35d0dad48d46ff699954fd32afe947a9191acfd3a0dbf1d9d75f4f8785d41cc3"},{"version":"214e34a1be8ad6d79e788dfdde64b260e3d4355829169e508c72e12e91211898","signature":"e60e1e97c3bbcfcd8b1c9a1beff849fc749146da4fe2d17479c1e20a5cbacc6b"},{"version":"2cd71417c382c2f417294dfa0e34c1ed314b6976480087f7dd7980b793484a47","signature":"bb8f4231e89b77b07df78175e69051078407d14ad055fad1cf54aae3e2317567"},{"version":"8c8d11341a238c093eb261d868f11b47aa06f339c57f9a3fda4b9187eaa626ff","signature":"8dd10f9496ac4e3b1eb717761f7f0a2996209ada7c1e30e614eadb68a0719584"},{"version":"94ed2d1240b347c3f620642cde781b2048a7d17d5cf957e2379088a39d35418f","signature":"302280c749ac14a35a70667829db1fb7118cc298f4a9c98dbde1a69899158aeb"},{"version":"0ae539fcb9305ceed033478dad6057ca783cd05639a5ffec46236b181329b73d","signature":"fb2248233522d52bc64ce2a6cbbb7a48063c27fe937586687f86ec9e59f356be"},{"version":"b9181bea4a29329594d5c5a53bec78507fcc67ad0c5afa2a580dc51d6f19a4f7","signature":"4f7d54c603949113f45505330caae6f41e8dbb59841d4ae20b42307dc4579835"},{"version":"e7f447ee6988ff9fefe357e8672350b2c6ca3d088f0f8359ec5d0a4b6c82b37a","affectsGlobalScope":true},"2ee6b8d10878e64227c146bdbda238deeb794b6b56db11dd82fc23547071d8ed"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"emitDeclarationOnly":false,"esModuleInterop":false,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":1,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":99},"fileIdsList":[[22],[22,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,53],[22,47],[22,28,47],[22,28,48],[22,37,47,48,49,50],[22,28,51],[22,51],[27],[53],[25],[23,24,53],[26],[25,28,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],[25,47],[47],[28,47],[25,28],[37,47,48,49,50],[28,51],[51]],"referencedMap":[[37,1],[47,2],[48,1],[38,3],[33,3],[41,3],[32,3],[46,3],[42,3],[44,3],[34,3],[30,4],[43,3],[45,3],[31,3],[36,3],[40,3],[49,5],[39,3],[35,3],[51,6],[50,7],[52,8],[28,9],[53,10],[54,10],[24,11],[25,12],[27,13],[26,11],[29,1]],"exportedModulesMap":[[47,14],[38,15],[33,15],[41,16],[32,15],[46,16],[42,15],[44,15],[34,15],[30,17],[43,15],[45,15],[31,15],[36,15],[40,15],[49,18],[39,15],[35,15],[51,19],[50,20],[52,21],[28,9],[53,10],[54,10],[24,11],[25,12],[27,13],[26,11]],"semanticDiagnosticsPerFile":[37,47,48,38,33,41,32,46,42,44,34,30,43,45,31,36,40,49,39,35,51,50,52,28,53,54,23,24,25,27,26,22,5,6,8,7,2,9,10,11,12,13,14,15,16,3,4,20,17,18,19,21,1,29],"latestChangedDtsFile":"./lib/index.d.ts"},"version":"4.8.3"}
1
+ {"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/tslib/tslib.d.ts","../node_modules/playwright-core/types/protocol.d.ts","../node_modules/playwright-core/types/structs.d.ts","../node_modules/playwright-core/types/types.d.ts","../node_modules/playwright/types/test.d.ts","../node_modules/playwright/test.d.ts","../node_modules/@playwright/test/index.d.ts","../umbraco.config.ts","../lib/helpers/ReportHelper.ts","../lib/helpers/TelemetryDataApiHelper.ts","../lib/helpers/LanguageApiHelper.ts","../lib/helpers/DictionaryApiHelper.ts","../lib/helpers/RelationTypeApiHelper.ts","../node_modules/@umbraco/json-models-builders/dist/lib/helpers/AliasHelper.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/packages/packageBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/packages/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/dataTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/sliderDataTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/textAreaDataTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/numericDataTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/datePickerDataTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/dataTypes/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/document/documentValueBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/document/documentVariantBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/document/documentBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/document/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypePropertyBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypeContainerBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypeAllowedDocumentTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypeCompositionBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypeAllowedTemplateBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/documentTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/documentTypes/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/mediaTypePropertyBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/mediaTypeContainerBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/mediaTypeAllowedMediaTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/mediaTypeCompositionBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/mediaTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/mediaTypes/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/media/mediaValueBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/media/mediaVariantBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/media/mediaBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/media/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/users/userBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/users/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/userGroups/userGroupPermissionBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/userGroups/userGroupBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/userGroups/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/member/memberValueBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/member/memberVariantBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/member/memberBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/member/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/memberTypes/memberTypeCompositionBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/memberTypes/memberTypeContainerBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/memberTypes/memberTypePropertyBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/memberTypes/memberTypeBuilder.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/memberTypes/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/builders/index.d.ts","../node_modules/@umbraco/json-models-builders/dist/lib/index.d.ts","../lib/helpers/UserGroupApiHelper.ts","../lib/helpers/AliasHelper.ts","../lib/helpers/TemplateApiHelper.ts","../lib/helpers/DataTypeApiHelper.ts","../lib/helpers/UserApiHelper.ts","../lib/helpers/TemporaryFileApiHelper.ts","../lib/helpers/PackageApiHelper.ts","../lib/helpers/ScriptApiHelper.ts","../lib/helpers/PartialViewApiHelper.ts","../lib/helpers/StylesheetApiHelper.ts","../lib/helpers/LogViewerApiHelper.ts","../lib/helpers/DocumentTypeApiHelper.ts","../lib/helpers/DocumentApiHelper.ts","../lib/helpers/MediaTypeApiHelper.ts","../lib/helpers/MediaApiHelper.ts","../lib/helpers/ObjectTypesApiHelper.ts","../lib/helpers/ModelsBuilderApiHelper.ts","../lib/helpers/HealthCheckApiHelper.ts","../lib/helpers/IndexerApiHelper.ts","../lib/helpers/PublishedCacheApiHelper.ts","../lib/helpers/MemberGroupApiHelper.ts","../lib/helpers/MemberApiHelper.ts","../lib/helpers/MemberTypeApiHelper.ts","../lib/helpers/ApiHelpers.ts","../lib/helpers/ConstantHelper.ts","../lib/helpers/UiBaseLocators.ts","../lib/helpers/StylesheetUiHelper.ts","../lib/helpers/PartialViewUiHelper.ts","../lib/helpers/ScriptUiHelper.ts","../lib/helpers/TemplateUiHelper.ts","../lib/helpers/DictionaryUiHelper.ts","../lib/helpers/LoginUiHelper.ts","../lib/helpers/LogViewerUiHelper.ts","../lib/helpers/TelemetryDataUiHelper.ts","../lib/helpers/DataTypeUiHelper.ts","../lib/helpers/RelationTypeUiHelper.ts","../lib/helpers/PackageUiHelper.ts","../lib/helpers/LanguageUiHelper.ts","../lib/helpers/ModelsBuilderUiHelper.ts","../lib/helpers/ExamineManagementUiHelper.ts","../lib/helpers/PublishedStatusUiHelper.ts","../lib/helpers/HealthCheckUiHelper.ts","../lib/helpers/ProfilingUiHelper.ts","../lib/helpers/WelcomeDashboardUiHelper.ts","../lib/helpers/DocumentTypeUiHelper.ts","../lib/helpers/MemberGroupUiHelper.ts","../lib/helpers/MemberUiHelper.ts","../lib/helpers/MemberTypeUiHelper.ts","../lib/helpers/MediaTypeUiHelper.ts","../lib/helpers/UserUiHelper.ts","../lib/helpers/UserGroupUiHelper.ts","../lib/helpers/MediaUiHelper.ts","../lib/helpers/UiHelpers.ts","../lib/helpers/testExtension.ts","../lib/helpers/index.ts","../lib/index.ts","../node_modules/@types/node/ts4.8/assert.d.ts","../node_modules/@types/node/ts4.8/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/ts4.8/globals.d.ts","../node_modules/@types/node/ts4.8/async_hooks.d.ts","../node_modules/@types/node/ts4.8/buffer.d.ts","../node_modules/@types/node/ts4.8/child_process.d.ts","../node_modules/@types/node/ts4.8/cluster.d.ts","../node_modules/@types/node/ts4.8/console.d.ts","../node_modules/@types/node/ts4.8/constants.d.ts","../node_modules/@types/node/ts4.8/crypto.d.ts","../node_modules/@types/node/ts4.8/dgram.d.ts","../node_modules/@types/node/ts4.8/diagnostics_channel.d.ts","../node_modules/@types/node/ts4.8/dns.d.ts","../node_modules/@types/node/ts4.8/dns/promises.d.ts","../node_modules/@types/node/ts4.8/domain.d.ts","../node_modules/@types/node/ts4.8/dom-events.d.ts","../node_modules/@types/node/ts4.8/events.d.ts","../node_modules/@types/node/ts4.8/fs.d.ts","../node_modules/@types/node/ts4.8/fs/promises.d.ts","../node_modules/@types/node/ts4.8/http.d.ts","../node_modules/@types/node/ts4.8/http2.d.ts","../node_modules/@types/node/ts4.8/https.d.ts","../node_modules/@types/node/ts4.8/inspector.d.ts","../node_modules/@types/node/ts4.8/module.d.ts","../node_modules/@types/node/ts4.8/net.d.ts","../node_modules/@types/node/ts4.8/os.d.ts","../node_modules/@types/node/ts4.8/path.d.ts","../node_modules/@types/node/ts4.8/perf_hooks.d.ts","../node_modules/@types/node/ts4.8/process.d.ts","../node_modules/@types/node/ts4.8/punycode.d.ts","../node_modules/@types/node/ts4.8/querystring.d.ts","../node_modules/@types/node/ts4.8/readline.d.ts","../node_modules/@types/node/ts4.8/readline/promises.d.ts","../node_modules/@types/node/ts4.8/repl.d.ts","../node_modules/@types/node/ts4.8/stream.d.ts","../node_modules/@types/node/ts4.8/stream/promises.d.ts","../node_modules/@types/node/ts4.8/stream/consumers.d.ts","../node_modules/@types/node/ts4.8/stream/web.d.ts","../node_modules/@types/node/ts4.8/string_decoder.d.ts","../node_modules/@types/node/ts4.8/test.d.ts","../node_modules/@types/node/ts4.8/timers.d.ts","../node_modules/@types/node/ts4.8/timers/promises.d.ts","../node_modules/@types/node/ts4.8/tls.d.ts","../node_modules/@types/node/ts4.8/trace_events.d.ts","../node_modules/@types/node/ts4.8/tty.d.ts","../node_modules/@types/node/ts4.8/url.d.ts","../node_modules/@types/node/ts4.8/util.d.ts","../node_modules/@types/node/ts4.8/v8.d.ts","../node_modules/@types/node/ts4.8/vm.d.ts","../node_modules/@types/node/ts4.8/wasi.d.ts","../node_modules/@types/node/ts4.8/worker_threads.d.ts","../node_modules/@types/node/ts4.8/zlib.d.ts","../node_modules/@types/node/ts4.8/globals.global.d.ts","../node_modules/@types/node/ts4.8/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e","5e0b584983b80e389db30120f1eac5bf6e51d4974d34f48d6fc04a5d4b60f8ca","32727845ab5bd8a9ef3e4844c567c09f6d418fcf0f90d381c00652a6f23e7f6e","f572efaf802df1a14519a0e1217525d84e96bf70d0b3158e61c3e03a628dd43a",{"version":"47339283feea4e3d0b6d580c3787eb6a9bf5c50b224dfbf47048b2501347a142","affectsGlobalScope":true},"3f00324f263189b385c3a9383b1f4dae6237697bcf0801f96aa35c340512d79c","ec8997c2e5cea26befc76e7bf990750e96babb16977673a9ff3b5c0575d01e48",{"version":"ac566ad371d04b0c1a4e9303085f14385dd9cea96515646ca1a6a4bfb79c7968","signature":"22fea8c28752d1a841afd4b34f886b6ddd7701982943de4a92694a371824b818"},{"version":"e598311445ebe4378af1cb00abfb7222659a7851aaa3d9549c64628857ab4838","signature":"d9e590839d9b5259ea85c4b7b8abedd8459bfadad3aa2ab707df5f06d838a879"},{"version":"16bc0fd4adf6f83440a9f0401fc64bd45c73ca0e5e3efa7a3df152e884420ccd","signature":"f4c914bf76148b4feba712d9e6b2b33b52ee537448d9002e48faaadd12d8f1e9"},{"version":"b167cb984d4a63a547354f22c011fa36b8c6ca52081a705de5a1a32f89369b77","signature":"474a342b5d6ca2d7fddb0b6677fc762f732d49829c88be7a8bb01ab12231bf69"},{"version":"68f09543fa1964b7589e02e2ae23600a3fe1095bc779724631c1155d875cd095","signature":"7931acf2186d2590d9ab45126666c3c6978bfbc5d5cf3912c515893f2f3b81db"},{"version":"ad9cb996e3a752abbfa8ebfb0e601bf6eb7f3b3d8c17390c600a73b408238afa","signature":"d521080ce5075b637966ad9caca3ec81b81ae03f4fad43e3f5d312208561093c"},"7c9803e8b478726fc90dac32492eb1904cf2ddf6cacc9393a823a1f56c8de2b6","735f4251ea4b4790bcfa837d95e2128ca3259524e2b6f3b1d0c56a6edd5789ec","fbeb32592d935d0a8394e889bdd60dde93b35c3274a8823e2717bbe490086cc6","7e6eb742c70b49586e10458e8534ce581c9d22a9c9f70449ee4e8c5d7deddc89","312a2551e6cdcd53d3699f40ede6e682bdb17b1f15c6708f060fae2e29212bbd","2d0c888fee03ecc5d3395659bef30a1fb6a1851af29a28beddba1dbeccce2e3f","23b070999f9643c7d237483488008a8324f3e58c9710565bac5ce1251fb20e00","e537175b8599f39a69a7d60e93db9034a768ad9b5a05a44d5888b4c46eaa1366","82255fab04f4d85a1d6079cea054af60dc4912a23ff947161c9b34a230698f9c","dc593eba16c652364b441615164f1f5ac912493e7cb2693840a428308c1051b7","a461cc5ab62a829a65e0663387d8ebad9c15e7d4392ffbf971e8682313ad9384","6d00f9c09d48112240a2b56bfd2c7cec446f014d8c5c1b817d9df780f7cb1f65","7487f90ba023ddfdb3e4d68bc44ece8dfb9cb10823d2ef08ad76c052eb8a504a","1d018ec10663264ba121d22bb237fabf71d9147b949d69518bcb5770aa3a2f88","859334213ea02d45aec5b54ff1d54ef18b3a5ac715a52c0ef8a6ae75050b50a2","9cb6270351ef5ea1c6cbcf75097c63937f106f21ce46fe693482f46bc34bfb96","fb1192ef5c5db2eeac7f996bf882bd99062a742eba7d229519f8964d35f19423","46c0c38ca7829481d9f8989636eaecf3c85a48ce9f1467564cd14cc58eecc39d","aa212fd5fbc67d37391ed675ddbf279d777810aa3701b69f26b27f8cd6940f5b","a7070c25054200db28f04abf7e5829970f22870c50f4795abab0bec193c9cbb7","fbc73b8d844b5d4ca9b6f91cd1c3f8fc230dc79430016df3940c3b50d7743208","6f084acd88dd7c9e7a1c801e09597b3de7714898cfe98a6a4772c14ffeac1b0a","2ea4f3b7a09612b2510ba1699e0b7969b7e668345495d4efec4474143364bab8","fffd55ccb0e275d0cfe6aa05d95a42c0fcc6d0f749b30d7419bd5d08b2ca8fb9","79584f80c79a9c50842cf5486802d8e37652ab6b1a2f6241dfd97d7af52286ae","98e3cbe57ce44ac1c1af9dded0a70e070b4b733a7b2ee1ac4139b63b9cdda7e8","e297b69197175403a8333fa866a23edda557ebd405668117daba79467710951b","33ad481a4f005ca22db6c3e8e3dd24ac7175d7b24bc0bf167787e7ea0ca8c2c0","9a6d9544722b46204265a986841ce27fc47c99a6e9f567826412789179c26f24","895440dd2b4c65c4b904cebfff11b835aa037fccf835bd6c0e99a2da95b5d24d","5b6720800c5d5bf1402a0b78ef79a20e29b1521bbd8eb83989e640e7163e37b5","1be065122adefc5329252a7ee7d13bd480744049e1f57131e585b6c8763081f4","3ef0c952b7aa46d7ec44efc1f824377dd550bcf2f05e9f6eaa3bff52e0ab6630","068eaa781afecfa2b12f3f6fa90e6823315ae29237efd347264286fdcadbf2b9","4f3f090fa3b9300054f5ebef080c682c7c2c399024a16cb0d3b14b3e61b66bac","84c1a5494578c5affca53779468eff24fc912615128aaeba0443a7d084da1c81","d57106aed70ae121f2abbeafb903630c64b3d24ad708d331b5e39ee4154cdef2","317589f5460dfdb1386cd7feda7c57b03861c33c40f136da2239657ec9625028","755cb989f97ae212f7d67804513c0404e19d60085d50a2d821c1e7898622afb9","a73e2f83376a0533d2534cf39db9326f7b17e10258343d743dc8e4be9fa7d7e6","0104f554c856d43470d5143b76a858630948864dbb525ba503abf2495ea32d62","d2720cc47e5116280f94ea51b12443bdb6d34f6dbc2cc718eb22bc9fdf6d1c22","1c2088b528dbbfd94b68d0b391e5a753194beb4f816d01bcf45424a48490a3d8","1e9f7113fbfa4e026da90e21a0b8a0d2693ea17b396f840a35f763d00e52acd9","d7dcd1669a32ea32418a12becb8e484b4069b24a7bf41a0c7508a7794a54bd67","b63b1bb2b9961efa84cb580dd9369838250b2d7dc26db0ae2396b75ec4df1b2c",{"version":"b90911de1515156ee23138731e27c3eba901c2390fa2caeb96350731050480d5","signature":"4a0dacea6d9687717d728fcaa64fd6c6135e01876920f0535da80b47058aa554"},{"version":"e17f07b028b14f80d6c625470844ec2f52f37efcd58f80dffc607fb8653cd4d0","signature":"7c9803e8b478726fc90dac32492eb1904cf2ddf6cacc9393a823a1f56c8de2b6"},{"version":"6fb2e60054648f522196c0bf8c154be32814cef9aaeff74a34b63b9ecc29c6bf","signature":"268255fe720a6ccc432b25021ac084c78a040eb586d3e3c6638d7ab602b52b47"},{"version":"d57081a43444d31f6c024c385473a217e0586eabd78dde612e45b121ae2e341f","signature":"d8058da97efb68e266376874bfaa454db214b7ac0bb35d3f4c6c640bb4925365"},{"version":"ccfb732194bf585afcd5bbe63b03fc42960ecfb6fba3385f6d15b552792dc8c7","signature":"6c8cc201f27dd1ed08909bdd67c27a0ec86a5599ad8ae9d7651bff923733140f"},{"version":"840ba1246f1c18bc4e405e6d6b13e6fd2684f5afb7106c5b629b65ed29889740","signature":"aa598e42a94a23cfc3aab39ddc3224722d0141b44486403203445749e953f8d7"},{"version":"cabd0d5b08b9df681c7d96ebb233547f3ff5afff1258fb4fd989c48cfa4b696d","signature":"0b46a5aa62769d95c500231b1c18bf8f75a79bb758ee37b1a212d4608abff3cc"},{"version":"801d15dc62fba78b6eba681a278e1513fae40bc2c1cc63b654689993027653af","signature":"f34e4769145e2478659e5fb416f7daa3329137c2d83ba78bb657582bdac5f50b"},{"version":"9aa03437de8e8312f9c38664eb81758f4aef3116c81fb0ba24502e079eaf531d","signature":"6abcd0c4ef723adaa273858de49546a5270b1498bec2329a7a7611a15b2778f2"},{"version":"36cb9c784cd88e9b819fc070426d820267c18a68466f1c97fbcde1917f95260d","signature":"697628e31760e18943ae773536abbf4c49c0a9d7b6bd9f606cb00454b756e06d"},{"version":"f1bd24334e503e833a2cecf306de16ba4c5cf2fefd6fda9d57c19d838f6cb8ec","signature":"35d0dad48d46ff699954fd32afe947a9191acfd3a0dbf1d9d75f4f8785d41cc3"},{"version":"b69158ff76b40768372226af3b12f2443d807d81b35b1e114702f05ee1490c08","signature":"1691f80f077e9ebd0cbab932cea1191b67a5dda0bdcb1fbb4250dc81e784d521"},{"version":"8e065f7f8e8f6a8b9f6a61bad752e332e57eb3bd013566eddd3897d0c1b55bbc","signature":"8641a787597a5934550a9567193ab31819295799200af81bd5533f9be00f1970"},{"version":"810fdde43ff0e74db6b34b4a0990f7f3448c843599f77fd17c72f8aa454f52c5","signature":"2c50e0b6a40851d93b12852f451855f0d7f4e42a602f55c2936c1200be43bc60"},{"version":"e5e2075207ac681aaf89be8ab88f96993365751bef2dc415ee4462530e9b8826","signature":"5e3407e9ef1ffcd6569a77677515f32c4b4811f249ffbfb57bf05931dab382ff"},{"version":"58b36cc8aa8df872016ddc8269da9e1d09f894e0260baa6d576e55a6eebdfa4a","signature":"d7e67bbc423e3fe460466cc7e84fabf003d0756d9386d894062e6fb09f53e640"},{"version":"31b8e49f0e99e1470a80b9e273fac5700c56fe8d234059cd1bb2ad21b820b0b9","signature":"85bb21606bafbcba87c9fc4c9b64fcc55e1ed9f625bfdcfecb013a0ccce0835f"},{"version":"91e881ba6c6c9dea00855969f278cf4a0a182eb7a0014643cd702d4b6c2d823e","signature":"f8e4d7dd0140c412232ec41e3d92bd3e52eaa65c040d404313d3119693f4f9d7"},{"version":"093412a58431807d86f292735937204c5733c2b33cff45ca392dc2e1b0d710a1","signature":"36958eeed010fd5dbd61070cb9f1dcf65951f523cf00f9fe4f057e072cffcb0c"},{"version":"25c502fca47c551749ae8050e73c7e6346ea5e32b1fef84f6d6d461e9a872ce6","signature":"f789f70171e3c0b4ce8fee345c5b6fd6cb2e39835db65da25f1c218ce5970c4d"},{"version":"a7d9b45450be34adbd085857a246b0f3407ce7776887bae324cb8918f0f9ccf1","signature":"93b4b05b1e01c3d4e55b40eec5e38aecd3b969834322c9adc471e1b544f36adc"},{"version":"cb2868c73b78dd4ab29af567a3b7a890cd73756ac9ea11f4b1523dbabfb1b475","signature":"7bd245389f77c48754e28c66782ac10d36438dda660d7f61efdf2216b4a3ff29"},{"version":"fa6052471f16ff21b4339723cf5e59aeae57103695fe4ae901c441f690bf4de4","signature":"a2f2dda048d4e932f639ed87095a550e9d379d029c0cae7145b960eb207f39a8"},{"version":"31976634e75df79cb5a3a8b5a361135a9739fb34be03292e3880d4367571f85d","signature":"95ec012bfe8257fe18962143a6bb5aadc7ac052e87eb07d609f460e5970269f6"},{"version":"8aba063bc1f02926e4bbf7cf74b39552490c5077129c10687e92c5cad19b523c","signature":"bb8f4231e89b77b07df78175e69051078407d14ad055fad1cf54aae3e2317567"},{"version":"e0692298808e472dff4179feb0883f0719dd08993e7ffaa5521866749e9b16ac","signature":"a2f8fab87e5a0933e029fcc950e965be3c9c5a158ab57068fe3d7e7427bc54c0"},{"version":"bef548f993c6d64a5e89ce6b5902b70822273dacd03e741cb7364a8f70f95e67","signature":"41b5e5bc20a0bd632db4ca356d1eff4fadd92482e3770f9cdf3985bc55f6507a"},{"version":"708037422f059ca7a4eaa9098418bcc24bbf49975db2ab76317b305d2b5f92b7","signature":"83a756e24f026a02d1e01fc1c6f9fc9fdf9405235167c187fe97f448a4622532"},{"version":"5933aa5056808eb9d3d70a36a9465a35ba061595013a1f7c6b3b47d9de154322","signature":"586055b4a489894fa39a98a56e9d7ac6e6f6381a6ad25660260c35a803b51105"},{"version":"b6c4c5a0c7a7200fc81c03abc7c38544a57c5fc5e9b19c3b4aab33743bf463b2","signature":"90e263cf126121025a3be8cf45188c5d7077afcb47f55fa543cb9ab1f44a37b8"},{"version":"31931160ed3bf7d2f9dcd799c96d762a3df28bc2e5d840c15cb7ab58e3ae6178","signature":"3d138face0a122e9c93602d4c47177ca7404e6f7f4d340c0e3e175287983c6e3"},{"version":"4efdc2ea4a22c2ec266cbd13c42dc0bb8965bdc2c7d6a5202fca48013e42cd0c","signature":"441a7dd1f6a3e908d08de6d57c14679d199699ae59ec4b2c6f6909ee4e7a01dd"},{"version":"2ee14a353d86a1d5afd0bcef4dc52c6784a7c22caf49232a111d58fece0c5364","signature":"5b6af1305a4c918d33730d4c9043d4075b36f9ca51b6fdf5ec49c4874e9d75ce"},{"version":"443026f892363dacd3c6e5b8db4b2d8f5e00c0158413f56b4ea0fd3bd66cee59","signature":"465498afd1f73b5c21176540a7fc8049c167dfc38e55a3c6b2045c2ae2518ff6"},{"version":"6f65f3216f553d2c2562571b5d193746333c0ac9ec0904e58c18097c4b99acf2","signature":"866202e1d6372babf43fe4a0f4bc2e6f4651c463f36e814bced9c73b08f08f4d"},{"version":"61b024f06c15085b253732fbfa5f8da00eebd68e2142dd20b8d0e2026a260190","signature":"76196e924bfd1c52d90cd14b733dc39295f91d2fe6a1af1d19d8b4f3ecc46200"},{"version":"44be52888d4de8676e0e119860f32abb7c8d91fe66890f734a091b5946e5fd69","signature":"2371428db20903bd7351600dead95f6deda4c398b826becd7dc4accb39a6a295"},{"version":"16f8786ebdc732eafeaf64df44d61c6f5c211009b17853562566997cc2fe96ba","signature":"26f328b93796ec08dfc19ee8196e18518b658a87fe31e3630ef7079722203cb2"},{"version":"70082ebcdffb51a4f232d04e7a72fa796d6f058e0a5ffaa81d51b2bdaa4dcacd","signature":"56544ec521b04c8619ecbb1fc134cd36e27f3fc52cbac2c6d0d66caa5e2bcf1c"},{"version":"f683588eb6f67d093e22010f727767dc12ccf947c4fcd56cfbf042e8b396dfc8","signature":"c89e2d183a3683530fc7c5fd94368e05bf62438940c1da5e3b73c71b00b1cbce"},{"version":"19a1a3e1f5321005e623b2ae3665f2968a7284f33f485e611d11f8c127fd6b46","signature":"a917c20caa02cf7636797e7872d5d5fd0355770e67808dc8c0525154fe5df041"},{"version":"c694cc36fdfeda4e7ad3ec79875a395d94c0e983469f6f8b1f747ef24674f4e0","signature":"708167176f8be143ef9e9adb420b236bd96b640ac8718a5d35c03248db221029"},{"version":"6ab351e24f0a799d04759e594e23875777e4a2adfeb494e1a0cba5e391da07c9","signature":"3bf19102eebc41e4a232a2434d49019f85df851e560191bb9657d043ff35d41b"},{"version":"4a0cfb0d136c13a6f5df928908838752f1f49ec89974acc27d69c3e93cbd5e50","signature":"e89d36d87b8f081e39accdb95e7d8b1518f56ca3250a52ff198f7490690232b6"},{"version":"c38633421f1b84d360b31ebf67ba84f52075fdd7dc4e9013f2f8c37967aa7a57","signature":"a731819acd005a0dcd389122bb893cbcede6d15cc467e773e643db24114cf1db"},{"version":"91c92c2b792135f86b343536f060764e75b4e2ddbd69210da5b9fb800fb5ea7d","signature":"e309600c577aa3c5b6f7d94e8c6c4864a26af3f6388bcf4f291e9f983d56a9c1"},{"version":"9d7a3cbcb47bf398eb6bb5f575f773a0d1c75271f3a310e35c23f442e72cb479","signature":"70b8d528a3e6742ade7bc44e018784fa591a0f7bd7f675f183efb72e6f7463ee"},{"version":"16b0e97d18dee16d5ca821a0fdefe07047a58e994e8d15651a091f4b76299b00","signature":"c2b78ad093c430807ae5afa6c56a12577970453c0d23a5a39249d4c9f4f04c9a"},{"version":"0eff4dba15e29507a1f2499e6a23fe3ceb2ea9e3f72aa1be8ebfc785ec2653b2","signature":"0021c82702cbc8336659d29093be230487549cb7a8e2221ca466141219e912c0"},{"version":"156bbde259e9d75f624ad232b8ba45c779a02641517a5942f2adb37026e8cba8","signature":"1366457bfa6fe9f6b8467010221ad246f31384669e9f50c6fabffcdde222ef96"},{"version":"5547b082896f113bbe4c189a7f5aba61443bef27fdefc8874739478da653f39c","signature":"b1aac86d982a813a1aa943732dbd6449a660c77863576ab3b60bf1fcfc3aed93"},{"version":"038e95ece3188b37d0d2b3d2ddd64b58c08469fc6ec03bd996e21d2bc8642953","signature":"6081e8c952d42022db343e29b00a496fe6cfdc053d6ab50c6c28e27d6c50cb03"},{"version":"6f4839cfec9c4ebc9fe39d0659616f66b6259fdd8c02d06f56ae9d2b325488dd","signature":"a08e7f1d62f8400a294a1b31bf5cba6b4017fce451c1fcbc7a4bf35e6b9a6f18"},{"version":"39839643d823b7601a645cd7cc6614dc0f0c612e357d22f4db2458e22df01e6e","signature":"302280c749ac14a35a70667829db1fb7118cc298f4a9c98dbde1a69899158aeb"},{"version":"0ae539fcb9305ceed033478dad6057ca783cd05639a5ffec46236b181329b73d","signature":"fb2248233522d52bc64ce2a6cbbb7a48063c27fe937586687f86ec9e59f356be"},{"version":"b9181bea4a29329594d5c5a53bec78507fcc67ad0c5afa2a580dc51d6f19a4f7","signature":"4f7d54c603949113f45505330caae6f41e8dbb59841d4ae20b42307dc4579835"},"09df3b4f1c937f02e7fee2836d4c4d7a63e66db70fd4d4e97126f4542cc21d9d","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"4d719cfab49ae4045d15cb6bed0f38ad3d7d6eb7f277d2603502a0f862ca3182","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"5a856afb15f9dc9983faa391dde989826995a33983c1cccb173e9606688e9709","affectsGlobalScope":true},"546ab07e19116d935ad982e76a223275b53bff7771dab94f433b7ab04652936e","7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba",{"version":"aefb5a4a209f756b580eb53ea771cca8aad411603926f307a5e5b8ec6b16dcf6","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","daece0d85f8783595463f509f7d82b03b2c210cc064cc793096b5f9c73a6db43","b86e1a45b29437f3a99bad4147cb9fe2357617e8008c0484568e5bb5138d6e13","b5b719a47968cd61a6f83f437236bb6fe22a39223b6620da81ef89f5d7a78fb7","42c431e7965b641106b5e25ab3283aa4865ca7bb9909610a2abfa6226e4348be","0b7e732af0a9599be28c091d6bd1cb22c856ec0d415d4749c087c3881ca07a56","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"bd27e23daf177808fc4b00c86f7d67d64dc42bbc3c855ea41bfed7a529150a1d","affectsGlobalScope":true},"3b4c85eea12187de9929a76792b98406e8778ce575caca8c574f06da82622c54","f788131a39c81e0c9b9e463645dd7132b5bc1beb609b0e31e5c1ceaea378b4df","0c236069ce7bded4f6774946e928e4b3601894d294054af47a553f7abcafe2c1","21894466693f64957b9bd4c80fa3ec7fdfd4efa9d1861e070aca23f10220c9b2","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac",{"version":"6ec93c745c5e3e25e278fa35451bf18ef857f733de7e57c15e7920ac463baa2a","affectsGlobalScope":true},"a5fe4cc622c3bf8e09ababde5f4096ceac53163eefcd95e9cd53f062ff9bb67a","30c2ec6abf6aaa60eb4f32fb1235531506b7961c6d1bdc7430711aec8fd85295","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"603df4e91a0c2fd815c6619927468373fb00b6c13066334982ee684f5c7d40b2","affectsGlobalScope":true},{"version":"d48009cbe8a30a504031cc82e1286f78fed33b7a42abf7602c23b5547b382563","affectsGlobalScope":true},"7aaeb5e62f90e1b2be0fc4844df78cdb1be15c22b427bc6c39d57308785b8f10","3ba30205a029ebc0c91d7b1ab4da73f6277d730ca1fc6692d5a9144c6772c76b","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","458b216959c231df388a5de9dcbcafd4b4ca563bc3784d706d0455467d7d4942","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","f8c87b19eae111f8720b0345ab301af8d81add39621b63614dfc2d15fd6f140a","831c22d257717bf2cbb03afe9c4bcffc5ccb8a2074344d4238bf16d3a857bb12",{"version":"24ba151e213906027e2b1f5223d33575a3612b0234a0e2b56119520bbe0e594b","affectsGlobalScope":true},{"version":"cbf046714f3a3ba2544957e1973ac94aa819fa8aa668846fa8de47eb1c41b0b2","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","eae74e3d50820f37c72c0679fed959cd1e63c98f6a146a55b8c4361582fa6a52","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"aed89e3c18f4c659ee8153a76560dffda23e2d801e1e60d7a67abd84bc555f8d","affectsGlobalScope":true},{"version":"527e6e7c1e60184879fe97517f0d51dbfab72c4625cef50179f27f46d7fd69a1","affectsGlobalScope":true},"e393915d3dc385e69c0e2390739c87b2d296a610662eb0b1cb85224e55992250","2f940651c2f30e6b29f8743fae3f40b7b1c03615184f837132b56ea75edad08b","5749c327c3f789f658072f8340786966c8b05ea124a56c1d8d60e04649495a4d",{"version":"c9d62b2a51b2ff166314d8be84f6881a7fcbccd37612442cf1c70d27d5352f50","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"652ee9c5103e89102d87bc20d167a02a0e3e5e53665674466c8cfea8a9e418c7"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"emitDeclarationOnly":false,"esModuleInterop":false,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":1,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":99},"fileIdsList":[[43,236],[43,49,50,51,52,53,54,55,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,207,236],[43,101,125,236],[43,49,127,236],[43,125,236],[43,101,103,125,236],[43,49,50,127,236],[43,49,125,236],[43,49,126,127,236],[43,103,125,236],[43,49,126,236],[43,49,50,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,236],[43,103,125,126,154,155,236],[43,49,156,236],[43,156,236],[48,236],[158,236],[193,236],[194,199,227,236],[195,206,207,214,224,235,236],[195,196,206,214,236],[197,236],[198,199,207,215,236],[199,224,232,236],[200,202,206,214,236],[201,236],[202,203,236],[206,236],[204,206,236],[206,207,208,224,235,236],[206,207,208,221,224,227,236],[191,236,240],[236],[202,206,209,214,224,235,236],[206,207,209,210,214,224,232,235,236],[209,211,224,232,235,236],[158,159,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242],[206,212,236],[213,235,236,240],[202,206,214,224,236],[215,236],[216,236],[193,217,236],[218,234,236,240],[219,236],[220,236],[206,221,222,236],[221,223,236,238],[194,206,224,225,226,227,236],[194,224,226,236],[224,225,236],[227,236],[228,236],[193,224,236],[206,230,231,236],[230,231,236],[199,214,224,232,236],[233,236],[214,234,236],[194,209,220,235,236],[199,236],[224,236,237],[213,236,238],[236,239],[194,199,206,208,217,224,235,236,238,240],[224,236,241],[59,236],[59,60,61,62,63,236],[65,66,236],[67,236],[65,66,67,236],[74,236],[69,70,71,72,73,236],[69,70,71,72,73,74,236],[58,64,68,75,81,85,87,90,94,99,236],[82,83,84,236],[82,83,236],[84,236],[76,77,78,79,80,236],[80,236],[76,77,78,79,236],[91,92,93,236],[91,92,236],[93,236],[95,96,97,98,236],[95,96,97,236],[98,236],[57,236],[88,89,236],[88,236],[89,236],[86,236],[56,100,236],[46,236],[44,45,195,206,207,224,236],[47,236],[168,172,235,236],[168,224,235,236],[163,236],[165,168,232,235,236],[214,232,236],[236,243],[163,236,243],[165,168,214,235,236],[160,161,164,167,194,206,224,235,236],[160,166,236],[164,168,194,227,235,236,243],[194,236,243],[184,194,236,243],[162,163,236,243],[168,236],[162,163,164,165,166,167,168,169,170,172,173,174,175,176,177,178,179,180,181,182,183,185,186,187,188,189,190,236],[168,175,176,236],[166,168,176,177,236],[167,236],[160,163,168,236],[168,172,176,177,236],[172,236],[166,168,171,235,236],[160,165,166,168,172,175,236],[194,224,236],[163,168,184,194,236,240,243],[46,49,51,52,53,54,55,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124],[46,125],[49,127],[125],[49,125],[49],[49,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153],[103,125,126,154,155],[49,156],[156]],"referencedMap":[[103,1],[125,2],[126,1],[105,3],[136,4],[54,5],[132,4],[114,6],[113,6],[146,4],[141,4],[119,5],[143,4],[120,5],[53,5],[139,4],[112,5],[134,4],[133,4],[116,3],[115,6],[150,4],[153,4],[123,3],[122,5],[147,4],[124,6],[149,4],[148,4],[118,5],[140,4],[117,5],[108,5],[138,7],[110,5],[129,4],[144,4],[121,5],[142,4],[55,5],[137,4],[51,8],[109,5],[130,9],[111,5],[128,9],[52,5],[135,4],[104,10],[131,9],[107,5],[127,11],[154,12],[106,3],[102,3],[152,4],[151,7],[145,4],[156,13],[155,14],[157,15],[49,16],[158,17],[159,17],[193,18],[194,19],[195,20],[196,21],[197,22],[198,23],[199,24],[200,25],[201,26],[202,27],[203,27],[205,28],[204,29],[206,28],[207,30],[208,31],[192,32],[242,33],[209,34],[210,35],[211,36],[243,37],[212,38],[213,39],[214,40],[215,41],[216,42],[217,43],[218,44],[219,45],[220,46],[221,47],[222,47],[223,48],[224,49],[226,50],[225,51],[227,52],[228,53],[229,54],[230,55],[231,56],[232,57],[233,58],[234,59],[235,60],[236,61],[237,62],[238,63],[239,64],[240,65],[241,66],[59,33],[63,67],[64,68],[62,67],[60,67],[61,67],[67,69],[65,70],[66,70],[68,71],[71,72],[73,72],[74,73],[72,72],[70,72],[69,72],[75,74],[100,75],[85,76],[84,77],[82,78],[83,78],[81,79],[78,80],[80,81],[79,80],[77,80],[76,80],[94,82],[93,83],[91,84],[92,84],[99,85],[98,86],[95,87],[96,87],[97,87],[58,88],[57,33],[90,89],[89,90],[88,91],[87,92],[86,33],[56,33],[101,93],[44,33],[45,94],[46,95],[48,96],[47,94],[43,33],[8,33],[9,33],[11,33],[10,33],[2,33],[12,33],[13,33],[14,33],[15,33],[16,33],[17,33],[18,33],[19,33],[3,33],[4,33],[23,33],[20,33],[21,33],[22,33],[24,33],[25,33],[26,33],[5,33],[27,33],[28,33],[29,33],[30,33],[6,33],[31,33],[32,33],[33,33],[34,33],[7,33],[35,33],[40,33],[41,33],[36,33],[37,33],[38,33],[39,33],[1,33],[42,33],[175,97],[182,98],[174,97],[189,99],[166,100],[165,101],[188,102],[183,103],[186,104],[168,105],[167,106],[163,107],[162,108],[185,109],[164,110],[169,111],[170,33],[173,111],[160,33],[191,112],[190,111],[177,113],[178,114],[180,115],[176,116],[179,117],[184,102],[171,118],[172,119],[181,120],[161,121],[187,122],[50,1]],"exportedModulesMap":[[125,123],[105,124],[136,125],[54,124],[132,125],[114,124],[113,124],[146,125],[141,125],[119,126],[143,125],[120,126],[53,124],[139,125],[112,126],[134,125],[133,125],[116,124],[115,124],[150,125],[153,125],[123,124],[122,124],[147,125],[124,124],[149,125],[148,125],[118,126],[140,125],[117,126],[108,124],[138,125],[110,124],[129,125],[144,125],[121,126],[142,125],[55,124],[137,125],[51,127],[109,124],[130,125],[111,124],[128,125],[52,124],[135,125],[104,124],[131,125],[107,124],[127,128],[154,129],[106,124],[102,124],[152,125],[151,125],[145,125],[156,130],[155,131],[157,132],[49,16],[158,17],[159,17],[193,18],[194,19],[195,20],[196,21],[197,22],[198,23],[199,24],[200,25],[201,26],[202,27],[203,27],[205,28],[204,29],[206,28],[207,30],[208,31],[192,32],[242,33],[209,34],[210,35],[211,36],[243,37],[212,38],[213,39],[214,40],[215,41],[216,42],[217,43],[218,44],[219,45],[220,46],[221,47],[222,47],[223,48],[224,49],[226,50],[225,51],[227,52],[228,53],[229,54],[230,55],[231,56],[232,57],[233,58],[234,59],[235,60],[236,61],[237,62],[238,63],[239,64],[240,65],[241,66],[59,33],[63,67],[64,68],[62,67],[60,67],[61,67],[67,69],[65,70],[66,70],[68,71],[71,72],[73,72],[74,73],[72,72],[70,72],[69,72],[75,74],[100,75],[85,76],[84,77],[82,78],[83,78],[81,79],[78,80],[80,81],[79,80],[77,80],[76,80],[94,82],[93,83],[91,84],[92,84],[99,85],[98,86],[95,87],[96,87],[97,87],[58,88],[57,33],[90,89],[89,90],[88,91],[87,92],[86,33],[56,33],[101,93],[44,33],[45,94],[46,95],[48,96],[47,94],[43,33],[8,33],[9,33],[11,33],[10,33],[2,33],[12,33],[13,33],[14,33],[15,33],[16,33],[17,33],[18,33],[19,33],[3,33],[4,33],[23,33],[20,33],[21,33],[22,33],[24,33],[25,33],[26,33],[5,33],[27,33],[28,33],[29,33],[30,33],[6,33],[31,33],[32,33],[33,33],[34,33],[7,33],[35,33],[40,33],[41,33],[36,33],[37,33],[38,33],[39,33],[1,33],[42,33],[175,97],[182,98],[174,97],[189,99],[166,100],[165,101],[188,102],[183,103],[186,104],[168,105],[167,106],[163,107],[162,108],[185,109],[164,110],[169,111],[170,33],[173,111],[160,33],[191,112],[190,111],[177,113],[178,114],[180,115],[176,116],[179,117],[184,102],[171,118],[172,119],[181,120],[161,121],[187,122]],"semanticDiagnosticsPerFile":[103,125,126,105,136,54,132,114,113,146,141,119,143,120,53,139,112,134,133,116,115,150,153,123,122,147,124,149,148,118,140,117,108,138,110,129,144,121,142,55,137,51,109,130,111,128,52,135,104,131,107,127,154,106,102,152,151,145,156,155,157,49,158,159,193,194,195,196,197,198,199,200,201,202,203,205,204,206,207,208,192,242,209,210,211,243,212,213,214,215,216,217,218,219,220,221,222,223,224,226,225,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,59,63,64,62,60,61,67,65,66,68,71,73,74,72,70,69,75,100,85,84,82,83,81,78,80,79,77,76,94,93,91,92,99,98,95,96,97,58,57,90,89,88,87,86,56,101,44,45,46,48,47,43,8,9,11,10,2,12,13,14,15,16,17,18,19,3,4,23,20,21,22,24,25,26,5,27,28,29,30,6,31,32,33,34,7,35,40,41,36,37,38,39,1,42,175,182,174,189,166,165,188,183,186,168,167,163,162,185,164,169,170,173,160,191,190,177,178,180,176,179,184,171,172,181,161,187,50],"latestChangedDtsFile":"./lib/index.d.ts"},"version":"4.8.3"}