@alfresco/adf-content-services 8.1.0-15972188736 → 8.1.0-15979090800

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 (408) hide show
  1. package/esm2022/adf-content-services.mjs +5 -0
  2. package/esm2022/lib/agent/index.mjs +18 -0
  3. package/esm2022/lib/agent/public-api.mjs +18 -0
  4. package/esm2022/lib/agent/services/agent.service.mjs +60 -0
  5. package/esm2022/lib/alfresco-icon/alfresco-icon.component.mjs +27 -0
  6. package/esm2022/lib/api-factories/alfresco-api-no-auth.service.mjs +42 -0
  7. package/esm2022/lib/api-factories/alfresco-api-v2-loader.service.mjs +77 -0
  8. package/esm2022/lib/api-factories/index.mjs +18 -0
  9. package/esm2022/lib/api-factories/public-api.mjs +19 -0
  10. package/esm2022/lib/aspect-list/aspect-list-dialog-data.interface.mjs +18 -0
  11. package/esm2022/lib/aspect-list/aspect-list-dialog.component.mjs +77 -0
  12. package/esm2022/lib/aspect-list/aspect-list.component.mjs +139 -0
  13. package/esm2022/lib/aspect-list/aspect-list.module.mjs +35 -0
  14. package/esm2022/lib/aspect-list/index.mjs +18 -0
  15. package/esm2022/lib/aspect-list/public-api.mjs +24 -0
  16. package/esm2022/lib/aspect-list/services/aspect-list.service.mjs +83 -0
  17. package/esm2022/lib/aspect-list/services/dialog-aspect-list.service.mjs +86 -0
  18. package/esm2022/lib/aspect-list/services/node-aspect.service.mjs +52 -0
  19. package/esm2022/lib/auth-loader/content-auth-loader-factory.mjs +26 -0
  20. package/esm2022/lib/auth-loader/content-auth-loader.service.mjs +42 -0
  21. package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +166 -0
  22. package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +35 -0
  23. package/esm2022/lib/breadcrumb/dropdown-breadcrumb.component.mjs +65 -0
  24. package/esm2022/lib/breadcrumb/index.mjs +18 -0
  25. package/esm2022/lib/breadcrumb/public-api.mjs +20 -0
  26. package/esm2022/lib/category/categories-management/categories-management-mode.mjs +22 -0
  27. package/esm2022/lib/category/categories-management/categories-management.component.mjs +308 -0
  28. package/esm2022/lib/category/category.module.mjs +33 -0
  29. package/esm2022/lib/category/index.mjs +18 -0
  30. package/esm2022/lib/category/models/category-node.interface.mjs +18 -0
  31. package/esm2022/lib/category/public-api.mjs +23 -0
  32. package/esm2022/lib/category/services/category-tree-datasource.service.mjs +80 -0
  33. package/esm2022/lib/category/services/category.service.mjs +159 -0
  34. package/esm2022/lib/common/events/file.event.mjs +46 -0
  35. package/esm2022/lib/common/index.mjs +18 -0
  36. package/esm2022/lib/common/interfaces/saved-search.interface.mjs +18 -0
  37. package/esm2022/lib/common/interfaces/search-configuration.interface.mjs +18 -0
  38. package/esm2022/lib/common/mocks/ecm-user.service.mock.mjs +37 -0
  39. package/esm2022/lib/common/models/allowable-operations.enum.mjs +30 -0
  40. package/esm2022/lib/common/models/ecm-company.model.mjs +19 -0
  41. package/esm2022/lib/common/models/ecm-user.model.mjs +45 -0
  42. package/esm2022/lib/common/models/file.model.mjs +53 -0
  43. package/esm2022/lib/common/models/node-metadata.model.mjs +23 -0
  44. package/esm2022/lib/common/models/permissions.enum.mjs +32 -0
  45. package/esm2022/lib/common/public-api.mjs +37 -0
  46. package/esm2022/lib/common/services/card-view-content-update.service.mjs +55 -0
  47. package/esm2022/lib/common/services/content.service.mjs +180 -0
  48. package/esm2022/lib/common/services/discovery-api.service.mjs +79 -0
  49. package/esm2022/lib/common/services/favorites-api.service.mjs +84 -0
  50. package/esm2022/lib/common/services/nodes-api.service.mjs +251 -0
  51. package/esm2022/lib/common/services/people-content.service.mjs +138 -0
  52. package/esm2022/lib/common/services/rendition.service.mjs +270 -0
  53. package/esm2022/lib/common/services/saved-searches.service.mjs +206 -0
  54. package/esm2022/lib/common/services/sites.service.mjs +243 -0
  55. package/esm2022/lib/common/services/upload.service.mjs +391 -0
  56. package/esm2022/lib/content-metadata/components/content-metadata/content-metadata-header.component.mjs +54 -0
  57. package/esm2022/lib/content-metadata/components/content-metadata/content-metadata.component.mjs +490 -0
  58. package/esm2022/lib/content-metadata/components/content-metadata-card/content-metadata-card.component.mjs +128 -0
  59. package/esm2022/lib/content-metadata/content-metadata.module.mjs +36 -0
  60. package/esm2022/lib/content-metadata/index.mjs +18 -0
  61. package/esm2022/lib/content-metadata/interfaces/aspect-oriented-config.interface.mjs +18 -0
  62. package/esm2022/lib/content-metadata/interfaces/card-view-group.interface.mjs +18 -0
  63. package/esm2022/lib/content-metadata/interfaces/content-metadata-config.interface.mjs +18 -0
  64. package/esm2022/lib/content-metadata/interfaces/content-metadata-custom-panel.interface.mjs +18 -0
  65. package/esm2022/lib/content-metadata/interfaces/content-metadata-panel.interface.mjs +18 -0
  66. package/esm2022/lib/content-metadata/interfaces/content-metadata.interfaces.mjs +28 -0
  67. package/esm2022/lib/content-metadata/interfaces/indifferent-config.interface.mjs +18 -0
  68. package/esm2022/lib/content-metadata/interfaces/layout-oriented-config.interface.mjs +18 -0
  69. package/esm2022/lib/content-metadata/interfaces/organised-property-group.interface.mjs +18 -0
  70. package/esm2022/lib/content-metadata/interfaces/preset-config.interface.mjs +18 -0
  71. package/esm2022/lib/content-metadata/interfaces/property-group.interface.mjs +18 -0
  72. package/esm2022/lib/content-metadata/interfaces/property.interface.mjs +18 -0
  73. package/esm2022/lib/content-metadata/public-api.mjs +31 -0
  74. package/esm2022/lib/content-metadata/services/basic-properties.service.mjs +107 -0
  75. package/esm2022/lib/content-metadata/services/config/aspect-oriented-config.service.mjs +106 -0
  76. package/esm2022/lib/content-metadata/services/config/content-metadata-config.factory.mjs +76 -0
  77. package/esm2022/lib/content-metadata/services/config/indifferent-config.service.mjs +40 -0
  78. package/esm2022/lib/content-metadata/services/config/layout-oriented-config.service.mjs +108 -0
  79. package/esm2022/lib/content-metadata/services/config/property-group-reader.mjs +33 -0
  80. package/esm2022/lib/content-metadata/services/content-metadata.service.mjs +99 -0
  81. package/esm2022/lib/content-metadata/services/content-type-property.service.mjs +134 -0
  82. package/esm2022/lib/content-metadata/services/property-descriptors.service.mjs +52 -0
  83. package/esm2022/lib/content-metadata/services/property-groups-translator.service.mjs +169 -0
  84. package/esm2022/lib/content-node-selector/content-node-dialog.service.mjs +256 -0
  85. package/esm2022/lib/content-node-selector/content-node-selector-panel/content-node-selector-panel.component.mjs +617 -0
  86. package/esm2022/lib/content-node-selector/content-node-selector-panel/content-node-selector-panel.service.mjs +66 -0
  87. package/esm2022/lib/content-node-selector/content-node-selector.component-data.interface.mjs +18 -0
  88. package/esm2022/lib/content-node-selector/content-node-selector.component.mjs +205 -0
  89. package/esm2022/lib/content-node-selector/content-node-selector.module.mjs +50 -0
  90. package/esm2022/lib/content-node-selector/index.mjs +18 -0
  91. package/esm2022/lib/content-node-selector/name-location-cell/name-location-cell.component.mjs +48 -0
  92. package/esm2022/lib/content-node-selector/public-api.mjs +25 -0
  93. package/esm2022/lib/content-node-selector/site-dropdown/sites-dropdown.component.mjs +168 -0
  94. package/esm2022/lib/content-node-share/content-node-share.dialog.mjs +287 -0
  95. package/esm2022/lib/content-node-share/content-node-share.directive.mjs +102 -0
  96. package/esm2022/lib/content-node-share/content-node-share.module.mjs +35 -0
  97. package/esm2022/lib/content-node-share/content-node-share.settings.mjs +18 -0
  98. package/esm2022/lib/content-node-share/index.mjs +18 -0
  99. package/esm2022/lib/content-node-share/public-api.mjs +22 -0
  100. package/esm2022/lib/content-node-share/services/shared-links-api.service.mjs +83 -0
  101. package/esm2022/lib/content-type/content-type-dialog.component.mjs +57 -0
  102. package/esm2022/lib/content-type/content-type-metadata.interface.mjs +18 -0
  103. package/esm2022/lib/content-type/content-type.service.mjs +52 -0
  104. package/esm2022/lib/content-type/index.mjs +20 -0
  105. package/esm2022/lib/content.module.mjs +277 -0
  106. package/esm2022/lib/dialogs/category-selector/category-selector.dialog.mjs +51 -0
  107. package/esm2022/lib/dialogs/dialog.module.mjs +52 -0
  108. package/esm2022/lib/dialogs/download-zip/download-zip.dialog.mjs +111 -0
  109. package/esm2022/lib/dialogs/download-zip/download-zip.dialog.module.mjs +38 -0
  110. package/esm2022/lib/dialogs/download-zip/services/download-zip.service.mjs +66 -0
  111. package/esm2022/lib/dialogs/folder/folder-name.validators.mjs +44 -0
  112. package/esm2022/lib/dialogs/folder/folder.dialog.mjs +146 -0
  113. package/esm2022/lib/dialogs/index.mjs +18 -0
  114. package/esm2022/lib/dialogs/library/library.dialog.mjs +224 -0
  115. package/esm2022/lib/dialogs/node-lock/node-lock.dialog.mjs +115 -0
  116. package/esm2022/lib/dialogs/public-api.mjs +25 -0
  117. package/esm2022/lib/directives/auto-focus.directive.mjs +38 -0
  118. package/esm2022/lib/directives/check-allowable-operation.directive.mjs +126 -0
  119. package/esm2022/lib/directives/content-directive.module.mjs +75 -0
  120. package/esm2022/lib/directives/index.mjs +18 -0
  121. package/esm2022/lib/directives/library-favorite.directive.mjs +119 -0
  122. package/esm2022/lib/directives/library-membership.directive.mjs +202 -0
  123. package/esm2022/lib/directives/node-counter.directive.mjs +59 -0
  124. package/esm2022/lib/directives/node-delete.directive.mjs +177 -0
  125. package/esm2022/lib/directives/node-download.directive.mjs +138 -0
  126. package/esm2022/lib/directives/node-favorite.directive.mjs +193 -0
  127. package/esm2022/lib/directives/node-lock.directive.mjs +57 -0
  128. package/esm2022/lib/directives/node-restore.directive.mjs +218 -0
  129. package/esm2022/lib/directives/public-api.mjs +28 -0
  130. package/esm2022/lib/document-list/components/content-action/content-action-list.component.mjs +60 -0
  131. package/esm2022/lib/document-list/components/content-action/content-action.component.mjs +196 -0
  132. package/esm2022/lib/document-list/components/document-list.component.mjs +963 -0
  133. package/esm2022/lib/document-list/components/document-list.token.mjs +21 -0
  134. package/esm2022/lib/document-list/components/file-auto-download/file-auto-download.component.mjs +42 -0
  135. package/esm2022/lib/document-list/components/filter-header/filter-header.component.mjs +107 -0
  136. package/esm2022/lib/document-list/components/library-name-column/library-name-column.component.mjs +131 -0
  137. package/esm2022/lib/document-list/components/library-role-column/library-role-column.component.mjs +91 -0
  138. package/esm2022/lib/document-list/components/library-status-column/library-status-column.component.mjs +86 -0
  139. package/esm2022/lib/document-list/components/name-column/name-column.component.mjs +118 -0
  140. package/esm2022/lib/document-list/components/node.event.mjs +30 -0
  141. package/esm2022/lib/document-list/components/trashcan-name-column/trashcan-name-column.component.mjs +83 -0
  142. package/esm2022/lib/document-list/data/image-resolver.model.mjs +18 -0
  143. package/esm2022/lib/document-list/data/row-filter.model.mjs +18 -0
  144. package/esm2022/lib/document-list/data/share-data-row.model.mjs +102 -0
  145. package/esm2022/lib/document-list/data/share-datatable-adapter.mjs +258 -0
  146. package/esm2022/lib/document-list/document-list.module.mjs +75 -0
  147. package/esm2022/lib/document-list/index.mjs +18 -0
  148. package/esm2022/lib/document-list/interfaces/document-list-loader.interface.mjs +18 -0
  149. package/esm2022/lib/document-list/models/content-action.model.mjs +59 -0
  150. package/esm2022/lib/document-list/models/document-folder.model.mjs +23 -0
  151. package/esm2022/lib/document-list/models/node-action.enum.mjs +27 -0
  152. package/esm2022/lib/document-list/models/permissions-style.model.mjs +27 -0
  153. package/esm2022/lib/document-list/models/permissions.model.mjs +26 -0
  154. package/esm2022/lib/document-list/models/preset.model.mjs +257 -0
  155. package/esm2022/lib/document-list/public-api.mjs +47 -0
  156. package/esm2022/lib/document-list/services/custom-resources.service.mjs +378 -0
  157. package/esm2022/lib/document-list/services/document-actions.service.mjs +142 -0
  158. package/esm2022/lib/document-list/services/document-list.service.mjs +175 -0
  159. package/esm2022/lib/document-list/services/folder-actions.service.mjs +137 -0
  160. package/esm2022/lib/document-list/services/lock.service.mjs +72 -0
  161. package/esm2022/lib/document-list/services/node-actions.service.mjs +122 -0
  162. package/esm2022/lib/group/index.mjs +18 -0
  163. package/esm2022/lib/group/public-api.mjs +18 -0
  164. package/esm2022/lib/group/services/group.service.mjs +84 -0
  165. package/esm2022/lib/infinite-scroll-datasource/index.mjs +18 -0
  166. package/esm2022/lib/infinite-scroll-datasource/infinite-scroll-datasource.mjs +69 -0
  167. package/esm2022/lib/infinite-scroll-datasource/public-api.mjs +18 -0
  168. package/esm2022/lib/interfaces/base-card-view-content-update.interface.mjs +18 -0
  169. package/esm2022/lib/interfaces/index.mjs +18 -0
  170. package/esm2022/lib/interfaces/library-entity.interface.mjs +18 -0
  171. package/esm2022/lib/interfaces/library-membership-error-event.interface.mjs +18 -0
  172. package/esm2022/lib/interfaces/library-membership-toggle-event.interface.mjs +18 -0
  173. package/esm2022/lib/interfaces/node-allowable-operation-subject.interface.mjs +18 -0
  174. package/esm2022/lib/interfaces/public-api.mjs +23 -0
  175. package/esm2022/lib/interfaces/restore-message-model.interface.mjs +19 -0
  176. package/esm2022/lib/legal-hold/index.mjs +18 -0
  177. package/esm2022/lib/legal-hold/public-api.mjs +18 -0
  178. package/esm2022/lib/legal-hold/services/legal-hold.service.mjs +136 -0
  179. package/esm2022/lib/material.module.mjs +183 -0
  180. package/esm2022/lib/mock/alfresco-api.service.mock.mjs +43 -0
  181. package/esm2022/lib/mock/date-range-search-filter.mock.mjs +65 -0
  182. package/esm2022/lib/mock/document-library.model.mock.mjs +84 -0
  183. package/esm2022/lib/mock/document-list.component.mock.mjs +364 -0
  184. package/esm2022/lib/mock/index.mjs +18 -0
  185. package/esm2022/lib/mock/new-version-uploader.service.mock.mjs +161 -0
  186. package/esm2022/lib/mock/public-api.mjs +27 -0
  187. package/esm2022/lib/mock/search-filter-mock.mjs +637 -0
  188. package/esm2022/lib/mock/search-query.mock.mjs +40 -0
  189. package/esm2022/lib/mock/search.component.mock.mjs +165 -0
  190. package/esm2022/lib/mock/search.service.mock.mjs +61 -0
  191. package/esm2022/lib/mock/sites-dropdown.component.mock.mjs +281 -0
  192. package/esm2022/lib/new-version-uploader/index.mjs +18 -0
  193. package/esm2022/lib/new-version-uploader/models/index.mjs +18 -0
  194. package/esm2022/lib/new-version-uploader/models/new-version-uploader.model.mjs +24 -0
  195. package/esm2022/lib/new-version-uploader/new-version-uploader.dialog.mjs +74 -0
  196. package/esm2022/lib/new-version-uploader/new-version-uploader.module.mjs +33 -0
  197. package/esm2022/lib/new-version-uploader/new-version-uploader.service.mjs +103 -0
  198. package/esm2022/lib/new-version-uploader/public-api.mjs +21 -0
  199. package/esm2022/lib/node-comments/index.mjs +18 -0
  200. package/esm2022/lib/node-comments/node-comments.component.mjs +44 -0
  201. package/esm2022/lib/node-comments/node-comments.module.mjs +33 -0
  202. package/esm2022/lib/node-comments/public-api.mjs +20 -0
  203. package/esm2022/lib/node-comments/services/node-comments.service.mjs +85 -0
  204. package/esm2022/lib/permission-manager/components/add-permission/add-permission-dialog-data.interface.mjs +18 -0
  205. package/esm2022/lib/permission-manager/components/add-permission/add-permission-dialog.component.mjs +123 -0
  206. package/esm2022/lib/permission-manager/components/add-permission/add-permission-panel.component.mjs +102 -0
  207. package/esm2022/lib/permission-manager/components/add-permission/add-permission.component.mjs +69 -0
  208. package/esm2022/lib/permission-manager/components/add-permission/search-config-permission.service.mjs +45 -0
  209. package/esm2022/lib/permission-manager/components/inherited-button.directive.mjs +67 -0
  210. package/esm2022/lib/permission-manager/components/node-path-column/node-path-column.component.mjs +56 -0
  211. package/esm2022/lib/permission-manager/components/permission-container/permission-container.component.mjs +102 -0
  212. package/esm2022/lib/permission-manager/components/permission-list/permission-list.component.mjs +87 -0
  213. package/esm2022/lib/permission-manager/components/permission-list/permission-list.service.mjs +219 -0
  214. package/esm2022/lib/permission-manager/components/pop-over.directive.mjs +134 -0
  215. package/esm2022/lib/permission-manager/components/user-icon-column/user-icon-column.component.mjs +88 -0
  216. package/esm2022/lib/permission-manager/components/user-name-column/user-name-column.component.mjs +82 -0
  217. package/esm2022/lib/permission-manager/components/user-role-column/user-role-column.component.mjs +111 -0
  218. package/esm2022/lib/permission-manager/index.mjs +18 -0
  219. package/esm2022/lib/permission-manager/models/member.model.mjs +59 -0
  220. package/esm2022/lib/permission-manager/models/permission.model.mjs +29 -0
  221. package/esm2022/lib/permission-manager/models/role.model.mjs +18 -0
  222. package/esm2022/lib/permission-manager/permission-manager.module.mjs +84 -0
  223. package/esm2022/lib/permission-manager/public-api.mjs +36 -0
  224. package/esm2022/lib/permission-manager/services/node-permission-dialog.service.mjs +78 -0
  225. package/esm2022/lib/permission-manager/services/node-permission.service.mjs +299 -0
  226. package/esm2022/lib/pipes/content-pipe.module.mjs +37 -0
  227. package/esm2022/lib/pipes/index.mjs +18 -0
  228. package/esm2022/lib/pipes/node-name-tooltip.pipe.mjs +69 -0
  229. package/esm2022/lib/pipes/public-api.mjs +19 -0
  230. package/esm2022/lib/prediction/index.mjs +18 -0
  231. package/esm2022/lib/prediction/public-api.mjs +18 -0
  232. package/esm2022/lib/prediction/services/index.mjs +18 -0
  233. package/esm2022/lib/prediction/services/prediction.service.mjs +57 -0
  234. package/esm2022/lib/search/components/empty-search-result.component.mjs +27 -0
  235. package/esm2022/lib/search/components/index.mjs +43 -0
  236. package/esm2022/lib/search/components/reset-search.directive.mjs +41 -0
  237. package/esm2022/lib/search/components/search-check-list/index.mjs +18 -0
  238. package/esm2022/lib/search/components/search-check-list/search-check-list.component.mjs +158 -0
  239. package/esm2022/lib/search/components/search-chip-autocomplete-input/index.mjs +18 -0
  240. package/esm2022/lib/search/components/search-chip-autocomplete-input/search-chip-autocomplete-input.component.mjs +169 -0
  241. package/esm2022/lib/search/components/search-chip-list/search-chip-list.component.mjs +46 -0
  242. package/esm2022/lib/search/components/search-control.component.mjs +180 -0
  243. package/esm2022/lib/search/components/search-date-range-tabbed/index.mjs +22 -0
  244. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/date-range-type.mjs +23 -0
  245. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/in-last-date-type.mjs +23 -0
  246. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/search-date-range.component.mjs +196 -0
  247. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/search-date-range.mjs +18 -0
  248. package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range-tabbed.component.mjs +201 -0
  249. package/esm2022/lib/search/components/search-datetime-range/index.mjs +18 -0
  250. package/esm2022/lib/search/components/search-datetime-range/search-datetime-range.component.mjs +223 -0
  251. package/esm2022/lib/search/components/search-facet-field/index.mjs +18 -0
  252. package/esm2022/lib/search/components/search-facet-field/search-facet-field.component.mjs +132 -0
  253. package/esm2022/lib/search/components/search-filter/index.mjs +19 -0
  254. package/esm2022/lib/search/components/search-filter/search-filter-card/search-filter-card.component.mjs +45 -0
  255. package/esm2022/lib/search/components/search-filter/search-filter.component.mjs +80 -0
  256. package/esm2022/lib/search/components/search-filter-autocomplete-chips/index.mjs +18 -0
  257. package/esm2022/lib/search/components/search-filter-autocomplete-chips/search-filter-autocomplete-chips.component.mjs +154 -0
  258. package/esm2022/lib/search/components/search-filter-chips/index.mjs +23 -0
  259. package/esm2022/lib/search/components/search-filter-chips/search-facet-chip/search-facet-chip.component.mjs +104 -0
  260. package/esm2022/lib/search/components/search-filter-chips/search-facet-chip-tabbed/search-facet-chip-tabbed.component.mjs +109 -0
  261. package/esm2022/lib/search/components/search-filter-chips/search-facet-chip-tabbed/search-facet-tabbed-content.component.mjs +129 -0
  262. package/esm2022/lib/search/components/search-filter-chips/search-filter-chips.component.mjs +63 -0
  263. package/esm2022/lib/search/components/search-filter-chips/search-filter-menu-card/search-filter-menu-card.component.mjs +43 -0
  264. package/esm2022/lib/search/components/search-filter-chips/search-widget-chip/search-widget-chip.component.mjs +109 -0
  265. package/esm2022/lib/search/components/search-filter-container/index.mjs +18 -0
  266. package/esm2022/lib/search/components/search-filter-container/search-filter-container.component.mjs +122 -0
  267. package/esm2022/lib/search/components/search-filter-tabbed/index.mjs +19 -0
  268. package/esm2022/lib/search/components/search-filter-tabbed/search-filter-tab.directive.mjs +36 -0
  269. package/esm2022/lib/search/components/search-filter-tabbed/search-filter-tabbed.component.mjs +63 -0
  270. package/esm2022/lib/search/components/search-form/index.mjs +18 -0
  271. package/esm2022/lib/search/components/search-form/search-form.component.mjs +52 -0
  272. package/esm2022/lib/search/components/search-input/index.mjs +18 -0
  273. package/esm2022/lib/search/components/search-input/search-input.component.mjs +108 -0
  274. package/esm2022/lib/search/components/search-logical-filter/index.mjs +18 -0
  275. package/esm2022/lib/search/components/search-logical-filter/search-logical-filter.component.mjs +163 -0
  276. package/esm2022/lib/search/components/search-number-range/index.mjs +18 -0
  277. package/esm2022/lib/search/components/search-number-range/search-number-range.component.mjs +154 -0
  278. package/esm2022/lib/search/components/search-panel/index.mjs +18 -0
  279. package/esm2022/lib/search/components/search-panel/search-panel.component.mjs +44 -0
  280. package/esm2022/lib/search/components/search-properties/file-size-condition.mjs +18 -0
  281. package/esm2022/lib/search/components/search-properties/file-size-operator.enum.mjs +23 -0
  282. package/esm2022/lib/search/components/search-properties/file-size-unit.enum.mjs +26 -0
  283. package/esm2022/lib/search/components/search-properties/index.mjs +22 -0
  284. package/esm2022/lib/search/components/search-properties/search-properties.component.mjs +244 -0
  285. package/esm2022/lib/search/components/search-properties/search-properties.mjs +18 -0
  286. package/esm2022/lib/search/components/search-radio/index.mjs +18 -0
  287. package/esm2022/lib/search/components/search-radio/search-radio.component.mjs +145 -0
  288. package/esm2022/lib/search/components/search-slider/index.mjs +18 -0
  289. package/esm2022/lib/search/components/search-slider/search-slider.component.mjs +119 -0
  290. package/esm2022/lib/search/components/search-sorting-picker/index.mjs +18 -0
  291. package/esm2022/lib/search/components/search-sorting-picker/search-sorting-picker.component.mjs +77 -0
  292. package/esm2022/lib/search/components/search-text/index.mjs +18 -0
  293. package/esm2022/lib/search/components/search-text/search-text.component.mjs +134 -0
  294. package/esm2022/lib/search/components/search-widget-container/index.mjs +18 -0
  295. package/esm2022/lib/search/components/search-widget-container/search-widget-container.component.mjs +113 -0
  296. package/esm2022/lib/search/components/search.component.mjs +152 -0
  297. package/esm2022/lib/search/forms/index.mjs +19 -0
  298. package/esm2022/lib/search/forms/live-error-state-matcher.mjs +23 -0
  299. package/esm2022/lib/search/forms/search-term-validator.mjs +26 -0
  300. package/esm2022/lib/search/index.mjs +18 -0
  301. package/esm2022/lib/search/mocks/index.mjs +18 -0
  302. package/esm2022/lib/search/mocks/search.service.mock.mjs +56 -0
  303. package/esm2022/lib/search/models/autocomplete-option.interface.mjs +22 -0
  304. package/esm2022/lib/search/models/facet-field-bucket.interface.mjs +18 -0
  305. package/esm2022/lib/search/models/facet-field.interface.mjs +29 -0
  306. package/esm2022/lib/search/models/facet-query.interface.mjs +18 -0
  307. package/esm2022/lib/search/models/facet-widget.interface.mjs +18 -0
  308. package/esm2022/lib/search/models/filter-query.interface.mjs +18 -0
  309. package/esm2022/lib/search/models/filter-search.interface.mjs +18 -0
  310. package/esm2022/lib/search/models/index.mjs +34 -0
  311. package/esm2022/lib/search/models/response-facet-query-list.model.mjs +31 -0
  312. package/esm2022/lib/search/models/search-category.interface.mjs +18 -0
  313. package/esm2022/lib/search/models/search-configuration.interface.mjs +18 -0
  314. package/esm2022/lib/search/models/search-filter-list.model.mjs +148 -0
  315. package/esm2022/lib/search/models/search-form.interface.mjs +18 -0
  316. package/esm2022/lib/search/models/search-range.interface.mjs +18 -0
  317. package/esm2022/lib/search/models/search-sorting-definition.interface.mjs +18 -0
  318. package/esm2022/lib/search/models/search-widget-settings.interface.mjs +18 -0
  319. package/esm2022/lib/search/models/search-widget.interface.mjs +18 -0
  320. package/esm2022/lib/search/models/tabbed-facet-field.interface.mjs +18 -0
  321. package/esm2022/lib/search/public-api.mjs +24 -0
  322. package/esm2022/lib/search/search-configuration.token.mjs +19 -0
  323. package/esm2022/lib/search/search.module.mjs +192 -0
  324. package/esm2022/lib/search/services/base-query-builder.service.mjs +509 -0
  325. package/esm2022/lib/search/services/index.mjs +24 -0
  326. package/esm2022/lib/search/services/search-configuration.service.mjs +50 -0
  327. package/esm2022/lib/search/services/search-facet-filters.service.mjs +374 -0
  328. package/esm2022/lib/search/services/search-filter.service.mjs +56 -0
  329. package/esm2022/lib/search/services/search-header-query-builder.service.mjs +136 -0
  330. package/esm2022/lib/search/services/search-query-builder.service.mjs +48 -0
  331. package/esm2022/lib/search/services/search.service.mjs +89 -0
  332. package/esm2022/lib/search-ai/index.mjs +18 -0
  333. package/esm2022/lib/search-ai/models/search-ai-input-state.mjs +18 -0
  334. package/esm2022/lib/search-ai/public-api.mjs +19 -0
  335. package/esm2022/lib/search-ai/services/search-ai.service.mjs +103 -0
  336. package/esm2022/lib/security/index.mjs +18 -0
  337. package/esm2022/lib/security/public-api.mjs +18 -0
  338. package/esm2022/lib/security/services/models/security-controls-group-response.interface.mjs +18 -0
  339. package/esm2022/lib/security/services/models/security-controls-mark-response.interface.mjs +18 -0
  340. package/esm2022/lib/security/services/security-controls-groups-marks-security.service.mjs +274 -0
  341. package/esm2022/lib/security-options-loader/security-options-loader.service.mjs +43 -0
  342. package/esm2022/lib/services/alfresco-api.interface.mjs +18 -0
  343. package/esm2022/lib/services/alfresco-api.service.mjs +120 -0
  344. package/esm2022/lib/services/index.mjs +18 -0
  345. package/esm2022/lib/services/public-api.mjs +18 -0
  346. package/esm2022/lib/tag/index.mjs +18 -0
  347. package/esm2022/lib/tag/public-api.mjs +24 -0
  348. package/esm2022/lib/tag/services/tag.service.mjs +171 -0
  349. package/esm2022/lib/tag/tag-actions/tag-actions.component.mjs +114 -0
  350. package/esm2022/lib/tag/tag-list/tag-list.component.mjs +98 -0
  351. package/esm2022/lib/tag/tag-node-list/tag-node-list.component.mjs +80 -0
  352. package/esm2022/lib/tag/tag.module.mjs +37 -0
  353. package/esm2022/lib/tag/tags-creator/tags-creator-mode.mjs +27 -0
  354. package/esm2022/lib/tag/tags-creator/tags-creator.component.mjs +370 -0
  355. package/esm2022/lib/testing/content.testing.module.mjs +56 -0
  356. package/esm2022/lib/tree/components/tree.component.mjs +312 -0
  357. package/esm2022/lib/tree/index.mjs +18 -0
  358. package/esm2022/lib/tree/models/tree-context-menu-result.interface.mjs +18 -0
  359. package/esm2022/lib/tree/models/tree-node.interface.mjs +22 -0
  360. package/esm2022/lib/tree/models/tree-response.interface.mjs +18 -0
  361. package/esm2022/lib/tree/public-api.mjs +23 -0
  362. package/esm2022/lib/tree/services/tree.service.mjs +134 -0
  363. package/esm2022/lib/tree/tree.module.mjs +33 -0
  364. package/esm2022/lib/tree-view/components/tree-view.component.mjs +75 -0
  365. package/esm2022/lib/tree-view/data/tree-view-datasource.mjs +99 -0
  366. package/esm2022/lib/tree-view/index.mjs +18 -0
  367. package/esm2022/lib/tree-view/models/tree-view.model.mjs +28 -0
  368. package/esm2022/lib/tree-view/public-api.mjs +22 -0
  369. package/esm2022/lib/tree-view/services/tree-view.service.mjs +38 -0
  370. package/esm2022/lib/tree-view/tree-view.module.mjs +33 -0
  371. package/esm2022/lib/upload/components/base-upload/upload-base.mjs +176 -0
  372. package/esm2022/lib/upload/components/file-uploading-dialog.component.mjs +190 -0
  373. package/esm2022/lib/upload/components/file-uploading-list-row.component.mjs +92 -0
  374. package/esm2022/lib/upload/components/file-uploading-list.component.mjs +124 -0
  375. package/esm2022/lib/upload/components/upload-button.component.mjs +133 -0
  376. package/esm2022/lib/upload/components/upload-drag-area.component.mjs +112 -0
  377. package/esm2022/lib/upload/components/upload-files.event.mjs +41 -0
  378. package/esm2022/lib/upload/components/upload-version-button.component.mjs +54 -0
  379. package/esm2022/lib/upload/directives/file-draggable.directive.mjs +154 -0
  380. package/esm2022/lib/upload/directives/toggle-icon.directive.mjs +75 -0
  381. package/esm2022/lib/upload/index.mjs +18 -0
  382. package/esm2022/lib/upload/pipes/file-upload-error.pipe.mjs +39 -0
  383. package/esm2022/lib/upload/public-api.mjs +29 -0
  384. package/esm2022/lib/upload/upload.module.mjs +72 -0
  385. package/esm2022/lib/version-compatibility/index.mjs +18 -0
  386. package/esm2022/lib/version-compatibility/public-api.mjs +20 -0
  387. package/esm2022/lib/version-compatibility/version-compatibility-factory.mjs +26 -0
  388. package/esm2022/lib/version-compatibility/version-compatibility.directive.mjs +53 -0
  389. package/esm2022/lib/version-compatibility/version-compatibility.module.mjs +33 -0
  390. package/esm2022/lib/version-compatibility/version-compatibility.service.mjs +76 -0
  391. package/esm2022/lib/version-manager/content-version.service.mjs +53 -0
  392. package/esm2022/lib/version-manager/index.mjs +18 -0
  393. package/esm2022/lib/version-manager/public-api.mjs +23 -0
  394. package/esm2022/lib/version-manager/version-comparison.component.mjs +42 -0
  395. package/esm2022/lib/version-manager/version-list.component.mjs +215 -0
  396. package/esm2022/lib/version-manager/version-manager.component.mjs +145 -0
  397. package/esm2022/lib/version-manager/version-manager.module.mjs +48 -0
  398. package/esm2022/lib/version-manager/version-upload.component.mjs +154 -0
  399. package/esm2022/lib/viewer/alfresco-viewer.module.mjs +33 -0
  400. package/esm2022/lib/viewer/components/alfresco-viewer.component.mjs +408 -0
  401. package/esm2022/lib/viewer/index.mjs +18 -0
  402. package/esm2022/lib/viewer/public-api.mjs +19 -0
  403. package/esm2022/public-api.mjs +56 -0
  404. package/fesm2022/adf-content-services.mjs +761 -744
  405. package/fesm2022/adf-content-services.mjs.map +1 -1
  406. package/lib/new-version-uploader/new-version-uploader.dialog.scss +1 -1
  407. package/lib/upload/components/base-upload/upload-base.d.ts +1 -1
  408. package/package.json +5 -3
@@ -0,0 +1,171 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { AlfrescoApiService } from '../../services/alfresco-api.service';
18
+ import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
19
+ import { EventEmitter, Injectable, Output } from '@angular/core';
20
+ import { from } from 'rxjs';
21
+ import { map, tap } from 'rxjs/operators';
22
+ import { TagBody, TagsApi } from '@alfresco/js-api';
23
+ import * as i0 from "@angular/core";
24
+ import * as i1 from "../../services/alfresco-api.service";
25
+ import * as i2 from "@alfresco/adf-core";
26
+ export class TagService {
27
+ get tagsApi() {
28
+ this._tagsApi = this._tagsApi ?? new TagsApi(this.apiService.getInstance());
29
+ return this._tagsApi;
30
+ }
31
+ constructor(apiService, userPreferencesService, appConfigService) {
32
+ this.apiService = apiService;
33
+ this.userPreferencesService = userPreferencesService;
34
+ this.appConfigService = appConfigService;
35
+ /** Emitted when tag information is updated. */
36
+ this.refresh = new EventEmitter();
37
+ }
38
+ /**
39
+ * Gets a list of tags added to a node.
40
+ *
41
+ * @param nodeId ID of the target node
42
+ * @returns TagPaging object (defined in JS-API) containing the tags
43
+ */
44
+ getTagsByNodeId(nodeId) {
45
+ return from(this.tagsApi.listTagsForNode(nodeId));
46
+ }
47
+ /**
48
+ * Gets a list of all the tags already defined in the repository.
49
+ *
50
+ * @param opts Options supported by JS-API
51
+ * @param includedCounts True if count field should be included in response object for each tag, false otherwise.
52
+ * @returns TagPaging object (defined in JS-API) containing the tags
53
+ */
54
+ getAllTheTags(opts, includedCounts) {
55
+ return from(this.tagsApi.listTags({
56
+ include: includedCounts ? ['count'] : undefined,
57
+ ...opts
58
+ }));
59
+ }
60
+ /**
61
+ * Adds a tag to a node.
62
+ *
63
+ * @param nodeId ID of the target node
64
+ * @param tagName Name of the tag to add
65
+ * @returns TagEntry object (defined in JS-API) with details of the new tag
66
+ */
67
+ addTag(nodeId, tagName) {
68
+ const tagBody = new TagBody();
69
+ tagBody.tag = tagName;
70
+ return from(this.tagsApi.createTagForNode(nodeId, [tagBody])).pipe(tap((tagEntry) => this.refresh.emit(tagEntry)));
71
+ }
72
+ /**
73
+ * Removes a tag from a node.
74
+ *
75
+ * @param nodeId ID of the target node
76
+ * @param tag Name of the tag to remove
77
+ * @returns Null object when the operation completes
78
+ */
79
+ removeTag(nodeId, tag) {
80
+ return from(this.tagsApi.deleteTagFromNode(nodeId, tag)).pipe(tap(() => this.refresh.emit()));
81
+ }
82
+ /**
83
+ * Creates tags.
84
+ *
85
+ * @param tags list of tags to create.
86
+ * @returns Created tags.
87
+ */
88
+ createTags(tags) {
89
+ return from(this.tagsApi.createTags(tags)).pipe(tap((tagEntries) => this.refresh.emit(tagEntries)));
90
+ }
91
+ /**
92
+ * Update a tag
93
+ *
94
+ * @param tagId The identifier of a tag.
95
+ * @param tagBody The updated tag.
96
+ * @returns Updated tag.
97
+ */
98
+ updateTag(tagId, tagBody) {
99
+ return from(this.tagsApi.updateTag(tagId, tagBody)).pipe(tap((tagEntry) => this.refresh.emit(tagEntry)));
100
+ }
101
+ /**
102
+ * Find tags which name contains searched name.
103
+ *
104
+ * @param name Value for name which should be used during searching tags.
105
+ * @param sorting Object which configures sorting. OrderBy field specifies field used for sorting, direction specified ascending or descending direction.
106
+ * Default sorting is ascending by tag field.
107
+ * @param includedCounts True if count field should be included in response object for each tag, false otherwise.
108
+ * @param skipCount Specify how many first results should be skipped. Default 0.
109
+ * @param maxItems Specify max number of returned tags. Default is specified by UserPreferencesService.
110
+ * @returns Found tags which name contains searched name.
111
+ */
112
+ searchTags(name, sorting = { orderBy: 'tag', direction: 'asc' }, includedCounts, skipCount = 0, maxItems) {
113
+ maxItems = maxItems || this.userPreferencesService.paginationSize;
114
+ return this.getAllTheTags({
115
+ tag: `*${name}*`,
116
+ skipCount,
117
+ maxItems,
118
+ sorting,
119
+ matching: true
120
+ }, includedCounts);
121
+ }
122
+ /**
123
+ * Find tag which name matches exactly to passed name.
124
+ *
125
+ * @param name Value for name which should be used during finding exact tag.
126
+ * @returns Found tag which name matches exactly to passed name.
127
+ */
128
+ findTagByName(name) {
129
+ return this.getAllTheTags({ tag: name }).pipe(map((result) => result.list.entries[0]));
130
+ }
131
+ /**
132
+ * Deletes a tag with tagId.
133
+ * This will cause the tag to be removed from all nodes.
134
+ * You must have admin rights to delete a tag.
135
+ *
136
+ * @param tagId of the tag to be deleted
137
+ * @returns Null object when the operation completes
138
+ */
139
+ deleteTag(tagId) {
140
+ return from(this.tagsApi.deleteTag(tagId)).pipe(tap(() => this.refresh.emit()));
141
+ }
142
+ /**
143
+ * Assign tags to node. If tag is new then tag is also created additionally, if tag already exists then it is just assigned.
144
+ *
145
+ * @param nodeId Id of node to which tags should be assigned.
146
+ * @param tags List of tags to create and assign or just assign if they already exist.
147
+ * @returns Just linked tags to node or single tag if linked only one tag.
148
+ */
149
+ assignTagsToNode(nodeId, tags) {
150
+ return from(this.tagsApi.assignTagsToNode(nodeId, tags)).pipe(tap((data) => this.refresh.emit(data)));
151
+ }
152
+ /**
153
+ * Checks if tags plugin is enabled.
154
+ *
155
+ * @returns boolean true if tags plugin is enabled, false otherwise.
156
+ */
157
+ areTagsEnabled() {
158
+ return this.appConfigService.get('plugins.tagsEnabled', true);
159
+ }
160
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagService, deps: [{ token: i1.AlfrescoApiService }, { token: i2.UserPreferencesService }, { token: i2.AppConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
161
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagService, providedIn: 'root' }); }
162
+ }
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagService, decorators: [{
164
+ type: Injectable,
165
+ args: [{
166
+ providedIn: 'root'
167
+ }]
168
+ }], ctorParameters: () => [{ type: i1.AlfrescoApiService }, { type: i2.UserPreferencesService }, { type: i2.AppConfigService }], propDecorators: { refresh: [{
169
+ type: Output
170
+ }] } });
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3RhZy9zZXJ2aWNlcy90YWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQXVCLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7O0FBS3pFLE1BQU0sT0FBTyxVQUFVO0lBRW5CLElBQUksT0FBTztRQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFNRCxZQUNZLFVBQThCLEVBQzlCLHNCQUE4QyxFQUM5QyxnQkFBa0M7UUFGbEMsZUFBVSxHQUFWLFVBQVUsQ0FBb0I7UUFDOUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBUDlDLCtDQUErQztRQUUvQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQU0xQixDQUFDO0lBRUo7Ozs7O09BS0c7SUFDSCxlQUFl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QyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxTQUFTLENBQUMsS0FBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILGdCQUFnQixDQUFDLE1BQWMsRUFBRSxJQUFlO1FBQzVDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDOytHQWhLUSxVQUFVO21IQUFWLFVBQVUsY0FGUCxNQUFNOzs0RkFFVCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjsySkFVRyxPQUFPO3NCQUROLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEFsZnJlc2NvQXBpU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZnJlc2NvLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UsIFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGFnQm9keSwgVGFnRW50cnksIFRhZ1BhZ2luZywgVGFnc0FwaSB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFRhZ1NlcnZpY2Uge1xuICAgIHByaXZhdGUgX3RhZ3NBcGk6IFRhZ3NBcGk7XG4gICAgZ2V0IHRhZ3NBcGkoKTogVGFnc0FwaSB7XG4gICAgICAgIHRoaXMuX3RhZ3NBcGkgPSB0aGlzLl90YWdzQXBpID8/IG5ldyBUYWdzQXBpKHRoaXMuYXBpU2VydmljZS5nZXRJbnN0YW5jZSgpKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RhZ3NBcGk7XG4gICAgfVxuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiB0YWcgaW5mb3JtYXRpb24gaXMgdXBkYXRlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWZyZXNoID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYXBpU2VydmljZTogQWxmcmVzY29BcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHVzZXJQcmVmZXJlbmNlc1NlcnZpY2U6IFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZVxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIEdldHMgYSBsaXN0IG9mIHRhZ3MgYWRkZWQgdG8gYSBub2RlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5vZGVJZCBJRCBvZiB0aGUgdGFyZ2V0IG5vZGVcbiAgICAgKiBAcmV0dXJucyBUYWdQYWdpbmcgb2JqZWN0IChkZWZpbmVkIGluIEpTLUFQSSkgY29udGFpbmluZyB0aGUgdGFnc1xuICAgICAqL1xuICAgIGdldFRhZ3NCeU5vZGVJZChub2RlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8VGFnUGFnaW5nPiB7XG4gICAgICAgIHJldHVybiBmcm9tKHRoaXMudGFnc0FwaS5saXN0VGFnc0Zvck5vZGUobm9kZUlkKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBhIGxpc3Qgb2YgYWxsIHRoZSB0YWdzIGFscmVhZHkgZGVmaW5lZCBpbiB0aGUgcmVwb3NpdG9yeS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRzIE9wdGlvbnMgc3VwcG9ydGVkIGJ5IEpTLUFQSVxuICAgICAqIEBwYXJhbSBpbmNsdWRlZENvdW50cyBUcnVlIGlmIGNvdW50IGZpZWxkIHNob3VsZCBiZSBpbmNsdWRlZCBpbiByZXNwb25zZSBvYmplY3QgZm9yIGVhY2ggdGFnLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICogQHJldHVybnMgVGFnUGFnaW5nIG9iamVjdCAoZGVmaW5lZCBpbiBKUy1BUEkpIGNvbnRhaW5pbmcgdGhlIHRhZ3NcbiAgICAgKi9cbiAgICBnZXRBbGxUaGVUYWdzKG9wdHM/OiBhbnksIGluY2x1ZGVkQ291bnRzPzogYm9vbGVhbik6IE9ic2VydmFibGU8VGFnUGFnaW5nPiB7XG4gICAgICAgIHJldHVybiBmcm9tKFxuICAgICAgICAgICAgdGhpcy50YWdzQXBpLmxpc3RUYWdzKHtcbiAgICAgICAgICAgICAgICBpbmNsdWRlOiBpbmNsdWRlZENvdW50cyA/IFsnY291bnQnXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAuLi5vcHRzXG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZHMgYSB0YWcgdG8gYSBub2RlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5vZGVJZCBJRCBvZiB0aGUgdGFyZ2V0IG5vZGVcbiAgICAgKiBAcGFyYW0gdGFnTmFtZSBOYW1lIG9mIHRoZSB0YWcgdG8gYWRkXG4gICAgICogQHJldHVybnMgVGFnRW50cnkgb2JqZWN0IChkZWZpbmVkIGluIEpTLUFQSSkgd2l0aCBkZXRhaWxzIG9mIHRoZSBuZXcgdGFnXG4gICAgICovXG4gICAgYWRkVGFnKG5vZGVJZDogc3RyaW5nLCB0YWdOYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRhZ0VudHJ5PiB7XG4gICAgICAgIGNvbnN0IHRhZ0JvZHkgPSBuZXcgVGFnQm9keSgpO1xuICAgICAgICB0YWdCb2R5LnRhZyA9IHRhZ05hbWU7XG5cbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy50YWdzQXBpLmNyZWF0ZVRhZ0Zvck5vZGUobm9kZUlkLCBbdGFnQm9keV0pKS5waXBlKHRhcCgodGFnRW50cnkpID0+IHRoaXMucmVmcmVzaC5lbWl0KHRhZ0VudHJ5KSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZXMgYSB0YWcgZnJvbSBhIG5vZGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbm9kZUlkIElEIG9mIHRoZSB0YXJnZXQgbm9kZVxuICAgICAqIEBwYXJhbSB0YWcgTmFtZSBvZiB0aGUgdGFnIHRvIHJlbW92ZVxuICAgICAqIEByZXR1cm5zIE51bGwgb2JqZWN0IHdoZW4gdGhlIG9wZXJhdGlvbiBjb21wbGV0ZXNcbiAgICAgKi9cbiAgICByZW1vdmVUYWcobm9kZUlkOiBzdHJpbmcsIHRhZzogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBmcm9tKHRoaXMudGFnc0FwaS5kZWxldGVUYWdGcm9tTm9kZShub2RlSWQsIHRhZykpLnBpcGUodGFwKCgpID0+IHRoaXMucmVmcmVzaC5lbWl0KCkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHRhZ3MuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGFncyBsaXN0IG9mIHRhZ3MgdG8gY3JlYXRlLlxuICAgICAqIEByZXR1cm5zIENyZWF0ZWQgdGFncy5cbiAgICAgKi9cbiAgICBjcmVhdGVUYWdzKHRhZ3M6IFRhZ0JvZHlbXSk6IE9ic2VydmFibGU8VGFnRW50cnkgfCBUYWdQYWdpbmc+IHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy50YWdzQXBpLmNyZWF0ZVRhZ3ModGFncykpLnBpcGUodGFwKCh0YWdFbnRyaWVzKSA9PiB0aGlzLnJlZnJlc2guZW1pdCh0YWdFbnRyaWVzKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBhIHRhZ1xuICAgICAqXG4gICAgICogQHBhcmFtIHRhZ0lkIFRoZSBpZGVudGlmaWVyIG9mIGEgdGFnLlxuICAgICAqIEBwYXJhbSB0YWdCb2R5IFRoZSB1cGRhdGVkIHRhZy5cbiAgICAgKiBAcmV0dXJucyBVcGRhdGVkIHRhZy5cbiAgICAgKi9cbiAgICB1cGRhdGVUYWcodGFnSWQ6IHN0cmluZywgdGFnQm9keTogVGFnQm9keSk6IE9ic2VydmFibGU8VGFnRW50cnk+IHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy50YWdzQXBpLnVwZGF0ZVRhZyh0YWdJZCwgdGFnQm9keSkpLnBpcGUodGFwKCh0YWdFbnRyeSkgPT4gdGhpcy5yZWZyZXNoLmVtaXQodGFnRW50cnkpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZCB0YWdzIHdoaWNoIG5hbWUgY29udGFpbnMgc2VhcmNoZWQgbmFtZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBuYW1lIFZhbHVlIGZvciBuYW1lIHdoaWNoIHNob3VsZCBiZSB1c2VkIGR1cmluZyBzZWFyY2hpbmcgdGFncy5cbiAgICAgKiBAcGFyYW0gc29ydGluZyBPYmplY3Qgd2hpY2ggY29uZmlndXJlcyBzb3J0aW5nLiBPcmRlckJ5IGZpZWxkIHNwZWNpZmllcyBmaWVsZCB1c2VkIGZvciBzb3J0aW5nLCBkaXJlY3Rpb24gc3BlY2lmaWVkIGFzY2VuZGluZyBvciBkZXNjZW5kaW5nIGRpcmVjdGlvbi5cbiAgICAgKiBEZWZhdWx0IHNvcnRpbmcgaXMgYXNjZW5kaW5nIGJ5IHRhZyBmaWVsZC5cbiAgICAgKiBAcGFyYW0gaW5jbHVkZWRDb3VudHMgVHJ1ZSBpZiBjb3VudCBmaWVsZCBzaG91bGQgYmUgaW5jbHVkZWQgaW4gcmVzcG9uc2Ugb2JqZWN0IGZvciBlYWNoIHRhZywgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqIEBwYXJhbSBza2lwQ291bnQgU3BlY2lmeSBob3cgbWFueSBmaXJzdCByZXN1bHRzIHNob3VsZCBiZSBza2lwcGVkLiBEZWZhdWx0IDAuXG4gICAgICogQHBhcmFtIG1heEl0ZW1zIFNwZWNpZnkgbWF4IG51bWJlciBvZiByZXR1cm5lZCB0YWdzLiBEZWZhdWx0IGlzIHNwZWNpZmllZCBieSBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlLlxuICAgICAqIEByZXR1cm5zIEZvdW5kIHRhZ3Mgd2hpY2ggbmFtZSBjb250YWlucyBzZWFyY2hlZCBuYW1lLlxuICAgICAqL1xuICAgIHNlYXJjaFRhZ3MoXG4gICAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgICAgc29ydGluZyA9IHsgb3JkZXJCeTogJ3RhZycsIGRpcmVjdGlvbjogJ2FzYycgfSxcbiAgICAgICAgaW5jbHVkZWRDb3VudHM/OiBib29sZWFuLFxuICAgICAgICBza2lwQ291bnQgPSAwLFxuICAgICAgICBtYXhJdGVtcz86IG51bWJlclxuICAgICk6IE9ic2VydmFibGU8VGFnUGFnaW5nPiB7XG4gICAgICAgIG1heEl0ZW1zID0gbWF4SXRlbXMgfHwgdGhpcy51c2VyUHJlZmVyZW5jZXNTZXJ2aWNlLnBhZ2luYXRpb25TaXplO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRBbGxUaGVUYWdzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRhZzogYCoke25hbWV9KmAsXG4gICAgICAgICAgICAgICAgc2tpcENvdW50LFxuICAgICAgICAgICAgICAgIG1heEl0ZW1zLFxuICAgICAgICAgICAgICAgIHNvcnRpbmcsXG4gICAgICAgICAgICAgICAgbWF0Y2hpbmc6IHRydWVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbmNsdWRlZENvdW50c1xuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmQgdGFnIHdoaWNoIG5hbWUgbWF0Y2hlcyBleGFjdGx5IHRvIHBhc3NlZCBuYW1lLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5hbWUgVmFsdWUgZm9yIG5hbWUgd2hpY2ggc2hvdWxkIGJlIHVzZWQgZHVyaW5nIGZpbmRpbmcgZXhhY3QgdGFnLlxuICAgICAqIEByZXR1cm5zIEZvdW5kIHRhZyB3aGljaCBuYW1lIG1hdGNoZXMgZXhhY3RseSB0byBwYXNzZWQgbmFtZS5cbiAgICAgKi9cbiAgICBmaW5kVGFnQnlOYW1lKG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8VGFnRW50cnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0QWxsVGhlVGFncyh7IHRhZzogbmFtZSB9KS5waXBlKG1hcCgocmVzdWx0KSA9PiByZXN1bHQubGlzdC5lbnRyaWVzWzBdKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVsZXRlcyBhIHRhZyB3aXRoIHRhZ0lkLlxuICAgICAqIFRoaXMgd2lsbCBjYXVzZSB0aGUgdGFnIHRvIGJlIHJlbW92ZWQgZnJvbSBhbGwgbm9kZXMuXG4gICAgICogWW91IG11c3QgaGF2ZSBhZG1pbiByaWdodHMgdG8gZGVsZXRlIGEgdGFnLlxuICAgICAqXG4gICAgICogQHBhcmFtIHRhZ0lkIG9mIHRoZSB0YWcgdG8gYmUgZGVsZXRlZFxuICAgICAqIEByZXR1cm5zIE51bGwgb2JqZWN0IHdoZW4gdGhlIG9wZXJhdGlvbiBjb21wbGV0ZXNcbiAgICAgKi9cbiAgICBkZWxldGVUYWcodGFnSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICByZXR1cm4gZnJvbSh0aGlzLnRhZ3NBcGkuZGVsZXRlVGFnKHRhZ0lkKSkucGlwZSh0YXAoKCkgPT4gdGhpcy5yZWZyZXNoLmVtaXQoKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFzc2lnbiB0YWdzIHRvIG5vZGUuIElmIHRhZyBpcyBuZXcgdGhlbiB0YWcgaXMgYWxzbyBjcmVhdGVkIGFkZGl0aW9uYWxseSwgaWYgdGFnIGFscmVhZHkgZXhpc3RzIHRoZW4gaXQgaXMganVzdCBhc3NpZ25lZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBub2RlSWQgSWQgb2Ygbm9kZSB0byB3aGljaCB0YWdzIHNob3VsZCBiZSBhc3NpZ25lZC5cbiAgICAgKiBAcGFyYW0gdGFncyBMaXN0IG9mIHRhZ3MgdG8gY3JlYXRlIGFuZCBhc3NpZ24gb3IganVzdCBhc3NpZ24gaWYgdGhleSBhbHJlYWR5IGV4aXN0LlxuICAgICAqIEByZXR1cm5zIEp1c3QgbGlua2VkIHRhZ3MgdG8gbm9kZSBvciBzaW5nbGUgdGFnIGlmIGxpbmtlZCBvbmx5IG9uZSB0YWcuXG4gICAgICovXG4gICAgYXNzaWduVGFnc1RvTm9kZShub2RlSWQ6IHN0cmluZywgdGFnczogVGFnQm9keVtdKTogT2JzZXJ2YWJsZTxUYWdQYWdpbmcgfCBUYWdFbnRyeT4ge1xuICAgICAgICByZXR1cm4gZnJvbSh0aGlzLnRhZ3NBcGkuYXNzaWduVGFnc1RvTm9kZShub2RlSWQsIHRhZ3MpKS5waXBlKHRhcCgoZGF0YSkgPT4gdGhpcy5yZWZyZXNoLmVtaXQoZGF0YSkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGFncyBwbHVnaW4gaXMgZW5hYmxlZC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGJvb2xlYW4gdHJ1ZSBpZiB0YWdzIHBsdWdpbiBpcyBlbmFibGVkLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgYXJlVGFnc0VuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuZ2V0KCdwbHVnaW5zLnRhZ3NFbmFibGVkJywgdHJ1ZSk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,114 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { TranslationService } from '@alfresco/adf-core';
18
+ import { Component, DestroyRef, EventEmitter, inject, Input, Output, ViewEncapsulation } from '@angular/core';
19
+ import { TagService } from '../services/tag.service';
20
+ import { CommonModule } from '@angular/common';
21
+ import { MatListModule } from '@angular/material/list';
22
+ import { MatIconModule } from '@angular/material/icon';
23
+ import { MatFormFieldModule } from '@angular/material/form-field';
24
+ import { MatInputModule } from '@angular/material/input';
25
+ import { TranslatePipe } from '@ngx-translate/core';
26
+ import { FormsModule } from '@angular/forms';
27
+ import { MatButtonModule } from '@angular/material/button';
28
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
29
+ import * as i0 from "@angular/core";
30
+ import * as i1 from "../services/tag.service";
31
+ import * as i2 from "@alfresco/adf-core";
32
+ import * as i3 from "@angular/common";
33
+ import * as i4 from "@angular/material/list";
34
+ import * as i5 from "@angular/material/icon";
35
+ import * as i6 from "@angular/material/form-field";
36
+ import * as i7 from "@angular/material/input";
37
+ import * as i8 from "@angular/forms";
38
+ import * as i9 from "@angular/material/button";
39
+ /**
40
+ *
41
+ * This component, provide a list of the tags relative a node with actions button to add or remove new tag
42
+ */
43
+ export class TagActionsComponent {
44
+ constructor(tagService, translateService) {
45
+ this.tagService = tagService;
46
+ this.translateService = translateService;
47
+ /** Emitted when a tag is added successfully. */
48
+ this.successAdd = new EventEmitter();
49
+ /** Emitted when an error occurs. */
50
+ this.error = new EventEmitter();
51
+ /** Emitted when an action is chosen. */
52
+ this.result = new EventEmitter();
53
+ this.disableAddTag = true;
54
+ this.destroyRef = inject(DestroyRef);
55
+ }
56
+ ngOnInit() {
57
+ this.tagService.refresh.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => this.refreshTag());
58
+ }
59
+ ngOnChanges() {
60
+ return this.refreshTag();
61
+ }
62
+ refreshTag() {
63
+ if (this.nodeId) {
64
+ this.tagService.getTagsByNodeId(this.nodeId).subscribe((tagPaging) => {
65
+ this.tagsEntries = tagPaging.list.entries;
66
+ this.disableAddTag = false;
67
+ this.result.emit(this.tagsEntries);
68
+ }, () => {
69
+ this.tagsEntries = null;
70
+ this.disableAddTag = true;
71
+ this.result.emit(this.tagsEntries);
72
+ });
73
+ }
74
+ }
75
+ addTag() {
76
+ if (this.searchTag(this.newTagName)) {
77
+ this.errorMsg = this.translateService.instant('TAG.MESSAGES.EXIST');
78
+ this.error.emit(this.errorMsg);
79
+ }
80
+ else {
81
+ this.tagService.addTag(this.nodeId, this.newTagName).subscribe(() => {
82
+ this.newTagName = '';
83
+ this.successAdd.emit(this.nodeId);
84
+ });
85
+ }
86
+ }
87
+ searchTag(searchTagName) {
88
+ if (this.tagsEntries) {
89
+ return this.tagsEntries.find((currentTag) => searchTagName === currentTag.entry.tag);
90
+ }
91
+ }
92
+ cleanErrorMsg() {
93
+ this.errorMsg = '';
94
+ }
95
+ removeTag(tag) {
96
+ this.tagService.removeTag(this.nodeId, tag);
97
+ }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagActionsComponent, deps: [{ token: i1.TagService }, { token: i2.TranslationService }], target: i0.ɵɵFactoryTarget.Component }); }
99
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TagActionsComponent, isStandalone: true, selector: "adf-tag-node-actions-list", inputs: { nodeId: "nodeId" }, outputs: { successAdd: "successAdd", error: "error", result: "result" }, host: { classAttribute: "adf-tag-node-actions-list" }, usesOnChanges: true, ngImport: i0, template: "<mat-list>\n <mat-list-item *ngFor=\"let currentEntry of tagsEntries; let idx = index\">\n <div\n class=\"adf-tag-actions-container\"\n id=\"tag_delete_{{ currentEntry.entry.tag }}\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"removeTag(currentEntry.entry.id)\"\n (click)=\"removeTag(currentEntry.entry.id)\"\n >\n <div class=\"adf-tag-actions-delete-text\" id=\"tag_name_{{ currentEntry.entry.tag }}\">{{ currentEntry.entry.tag }}</div>\n <mat-icon class=\"adf-tag-actions-delete-icon\">delete</mat-icon>\n </div>\n </mat-list-item>\n</mat-list>\n<table class=\"adf-full-width\" cellspacing=\"0\">\n <tr>\n <td>\n <mat-form-field class=\"adf-full-width\">\n <input\n id=\"new-tag-text\"\n matInput\n placeholder=\"{{ 'TAG.LABEL.NEWTAG' | translate }}\"\n type=\"text\"\n (keypress)=\"cleanErrorMsg()\"\n [(ngModel)]=\"newTagName\"\n />\n <mat-hint data-automation-id=\"errorMessage\" *ngIf=\"error\" [ngStyle]=\"{ color: 'red' }\" align=\"start\">{{ errorMsg }} </mat-hint>\n </mat-form-field>\n </td>\n <td>\n <button id=\"add-tag\" class=\"adf-full-width\" color=\"primary\" (click)=\"addTag()\" [disabled]=\"disableAddTag\" mat-raised-button>\n {{ 'TAG.BUTTON.ADD' | translate }}\n </button>\n </td>\n </tr>\n</table>\n", styles: [".adf-tag-node-actions-list .adf-full-width{width:100%}.adf-tag-node-actions-list .adf-tag-actions-delete-icon{float:right;cursor:pointer}.adf-tag-node-actions-list .adf-tag-actions-delete-text{font-size:var(--theme-subheading-2-font-size);float:left}.adf-tag-node-actions-list .adf-tag-actions-container{padding:8px 0;height:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i4.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
100
+ }
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagActionsComponent, decorators: [{
102
+ type: Component,
103
+ args: [{ selector: 'adf-tag-node-actions-list', standalone: true, imports: [CommonModule, MatListModule, MatIconModule, MatFormFieldModule, MatInputModule, TranslatePipe, FormsModule, MatButtonModule], encapsulation: ViewEncapsulation.None, host: { class: 'adf-tag-node-actions-list' }, template: "<mat-list>\n <mat-list-item *ngFor=\"let currentEntry of tagsEntries; let idx = index\">\n <div\n class=\"adf-tag-actions-container\"\n id=\"tag_delete_{{ currentEntry.entry.tag }}\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"removeTag(currentEntry.entry.id)\"\n (click)=\"removeTag(currentEntry.entry.id)\"\n >\n <div class=\"adf-tag-actions-delete-text\" id=\"tag_name_{{ currentEntry.entry.tag }}\">{{ currentEntry.entry.tag }}</div>\n <mat-icon class=\"adf-tag-actions-delete-icon\">delete</mat-icon>\n </div>\n </mat-list-item>\n</mat-list>\n<table class=\"adf-full-width\" cellspacing=\"0\">\n <tr>\n <td>\n <mat-form-field class=\"adf-full-width\">\n <input\n id=\"new-tag-text\"\n matInput\n placeholder=\"{{ 'TAG.LABEL.NEWTAG' | translate }}\"\n type=\"text\"\n (keypress)=\"cleanErrorMsg()\"\n [(ngModel)]=\"newTagName\"\n />\n <mat-hint data-automation-id=\"errorMessage\" *ngIf=\"error\" [ngStyle]=\"{ color: 'red' }\" align=\"start\">{{ errorMsg }} </mat-hint>\n </mat-form-field>\n </td>\n <td>\n <button id=\"add-tag\" class=\"adf-full-width\" color=\"primary\" (click)=\"addTag()\" [disabled]=\"disableAddTag\" mat-raised-button>\n {{ 'TAG.BUTTON.ADD' | translate }}\n </button>\n </td>\n </tr>\n</table>\n", styles: [".adf-tag-node-actions-list .adf-full-width{width:100%}.adf-tag-node-actions-list .adf-tag-actions-delete-icon{float:right;cursor:pointer}.adf-tag-node-actions-list .adf-tag-actions-delete-text{font-size:var(--theme-subheading-2-font-size);float:left}.adf-tag-node-actions-list .adf-tag-actions-container{padding:8px 0;height:20px}\n"] }]
104
+ }], ctorParameters: () => [{ type: i1.TagService }, { type: i2.TranslationService }], propDecorators: { nodeId: [{
105
+ type: Input,
106
+ args: [{ required: true }]
107
+ }], successAdd: [{
108
+ type: Output
109
+ }], error: [{
110
+ type: Output
111
+ }], result: [{
112
+ type: Output
113
+ }] } });
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWFjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi90YWcvdGFnLWFjdGlvbnMvdGFnLWFjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi90YWcvdGFnLWFjdGlvbnMvdGFnLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7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UUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNoRCxDQUFDOytHQTNFUSxtQkFBbUI7bUdBQW5CLG1CQUFtQix3UUM3Q2hDLGlrREFxQ0EscVlERWMsWUFBWSxvVkFBRSxhQUFhLHVSQUFFLGFBQWEsbUxBQUUsa0JBQWtCLGlVQUFFLGNBQWMsc1dBQUUsYUFBYSxpREFBRSxXQUFXLDhtQkFBRSxlQUFlOzs0RkFNNUgsbUJBQW1CO2tCQVQvQixTQUFTOytCQUNJLDJCQUEyQixjQUN6QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUMsaUJBR3ZILGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBRSxLQUFLLEVBQUUsMkJBQTJCLEVBQUU7Z0hBSzVDLE1BQU07c0JBREwsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBS3pCLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxLQUFLO3NCQURKLE1BQU07Z0JBS1AsTUFBTTtzQkFETCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGFnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFnUGFnaW5nIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKlxuICogVGhpcyBjb21wb25lbnQsIHByb3ZpZGUgYSBsaXN0IG9mIHRoZSB0YWdzIHJlbGF0aXZlIGEgbm9kZSB3aXRoIGFjdGlvbnMgYnV0dG9uIHRvIGFkZCBvciByZW1vdmUgbmV3IHRhZ1xuICovXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWRmLXRhZy1ub2RlLWFjdGlvbnMtbGlzdCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRMaXN0TW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBUcmFuc2xhdGVQaXBlLCBGb3Jtc01vZHVsZSwgTWF0QnV0dG9uTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFnLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RhZy1hY3Rpb25zLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7IGNsYXNzOiAnYWRmLXRhZy1ub2RlLWFjdGlvbnMtbGlzdCcgfVxufSlcbmV4cG9ydCBjbGFzcyBUYWdBY3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiBUaGUgaWRlbnRpZmllciBvZiBhIG5vZGUuICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBub2RlSWQ6IHN0cmluZztcblxuICAgIC8qKiBFbWl0dGVkIHdoZW4gYSB0YWcgaXMgYWRkZWQgc3VjY2Vzc2Z1bGx5LiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHN1Y2Nlc3NBZGQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhbiBlcnJvciBvY2N1cnMuICovXG4gICAgQE91dHB1dCgpXG4gICAgZXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhbiBhY3Rpb24gaXMgY2hvc2VuLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlc3VsdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIG5ld1RhZ05hbWU6IHN0cmluZztcbiAgICB0YWdzRW50cmllczogYW55O1xuICAgIGVycm9yTXNnOiBzdHJpbmc7XG4gICAgZGlzYWJsZUFkZFRhZzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRhZ1NlcnZpY2U6IFRhZ1NlcnZpY2UsIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMudGFnU2VydmljZS5yZWZyZXNoLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlZnJlc2hUYWcoKSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUYWcoKTtcbiAgICB9XG5cbiAgICByZWZyZXNoVGFnKCkge1xuICAgICAgICBpZiAodGhpcy5ub2RlSWQpIHtcbiAgICAgICAgICAgIHRoaXMudGFnU2VydmljZS5nZXRUYWdzQnlOb2RlSWQodGhpcy5ub2RlSWQpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAodGFnUGFnaW5nOiBUYWdQYWdpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50YWdzRW50cmllcyA9IHRhZ1BhZ2luZy5saXN0LmVudHJpZXM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZUFkZFRhZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3VsdC5lbWl0KHRoaXMudGFnc0VudHJpZXMpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhZ3NFbnRyaWVzID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNhYmxlQWRkVGFnID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXN1bHQuZW1pdCh0aGlzLnRhZ3NFbnRyaWVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWRkVGFnKCkge1xuICAgICAgICBpZiAodGhpcy5zZWFyY2hUYWcodGhpcy5uZXdUYWdOYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5lcnJvck1zZyA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdUQUcuTUVTU0FHRVMuRVhJU1QnKTtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IuZW1pdCh0aGlzLmVycm9yTXNnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudGFnU2VydmljZS5hZGRUYWcodGhpcy5ub2RlSWQsIHRoaXMubmV3VGFnTmFtZSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm5ld1RhZ05hbWUgPSAnJztcbiAgICAgICAgICAgICAgICB0aGlzLnN1Y2Nlc3NBZGQuZW1pdCh0aGlzLm5vZGVJZCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlYXJjaFRhZyhzZWFyY2hUYWdOYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMudGFnc0VudHJpZXMpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRhZ3NFbnRyaWVzLmZpbmQoKGN1cnJlbnRUYWcpID0+IHNlYXJjaFRhZ05hbWUgPT09IGN1cnJlbnRUYWcuZW50cnkudGFnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsZWFuRXJyb3JNc2coKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNc2cgPSAnJztcbiAgICB9XG5cbiAgICByZW1vdmVUYWcodGFnOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy50YWdTZXJ2aWNlLnJlbW92ZVRhZyh0aGlzLm5vZGVJZCwgdGFnKTtcbiAgICB9XG59XG4iLCI8bWF0LWxpc3Q+XG4gICAgPG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGN1cnJlbnRFbnRyeSBvZiB0YWdzRW50cmllczsgbGV0IGlkeCA9IGluZGV4XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiYWRmLXRhZy1hY3Rpb25zLWNvbnRhaW5lclwiXG4gICAgICAgICAgICBpZD1cInRhZ19kZWxldGVfe3sgY3VycmVudEVudHJ5LmVudHJ5LnRhZyB9fVwiXG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwicmVtb3ZlVGFnKGN1cnJlbnRFbnRyeS5lbnRyeS5pZClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZVRhZyhjdXJyZW50RW50cnkuZW50cnkuaWQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZi10YWctYWN0aW9ucy1kZWxldGUtdGV4dFwiIGlkPVwidGFnX25hbWVfe3sgY3VycmVudEVudHJ5LmVudHJ5LnRhZyB9fVwiPnt7IGN1cnJlbnRFbnRyeS5lbnRyeS50YWcgfX08L2Rpdj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFkZi10YWctYWN0aW9ucy1kZWxldGUtaWNvblwiPmRlbGV0ZTwvbWF0LWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWxpc3QtaXRlbT5cbjwvbWF0LWxpc3Q+XG48dGFibGUgY2xhc3M9XCJhZGYtZnVsbC13aWR0aFwiIGNlbGxzcGFjaW5nPVwiMFwiPlxuICAgIDx0cj5cbiAgICAgICAgPHRkPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiYWRmLWZ1bGwtd2lkdGhcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgaWQ9XCJuZXctdGFnLXRleHRcIlxuICAgICAgICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdUQUcuTEFCRUwuTkVXVEFHJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgKGtleXByZXNzKT1cImNsZWFuRXJyb3JNc2coKVwiXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmV3VGFnTmFtZVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8bWF0LWhpbnQgZGF0YS1hdXRvbWF0aW9uLWlkPVwiZXJyb3JNZXNzYWdlXCIgKm5nSWY9XCJlcnJvclwiIFtuZ1N0eWxlXT1cInsgY29sb3I6ICdyZWQnIH1cIiBhbGlnbj1cInN0YXJ0XCI+e3sgZXJyb3JNc2cgfX0gPC9tYXQtaGludD5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICAgIDxidXR0b24gaWQ9XCJhZGQtdGFnXCIgY2xhc3M9XCJhZGYtZnVsbC13aWR0aFwiIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJhZGRUYWcoKVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlQWRkVGFnXCIgbWF0LXJhaXNlZC1idXR0b24+XG4gICAgICAgICAgICAgICAge3sgJ1RBRy5CVVRUT04uQUREJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvdGQ+XG4gICAgPC90cj5cbjwvdGFibGU+XG4iXX0=
@@ -0,0 +1,98 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, EventEmitter, Output, ViewEncapsulation } from '@angular/core';
18
+ import { TagService } from '../services/tag.service';
19
+ import { CommonModule } from '@angular/common';
20
+ import { MatChipsModule } from '@angular/material/chips';
21
+ import { MatButtonModule } from '@angular/material/button';
22
+ import { MatIconModule } from '@angular/material/icon';
23
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
24
+ import * as i0 from "@angular/core";
25
+ import * as i1 from "../services/tag.service";
26
+ import * as i2 from "@angular/common";
27
+ import * as i3 from "@angular/material/chips";
28
+ import * as i4 from "@angular/material/button";
29
+ import * as i5 from "@angular/material/icon";
30
+ /**
31
+ * This component provide a list of all the tag inside the ECM
32
+ */
33
+ export class TagListComponent {
34
+ constructor(tagService) {
35
+ this.tagService = tagService;
36
+ /** Emitted when a tag is selected. */
37
+ this.result = new EventEmitter();
38
+ /**
39
+ * Array of tags that are displayed
40
+ */
41
+ this.tagsEntries = [];
42
+ /**
43
+ * Number of items per iteration
44
+ */
45
+ this.size = 10;
46
+ this.isLoading = false;
47
+ this.isSizeMinimum = true;
48
+ this.defaultPagination = {
49
+ skipCount: 0,
50
+ maxItems: this.size,
51
+ hasMoreItems: false
52
+ };
53
+ this.pagination = this.defaultPagination;
54
+ this.tagService.refresh.pipe(takeUntilDestroyed()).subscribe(() => {
55
+ this.tagsEntries = [];
56
+ this.refreshTag(this.defaultPagination);
57
+ });
58
+ }
59
+ ngOnInit() {
60
+ this.refreshTag(this.defaultPagination);
61
+ }
62
+ refreshTag(opts) {
63
+ this.tagService.getAllTheTags(opts).subscribe((tags) => {
64
+ this.tagsEntries = this.tagsEntries.concat(tags.list.entries);
65
+ this.pagination = tags.list.pagination;
66
+ this.result.emit(this.tagsEntries);
67
+ this.isLoading = false;
68
+ });
69
+ }
70
+ loadMoreTags() {
71
+ if (this.pagination.hasMoreItems) {
72
+ this.isLoading = true;
73
+ this.isSizeMinimum = false;
74
+ this.refreshTag({
75
+ skipCount: this.pagination.skipCount + this.pagination.count,
76
+ maxItems: this.size
77
+ });
78
+ }
79
+ }
80
+ loadLessTags() {
81
+ this.isSizeMinimum = false;
82
+ this.tagsEntries = this.tagsEntries.slice(0, this.tagsEntries.length - this.pagination.count);
83
+ this.pagination.skipCount = this.pagination.skipCount - this.pagination.count;
84
+ this.pagination.hasMoreItems = true;
85
+ if (this.tagsEntries.length <= this.size) {
86
+ this.isSizeMinimum = true;
87
+ }
88
+ }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagListComponent, deps: [{ token: i1.TagService }], target: i0.ɵɵFactoryTarget.Component }); }
90
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TagListComponent, isStandalone: true, selector: "adf-tag-list", outputs: { result: "result" }, host: { classAttribute: "adf-tag-list" }, ngImport: i0, template: "<mat-chip-listbox class=\"adf-tag-chips-list\">\n <div class=\"adf-list-tag\" *ngFor=\"let currentEntry of tagsEntries; let idx = index\">\n <mat-chip-option class=\"adf-tag-list-chip\">\n <span id=\"tag_name_{{idx}}\">{{currentEntry.entry.tag}}</span>\n </mat-chip-option>\n </div>\n</mat-chip-listbox>\n\n<div class=\"adf-tag-list-controls\">\n <button\n *ngIf=\"!isSizeMinimum\"\n [disabled]=\"isLoading\"\n data-automation-id=\"show-fewer-tags\"\n mat-icon-button\n (click)=\"loadLessTags()\">\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n <button\n *ngIf=\"pagination.hasMoreItems\"\n [disabled]=\"isLoading\"\n data-automation-id=\"show-more-tags\"\n mat-icon-button\n (click)=\"loadMoreTags()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n</div>\n", styles: [".adf-tag-list .adf-tag-chips-list,.adf-tag-list .adf-tag-chips-list div{display:flex;flex-direction:column}.adf-tag-list .adf-tag-chips-list .adf-list-tag{display:block;font-size:var(--theme-subheading-2-font-size)}.adf-tag-list .adf-tag-chips-list .adf-list-tag .adf-tag-list-chip{color:var(--theme-primary-color-default-contrast);background-color:var(--theme-primary-color)}.adf-tag-list .adf-tag-list-controls{margin-top:30px;display:flex;justify-content:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i3.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i3.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
91
+ }
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagListComponent, decorators: [{
93
+ type: Component,
94
+ args: [{ selector: 'adf-tag-list', standalone: true, imports: [CommonModule, MatChipsModule, MatButtonModule, MatIconModule], encapsulation: ViewEncapsulation.None, host: { class: 'adf-tag-list' }, template: "<mat-chip-listbox class=\"adf-tag-chips-list\">\n <div class=\"adf-list-tag\" *ngFor=\"let currentEntry of tagsEntries; let idx = index\">\n <mat-chip-option class=\"adf-tag-list-chip\">\n <span id=\"tag_name_{{idx}}\">{{currentEntry.entry.tag}}</span>\n </mat-chip-option>\n </div>\n</mat-chip-listbox>\n\n<div class=\"adf-tag-list-controls\">\n <button\n *ngIf=\"!isSizeMinimum\"\n [disabled]=\"isLoading\"\n data-automation-id=\"show-fewer-tags\"\n mat-icon-button\n (click)=\"loadLessTags()\">\n <mat-icon>keyboard_arrow_up</mat-icon>\n </button>\n <button\n *ngIf=\"pagination.hasMoreItems\"\n [disabled]=\"isLoading\"\n data-automation-id=\"show-more-tags\"\n mat-icon-button\n (click)=\"loadMoreTags()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n</div>\n", styles: [".adf-tag-list .adf-tag-chips-list,.adf-tag-list .adf-tag-chips-list div{display:flex;flex-direction:column}.adf-tag-list .adf-tag-chips-list .adf-list-tag{display:block;font-size:var(--theme-subheading-2-font-size)}.adf-tag-list .adf-tag-chips-list .adf-list-tag .adf-tag-list-chip{color:var(--theme-primary-color-default-contrast);background-color:var(--theme-primary-color)}.adf-tag-list .adf-tag-list-controls{margin-top:30px;display:flex;justify-content:center}\n"] }]
95
+ }], ctorParameters: () => [{ type: i1.TagService }], propDecorators: { result: [{
96
+ type: Output
97
+ }] } });
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi90YWcvdGFnLWxpc3QvdGFnLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi90YWcvdGFnLWxpc3QvdGFnLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFFaEU7O0dBRUc7QUFVSCxNQUFNLE9BQU8sZ0JBQWdCO0lBcUJ6QixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBcEIxQyxzQ0FBc0M7UUFFdEMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFNUI7O1dBRUc7UUFDSCxnQkFBVyxHQUFlLEVBQUUsQ0FBQztRQUU3Qjs7V0FFRztRQUNILFNBQUksR0FBVyxFQUFFLENBQUM7UUFLbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUdqQixJQUFJ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QU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy90YWcuc2VydmljZSc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTW9kZWwgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgVGFnRW50cnkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRDaGlwc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogVGhpcyBjb21wb25lbnQgcHJvdmlkZSBhIGxpc3Qgb2YgYWxsIHRoZSB0YWcgaW5zaWRlIHRoZSBFQ01cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtdGFnLWxpc3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0Q2hpcHNNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgTWF0SWNvbk1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhZy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YWctbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDogeyBjbGFzczogJ2FkZi10YWctbGlzdCcgfVxufSlcbmV4cG9ydCBjbGFzcyBUYWdMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvKiogRW1pdHRlZCB3aGVuIGEgdGFnIGlzIHNlbGVjdGVkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlc3VsdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIEFycmF5IG9mIHRhZ3MgdGhhdCBhcmUgZGlzcGxheWVkXG4gICAgICovXG4gICAgdGFnc0VudHJpZXM6IFRhZ0VudHJ5W10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIE51bWJlciBvZiBpdGVtcyBwZXIgaXRlcmF0aW9uXG4gICAgICovXG4gICAgc2l6ZTogbnVtYmVyID0gMTA7XG5cbiAgICBkZWZhdWx0UGFnaW5hdGlvbjogUGFnaW5hdGlvbk1vZGVsO1xuICAgIHBhZ2luYXRpb246IFBhZ2luYXRpb25Nb2RlbDtcblxuICAgIGlzTG9hZGluZyA9IGZhbHNlO1xuICAgIGlzU2l6ZU1pbmltdW0gPSB0cnVlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0YWdTZXJ2aWNlOiBUYWdTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuZGVmYXVsdFBhZ2luYXRpb24gPSB7XG4gICAgICAgICAgICBza2lwQ291bnQ6IDAsXG4gICAgICAgICAgICBtYXhJdGVtczogdGhpcy5zaXplLFxuICAgICAgICAgICAgaGFzTW9yZUl0ZW1zOiBmYWxzZVxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMucGFnaW5hdGlvbiA9IHRoaXMuZGVmYXVsdFBhZ2luYXRpb247XG5cbiAgICAgICAgdGhpcy50YWdTZXJ2aWNlLnJlZnJlc2gucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudGFnc0VudHJpZXMgPSBbXTtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFRhZyh0aGlzLmRlZmF1bHRQYWdpbmF0aW9uKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucmVmcmVzaFRhZyh0aGlzLmRlZmF1bHRQYWdpbmF0aW9uKTtcbiAgICB9XG4gICAgcmVmcmVzaFRhZyhvcHRzPzogYW55KSB7XG4gICAgICAgIHRoaXMudGFnU2VydmljZS5nZXRBbGxUaGVUYWdzKG9wdHMpLnN1YnNjcmliZSgodGFncykgPT4ge1xuICAgICAgICAgICAgdGhpcy50YWdzRW50cmllcyA9IHRoaXMudGFnc0VudHJpZXMuY29uY2F0KHRhZ3MubGlzdC5lbnRyaWVzKTtcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdGlvbiA9IHRhZ3MubGlzdC5wYWdpbmF0aW9uO1xuICAgICAgICAgICAgdGhpcy5yZXN1bHQuZW1pdCh0aGlzLnRhZ3NFbnRyaWVzKTtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGxvYWRNb3JlVGFncygpIHtcbiAgICAgICAgaWYgKHRoaXMucGFnaW5hdGlvbi5oYXNNb3JlSXRlbXMpIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuaXNTaXplTWluaW11bSA9IGZhbHNlO1xuXG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hUYWcoe1xuICAgICAgICAgICAgICAgIHNraXBDb3VudDogdGhpcy5wYWdpbmF0aW9uLnNraXBDb3VudCArIHRoaXMucGFnaW5hdGlvbi5jb3VudCxcbiAgICAgICAgICAgICAgICBtYXhJdGVtczogdGhpcy5zaXplXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxvYWRMZXNzVGFncygpIHtcbiAgICAgICAgdGhpcy5pc1NpemVNaW5pbXVtID0gZmFsc2U7XG4gICAgICAgIHRoaXMudGFnc0VudHJpZXMgPSB0aGlzLnRhZ3NFbnRyaWVzLnNsaWNlKDAsIHRoaXMudGFnc0VudHJpZXMubGVuZ3RoIC0gdGhpcy5wYWdpbmF0aW9uLmNvdW50KTtcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uLnNraXBDb3VudCA9IHRoaXMucGFnaW5hdGlvbi5za2lwQ291bnQgLSB0aGlzLnBhZ2luYXRpb24uY291bnQ7XG4gICAgICAgIHRoaXMucGFnaW5hdGlvbi5oYXNNb3JlSXRlbXMgPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLnRhZ3NFbnRyaWVzLmxlbmd0aCA8PSB0aGlzLnNpemUpIHtcbiAgICAgICAgICAgIHRoaXMuaXNTaXplTWluaW11bSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bWF0LWNoaXAtbGlzdGJveCBjbGFzcz1cImFkZi10YWctY2hpcHMtbGlzdFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtbGlzdC10YWdcIiAqbmdGb3I9XCJsZXQgY3VycmVudEVudHJ5IG9mIHRhZ3NFbnRyaWVzOyBsZXQgaWR4ID0gaW5kZXhcIj5cbiAgICAgICAgPG1hdC1jaGlwLW9wdGlvbiBjbGFzcz1cImFkZi10YWctbGlzdC1jaGlwXCI+XG4gICAgICAgICAgICA8c3BhbiBpZD1cInRhZ19uYW1lX3t7aWR4fX1cIj57e2N1cnJlbnRFbnRyeS5lbnRyeS50YWd9fTwvc3Bhbj5cbiAgICAgICAgPC9tYXQtY2hpcC1vcHRpb24+XG4gICAgPC9kaXY+XG48L21hdC1jaGlwLWxpc3Rib3g+XG5cbjxkaXYgY2xhc3M9XCJhZGYtdGFnLWxpc3QtY29udHJvbHNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWlzU2l6ZU1pbmltdW1cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNMb2FkaW5nXCJcbiAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwic2hvdy1mZXdlci10YWdzXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIChjbGljayk9XCJsb2FkTGVzc1RhZ3MoKVwiPlxuICAgICAgICA8bWF0LWljb24+a2V5Ym9hcmRfYXJyb3dfdXA8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJwYWdpbmF0aW9uLmhhc01vcmVJdGVtc1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0xvYWRpbmdcIlxuICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJzaG93LW1vcmUtdGFnc1wiXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAoY2xpY2spPVwibG9hZE1vcmVUYWdzKClcIj5cbiAgICAgICAgPG1hdC1pY29uPmtleWJvYXJkX2Fycm93X2Rvd248L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,80 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, DestroyRef, EventEmitter, inject, Input, Output, ViewEncapsulation } from '@angular/core';
18
+ import { TagService } from '../services/tag.service';
19
+ import { DynamicChipListComponent } from '@alfresco/adf-core';
20
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
21
+ import * as i0 from "@angular/core";
22
+ import * as i1 from "../services/tag.service";
23
+ /**
24
+ *
25
+ * This component, ShowNodeTag a list of the tag on relative a node
26
+ */
27
+ export class TagNodeListComponent {
28
+ get tagChips() {
29
+ return this._tagChips;
30
+ }
31
+ constructor(tagService) {
32
+ this.tagService = tagService;
33
+ /** Show delete button */
34
+ this.showDelete = true;
35
+ /** Should limit number of tags displayed */
36
+ this.limitTagsDisplayed = false;
37
+ /** Emitted when a tag is selected. */
38
+ this.results = new EventEmitter();
39
+ this._tagChips = [];
40
+ this.destroyRef = inject(DestroyRef);
41
+ }
42
+ ngOnChanges() {
43
+ this.refreshTag();
44
+ }
45
+ ngOnInit() {
46
+ this.tagService.refresh.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => this.refreshTag());
47
+ }
48
+ refreshTag() {
49
+ if (this.nodeId) {
50
+ this.tagService.getTagsByNodeId(this.nodeId).subscribe((tagPaging) => {
51
+ this._tagChips = tagPaging.list.entries.map((tag) => ({
52
+ id: tag.entry.id,
53
+ name: tag.entry.tag
54
+ }));
55
+ this.results.emit(tagPaging.list.entries);
56
+ });
57
+ }
58
+ }
59
+ removeTag(tag) {
60
+ this.tagService.removeTag(this.nodeId, tag).subscribe(() => {
61
+ this.refreshTag();
62
+ });
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagNodeListComponent, deps: [{ token: i1.TagService }], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TagNodeListComponent, isStandalone: true, selector: "adf-tag-node-list", inputs: { nodeId: "nodeId", showDelete: "showDelete", limitTagsDisplayed: "limitTagsDisplayed" }, outputs: { results: "results" }, usesOnChanges: true, ngImport: i0, template: "<adf-dynamic-chip-list\n [chips]=\"tagChips\"\n [limitChipsDisplayed]=\"limitTagsDisplayed\"\n [showDelete]=\"showDelete\"\n (displayNext)=\"refreshTag()\"\n (removedChip)=\"removeTag($event)\" />\n", dependencies: [{ kind: "component", type: DynamicChipListComponent, selector: "adf-dynamic-chip-list", inputs: ["pagination", "chips", "showDelete", "disableDelete", "limitChipsDisplayed", "roundUpChips"], outputs: ["displayNext", "removedChip"] }], encapsulation: i0.ViewEncapsulation.None }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagNodeListComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'adf-tag-node-list', standalone: true, imports: [DynamicChipListComponent], encapsulation: ViewEncapsulation.None, template: "<adf-dynamic-chip-list\n [chips]=\"tagChips\"\n [limitChipsDisplayed]=\"limitTagsDisplayed\"\n [showDelete]=\"showDelete\"\n (displayNext)=\"refreshTag()\"\n (removedChip)=\"removeTag($event)\" />\n" }]
70
+ }], ctorParameters: () => [{ type: i1.TagService }], propDecorators: { nodeId: [{
71
+ type: Input,
72
+ args: [{ required: true }]
73
+ }], showDelete: [{
74
+ type: Input
75
+ }], limitTagsDisplayed: [{
76
+ type: Input
77
+ }], results: [{
78
+ type: Output
79
+ }] } });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLW5vZGUtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL3RhZy90YWctbm9kZS1saXN0L3RhZy1ub2RlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi90YWcvdGFnLW5vZGUtbGlzdC90YWctbm9kZS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBUSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFFaEU7OztHQUdHO0FBU0gsTUFBTSxPQUFPLG9CQUFvQjtJQW1CN0IsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFJRCxZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBcEIxQyx5QkFBeUI7UUFFekIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUVsQiw0Q0FBNEM7UUFFNUMsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBRTNCLHNDQUFzQztRQUV0QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUVqQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBTWQsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUVKLENBQUM7SUFFOUMsV0FBVztRQUNQLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtnQkFDakUsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ2xELEVBQUUsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ2hCLElBQUksRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUc7aUJBQ3RCLENBQUMsQ0FBQyxDQUFDO2dCQUNKLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFXO1FBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN2RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOytHQW5EUSxvQkFBb0I7bUdBQXBCLG9CQUFvQixxT0NuQ2pDLHVOQU1BLDRDRHlCYyx3QkFBd0I7OzRGQUl6QixvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0ksbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLHdCQUF3QixDQUFDLGlCQUVwQixpQkFBaUIsQ0FBQyxJQUFJOytFQUtyQyxNQUFNO3NCQURMLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUt6QixVQUFVO3NCQURULEtBQUs7Z0JBS04sa0JBQWtCO3NCQURqQixLQUFLO2dCQUtOLE9BQU87c0JBRE4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGFnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFnRW50cnkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IENoaXAsIER5bmFtaWNDaGlwTGlzdENvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICpcbiAqIFRoaXMgY29tcG9uZW50LCBTaG93Tm9kZVRhZyBhIGxpc3Qgb2YgdGhlIHRhZyBvbiByZWxhdGl2ZSBhIG5vZGVcbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi10YWctbm9kZS1saXN0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtEeW5hbWljQ2hpcExpc3RDb21wb25lbnRdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWctbm9kZS1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRhZ05vZGVMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiBUaGUgaWRlbnRpZmllciBvZiBhIG5vZGUuICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBub2RlSWQ6IHN0cmluZztcblxuICAgIC8qKiBTaG93IGRlbGV0ZSBidXR0b24gKi9cbiAgICBASW5wdXQoKVxuICAgIHNob3dEZWxldGUgPSB0cnVlO1xuXG4gICAgLyoqIFNob3VsZCBsaW1pdCBudW1iZXIgb2YgdGFncyBkaXNwbGF5ZWQgKi9cbiAgICBASW5wdXQoKVxuICAgIGxpbWl0VGFnc0Rpc3BsYXllZCA9IGZhbHNlO1xuXG4gICAgLyoqIEVtaXR0ZWQgd2hlbiBhIHRhZyBpcyBzZWxlY3RlZC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZXN1bHRzID0gbmV3IEV2ZW50RW1pdHRlcjxUYWdFbnRyeVtdPigpO1xuXG4gICAgcHJpdmF0ZSBfdGFnQ2hpcHM6IENoaXBbXSA9IFtdO1xuXG4gICAgZ2V0IHRhZ0NoaXBzKCk6IENoaXBbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl90YWdDaGlwcztcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRhZ1NlcnZpY2U6IFRhZ1NlcnZpY2UpIHt9XG5cbiAgICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoVGFnKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFnU2VydmljZS5yZWZyZXNoLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlZnJlc2hUYWcoKSk7XG4gICAgfVxuXG4gICAgcmVmcmVzaFRhZygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubm9kZUlkKSB7XG4gICAgICAgICAgICB0aGlzLnRhZ1NlcnZpY2UuZ2V0VGFnc0J5Tm9kZUlkKHRoaXMubm9kZUlkKS5zdWJzY3JpYmUoKHRhZ1BhZ2luZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3RhZ0NoaXBzID0gdGFnUGFnaW5nLmxpc3QuZW50cmllcy5tYXAoKHRhZykgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHRhZy5lbnRyeS5pZCxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogdGFnLmVudHJ5LnRhZ1xuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc3VsdHMuZW1pdCh0YWdQYWdpbmcubGlzdC5lbnRyaWVzKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVtb3ZlVGFnKHRhZzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFnU2VydmljZS5yZW1vdmVUYWcodGhpcy5ub2RlSWQsIHRhZykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFRhZygpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8YWRmLWR5bmFtaWMtY2hpcC1saXN0XG4gICAgW2NoaXBzXT1cInRhZ0NoaXBzXCJcbiAgICBbbGltaXRDaGlwc0Rpc3BsYXllZF09XCJsaW1pdFRhZ3NEaXNwbGF5ZWRcIlxuICAgIFtzaG93RGVsZXRlXT1cInNob3dEZWxldGVcIlxuICAgIChkaXNwbGF5TmV4dCk9XCJyZWZyZXNoVGFnKClcIlxuICAgIChyZW1vdmVkQ2hpcCk9XCJyZW1vdmVUYWcoJGV2ZW50KVwiIC8+XG4iXX0=
@@ -0,0 +1,37 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { NgModule } from '@angular/core';
18
+ import { TagActionsComponent } from './tag-actions/tag-actions.component';
19
+ import { TagListComponent } from './tag-list/tag-list.component';
20
+ import { TagNodeListComponent } from './tag-node-list/tag-node-list.component';
21
+ import { TagsCreatorComponent } from './tags-creator/tags-creator.component';
22
+ import * as i0 from "@angular/core";
23
+ export const CONTENT_TAG_DIRECTIVES = [TagsCreatorComponent, TagActionsComponent, TagListComponent, TagNodeListComponent];
24
+ /** @deprecated use `...CONTENT_TAG_DIRECTIVES` instead or import standalone components directly */
25
+ export class TagModule {
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
27
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: TagModule, imports: [TagsCreatorComponent, TagActionsComponent, TagListComponent, TagNodeListComponent], exports: [TagsCreatorComponent, TagActionsComponent, TagListComponent, TagNodeListComponent] }); }
28
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagModule, imports: [CONTENT_TAG_DIRECTIVES] }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TagModule, decorators: [{
31
+ type: NgModule,
32
+ args: [{
33
+ imports: [...CONTENT_TAG_DIRECTIVES],
34
+ exports: [...CONTENT_TAG_DIRECTIVES]
35
+ }]
36
+ }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvdGFnL3RhZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFFN0UsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsQ0FBVSxDQUFDO0FBRW5JLG1HQUFtRztBQUtuRyxNQUFNLE9BQU8sU0FBUzsrR0FBVCxTQUFTO2dIQUFULFNBQVMsWUFQaUIsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLGFBQWpGLG9CQUFvQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLG9CQUFvQjtnSEFPM0csU0FBUyxZQUhMLHNCQUFzQjs7NEZBRzFCLFNBQVM7a0JBSnJCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsR0FBRyxzQkFBc0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFLENBQUMsR0FBRyxzQkFBc0IsQ0FBQztpQkFDdkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWdBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi90YWctYWN0aW9ucy90YWctYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFnTGlzdENvbXBvbmVudCB9IGZyb20gJy4vdGFnLWxpc3QvdGFnLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFRhZ05vZGVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi90YWctbm9kZS1saXN0L3RhZy1ub2RlLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFRhZ3NDcmVhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi90YWdzLWNyZWF0b3IvdGFncy1jcmVhdG9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBDT05URU5UX1RBR19ESVJFQ1RJVkVTID0gW1RhZ3NDcmVhdG9yQ29tcG9uZW50LCBUYWdBY3Rpb25zQ29tcG9uZW50LCBUYWdMaXN0Q29tcG9uZW50LCBUYWdOb2RlTGlzdENvbXBvbmVudF0gYXMgY29uc3Q7XG5cbi8qKiBAZGVwcmVjYXRlZCB1c2UgYC4uLkNPTlRFTlRfVEFHX0RJUkVDVElWRVNgIGluc3RlYWQgb3IgaW1wb3J0IHN0YW5kYWxvbmUgY29tcG9uZW50cyBkaXJlY3RseSAqL1xuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbLi4uQ09OVEVOVF9UQUdfRElSRUNUSVZFU10sXG4gICAgZXhwb3J0czogWy4uLkNPTlRFTlRfVEFHX0RJUkVDVElWRVNdXG59KVxuZXhwb3J0IGNsYXNzIFRhZ01vZHVsZSB7fVxuIl19